Jump to content

TK.

Administrators
  • Posts

    15,198
  • Joined

Posts posted by TK.

  1. The gate LEDs are a good indicator, if the Core->MAX525 communication is working or not, because an unconnected bipolar PSU or shunt won't affect this.

     

    Apparently the communication is not working, otherwise the gates would be enabled whenever a note event is played.

     

    Just to doublecheck:

     

    I guess that you are trying this example: http://svnmios.midibox.org/filedetails.php?repname=svn.mios32&path=%2Ftrunk%2Fapps%2Fcontrollers%2Fmidibox_ng_v1%2Fcfg%2Ftests%2Fcvnotes.ngc

     

    Did you change:

    AOUT  type=AOUT_NG  cs=0  num_channels=8

    to:

    AOUT  type=AOUT  cs=0  num_channels=8

    to select the right protocol?

     

    If yes: doublecheck the connections between AOUT module and MBHP_CORE_LPC17::J19.

     

    Best Regards, Thorsten.

  2. Did you consider, that for the PIC18F4685 D2 and D3 of the OPL3 board are available at Pin RE1 and RE2 of the PIC?

    Because RB2 and RB3 are reserved for the CAN interface.

     

    This doesn't explain why you don't see an effect at D0 and D1.

    But it could explain, why you noticed a difference with the PIC18F4620

     

    Best Regards, Thorsten.

  3. Are you able to control J15:D0..D3 on the MBHP_CORE module with the mbfm_interconnection_test when the MBHP_OPL3 module is *not* connected?

     

    Could you please do this check with PIC18F4685 and PIC18F4620?

     

    Best Regards, Thorsten.

  4. Klar, wenn Du die MIDIbox NG Applikation verwendest, definierst Du die Pin-Belegung ja nicht in der Firmware, sondern in Deinem .NGC File.

     

    Hier muessen lediglich die beiden Pin-Zuweisungen vertauscht werden.

     

    Beispiel: aus

    ENC n=  1   sr= 1  pins=0:1   type=non_detented
    

    wird:

     

    ENC n=  1   sr= 1  pins=1:0   type=non_detented
    

    Gruss, Thorsten.

  5. Ok, I see!

    In the hysteresis function I haven't considered that somebody could use the new switch mode with a reduced range.

    This should be fixed now: http://www.ucapps.de/mios32/midibox_ng_v1_030_pre3.zip

     

    But you have to change your hardware as well.

    (don't worry, no risk for damage!)

     

    One side of the button should be connected to ground, the other to the analog input.

    And the Pull-Up resistor is mandatory, otherwise the input will float when the button is not closed, and this will result into random MIDI events.

     

    The other unused inputs can be connected to ground directly, no need for 220 Ohm resistors.

     

    Best Regards, Thorsten.

  6. Could you please try following version: http://www.ucapps.de/mios32/midibox_ng_v1_030_pre2.zip

     

    It supports the new "ain_mode=Switch", which should work much better:

       o added ain_mode=Switch for AIN and AINSER events.
         Can be used if buttons are connected to analog inputs. The event will send the
         min value if a 30% threshold is reached, and the max value if a 70% threshold
         is reached.
         Schematic:  Ground |----o Button o-----> analog input + 10k Pull-Up resistor to 3.3V (AIN) resp. 5V (AINSER)
    

    No .NGR hack required anymore :)

     

    I tested this with:

    EVENT_AINSER id=  1  type=CC     ain_mode=Switch  chn= 1 cc= 16   range=  0:127 offset=  0  ports=1000100000001000  lcd_pos=1:1:1  label="^std_aser"
    

     

    Best Regards, Thorsten.

  7. Please try following version: http://www.ucapps.de/mios32/midibox_ng_v1_030_pre2.zip

     

       o added new meta events to control the internal MIDI clock generator:
         MClkPlay, MClkStop, MClkPlayStop, MClkPause, MClkDecTempo, MClkIncTempo, MClkSetTempo.
         Example can be found under cfg/test/midiclk.ngc
    
       o added new string formatting items:
         %t to display MIDI clock state (Play/Stop)
         %T to display tempo (BPM)
    
       o added new MClk menu page to SCS to control the tempo w/o dedicated controllers
    

    Best Regards, Thorsten.

  8. You could try if it works better for you if you invert the "fast" function selected with the SHIFT button.

     

    For this, open src/cs_menu.inc, search for

    btfss   CS_MENU_MODE, CS_MENU_MODE_SHIFT_PRESSED

    replace "btfss" by "btfsc"

     

    Thereafter build a new .hex file (see also the Wiki for more infos on the toolchain)

     

    Alternatively it should also be possible to set a specific speed for the cutoff encoder in the CS_MENU_EncSpeedSet function if you prefer this (but I would have to test the code before providing it)

     

    Best Regards, Thorsten.

  9. Servus,

     

    welchen Widerstandswert haben denn die Schieberegler? Und haben sie (hoffentlich) eine lineare, oder eine logarthmische Kennlinie? (das koenntest Du mit einem Ohmmeter ueberpruefen)

     

    Falls das nicht weiterhilft, wuerde ich empfehlen, die Fader abzustoepseln, und temporaer die Eingaenge auf Masse zu haengen.

    Jittert es dann immer noch?

    Wenn ja: Loetfehler!

     

    Ist es ausserdem möglich, Schieberegler und Pots an einen Stecker des Ainsermodul gemischt anzuhängen?

     

    ja, kein problem.

     

    Gruss, Thorsten.

  10. Yes, it's possible to run multiple instances.

     

    There are two solutions:

     

    1) just duplicate the MIOS_Studio.app, and call it "MIOS_Studio Second.app"

     

    2) call the application from the command line (I prefer this way).

     

    E.g. added following aliases to my ~/.batch_profile

    alias ms='/Applications/MIOS_Studio.app/Contents/MacOS/MIOS_Studio'
    alias ms_batch='/Applications/MIOS_Studio.app/Contents/MacOS/MIOS_Studio --batch'

    Whenever I need an additional session, I enter:

     

    ms &

     

    Or whenever I want to upload a .hex file from the terminal, I use ms_batch

    Enter

    ms_batch --help

    for additional informations.

     

    Best Regards, Thorsten.

  11. By default following stack size is used (see programming_models/traditional/FreeRTOSConfig.h):

    #ifndef MIOS32_MINIMAL_STACK_SIZE
    #define MIOS32_MINIMAL_STACK_SIZE 1024
    #endif
    
    ...
    
    #define configMINIMAL_STACK_SIZE            ( ( unsigned portSHORT ) (MIOS32_MINIMAL_STACK_SIZE/4) )
    

    as you can see, the byte size has to be divided by 4, because FreeRTOS counts the memory word-wise

     

    Which means, that you tried to allocate 24580 bytes - which fails (for obvious reasons).

    Note that programming_models/traditional/main.c creates two additional tasks for MIDI and other purposes, which need memory from the heap as well (1024 bytes per task as defined with MIOS32_MINIMAL_STACK_SIZE)

     

    Best Regards, Thorsten.

×
×
  • Create New...