Jump to content

MIDIbox KB


TK.
 Share

Recommended Posts

19 hours ago, latigid on said:

In principle it should work, here's an STM32F4 build of the latest version of MBKB v1:

project.hex

As discussed above, MBNG should be fine (and be easier to configure).

Sweet thanks! Will mess around with NG as well.
Although my question is sort of moot since smash is out of core pcb's.

 

EDIT: dammit sorry for the multiple posts. I kept getting server unavailable / Nginx Error.

Edited by djversus
Link to comment
Share on other sites

  • 3 months later...
  • 4 weeks later...
  • 7 months later...
On 13/10/2014 at 11:59 PM, TK. said:

   o added "break_is_make" option which allows to trigger a note when the break

     contact is activated (nice for playing organ style)

Hi! 

Can you explain why did this option exist ?

I mean... How can it feel different than idle contact + break contact + velocity 255 ? 

Or maybe it is 'just' the "no velocity keyboard" implementation ?

Thanks

Link to comment
Share on other sites

  • 2 months later...

I build midi kb / midi ng with adtm32f4 basecore + diomatrix and keybed pcb midibox_kb_scanmatrix_novel_type1 file: /// C: /Users/Administrator/Downloads/midibox_kb_scanmatrix_type1.pdf but the path of the socket 16 pin of its header is only c1, c # 1, d1, d # 1, e1, f1, f # 1, g1 miod bootloader denagn firmware terbary then input midi kb program through mios studio each one octave what to do following my file include

61K (1).pdf

Link to comment
Share on other sites

  • 2 months later...

Hello, I have tried to ask on several forums however without any final answer than I have found this forum. The situation is:

1. I have started to build a 2 manual midi controller with inbuilt GSI GEMINI sound module. The project is mechanically ready and 80% of the PCBs are ready and built in. The lower manual (KEY2) is 73 key Fatar TP8O with reversed diodes and the upper manual is 61 kex Fatar TP8O.

2. I will use 2 Midibox modules. The first with Midibox KB for scanning of 2 keybeds and the second one with Midibox Ng for scanning of the control buttons, storing presets (CC values from the pots and buttons and Program change parameters) and working as a Midi Router

3. Upper manual will be assigned to Key1 Midi channel 1, Lower manual will be assigned to Key2 - Midi channel 4, 1 pitch bend wheel with modulation will be assigned to KEY2 and both manuals will haveseparate  Sustain pedal and expression pedal inputs connected to direct AIN inputs J5A, J5B

4. I want to make possible to activate and deactivate the "Make is Break" function by activating a Digital input on J10A or J10B. Is it possible to do with Midibox KB? If not I have to install relays to shorten the Make and Break buses physically (It works, I have tried it)

5. My other idea was to implement other functions, see the link and the enclosed files!!! http://midibox.org/forums/topic/20687-midibox_ng-and-kb_transpose/?do=findComment&comment=180349

This week I want to start to make the PCB for Midibox KB board, it should be good to have any feedback if it is enough to calculate with 2 digital inputs to J10 or I have to add relays for contact shortening!

Thank you in advance!

 

Frank

midi.pdf

Gemini.jpg

Architecture.pdf

Link to comment
Share on other sites

Hello,

 

is there anybody who can answer at least the question how can I scan DIN on J10A or J10B and switch on/off the "Make is break function" separately for Key1 and Key2? Of course in runtime. The best should be if somebody could send a sample code how to scan the J10 in Midibox KB (If it is possible). I am not a programmer expert so I would need some help. Enclosed the mechanical status of the controller.

 

Thank you in advance and sorry for my "amateur" questions!

 

Frank

Gemini2.jpg

Link to comment
Share on other sites

  • 10 months later...
On 27/01/2013 at 1:46 PM, TK. said:

The keyboard driver is now integrated into MIDIbox NG V1.014:

On 13/10/2014 at 11:59 PM, TK. said:

 

Hi! 

Using a MIDIbox Hardware Platform, CORE_STM32F4 Module do change the latency that prevent using MidiboxNG instead of MidiboxKb ?

I'm currently doing the keyboard but... There is no "octave up/down" buttons to wire on the MidiKB project. So I need a second STM32F4 with MidiboxNG to do that (and other things).

Will this slow down the latency ? 

What is the best way to link the two STM32F4 (to have only one USB cable to the computer) ? Usb via USB host ? Midi ? An other way ? 

Other question: how do YOU use the midi router of MidiboxKb ? I think it's cool to make old midi stuff converted to USB but I may miss something.

Please tell me if I not clear !

Link to comment
Share on other sites

  • 1 month later...
  • 1 year later...

Hi there,

After getting really enthusiastic about MBHP i decided to lean down an old Solton MS10 to a bare midi keyboard controller. I am a couple of afternoons in and am somewhat stuck.

FYI, the Solton MS10 is a chromatic accordion keyboard, which apparently holds 'Type 3' velocity capable manuals with the diodes inverted (Pull-down enabled on the DIO_MATRIX)

I managed to get the thing working in debug mode. That is the right notes are identified, there is timing info on the break and make contacts when hit. But when i stop debugging mode, no information gets on the USB MIDI ports. FYI i wanted to start with the USB MIDI ports and later add physical MIDI-ports.

My configuration:

[6817.821] 
[6817.821] =================
[6817.821] MIDIboxKB V1.016
[6817.821] =================
[6817.821] 
[6817.821] Init DHCP
[6827.532] kb 1
[6827.534] kb 1 debug off
[6827.534] kb 1 midi_ports 0x1000
[6827.534] kb 1 midi_chn 1
[6827.534] kb 1 note_offset 34
[6827.534] kb 1 rows 14
[6827.534] kb 1 velocity on
[6827.534] kb 1 release_velocity off
[6827.534] kb 1 optimized off
[6827.534] kb 1 dout_sr1 1
[6827.534] kb 1 dout_sr2 2
[6827.535] kb 1 din_sr1 1
[6827.535] kb 1 din_sr2 0
[6827.535] kb 1 din_key_offset 32
[6827.535] kb 1 din_inverted on
[6827.535] kb 1 break_inverted on
[6827.535] kb 1 make_debounced off
[6827.535] kb 1 break_is_make off
[6827.535] kb 1 delay_fastest 10000
[6827.535] kb 1 delay_fastest_black_keys 0
[6827.535] kb 1 delay_fastest_release 150
[6827.535] kb 1 delay_fastest_release_black_keys 0
[6827.536] kb 1 delay_slowest 60000
[6827.536] kb 1 delay_slowest_release 1000
[6827.536] kb 1 ain_pitchwheel off
[6827.536] kb 1 ctrl_pitchwheel 128 (PitchBend)
[6827.536] kb 1 ain_pitchwheel_inverted off
[6827.536] kb 1 ain_modwheel off
[6827.536] kb 1 ctrl_modwheel 1 (CC)
[6827.536] kb 1 ain_modwheel_inverted off
[6827.536] kb 1 ain_expression off
[6827.536] kb 1 ctrl_expression 11 (CC)
[6827.537] kb 1 ain_expression_inverted off
[6827.537] kb 1 ain_sustain off
[6827.537] kb 1 ctrl_sustain 64 (CC)
[6827.537] kb 1 ain_sustain_inverted off
[6827.537] kb 1 ain_sustain_switch off
[6827.537] kb 1 ain_bandwidth_ms 0
[6827.537] AIN Calibration Mode disabled.

Some debugging information:

[6867.972] set kb 1 debug on
[6867.974] Keyboard #1: debug mode enabled
[6870.255] ---
[6870.255] DOUT SR1.7:  00000000  11111111
[6870.255] DOUT SR1.6:  10111111  11111111
[6870.255] DOUT SR1.5:  00000000  11111111
[6870.255] DOUT SR1.4:  11111111  11111111
[6870.256] DOUT SR1.3:  00000000  11111111
[6870.257] DOUT SR1.2:  11111111  11111111
[6870.257] DOUT SR1.1:  00000000  11111111
[6870.257] DOUT SR1.0:  11111111  11111111
[6870.257] DOUT SR2.7:  00000000  11111111
[6870.257] DOUT SR2.6:  11111111  11111111
[6870.257] DOUT SR2.5:  00000000  11111111
[6870.257] DOUT SR2.4:  11111111  11111111
[6870.257] DOUT SR2.3:  00000000  11111111
[6870.257] DOUT SR2.2:  11111000  11111111
[6870.257] DOUT SR2.1:  11111111  11111111
[6870.257] DOUT SR2.0:  11111111  11111111
[6870.257] KB1: DOUT#1.D6 / DIN#1.D1: pressed    -->  key= 1, break contact, note=B-0 (35)
[6870.257] Entry: timestamp_break=0 timestamp_make=0
[6870.270] ---
[6870.270] DOUT SR1.7:  01000000  11111111
[6870.270] DOUT SR1.6:  10111111  11111111
[6870.270] DOUT SR1.5:  00000000  11111111
[6870.270] DOUT SR1.4:  11111111  11111111
[6870.270] DOUT SR1.3:  00000000  11111111
[6870.270] DOUT SR1.2:  11111111  11111111
[6870.270] DOUT SR1.1:  00000000  11111111
[6870.271] DOUT SR1.0:  11111111  11111111
[6870.271] DOUT SR2.7:  00000000  11111111
[6870.271] DOUT SR2.6:  11111111  11111111
[6870.271] DOUT SR2.5:  00000000  11111111
[6870.271] DOUT SR2.4:  11111111  11111111
[6870.271] DOUT SR2.3:  00000000  11111111
[6870.271] DOUT SR2.2:  11111000  11111111
[6870.271] DOUT SR2.1:  11111111  11111111
[6870.271] DOUT SR2.0:  11111111  11111111
[6870.271] KB1: DOUT#1.D7 / DIN#1.D1: pressed    -->  key= 1, make contact, note=B-0 (35)
[6870.272] Entry: timestamp_break=0 timestamp_make=49970
[6872.480] ---
[6872.480] DOUT SR1.7:  00000000  11111111
[6872.480] DOUT SR1.6:  10111111  11111111
[6872.480] DOUT SR1.5:  00000000  11111111
[6872.480] DOUT SR1.4:  11111111  11111111
[6872.480] DOUT SR1.3:  00000000  11111111
[6872.480] DOUT SR1.2:  11111111  11111111
[6872.480] DOUT SR1.1:  00000000  11111111
[6872.480] DOUT SR1.0:  11111111  11111111
[6872.481] DOUT SR2.7:  00000000  11111111
[6872.481] DOUT SR2.6:  11111111  11111111
[6872.481] DOUT SR2.5:  00000000  11111111
[6872.481] DOUT SR2.4:  11111111  11111111
[6872.481] DOUT SR2.3:  00000000  11111111
[6872.481] DOUT SR2.2:  11111000  11111111
[6872.482] DOUT SR2.1:  11111111  11111111
[6872.482] DOUT SR2.0:  11111111  11111111
[6872.482] KB1: DOUT#1.D7 / DIN#1.D1: depressed  -->  key= 1, make contact, note=B-0 (35)
[6872.482] Entry: timestamp_break=0 timestamp_make=49970
[6872.510] ---
[6872.510] DOUT SR1.7:  00000000  11111111
[6872.510] DOUT SR1.6:  11111111  11111111
[6872.510] DOUT SR1.5:  00000000  11111111
[6872.510] DOUT SR1.4:  11111111  11111111
[6872.510] DOUT SR1.3:  00000000  11111111
[6872.510] DOUT SR1.2:  11111111  11111111
[6872.510] DOUT SR1.1:  00000000  11111111
[6872.510] DOUT SR1.0:  11111111  11111111
[6872.511] DOUT SR2.7:  00000000  11111111
[6872.511] DOUT SR2.6:  11111111  11111111
[6872.511] DOUT SR2.5:  00000000  11111111
[6872.511] DOUT SR2.4:  11111111  11111111
[6872.511] DOUT SR2.3:  00000000  11111111
[6872.511] DOUT SR2.2:  11111000  11111111
[6872.511] DOUT SR2.1:  11111111  11111111
[6872.511] DOUT SR2.0:  11111111  11111111
[6872.511] KB1: DOUT#1.D6 / DIN#1.D1: depressed  -->  key= 1, break contact, note=B-0 (35)
[6872.512] Entry: timestamp_break=53876 timestamp_make=49970
[6885.007] ---
[6885.007] DOUT SR1.7:  00000000  11111111
[6885.007] DOUT SR1.6:  11111111  11111111
[6885.007] DOUT SR1.5:  00000000  11111111
[6885.007] DOUT SR1.4:  11111111  11111111
[6885.008] DOUT SR1.3:  00000000  11111111
[6885.008] DOUT SR1.2:  11111111  11111111
[6885.008] DOUT SR1.1:  00000000  11111111
[6885.008] DOUT SR1.0:  11011111  11111111
[6885.008] DOUT SR2.7:  00000000  11111111
[6885.008] DOUT SR2.6:  11111111  11111111
[6885.008] DOUT SR2.5:  00000000  11111111
[6885.008] DOUT SR2.4:  11111111  11111111
[6885.008] DOUT SR2.3:  00000000  11111111
[6885.008] DOUT SR2.2:  11111000  11111111
[6885.009] DOUT SR2.1:  11111111  11111111
[6885.009] DOUT SR2.0:  11111111  11111111
[6885.009] KB1: DOUT#1.D0 / DIN#1.D2: pressed    -->  key=26, break contact, note=C-3 (60)
[6885.009] Entry: timestamp_break=0 timestamp_make=0
[6885.033] ---
[6885.033] DOUT SR1.7:  00000000  11111111
[6885.033] DOUT SR1.6:  11111111  11111111
[6885.033] DOUT SR1.5:  00000000  11111111
[6885.033] DOUT SR1.4:  11111111  11111111
[6885.034] DOUT SR1.3:  00000000  11111111
[6885.034] DOUT SR1.2:  11111111  11111111
[6885.034] DOUT SR1.1:  00100000  11111111
[6885.034] DOUT SR1.0:  11011111  11111111
[6885.034] DOUT SR2.7:  00000000  11111111
[6885.034] DOUT SR2.6:  11111111  11111111
[6885.034] DOUT SR2.5:  00000000  11111111
[6885.034] DOUT SR2.4:  11111111  11111111
[6885.034] DOUT SR2.3:  00000000  11111111
[6885.035] DOUT SR2.2:  11111000  11111111
[6885.035] DOUT SR2.1:  11111111  11111111
[6885.035] DOUT SR2.0:  11111111  11111111
[6885.035] KB1: DOUT#1.D1 / DIN#1.D2: pressed    -->  key=26, make contact, note=C-3 (60)
[6885.035] Entry: timestamp_break=0 timestamp_make=48905
[6888.363] ---
[6888.363] DOUT SR1.7:  00000000  11111111
[6888.363] DOUT SR1.6:  11111111  11111111
[6888.363] DOUT SR1.5:  00000000  11111111
[6888.363] DOUT SR1.4:  11111111  11111111
[6888.364] DOUT SR1.3:  00000000  11111111
[6888.364] DOUT SR1.2:  11111111  11111111
[6888.364] DOUT SR1.1:  00000000  11111111
[6888.364] DOUT SR1.0:  11011111  11111111
[6888.364] DOUT SR2.7:  00000000  11111111
[6888.364] DOUT SR2.6:  11111111  11111111
[6888.365] DOUT SR2.5:  00000000  11111111
[6888.365] DOUT SR2.4:  11111111  11111111
[6888.365] DOUT SR2.3:  00000000  11111111
[6888.365] DOUT SR2.2:  11111000  11111111
[6888.365] DOUT SR2.1:  11111111  11111111
[6888.366] DOUT SR2.0:  11111111  11111111
[6888.366] KB1: DOUT#1.D1 / DIN#1.D2: depressed  -->  key=26, make contact, note=C-3 (60)
[6888.366] Entry: timestamp_break=0 timestamp_make=48905
[6888.404] ---
[6888.404] DOUT SR1.7:  00000000  11111111
[6888.404] DOUT SR1.6:  11111111  11111111
[6888.404] DOUT SR1.5:  00000000  11111111
[6888.404] DOUT SR1.4:  11111111  11111111
[6888.405] DOUT SR1.3:  00000000  11111111
[6888.405] DOUT SR1.2:  11111111  11111111
[6888.405] DOUT SR1.1:  00000000  11111111
[6888.405] DOUT SR1.0:  11111111  11111111
[6888.405] DOUT SR2.7:  00000000  11111111
[6888.405] DOUT SR2.6:  11111111  11111111
[6888.405] DOUT SR2.5:  00000000  11111111
[6888.405] DOUT SR2.4:  11111111  11111111
[6888.406] DOUT SR2.3:  00000000  11111111
[6888.406] DOUT SR2.2:  11111000  11111111
[6888.407] DOUT SR2.1:  11111111  11111111
[6888.407] DOUT SR2.0:  11111111  11111111
[6888.407] KB1: DOUT#1.D0 / DIN#1.D2: depressed  -->  key=26, break contact, note=C-3 (60)
[6888.407] Entry: timestamp_break=22332 timestamp_make=48905
[6892.003] ---
[6892.003] DOUT SR1.7:  00000000  11111111
[6892.003] DOUT SR1.6:  11111111  11111111
[6892.003] DOUT SR1.5:  00000000  11111111
[6892.003] DOUT SR1.4:  11111111  11111111
[6892.004] DOUT SR1.3:  00000000  11111111
[6892.004] DOUT SR1.2:  11111111  11111111
[6892.004] DOUT SR1.1:  00000000  11111111
[6892.004] DOUT SR1.0:  11111111  11111111
[6892.004] DOUT SR2.7:  00000000  11111111
[6892.004] DOUT SR2.6:  11111101  11111111
[6892.004] DOUT SR2.5:  00000000  11111111
[6892.004] DOUT SR2.4:  11111111  11111111
[6892.004] DOUT SR2.3:  00000000  11111111
[6892.004] DOUT SR2.2:  11111000  11111111
[6892.005] DOUT SR2.1:  11111111  11111111
[6892.005] DOUT SR2.0:  11111111  11111111
[6892.005] KB1: DOUT#2.D6 / DIN#1.D6: depressed  -->  key=38, break contact, note=C-4 (72)
[6892.005] Entry: timestamp_break=2844 timestamp_make=0
[6892.006] ---
[6892.006] DOUT SR1.7:  00000000  11111111
[6892.006] DOUT SR1.6:  11111111  11111111
[6892.006] DOUT SR1.5:  00000000  11111111
[6892.006] DOUT SR1.4:  11111111  11111111
[6892.006] DOUT SR1.3:  00000000  11111111
[6892.006] DOUT SR1.2:  11111111  11111111
[6892.006] DOUT SR1.1:  00000000  11111111
[6892.006] DOUT SR1.0:  11111111  11111111
[6892.006] DOUT SR2.7:  00000000  11111111
[6892.006] DOUT SR2.6:  11111101  11111111
[6892.006] DOUT SR2.5:  00000000  11111111
[6892.006] DOUT SR2.4:  11111111  11111111
[6892.007] DOUT SR2.3:  00000000  11111111
[6892.007] DOUT SR2.2:  11111000  11111111
[6892.007] DOUT SR2.1:  11111111  11111111
[6892.007] DOUT SR2.0:  11111111  11111111
[6892.007] KB1: DOUT#2.D6 / DIN#1.D6: pressed    -->  key=38, break contact, note=C-4 (72)
[6892.007] Entry: timestamp_break=0 timestamp_make=0
[6892.017] ---
[6892.017] DOUT SR1.7:  00000000  11111111
[6892.017] DOUT SR1.6:  11111111  11111111
[6892.017] DOUT SR1.5:  00000000  11111111
[6892.018] DOUT SR1.4:  11111111  11111111
[6892.018] DOUT SR1.3:  00000000  11111111
[6892.018] DOUT SR1.2:  11111111  11111111
[6892.018] DOUT SR1.1:  00000000  11111111
[6892.018] DOUT SR1.0:  11111111  11111111
[6892.018] DOUT SR2.7:  00000010  11111111
[6892.018] DOUT SR2.6:  11111101  11111111
[6892.018] DOUT SR2.5:  00000000  11111111
[6892.018] DOUT SR2.4:  11111111  11111111
[6892.018] DOUT SR2.3:  00000000  11111111
[6892.018] DOUT SR2.2:  11111000  11111111
[6892.018] DOUT SR2.1:  11111111  11111111
[6892.019] DOUT SR2.0:  11111111  11111111
[6892.019] KB1: DOUT#2.D7 / DIN#1.D6: pressed    -->  key=38, make contact, note=C-4 (72)
[6892.019] Entry: timestamp_break=0 timestamp_make=3277
[6892.023] ---
[6892.023] DOUT SR1.7:  00000000  11111111
[6892.023] DOUT SR1.6:  11111111  11111111
[6892.023] DOUT SR1.5:  00000000  11111111
[6892.023] DOUT SR1.4:  11111111  11111111
[6892.023] DOUT SR1.3:  00000000  11111111
[6892.023] DOUT SR1.2:  11111111  11111111
[6892.023] DOUT SR1.1:  00000000  11111111
[6892.023] DOUT SR1.0:  11111111  11111111
[6892.023] DOUT SR2.7:  00000010  11111111
[6892.024] DOUT SR2.6:  11111101  11111111
[6892.024] DOUT SR2.5:  00000000  11111111
[6892.024] DOUT SR2.4:  11111111  11111111
[6892.025] DOUT SR2.3:  00000000  11111111
[6892.025] DOUT SR2.2:  11111000  11111111
[6892.025] DOUT SR2.1:  11111111  11111111
[6892.025] DOUT SR2.0:  11111111  11111111
[6892.025] KB1: DOUT#2.D7 / DIN#1.D6: pressed    -->  key=38, make contact, note=C-4 (72)
[6892.025] Entry: timestamp_break=0 timestamp_make=3277
[6894.157] ---
[6894.157] DOUT SR1.7:  00000000  11111111
[6894.157] DOUT SR1.6:  11111111  11111111
[6894.157] DOUT SR1.5:  00000000  11111111
[6894.157] DOUT SR1.4:  11111111  11111111
[6894.158] DOUT SR1.3:  00000000  11111111
[6894.158] DOUT SR1.2:  11111111  11111111
[6894.158] DOUT SR1.1:  00000000  11111111
[6894.158] DOUT SR1.0:  11111111  11111111
[6894.158] DOUT SR2.7:  00000000  11111111
[6894.158] DOUT SR2.6:  11111101  11111111
[6894.158] DOUT SR2.5:  00000000  11111111
[6894.158] DOUT SR2.4:  11111111  11111111
[6894.158] DOUT SR2.3:  00000000  11111111
[6894.158] DOUT SR2.2:  11111000  11111111
[6894.159] DOUT SR2.1:  11111111  11111111
[6894.159] DOUT SR2.0:  11111111  11111111
[6894.159] KB1: DOUT#2.D7 / DIN#1.D6: depressed  -->  key=38, make contact, note=C-4 (72)
[6894.159] Entry: timestamp_break=0 timestamp_make=3277
[6894.178] ---
[6894.178] DOUT SR1.7:  00000000  11111111
[6894.178] DOUT SR1.6:  11111111  11111111
[6894.178] DOUT SR1.5:  00000000  11111111
[6894.178] DOUT SR1.4:  11111111  11111111
[6894.178] DOUT SR1.3:  00000000  11111111
[6894.178] DOUT SR1.2:  11111111  11111111
[6894.178] DOUT SR1.1:  00000000  11111111
[6894.178] DOUT SR1.0:  11111111  11111111
[6894.178] DOUT SR2.7:  00000000  11111111
[6894.179] DOUT SR2.6:  11111111  11111111
[6894.179] DOUT SR2.5:  00000000  11111111
[6894.179] DOUT SR2.4:  11111111  11111111
[6894.179] DOUT SR2.3:  00000000  11111111
[6894.179] DOUT SR2.2:  11111000  11111111
[6894.179] DOUT SR2.1:  11111111  11111111
[6894.179] DOUT SR2.0:  11111111  11111111
[6894.179] KB1: DOUT#2.D6 / DIN#1.D6: depressed  -->  key=38, break contact, note=C-4 (72)
[6894.180] Entry: timestamp_break=4719 timestamp_make=3277
[6899.076] set kb 1 debug off
[6899.079] Keyboard #1: debug mode disabled

I tried to run MB NG as well, but this shows similar behaviour. Anybody got any clues?

Thanks for thinking with me!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...