Jump to content

TK.

Administrators
  • Posts

    15,199
  • Joined

Posts posted by TK.

  1. The J1/J2 sockets are not "polarized" (no notch) - probably you decided this due to the missing space.

    But I would prefer this against J2 - so, just remove J2 again to make place for a polarized J1 connector.

    If somebody would like to chain multiple modules, he has to build an external adapter and solder it directly on the required pins.

     

     

    I isolated AGND and GND, and both top and bottom planes are connected. Is this a good idea? On the AOUT_NG PCB only the top layer is connected.

     

    to which ground are they connected?

    I would use the digital GND for both planes.

     

    Best Regards, Thorsten.

  2. Good progress! :)

     

     

    Everything is working except that after release the shift button and press it again, then all encoders are "activated" again, regardless their previous state.

     

    This shouldn't happen if you remove "Bank=2" from the EVENT_ENC statements which should be controlled from the .NGR script.

    Because with "Bank=2" the encoders will be part of the bank, and therefore automatically activated on each bank switching.

     

    Best Regards, Thorsten.

  3. I wonder if someone who is more familiar with the midibox than I am can comment on the advisability of simply lifting the back of R22 from the midibox board and connecting it to 5V (maybe from J2). Would that have any adverse consequences?

     

    Unfortunately this isn't possible with the LPC1769 due to a hardware bug in the chip.

     

    As you can read at the MBHP_CORE_LPC17 page: -> http://www.ucapps.de/mbhp_core_lpc17.html

    • output pins can't be used in open drain mode if a peripheral function like SPI or UART is assigned to it. This seems to be a design bug, because it isn't mentioned in the user manual (in distance: the description of the IO configuration implies that it should work, but it doesn't) - NXP support contacted, no reply yet!

     

    The consequence is, that the MIDI OUT pin can only switch between 0V and 3.3V, because works in push-pull mode.

     

    A workaround would be to level-shift the output to 5V, e.g. with a 74HCT541.

    This chip is already used for level-shifting, see also http://www.ucapps.de/mbhp/mbhp_core_lpc17.pdf

    You would need another one for the MIDI OUT port.

     

    Best Regards, Thorsten.

  4. Looks like a bug in the RAM based Wavetable option - I will check this soon!

    (I wasn't able to try SysEx access with this option due to the MacOS Java issues... :-/)

     

    As a temporary workaround, you could disable this option in your setup_*.asm file:

    #define WAVETABLES_IN_RAM   0
    

     

    Best Regards, Thorsten.

  5. MBCV2 got a hardware configuration file which allows to specify the DIN/DOUT pin assignments, and the AOUT interface.

    -> http://svnmios.midibox.org/filedetails.php?repname=svn.mios32&path=%2Ftrunk%2Fapps%2Fprocessing%2Fmidibox_cv_v2%2Fhwcfg%2Fstandard%2FMBCV_HW.CV2

     

    IMPORTANT: upload the MBCV_HW.CV2 file to the root directory of your SD Card, and especially check the AOUT_IF setting, because this is the only way to select the right AOUT interface meanwhile.

    (the AOUT selection in DEFAULT.CV2 is obsolete!)

     

    I also increased the number of banks to 8.

    With the default LRE encoder assignments, it "feels" like each CV channel has it's own bank which allows to change values like Octave/Semitone transpose, Finetune, Portamento, LFO1/2 Depth and Rate, ENV1 Depth and Decay, ENV2 Depth and Rate and MOD1..4 Depth.

    It's possible to customize the assignments by pressing SCS SHIFT+"Enc Cfg".

    E.g. you are able to change the assignments, so that parameters of different channels can be controlled from a single encoder bank! :)

     

    Best Regards, Thorsten.

  6. Either that, or you simply make the window above the CLCD several mm larger.

     

    Yes, I would prefer this. We never know how long these OLEDs are available - and how long they are working! E.g. let's say the end-of-life is in 5 years and you need a replacement for whatever reason. Then it's a big advantage if the case has a larger window so that other displays fit as well.

     

    Meanwhile in the MIDIbox lab:

    I mounted the modules at the top of a wooden case so that they have stable interconnections and are transportable.

    mbcv_v2_proto3.jpg

     

    For a user this might look ugly, but for me as developer it's the ideal way of mounting, since I've access to all signals, connectors, jumpers without opening a case! :smile:

     

    I also replaced the cheap LCD by a Newhaven 2x20 OLED.

    mbcv_v2_proto4.jpg

     

    This display is not so high like the previous CLCD, but this has to be changed by using standoffs.

    Otherwise the height isn't aligned with the graphical OLEDs and the encoder knobs.

     

    Best Regards, Thorsten.

  7. have you plan something about 10v/15v gate...

     

    You could add a ULN2803 after the DOUT shift registers and power the COM pin at +12V (voltage taken from the AOUT module).

    Since this is an open collector driver, you've to add 1k resistors between 12V and each output.

    In addition, you've to invert the gates in the MBCV2 configuration.

     

     

    Btw.: current state

    - I added many performance improvements in the last days

    - support for LRE8x2 (encoders and LED rings). Up to two LRE8x2 modules can be connected, makes 32 encoders and 32 LED rings.

    - each LRE8x2 has 8 banks with soft-assignable parameters

    - assignments stored on SD Card

    - parameter names and values are print on LCD whenever an encoder is moved

    - bidirectional updates. E.g. if a parameter which is assigned to an encoder is changed in Lemur or in the SCS, the LED ring will reflect the new value. And vice versa: Lemur will be informed whenever a parameter is changed with an encoder

    - fixed bidirectional OSC based communication. Here the setup instructions: http://svnmios.midibox.org/filedetails.php?repname=svn.mios32&path=%2Ftrunk%2Fapps%2Fprocessing%2Fmidibox_cv_v2%2Flemur%2FREADME.txt

     

    Best Regards, Thorsten.

  8. Welcome on board! :)

     

    If pots and faders are still desired, it's probably better to work on a different control surface which uses dedicated control elements (pots/faders/buttons/LEDs) for each parameter.

    Today such a controller would be created with MIDIbox NG: http://www.ucapps.de/midibox_ng.html

     

    The MIOS32 platform isn't much more expensive than the old PIC based platform, but easier to use and especially more flexible.

     

    How would your ideal control surface look like? We could help you to create the appr. .NGC setup

     

    Best Regards, Thorsten.

  9. Could you please give me your complete network configuration?

    (enter "network" in MIOS Terminal, and copy&paste the output into this thread)

     

    It doesn't matter if an ethernet cable is connected or not, I mainly need to know how which OSC protocol is selected for the different ports.

    Maybe this helps me to reproduce the issue with some stress tests

     

    Best Regards, Thorsten.

  10. updated the schematic, do you mean like this? 

     

    I would connect the first 8 displays to buffered outputs as well.

     

    Change the schematic the following way:

    connect the J15 based SCLK output to A0, A2, A4, A6 of the 74HC541

    connect the J15 based SDA output to A1, A3, A5, A7 of the 74HC541

    connect D0/D1 of the first 8 displays to Y0/Y1 of the 74HC541

    connect D0/D1 of the next 8 displays to Y2/Y3 of the 74HC541

     

    Best Regards, Thorsten.

  11. Well, in your .ngc setup the section is only executed with button id=70

     

    You could execute it with id=1371 as well (just configure it as a meta event); the CC event could be sent with the "send <midi-event>" command from the .ngr script.

     

    Best Regards, Thorsten.

  12. The button can't be found because it has an invalid fwd_id argument, and therefore was rejected:

    [79761.466] [MBNG_FILE_C:651] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.469] [MBNG_FILE_C:653] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.469] [MBNG_FILE_C:655] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.472] [MBNG_FILE_C:657] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.473] [MBNG_FILE_C:659] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.477] [MBNG_FILE_C:661] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.477] [MBNG_FILE_C:663] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.480] [MBNG_FILE_C:665] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.480] [MBNG_FILE_C:669] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.484] [MBNG_FILE_C:671] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.484] [MBNG_FILE_C:673] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.487] [MBNG_FILE_C:675] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.487] [MBNG_FILE_C:677] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.491] [MBNG_FILE_C:679] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.491] [MBNG_FILE_C:681] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.554] [MBNG_FILE_C:683] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.554] [MBNG_FILE_C:813] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.557] [MBNG_FILE_C:815] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.557] [MBNG_FILE_C:817] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.561] [MBNG_FILE_C:819] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.561] [MBNG_FILE_C:821] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.564] [MBNG_FILE_C:823] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.564] [MBNG_FILE_C:825] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.568] [MBNG_FILE_C:827] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.568] [MBNG_FILE_C:831] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.571] [MBNG_FILE_C:833] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.571] [MBNG_FILE_C:835] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.575] [MBNG_FILE_C:837] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.575] [MBNG_FILE_C:839] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.578] [MBNG_FILE_C:841] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.578] [MBNG_FILE_C:843] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED
    [79761.846] [MBNG_FILE_C:845] ERROR: invalid fwd_id controller name in EVENT_BUTTON ... fwd_id=<LED

    It seems that the displayed line numbers are not correct (I've to fix this)

     

    But if you search for "fwd_id=<", you will find the wrong definitions.

    After correcting the syntax, "run 2" is executed without error

     

    Best Regards, Thorsten.

×
×
  • Create New...