Skip to content

rio-rattenrudel/mios32

 
 

Repository files navigation

MIOS32 - MBSEQ v4 - MOD

Preamble

This fork contains heavy modifications to the MBSEQ v4 Master Branch. The customizations are largely compatible with the original version (especially for the LPC1769 core), but include the following changes. The master branch version on which the modifications are based lies in the branch 'original'. All changes in the source are uniformly marked with beginning and ending comment and described in detail in an explicite info file (in German).

Modifications

  1. Hardware Config - rio/MBSEQ_HW.V4
  • A new hardware-config file has been added: rio/MBSEQ_HW.V4, which contains a few own adjustments of my hardware.
    • Tap Tempo - Beat Controller Config
    • Clock Shifter Config
    • Clock Shifter Up/Down Buttons
    • Trigger Stepview Mode
    • Peavey Analog Filter: CC to Sysex
    • Proteus / XLTurbo Buttons
    • Prev/Next Group Buttons
    • Prev/Next Track Buttons
    • Datawheel Assignments
  1. Set Default Mixer Map CCs (Bank #32 on CC4)
  • The default CCs have been changed, also with the background of CC #32 (Bankchange) always ready to have.
  1. Using the BPM DataWheel in MUTE and PATTERN SCREEN
  • This is comfortable in these screens.
  1. Disable Board LEDs
  • The LEDs actually shimmered through the case and are irrelevant.
  1. Fixed: Selected Pattern Group - Display Update
  • This fix shows the patterns (you want to change) correctly.
  1. Changed: MIXER - Separated Load & Dump CC
  • Mixer load and mixer dump are available here as two independent CCs as they work completely independently of each other. "Load" - loads the map time-consuming from the SD. This can happen before a pending change. The "dump", however, sends the map directly out.
  1. Changed: Bank Change should be set, but not executed
  • Incoming bank changes should be registered, but not immediately cause a change. This is done by the pattern change.
  1. Little Remote Functions
  • Little Remote CCs were introduced to allow fast and direct working on the sequencer externally. Some functions allow fast movement within the views, other functions are for copying, pasting or editing steps. In addition, patterns can be muted or the tempo can be adjusted or, last but not least, a mixer dump can be triggered.

      a. Feature: Little Remote Functions (+Mixer Dump +BPM)

      b. Fixed: Little Remote Functions (BPM Assignments)

  1. Fixed: Visual Updates for playing pattern

  2. Expanded LFO

      a. Feature: Expanded LFO with special waveforms

  • The LFO has been enhanced with special waveforms: quantized saws and saws with different rising course, where in addition to the progression (quarter, half, 3 quarter, everything) a rate-multiplier and a quantizer can be set. Also, the progression can be reversed. In addition, the phase endpoint was corrected.

      b. Feature: Expanded LFO II (Reset, Delayed, Display)

  • Furthermore, a reset count was introduced for the effect of rising spirals and a delay time was introduced before the LFO starts. The first version of a fade-out (fade high/low) was implemented (here still faulty).

      c. Fixed: Expanded LFO - Fade out

  • The fade-out feature has been fixed here.

      d. Fixed: Use only the activated CC values of the tracks for the LFO + Refactoring

      e. Fixed: Use only the activated CC values of the tracks for the LFO II

  • Note: affects data storage
  1. Feature: Proteus 2000 Integration

      [Updated Version]

  • It is possible to directly select the channel of the Proteus devices - even if you have a proteus device. the associated buttons can be found in the hardware configuration file.
  1. Changed: Ignore Multi-Selection for tracks
  • I find it difficult to work with multiple selection, and especially since it is possible to select the tracks much faster without the multiple selection.
  1. Feature: Chord3 - Replacement (root, inv I, inv II)
  • A complete and very own chord replacement with a lot of inversions

  • Note: affects data storage

  1. Feature: Mutes Layer

      [Updated Version]

  • A mute-layer parameter is the fastest and most direct way (without latences) to automatically mute or unmute tracks.

  • Note: affects data storage

  1. Changed: Use IIC-HACK firmware to allow 8 IIC port
  • This hack allows you to use 2x Quad IIC modules in a row. The requirement is that the firmware of the IIC Pics get its own (and therefore higher) ID.
  1. Fixed: Start playback once - fixed bouncing button
  • Simple fix to prevent the bouncing of a more used button.
  1. Poly Pressure Feature
  • Special feature to enable sending of Poly Pressure events (equivalent to CC). It was less about the pressure (multi aftertouch) event itself, but rather to be able to control all the parameters of the Access Virus A,B,C... etc. Polypressure can be sent by Layer, Mixer or LFO.

      a. Feature: Poly Pressure (Poly Aftertouch)

  • The Extra-CC assignment can be changed by the 13th button to PP (PolyPressure). Then the LFO will be sent out as a PolyPressure Event. In the track layer, the PP event can now also be selected equivalently to the CC.

      b. Feature: Poly Pressure II (Mixer)

      [Updated Version]

  • In the Mixer Map, the CC assignments (128..255) are considered PP assignments (PolyPressure). These PP assignments are represented by the number 1..127 and a '+' character.

  • Note: affects data storage

  1. Feature: Tap Tempo - Beat Controller
  • This feature allows the (repeated) sending of tap tempo information to a selected port. The tap tempo is triggered again by "Start" and "BPM" updates.
  1. Feature: Prev/Next Button Assignments

      a. Added: Prev/Next Group

      b. Added: Prev/Next Track

  • This feature allows the button assignment to select previous or next groups or tracks.
  1. Feature: Clock Shifter
  • This feature adds the clock shifter algorithm to a selected port. A port and a standard offset can be defined in the hardware configuration. The offset ranges from 0..95 (= 1bar [4/4 beat], values> 48 representing the negative values). With a user adjustment (via buttons), the offset can be moved forward or backward indefinitely.
  1. Added: Flashing GATE Cursor
  • With the feature, the step cursor for the GATE flashes in Edit-View.
  1. Feature: Auto Fast Mode 2
  • Now this hw config param (ENC_AUTO_FAST 2) activates the fast mode for all encoder/pages/par initially, what the encoder doesn't wear out so quickly.
  1. Datawheel Assignment / Secondary Button-Function (special behaviour)
  • The mixer name is limited to 16 characters in order to store addition values for 1 mixer channel, 2 parameters and 1 mod to the Mixer Map. These 4 additional pieces of information are relevant for the data wheel assignment. In the standard case, the BPM value is changed in the mute and pattern page by the datawheel. Otherwise the defined parameters of the mixer channel are used. The mod value signals whether parameters should be used reverse (127..0 instead of 0..127), which can be selected using the buttons below the Par1 and Par2 info.

  • The parameters can be selected during runtime in the mute or pattern page using DATAWHEEL ACTION and SECONDARY ACTION. There are also several modes behind it:

      a. BPM can be halfed or doubled

      b. PAR1 and PAR2 can be used single or combined with (+/-) operation

      c. PAR1 increased or decreased by 25% holding the FINETUNE button

  • The BUTTON_EXIT (normaly bound to options page) is used here (mute and pattern page) for toggling between fast / normal behavior. There is now also a BUTTON_FINETUNE_ENCODER config option to set the encoder movement to slow while it is pressed. In the edit page, the stepviews for the held DATAWHEEL ACTION Button can be selected with the datawheel. The SECONDARY ACTION button toggles between the Proteus Pages (P2000, XLTurbo).

  • Note: affects data storage

  1. Peavey Spectrum Analog Filter CC To SysEx
  • This feature enables the support of Peavey Spectrum Analog Filter, which only accepts SysEx for all parameters of EditBuffer. That's why the CC to SysEx conversion came into play. There is a new SysEx routine, which has been adapted in the mixer and seq_midi_out sources. Port, Channel, CC-Offset and the Vol (1..3) number for the velocity can be configured in the hardware file.

  • Note: affects data storage

  1. Trigger Stepview Playback (instead pause button)
  • Alternatively, you can use the pause button to move the playing cursor to the visible stepview within the next synchronized measure event. It can be activated through the config file.
  1. Track FX: "Access Virus" / Mixer: FX Send

      a. Fixed: Color Range -64..63

      b. Fixed: Initial Values

      c. Fixed: Initial Values II

  • This feature allows the configuration of the Access Virus Fx parameters in the Track FX section and is then sent to the selected Ch / Port. This is necessary in order to be able to individually control the Multi-FX parameters in the Virus’s Multi Single mode. The "Fx Send" can then be individually defined in the mixer map. Alternatively you can use the "FX Send 113" and "Expression 11" as standard parameters in the mixer map (via SEQ_MIXER_USE_ALTERNATIVE_PARAM Flag).

  • Note: affects data storage

  1. Live Recording Quantize Fix
  • Otherwise, the quantized recording loses its sustain (GLD), due to the nextstep offset, since the playing step note is not muted (playing) and the record loses the (note / sustain) information in the nextstep.
  1. Roll MAX value for editing encoder
  • Value inputs from encoders can scroll up to the min / max value that exceeds the limits (at least with a small delay beforehand) for CC, PolyPressure, PitchBend, AfterTouch

Recompile sizes

Recompiling 4.097:
--------------------------------------------------------------------
Application successfully built for:
Processor: LPC1769
Family:    LPC17xx
Board:     MBHP_CORE_LPC17
LCD:       universal
--------------------------------------------------------------------

original size:
------------------
arm-none-eabi-size project_build/project.elf
   text    data     bss     dec     hex filename
 409684     936   62552  473172   73854 project_build/project.elf
10000000 B __ram_start
10007d58 B __ram_end
2007c000 D __ram_start_ahb
20083aa8 B __ram_end_ahb

modified size (with IIC Hack):
-----------------------------
arm-none-eabi-size project_build/project.elf
   text    data     bss     dec     hex filename
 423572     960   62912  487444   77014 project_build/project.elf
10000000 B __ram_start
10007ec0 B __ram_end
2007c000 D __ram_start_ahb
20083ac0 B __ram_end_ahb
-----------------------------------------------------------------

About

MIOS32

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 64.9%
  • C++ 29.2%
  • Makefile 2.1%
  • Objective-C++ 1.0%
  • HTML 0.9%
  • Shell 0.7%
  • Other 1.2%