Jump to content

TK.

Administrators
  • Posts

    15,198
  • Joined

Everything posted by TK.

  1. I guess that you mean MIDI clock/start/stop (MMC isn't supported) They can already be enabled/disabled for each MIDI port in the BPM menu Best Regards, Thorsten.
  2. Yes, this will be possible - it's exactly the intention behind NGR to allow users such customizations without touching the application code. Best Regards, Thorsten.
  3. Yes, for me it will be straightforward - I'm just a bit worried that than more options I'm adding, than more complicated for others to understand the configuration... ;-) Tomorrow I'm planning a change for CV handling anyhow, if nothing else happens, I will add J5 IOs as well Best Regards, Thorsten.
  4. IO Pins are not initialized in your pseudo code. But regardless of this, it will result into the problem that the MBNG application will overwrite IO configurations from different places - and even if we find quick&dirty hacks which avoid such overwrites, you would have to re-do the changes whenever a new firmware version is released. Therefore I recommend to go the common way and to use the existing app like it was intended. Alternatively I could consider to natively support J5 as digital IO in a proper way (which will require changes at many places that I've to work out by myself...) Best Regards, Thorsten.
  5. This example should also work with tact switches. For LEDs you could just use J10B Best Regards, Thorsten.
  6. This should be possible, just configure the analog inputs and trigger the NGR function via an EVENT_AIN You could change the value range and enable the filter function to avoid unintended triggers, a demo can be found here: https://github.com/midibox/mios32/blob/master/apps/controllers/midibox_ng_v1/cfg/tests/ain_fsr.ngc Best Regards, Thorsten.
  7. Thanks a lot Andy and Peter for this great work! Based on this video tutorial I built up my modules yesterday, all are working fine, almost no troubleshooting was required. :) Now I need a case (I ordered a 4ms Pod40X in the hope that the modules will fit into this case without special measures) Best Regards, Thorsten.
  8. Hi Mentat, Which frontpanel are you using? The function still exists, just the button has been renamed to Parameter Layer C. If you are using a MIDIphy frontpanel, drums can be directly selected with the 16 additional "select" buttons in "instrument" mode. Best Regards, Thorsten.
  9. I think that this question is obsolete: Best Regards, Thorsten.
  10. Hi, you don't need to change the existing code to do this, just use the "set_kb_transpose" command in a NGR script. Following example demonstrates this: https://github.com/midibox/mios32/blob/master/apps/controllers/midibox_ng_v1/cfg/tests/kb_6.ngr And here the corresponding events which trigger the ^sections: https://github.com/midibox/mios32/blob/master/apps/controllers/midibox_ng_v1/cfg/tests/kb_6.ngc Best Regards, Thorsten.
  11. Additional notes: could be that you rely on 5V output - in this case change MIOS32_BOARD_PIN_MODE_OUTPUT_PP to MIOS32_BOARD_PIN_MODE_OUTPUT_OD, and add a 1k pull-up to 5V to this pin. And if J10A is already used for SCS inputs (standard), just take J10B.D0 (pin index #8) Best Regards, Thorsten.
  12. Another modification in mbng_file_c.c is required where the number of CS lines is hardcoded (actually you should have seen the error message...) I put an example which works at my side into the demo/mbng_ainser_with_3_cs branch, see: https://github.com/midibox/mios32/commit/ac6151ea7012e2b3e5e6a15575b4c4f92c8ffe2f Best Regards, Thorsten.
  13. You don't need to enhance mios32_spi, just control the additional pin directly from AINSER_SetCs E.g. let's assume that J10.D0 is unused so far, then add to AINSER_Init(): MIOS32_BOARD_J10A_PinInit(0, MIOS32_BOARD_PIN_MODE_OUTPUT_PP); and to AINSER_SetCs: case 2: return MIOS32_BOARD_J10_PinSet(0, value); Best Regards, Thorsten.
  14. Unfortunately there is currently no way without a duplicated track. Background: the sequencer engine handles tracks which are sending to an internal bus (so called "loopback tracks") differently compared to common tracks: they are processed before MIDI events of "common tracks" are scheduled to ensure that transposers/arpeggiators get updated before they play the next note independent from the track order they have no timing information - MIDI notes directly processed without delay, note off, echo, etc that's also the reason why the "Duplicate" Fx doesn't allow to route MIDI events to Bus1..4 This approach solved many problems that we noticed in earlier MBSEQ versions (V1..V3), but it has the drawback that loopback tracks can't be used for sending "common MIDI events" anymore. Best Regards, Thorsten.
  15. TK.

    MCAN

    Hi Bruno, yes, just try it and commit your change in a special branch (from master) - we can merge once we both are satisfied. By searching for defines like MIOS32_SYS_ADDR_SPI_MIDI (e.g. via "grep --rec") you can find the places which need to be modified. Best Regards, Thorsten.
  16. I unplugged the fan power cable at the same day I got my MB6582 from Wilba, and this never caused a problem ;-) Best Regards, Thorsten.
  17. TK.

    MCAN

    Which values would you like to permanently store & change in the bootloader. I need names + sizes I will define those values in mios32_sys.h within the MIOS32_SYS_ADDR_BSL_INFO_BEGIN section -> https://github.com/midibox/mios32/blob/master/include/mios32/mios32_sys.h As you can see, we can either define a block + confirmation value, or individual values + confirm. If you could predict today how many bytes need to be allocated, we could use a single confirmation which saves space for other future extensions (used for other purposes) Best Regards, Thorsten.
  18. Hi Peter, I'm resistent on this feature, because it will dramatically increase the CPU time and RAM consumption. We've up to 256 layers which could send CCs, and we would have to determine the target value when the start CC is played - means, we've to walk the steps until the next CC is found for each layer, this will consume some uS for each layer! The next CC could change while the sequencer is playing, this leads to special treatments at some places... In RAM we've to store the current, target and sent values for each layer, resulting into 3 * 256 bytes Best Regards, Thorsten.
  19. TK.

    MCAN

    We could reserve a bootloader location to make this basic_node number configurable without touching the source code. Similar the way I did for other "permanent" flags & values. Best Regards, Thorsten.
  20. Reverse engineering a protocol for private purposes is one thing, publishing the information another. In any case: please don't publish any specific information about this protocol in this forum, this could bring me (as the forum owner) into serious legal issues! Best Regards, Thorsten. P.S.: I haven't looked into this protocol because I don't like the license. Anything which can't be openly published isn't interesting for my projects.
  21. It's unclear if I should really spend some more time to work on this. If I understood @weasel correctly, he sees a path via Arduino based solutions which he would prefer. In this case my contribution wouldn't add any value... just follow him. Best Regards, Thorsten.
  22. Impressive work! The WS2812 driver was only a quick hack, I was already satisfied after it was working and haven't expected that somebody would ever drive more than 50..100 LEDs. It shouldn't be a big deal to optimize the memory consumption. There are various places in MIOS32 where I already used DMA double buffers (e.g. I2S audio output). Nothing needs to be explored, just translation :) Best Regards, Thorsten.
  23. Yes, each RGB LED will consume 48 bytes. With the latest changes up to 390 RGB LEDs can be defined, and you will get a proper RAM error message if there are too much, such as: /opt/gcc-arm-none-eabi-4_7-2013q3/bin/../lib/gcc/arm-none-eabi/4.7.4/../../../../arm-none-eabi/bin/ld: project_build/project.elf section `.bss' will not fit in region `RAM' /opt/gcc-arm-none-eabi-4_7-2013q3/bin/../lib/gcc/arm-none-eabi/4.7.4/../../../../arm-none-eabi/bin/ld: region `RAM' overflowed by 424 bytes collect2: error: ld returned 1 exit status Best Regards, Thorsten.
  24. Hi, STM32F4 was running out of memory - and due to an wrong linker file entry you haven't got an error after the 128k boundary of the "normal RAM" has been touched. However, this chip has some additional 64k as a so called "core coupled memory", which is located at 0x10000000 I changed the linker file and preload code to support this memory. In addition, in the MBNG application I moved the heap memory into this CCMRAM, giving us about 10k more space. Updates are available at github: https://github.com/midibox/mios32/commit/9dc48579c31766815997b0ce3eac88f9d772578a I havent't checked if this has a new negative side effect, but at least MBNG is booting and RGB LEDs are working Best Regards, Thorsten.
×
×
  • Create New...