GithubHelp home page GithubHelp logo

janburp / morphalogic Goto Github PK

View Code? Open in Web Editor NEW
6.0 1.0 0.0 7.29 MB

An eurorack logic module with several logic functions and a clock divider mode. Build around an arduino nano. So could be reprogrammed.

C++ 100.00%
clock-divider eurorack logic morphagene flip-flop logic-gates cpp

morphalogic's Introduction

MorphaLogic

An Eurorack module based around a Arduino Nano.

With AND, OR, XOR logic functions, a Flip Flip (Q), a Clock Divider mode, and more.

Morgalogic Front Panel

Inputs, Outputs & Buttons

LEFTRIGHT
INPUT: input (A)OUTPUT: AND (or clock / 16)
INPUT: input (B)OUTPUT: OR (or clock / 8)
INPUT: Inverse (INV)OUTPUT: XOR (or clock / 4)
INPUT: Clock (CLK)OUTPUT: Q - Flip Flop (or clock / 2)
OUTPUT: Inverse of TRIG BUTTONTrigger on press & release of TRIG BUTTON
BUTTON: Mode buttonBUTTON: Reset button
TRIG BUTTON

Functions

Logic functions

  • Basic logic funcions AND, OR, XOR (using the first inputs on the left side).
  • Flip Flop (Q) (first input will SET, second input will RESET).
  • NOT input, or MODE button, to inverse all logic outputs (NAND, NOR, NXOR, NQ)
  • CLOCK input, when present, all Logic outputs only are HIGH when CLOCK is HIGH
  • RESET button to reset Q and CLOCK

Trig button

When the TRIG button is pressed (and released):

  • A LOW gate is send to the first (left) output. It will be HIGH when the button is not pressed.
  • A short pulse is send to the second output on press & release of the button.
  • If the module is in Clock Divider mode, the press & release time will set the Clock Tempe if no signal is present on the CLOCK input.

Modes:

Current mode is set in memory.

Normal mode (mode button is unlit):

  • Inputs A & B determines logic outputs (AND, OR, XOR, Q). Where A is set and B is reset for the flipflop (Q).
  • If the NOT input is HIGH, all logic outputs are inverted (NAND, NOR, NXOR,NQ)

Inverse mode (mode button is lit):

  • Pressing the mode button will inverse all logic outputs (same as when NOT input is HIGH)

Clockdivider mode (mode button is flashing):

  • A long press on the mode button will put the module in Clockdivider mode. The mode button will flash.
  • The logic outputs will divide the clock (where Q = /2, XOR = /4, OR = /8, AND =/16)
  • The clock source is:
    • The CLK input
    • If no clock is present on the CLK input, a standard 120 BPM clock is used.
    • Or, if the trig buttons has been pressed and released, the timing between press and release is used to determine the clock time.

External Trig Mode (trig button flashes):

  • A long press of the RESET button toggles between external trig options mode on/off. When on, the trig button flashes.
  • When external trig mode is on, the first input can function as an external trig for the trig button.

Uses

  • Use the logic function for all kinds of GATE manipluations, for interesting sequences for example.
  • Same for the CLOCK DIVIDER mode.
  • Make use of the CLOCK input to quantize the logic outputs with a clock signal.
  • Use the TRIG BUTTON (or external trig mode) for changing a GATE into two short TRIGS.
  • Use the TRIG BUTTON to fire a LOW gate (patch it into one of the logic function to have a HIGH gate on the OR output).

Example with a Morphagene

One of my main modules in my eurorack case is the Make-Noise Morphagene. One thing that i'd like it to do is:

  • Press and hold button to record - currently playing loop is stopped, and recording is started.
  • Release button - recording is stopped and starts playing.

To make this work:

  • Prepare the Morphagene by setting the Record option (rsop) in the options.txt file on the SD card to '1'.
  • Patch the TRIGGER output of the TRIG BUTTON to the RECORD input of the Morphagene
  • Patch the INVERSE output of the TRIG BUTTOON to the PLAY input of the Morphagene

Now:

  • When pressing (and holding) the TRIG BUTTON the Morphagene start recording (and stops playing).
  • When releasing the TRIG BUTTON the Morphagene stops recording and starts playing.
  • If in Clock Divider mode and no Clock signal is present at the CLOCK input, the tempo is set to the time between pressing and releasing the button.

Content:

In this repo you'll find:

  • Arduino program
  • Schematics
  • BOM
  • KiCad project with schematics & PCB & FrontPanel PCB
  • STL file for printing the buttons
  • Several pictures

Buying a kit

If you'd like to build this module you can buy a kit with:

  • PCB
  • Frontpanel
  • 3D printed buttons

Contact me if you are interested.

By Jan den Besten www.jandenbesten.com

morphalogic's People

Contributors

janburp avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.