Jump to content

TK.

Administrators
  • Posts

    15,199
  • Joined

Posts posted by TK.

  1. Just got a flashback: this is actually a known issue and I thought that I fixed this some years ago... somehow the change didn't find it's way into the repository.

    I updated mios32/LPC17xx/mios32_board.c, please update your repository

    Best Regards, Thorsten.

  2. There are good reasons why I decided to use an UART based MIDI interface for interconnections:

    • universal approach, easy to setup from a (PC) and easy to connect to other cores
    • MIDI messages are buffered via FIFOs, this relaxes the MIOS32 application requirement. E.g. it could prioritize the handling of other tasks and doesn't need to frequently poll for incoming messages to avoid information loss. By default the FIFOs are dimensioned with 64bytes, which means that we can bridge up to 20 mS
    • no need to program special interface communication handlers -> less troublesome & no special knowledge required
    • MIDI cable can be up to 10m
    • optocouplers decouple the noisy MF voltage from the MIOS32 core, this improves EMC
    • level-shifting 3.3V to 5V part of the physical MIDI interface

    So, if you are searching for alternative interfaces, they all have cons

    • you have to learn how to program such interfaces. I won't have so much time to help you on this... you've to find your own way
    • the MBNB_MF_NG firmware is programmed in assembly language which is difficult to enhance for people who never did this before
    • all IO pins of the MBHP_MF_NG module are allocated, for a different interface you've not only program a new firmware, you also have to change the circuit

    Possible interfaces:

    SPI

    Cons:

    • no programming example available for MIOS8
    • requires 4 IO pins (RC3, RC4, RC5, RA5)
      MBHP_MF_NG circuit has to be modified. But especially RA5 does hurt, since this is an analog input (actually a killer argument)
    • no programming via MIDI possible anymore, you've to use a PIC programmer instead
    • actually more valuable than MIDI ports, since only 3 SPI interface ports exist on a typical MIOS32 core. One (J8/9) is allocated for SRIO, another one (J16) for SD Card and Ethernet at 3.3V level, another one (J19) is free, but typically used for AOUT/AINSER, etc... However, if SPI, than you would either have to sacrifice J8/9 (-> no SRIO), or J19 (-> probably unusued in your application? But couldn't be used for all applications, so: only a dedicated solution for your purposes)
    • MIOS32 core has to frequently service the SPI to avoid message loss
    • programming will be much more complicated

    I2C

    Cons: 

    • requires 2 IO pins (RC3, RC4)
      MBHP_MF_NG circuit has to be modified
    • no programming via MIDI possible anymore, you've to use a PIC programmer instead
    • MIOS32 core has to frequently service the I2C
      I2C overhead higher than for other interfaces, will slow down your application and/or result into message loss
    • programming will be much more complicated

    CAN

    Cons:

    • requires different PIC chip (e.g. PIC18F4685)
    • requires 2 IO pins (RB2, RB3)
      MBHP_MF_NG circuit has to be modified
    • MIOS32 core has to frequently service the CAN interface.
      Similar to I2C and SPI there is a high risk for message loss if this isn't done frequently
    • programming will be most complicated compared to other interfaces

    Best Regards, Thorsten.

  3. Finally!!! :)

    I will look into the velocity issue soon

    The board that I built some years ago is still functional and I typically show it to MIDIbox HQ visitors as one of the unknown projects that the community started but never released :)

    Best Regards, Thorsten.

  4. This was a translation error in the code, it's fixed now (and enhanced by a new feature! :)

    http://www.ucapps.de/mios32/midibox_seq_v4_095_pre12.zip

       o AOUT: Channel 9..12/13..15 now set the gate pins #1/3/5/7 as documented (previously it was #1/2/3/4 due to a code translation error)
         New: gate pins #2/4/6/8 are now set whenever the velocity is >100.
         This way the pins can be used as an accent trigger
    

    Best Regards, Thorsten.

  5. This is a very clever idea, thanks for this!! :cheers:

    For those who want to try it out - it's now available in following preliminary release:
    http://www.ucapps.de/mios32/midibox_seq_v4_095_pre12.zip

       o AOUT: Channel 9..12/13..15 now set the gate pins #1/3/5/7 as documented (previously it was #1/2/3/4 due to a code translation error)
         New: gate pins #2/4/6/8 are now set whenever the velocity is >100.
         This way the pins can be used as an accent trigger
    

    Best Regards, Thorsten.

  6. To 1) yes, you've to add a SD Card.
    If you haven't purchased the SD Card socket yet, you could also use a common Mini SD Card adapter as available in super markets. See also the bottom of this page ("Alternative Adapter for MBHP_CORE_STM32F4 module): http://www.ucapps.de/mbhp_sdcard.html

    2) programming is similar, but parameters have to be entered into the .NGC file.
    See also following page: http://ucapps.de/midibox_ng_manual_ngc.html
    Search for "he keyboard command"

    3) see kb_2.ngc and kb_6.ngc/kb_6.ngr example configurations

    Best Regards, Thorsten.

  7. I noticed that the last release was done 2 years ago, although many preliminary versions have been created meanwhile.

    Therefore it's now officially available.

    From the ChangeLog:

    MIDIbox NG V1.036
    ~~~~~~~~~~~~~~~~~
    
       o new .NGR script command: send_seq (see cfg/test/seq* examples)
    
       o added new MIDI event types: Clock, Start, Stop, Cont
    
       o added new meta events to control a MIDI clock divider:
         MClkSetDivider, MClkDecDivider, MClkIncDivider
    
       o added new .NGC file configuration parameters:
         MidiClkOutPorts and MidiClkInPorts
    
       o new LCD format character '%L' allows to display logic control digits
         (MTC and status digits)
    
       o added new .NGR commands SET_KB_TRANSPOSE and SET_KB_VELOCITY_MAP.
         The configuration example can be found under cfg/tests/kb_6.ng*
    
       o encoder absolute mode: negative ranges are now handled correctly
    
       o .NGR LCD command: %d outputs the ^value
    

    Best Regards, Thorsten.

  8. Probably I found the problem, please try this version:
    -> http://www.ucapps.de/mios32/midibox_seq_v4_095_pre10.zip

    Whenever the "step edit" feature was used in EDIT page, the played notes remained in the queue and then overwrote notes during live recording.

    Now they should be properly erased.

    If the issue happens again, open MIOS Studio and enter "dbg_record" in the MIOS Terminal.
    This should give you a list of played notes - and maybe help to understand the problem (and to give me more information :)

    However, probably you won't need this debug option anymore if the bugfix is working as intended.

    Best Regards, Thorsten.

  9. Great that this helped at your side! :)

    But for the records: currently I'm not able to reproduce this issue.

    The test procedure:

    • turn on MIDIbox with unconfigured AOUT module
    • in CV page selected AOUT_NG module
    • exit CV page (so that this setting will be stored)
    • power-cycle MBSEQ
    • -> AOUT_NG properly configured and working
    • can be repeated with multiple power-cycles: AOUT_NG properly configured and working

    Best Regards, Thorsten.

  10. On 16.1.2018 at 10:05 PM, jzurd0 said:

    Another suggestion for future releases that could be interesting but not sure about it's complexity:

     Auto-fill steps while in DRUM track mode,

    Let's say you press GP3 button (fill start) for two seconds, that would invoke FILL mode ( "FILL" flashing above the steps), without (or not?) releasing GP3 press GP11 (fill end) to set the end of the steps to be auto filled: steps 3 to 11. 

    Ok, added to the wish list.

    I guess that this could be useful for common tracks as well.

    On 19.1.2018 at 11:37 PM, Rio said:

    upps.. since my last update (from svn rev.2551 to rev.2561) my SEQ switched (always) after booting to the option 'JAM' instead "T&A" on the following page

    Should be fixed now:
    http://www.ucapps.de/mios32/midibox_seq_v4_095_pre9.zip

    2 hours ago, jarvis said:

    Disregard that question - I figured it out. This sequencer keeps amazing me!

    If anyone else hasn't figured it out:

    On your target track (the one with the notes you want to play), open the mode menu. Set mode to 'normal', select a bus, and change STrg to 'on'.

    On your 'step' track (the one to advance the steps of the target track), open the event menu. Select the bus you specified for the target track. Now any steps you enter in edit mode will cause the sequencer of the target track to advance a step.

    :cheers:

    A frequently requested feature, meanwhile even mentioned in one of Oozitron's tutorial videos :)

    Best Regards, Thorsten.

×
×
  • Create New...