-
Posts
1,291 -
Joined
-
Last visited
-
Days Won
101
Content Type
Profiles
Forums
Blogs
Gallery
Posts posted by Antichambre
-
-
MIDI is supposed to isolate your devices electrically(opto-coupled), did you try to disconnect the devices one by one? Maybe only one device causes this issue... Is there another MIDIbox connected to?
-
Did you try another SD Card?
-
Hi Andy,
First thanks for taking a look.1 hour ago, latigid on said:If you didn't already, add jumpers to the CAN pins in case the buss is used in the conventional manner (CV/gate).
I didn't but I will add those jumpers. It's a good idea, it adds more flexibility. Done!
1 hour ago, latigid on said:Putting a high-speed digital signal on the power cable might introduce some crosstalk and should be tested.
CAN(with transceiver) is a differential pair signal, then bad behaviour like crosstalk to power and audio paths should be very limited, but you're right this has to be tested, noted!
Best regards
Bruno -
On 12/10/2019 at 4:50 PM, Zam said:
so J18 for MCAN ?
I finally decided to add CAN transceiver to the board.
The modules will be able to communicate natively in midi thru the regular euro power supply ribbon, using MCAN. No need of an other board to connect to the external world too, just a connector in front which will give access to the lines MCAN_L and MCAN_H.Best regards
Bruno -
Just now, Zam said:
Look great !!!
Thanks! :)
Just now, Zam said:so J18 for MCAN ?
Yes for CAN, J18 is always the one. But Andy's wCore and Disco platform have only One-Wire connection. This one has Power pins for transceiver supply, RX and TX are separated. But you can add the regular Resistor and a Diode on the dipBoardF4 to link others Cores directly and easily with the One-Wire.
This MCAN connector may be called J18E for 'extended' I suppose...
A small transceiver module will be created to link the CAN bus with the external world, internally I planned to use the Euro Power connector, the power ribbon by using BUS1 and BUS2(last pins of the 16pins IDC) called CV and GATE sometime but never used in fact.
Best regards
Bruno -
Autocad is my best friend since a long tilme now ;)
1 hour ago, Smithy said:Hi Bruno,
what CAD software(s) did you use to design the mockups?
im currently studying CAD at the moment,
Thanks for yout time,
Adrian.
-
Hi,
This is some update about the Core part of the project, I just finished to design it, artwork is not perfect but PCB and assembly are ready.
I achieve the size of 12 HP and a depth which doesn't exceed 45mm, overall with IDC connectors present at the back.
I can reduce it to the previous 11 HP but result is less clean at the front and assembly is more complicated then it will be 12 HP.The features:
- Euro Module 12 HP x 45mm.
- 2 MIDI In/Out.
- 2 independent USB, one Device, one Host.
- Micro-SD Card.
- Reset and User Button.
- 2 leds.
- Power switch, acts on both external and USB power. It is optional.
- Automatic switching between the Power sources, EXT/USB. Priority to external first.
- Can be connected to a regular Euro power connector (IDC16), regulation from 12V. Can use 5V from your skiff or provide it to the bus.
'Regular' MIDIbox ports In the order:
- J4, IIC A and B.
- J5, internal ADC for 2 analogue Inputs.
- J8/9, SPI 5V(SRIO).
- J11(2xMIDI IO).
- J15, displays(serial only, 2 CS lines).
- J16E, SPI 3,3V, Reset and User buttons, 2 leds(.
- J18. MCAN, Ready for CAN transceiver or 'One-Wire' CAN connection.
- J19, SPI 5V.
Some 3D render:
The PCB, all SMD will be assembled by manufacturer. It can be used for small desktop project too.
I designed this module for the HAARP but it can be used for other application, you can use it with the MIDIPHY Analog modules to create the perfect interface for your modular system.
And you can create your own Surface Control and/or your hybrid analogue modules.
Voilà
Best regards
Bruno -
2 hours ago, FantomXR said:
I can confirm Brunos changes work well! :-)
Thanks man for having checking it.
We can now put TK in the loop...
@TK. ;) if you confirm it too, it can be modified in the repo.
Best regards
Bruno -
43 minutes ago, FantomXR said:
So my question is: Is there a way to speed up that transfer rate? I googled a bit and found this on an arduino forum:
https://forum.arduino.cc/index.php?topic=286837.0What is the solution that you retain from this?
You can use bitmaps, one for each screen, first you write into it then you transfer the whole bitmap to the screen one by one( cs by cs) and maybe only the one which has changed using some flag, the problem with this is that you will use a some of the RAM, 128*64*9/8=9216 bytes(9K), maybe not bad depending on your app.
Best regards
Bruno
-
Yes just remember you also built a SeqV4+. ;)
-
Beautiful design for both!
No doubt you will sell it fastly! -
It was not all the time but more than other people for sure, electrostatic thing maybe, we never knew.
-
I know a guy I used to work with who can't touch any computer because they hang. Yep it's strange sometimes ;)
-
You're welcome, you can mark this topic as [SOLVED] ;)
Best regards
Bruno -
-
USB midi driver maybe and try all others USB ports.
-
Just now, tago said:
Disabling MIDI thru in Cubase preferences results in no MIDI input at all.
Yes this is disabling midi monitoring too, this can't help.
it seems you're not alone I found more than 10 threads like this:
https://www.steinberg.net/forums/viewtopic.php?t=117590Unfortunately I didn't read any concrete solution.
-
Try also to desactive MIDI THRU in cubase midi settings...
And if your midibox has regular MIDI and you own a midi interface try with it instead of USB directly.
Note: if your're connected with usb there's no running status then Note Off must be received.
Running status is only for regular midi connection(DIN) and MIOS studio marks the Note Off as "optimized" when it's the case.
-
Try with with an other midi monitor like midiOx(pc) or snoize(mac) depending on your separate music computer. And share the result...
-
A Note On with a 0 velocity is always considered as a Note Off by most of midi gear, this is for the running status, to avoid its constantly change, and optimize the midi traffic.
Are you sure Cubase receives 0 velocity first? -
Anyway we will do a small debug test...
For that you will need to recompile the MBNG app after modification...
in mbng_file_c.c at line 812
replace this://////////////////////////////////////////////////////////////////////////////////////////////// } else if( strcasecmp(parameter, "nrpn") == 0 ) { int value; if( (value=get_dec(value_str)) < 0 || value >= 16384 ) { #if DEBUG_VERBOSE_LEVEL >= 1 DEBUG_MSG("[MBNG_FILE_C:%d] ERROR: invalid NRPN number in EVENT_%s ... %s=%s\n", line, event, parameter, value_str); #endif return -1; } else { if( item.flags.type != MBNG_EVENT_TYPE_NRPN ) { #if DEBUG_VERBOSE_LEVEL >= 1 DEBUG_MSG("[MBNG_FILE_C:%d] WARNING: no NRPN number expected for EVENT_%s due to type: %s\n", line, event, MBNG_EVENT_ItemTypeStrGet(&item)); #endif } else { // no extra check if event_type already defined... stream[1] = value & 0xff; stream[2] = value >> 8; item.secondary_value = stream[1]; } } ////////////////////////////////////////////////////////////////////////////////////////////////
by//////////////////////////////////////////////////////////////////////////////////////////////// } else if( strcasecmp(parameter, "nrpn") == 0 ) { int value; if( (value=get_dec(value_str)) < 0 || value >= 16384 ) { #if DEBUG_VERBOSE_LEVEL >= 1 DEBUG_MSG("[MBNG_FILE_C:%d] ERROR: invalid NRPN number in EVENT_%s ... %s=%s\n", line, event, parameter, value_str); #endif return -1; } else { if( item.flags.type != MBNG_EVENT_TYPE_NRPN ) { #if DEBUG_VERBOSE_LEVEL >= 1 DEBUG_MSG("[MBNG_FILE_C:%d] WARNING: no NRPN number expected for EVENT_%s due to type: %s\n", line, event, MBNG_EVENT_ItemTypeStrGet(&item)); #endif } else { // no extra check if event_type already defined... stream[1] = value & 0x7f; stream[2] = value >> 7; item.secondary_value = stream[1]; } } ////////////////////////////////////////////////////////////////////////////////////////////////
Cause !
In this part of the parser there's something strange which is disturbing me at the end when the address is store in the item->stream we've got:// no extra check if event_type already defined... stream[1] = value & 0xff; stream[2] = value >> 8; item.secondary_value = stream[1];
but in the MBNG_EVENT_TYPE_NRPN part of the MBNG_EVENT_ItemSend function we've got:
u16 nrpn_address = item->stream[1] | ((u16)item->stream[2] << 7);
if I make the calculation like it is I find exactly your problem:
In parser
stream[1] = 261 & 0xff = 5
stream[2] = 261 >> 8 = 1then in MBNG_EVENT_ItemSend
u16 nrpn_address = item->stream[1] | ((u16)item->stream[2] << 7) = 5 | (1<<7) = 133
Address msb is not limited to 0 or 1, I think it's a masking and shifting error and bit 7 is lost, so make the test with// no extra check if event_type already defined... stream[1] = value & 0x7f; stream[2] = value >> 7; item.secondary_value = stream[1];
Please
-
did you try the value in hexadecimal instead of decimal just to see?
nrpn=261 is nrpn=0x105 -
Did you check with an other midi monitor, like midi-ox(PC) or snoize(MAC)
Just to be sure it's not a mios studio issue.
-
Hi, you're welcome,
If I was you I will read the DAC Application NoteThen find some examples or a library to try with something basic...
https://www.st.com/content/ccc/resource/technical/document/user_manual/59/2d/ab/ad/f8/29/49/d6/DM00023896.pdf/files/DM00023896.pdf/jcr:content/translations/en.DM00023896.pdf
http://stm32f4-discovery.net/tag/dac/
Then try to adapt it to my need...
Note:- MIOS32 uses StdPeripheral Library and CMSIS located in Driver folder, no HAL
- Take care about the DMA and Timer already used.
Good luck!
Best regards
Bruno
"Searching SD Card..." hangs more often on bootup
in MIDIbox SEQ
Posted
I know it works when started correctly but did you try another SD-Card, this one is perhaps a little sensitive...