This fork contains minor modifications to the original shruthi (1.03) Master Branch. The customizations are compatible (except the "grove templates" storage) with the original version, which lies in the branch 'original'. All changes in the source are uniformly marked with beginning and ending comment.
- Sequences operated by external BPM should behave like driven by internal BPM. That is, sequences are controlled by NOTE On/Off, but the external tempo is used.
- Furthermore, the 12 ticks delay was removed, which otherwise can not be programmed exactly.
- Now the page will be displayed correctly (with shifted offset)
- It is now possible to move with P1, equivalent to the Step Sequencer
- Now the tracker is displayed correctly (with shifted offset)
- The Encoder increment is fixed for Rhythm Page Editor
- Refactoring
- Now the patch contains the "pattern rotation" that is shared with "groove template" storage (Upper Nibble).
- A pattern rotation reset is added for "non-running" patch changes
- Note: affects data storage
5a. Feature: SEQ Tracker Editor III
- Now the "pattern rotation" and "pattern length" can be changed in the tracker page using P1 and P4 while holding S2.
5b. Feature: SEQ Tracker Editor III - part B
- A step can be copied to another position by P2 while holding S2
- Steps can be deleted by P2 while holding S6 (SHIFT) + S2
5c. Feature: SEQ Tracker Editor III - part C
- A part of the pattern can be splitted/copied for every 16th ,8th ,4th ,2th ,1st step(s) by P3 while holding S2
- "Step deletion" resets note to "C3"
- improved S2 handling (S2 also takes the cursor position of the rhythm/controller-page into account)
6a. Feature: Disable paused overlay - Goto Page instead (XT)
6b. Feature: Goto Page II (XT)
- For the XT programmer, you can go directly to the corresponding page when you change an xt parameter
(DISABLE_PAUSED_OVERLAY_GOTOPAGE = 1)
. - Furthermore, the second filter page (multimode filter page) can be fixed when Filter1 parameters are changed (no page jump), which is useful to change both filter1 and filter2 parameters at the same time (with P1..4 and XT filter section)
(STAY_ON_MULTI_FILTER_PAGE = 1)
. - Last but not least, a shorter screensaver time can be set as seconds to extend the life of OLED
(SCREENSAVER_TIME = 100)
.
- The Shruthi can now remember the last cursor position when jumping between SEQ views.
- This feature requires enabled flag:
(SEQ_CURSOR = 1)
- Some XT knobs/parameters can be used for easier operation in SEQ views:
OSC_PARAMETER_2: scrolls (S1: move step, S1+S6: delete)
OSC_RANGE_2: rotate
OSC_OPTION_2: set length
OSC_PARAMETER_1: ignored
OSC_RANGE_1```: delete
ENV_ATTACK_2: ignored
ENV_DECAY_2: ignored
ENV_SUSTAIN_2: ignored
ENV_RELEASE_2: change note
ENV_ATTACK_1: ignored
ENV_DECAY_1: ignored
ENV_SUSTAIN_1: ignored
ENV_RELEASE_1: ignored
- This feature requires enabled flags:
(DISABLE_PAUSED_OVERLAY_GOTOPAGE = 1)
and(SEQ_XT_CONTROL = 1)
- Refactoring has created more space (smaller build size)
64502 (max: 64512)
#define DISABLE_PAUSED_OVERLAY_GOTOPAGE 1
#define SCREENSAVER_TIME 29
#define STAY_ON_MULTI_FILTER_PAGE 1
#define SEQ_CURSOR 1
#define SEQ_XT_CONTROL 1
64410 (max: 64512)
Shruthi-1, a digital/analog hybrid MIDI monosynth.
This project is a redesign of the original Shruti-1, with a spec'ed up CPU,
and a focus on easy upgrades/modification of the analog section.
The ATMega644p allows new features in the firmware -- a larger selection of
oscillator algorithms, a bigger selection of wavetables, and a tiny sequencer.
Original developer: Emilie Gillet ([email protected])
The firmware is released under a GPL3.0 license. It includes a
reimplementation of the formant synthesis algorithm used in Peter Knight's
Cantarino speech synthesizer.
The PCB layouts and schematics (in /hardware/shruthi/design/pcb)
are released under a Creative Commons cc-by-sa 3.0 license - except for some
discontinued filter boards which were released under a cc-by-nc-sa 3.0 license.
Documentation, analyses, simulations and 3D models are released under a
Creative Commons cc-by-sa 3.0 license.