dustdrive

SEQV4 with integrated 16x8 BLM

63 posts in this topic

Ok - my BLM is still not working

I found out, that my new DOUT and DIN modules which connects the BLM are working correct.

So there are two possibilities left:

  1. There is something wrong with the way I connect the BLM to these DOUT/DIN
  2. My BLM isn't soldered correctly

Because I think the second one is more likely, I now want to find out, how I can messure if my BLM is soldered correctly:

I have already messured the following things:

  1. the diodes - in one way current is running, the other way not.
  2. the LED's - are working (tested with a LED tester)
  3. each rows are connected ("zero" resistance)
  4. each coloumns are connected ("zero" resistance)
  5. I got

How is the matrix driver working?

Is it sending 3 volt of direct current in the LED anodes(coloumns) and setting the rows which are not wanted to light on high current(so that the other LED's will get high current on both cathodes and anodes)?

Edited by dustdive

Share this post


Link to post
Share on other sites

Can I somehow "simulate" the matrix driver with my multimeter?

I have a really simple one, but if I would send 2.5V direct current in for example couloumn 1 (anodes) and setting COM/ground to a row 4, the 4 led's in the coloumn light && I will not damage anything?

(I'm sorry I have pretty much no knowledge to electricity stuff..)

Share this post


Link to post
Share on other sites

Yippiiee I found the button_duoled_matrix_v1_2c.zip & sm_c_example1_v1c.zip at the mios32 download section...

So I have new possibilities to test tomorrow -

thanks TK for all this material........................

Share this post


Link to post
Share on other sites

Yippiiee I found the button_duoled_matrix_v1_2c.zip & sm_c_example1_v1c.zip at the mios32 download section...

I only own a STM32, this apps are for MBHP_CORE.

I'm pretty lost. I guess the matrix was too big a project for me (all the other elements of the SEQV4 works).

The worst is, that I don't have any clue how to start troubleshooting this problem.

I think i will try to build a little test program building upon the blm.c/h files in the modules library...

(I hope I can't damage anything....

Share this post


Link to post
Share on other sites

The program is running, but no life sign from the BLM.

...but I get a lot of debugging messages on the terminal: "DIN_BLM_NotifyToggle(n,1)", with n constantly changing from 0 to 31.

This function should only print this message with a changing value at the input n. What could this "random" variation mean?

Share this post


Link to post
Share on other sites

...but I get a lot of debugging messages on the terminal: "DIN_BLM_NotifyToggle(n,1)", with n constantly changing from 0 to 31.

This function should only print this message with a changing value at the input n. What could this "random" variation mean?

There is probably a problem with the RC signal between core module and the DIN shift registers.

This signal latches the values before shifting, and if it isn't connected you will get random values.

Beside of this: are you able to control the LEDs by sending MIDI notes to the core?

e.g. with the virtual keyboard of MIOS Studio... ensure that channel 1 is connected. The core will output debug messages whenever a matching event has been received, and the LED state should change.

Best Regards, Thorsten.

Share this post


Link to post
Share on other sites

Thank you so much for your help!

There is probably a problem with the RC signal between core module and the DIN shift registers.

This signal latches the values before shifting, and if it isn't connected you will get random values.

Ok. When I connect normal button's (to the same DIN module) according to this schematic and the 010_din tutorial app, everything is working fine. Is this in conflict with your idea, or could there still be the problem with the RC signal?

Beside of this: are you able to control the LEDs by sending MIDI notes to the core?

e.g. with the virtual keyboard of MIOS Studio... ensure that channel 1 is connected. The core will output debug messages whenever a matching event has been received, and the LED state should change.

I'm sorry that I didn't mention:

I can't control any LED. The terminal is printing that the core receives midi notes/events (on channel #1), but no LED reacting neither glowing.

(But the same here : with the same DOUT module and standard LED connection, no problems….)

Share this post


Link to post
Share on other sites

Very strange!

DIN and DOUT module is working, but you will get a lot of MIDI events once your BLM is connected.

How to check that the BLM application is scanning the keys: disconnect the BLM hardware, and short a DOUT pin with a DIN pin which is normally connected "between" a button.

-> only a single MIDI event should be triggered.

E.g. take this schematic as a reference: http://www.ucapps.de/mbhp/button_duoled_matrix.pdf

Take a cable and connect it with D0 of DEFAULT_SRM_DIN_L and D7 of DEFAULT_SRM_DOUT_CATHODES1 -> do you get a single MIDI event, or multiple events?

Try also other pin combinations.

If this test is working, then it could make sense to think about unusual things:

- maybe the cable between core and BLM is too long?

-> What is the cable length?

- powering problem once multiple LEDs are turned on?

-> do you power the MBHP_CORE_STM32 module from an external PSU, or via USB?

-> are you using an externally powered USB hub, or is the module directly connected to your PC?

Best Regards, Thorsten.

Share this post


Link to post
Share on other sites

Thank you very very much!

!! I will test as soon as possible !!

:: )

Share this post


Link to post
Share on other sites

It took a bit longer than expected, but finally I tested what you (Thorsten) proposed:

How to check that the BLM application is scanning the keys: disconnect the BLM hardware, and short a DOUT pin with a DIN pin which is normally connected "between" a button.

-> only a single MIDI event should be triggered.

E.g. take this schematic as a reference: http://www.ucapps.de/mbhp/button_duoled_matrix.pdf

Take a cable and connect it with D0 of DEFAULT_SRM_DIN_L and D7 of DEFAULT_SRM_DOUT_CATHODES1 -> do you get a single MIDI event, or multiple events?

Try also other pin combinations.

Best Regards, Thorsten.

It didnt worked, as you described. ...

By luck two friends from India came by (one hardware - && one software specialist) and we looked together at the circuit.

Their opinion was that the DOUT module couldn't work without the serial resistors connected, which I didnt solder on the board - because of the following description from this schematics

"NOTE: the 220 Ohm Resistors on the two DEFAULT_SRM_DOUT_CATHODES* Registers should be removed."

I dont know if I completely misunderstood these words, but when we tested with exactly the same configuration with a DOUT module with all four 220Ohm resistor networks connected everything worked fine...

So, finally "everything" is working - I will just finish and then post a little picture..

!!!!! THANKS EVERYBODY FOR YOUR TIME AND HELP !!!!!!!!!!

you are great. ucapps is great. midibox is great. TK. is great!

Edited by dustdive

Share this post


Link to post
Share on other sites

Oh my god! Thanks for the eye opener! :-/

Of course, instead of "220 Ohm resistors can be removed" actually I meant "220 Ohm resistors can be replaced by cables" - I corrected this in the schematic.

I'm sorry for the trouble!

Best Regards, Thorsten.

Share this post


Link to post
Share on other sites

No problem!

If I would have had more knowledge about electronics, I guess it would have been obvious.....but I'm working on it...

Does it make a difference if the resistor networks are connected or not?

:: )

Share this post


Link to post
Share on other sites

If I would have had more knowledge about electronics, I guess it would have been obvious.....but I'm working on it...

Thats probably the reason why nobody noticed this typo before.

Does it make a difference if the resistor networks are connected or not?

yes, the LEDs are a bit brighter without the 220 Ohm resistor connected to the cathodes (because 220 Ohm resistors are already connected to the anodes)

Best Regards, Thorsten.

Share this post


Link to post
Share on other sites

yes, the LEDs are a bit brighter without the 220 Ohm resistor connected to the cathodes (because 220 Ohm resistors are already connected to the anodes)

They are indeed are little bit brighter....Thank you again for your time and help!!

My first "version" running -..... I have still some stuff to fix - for example, I used on some BLM LED's not as bright LED's as on other ones - MISTAKE! and big difference in brightness!!.

But there is the possibility to solder SMD LED's instead, so I dont have to buy new PCB's...

::::::::....

I'm so amazed by the software"!!!!!!!!

SEQV4 is the greatest (midi-)sequencer you can have in 2012!!!!!!!!

THANKs to EVERYBODY involved!

Share this post


Link to post
Share on other sites

:thumbsup:

Share this post


Link to post
Share on other sites

I finally changed all the red LED's to white ones - very bright!

 

I feel the hardware-building near the end, but I still have some few problems with the BLM, if anyone has an idea, I would be very grateful.

 

When I connect a 4 rows times 16 columns BLM-Module with the software "trunk/apps/examples/blm" everything is working fine but: 

 

  1. 2 seconds after boot, row 16 is constantly lighting. When I change the button-row connectors at the DIN module of the two sides, the row 8 is constantly lighting. So I guess there is something wrong with the button column 16. But what could that be? Pressing any button at this row has no effect (no light, no debug message in MIOS-Studio). I tested all the connections in this row and I tested the diodes. 
  2. Everything else is working fine, except this one button: column 1, row 2. Sometimes it is working, but then all the button in the same column are triggered as well, but mostly this one button doesn't work. Could I measure something meaningful? 

 

Thank you. 

Share this post


Link to post
Share on other sites
2. Everything else is working fine, except this one button: column 1, row 2. Sometimes it is working, but then all the button in the same column are triggered as well, but mostly this one button doesn't work. Could I measure something meaningful? 

 

I was able to fix this one. There was an internal connection from the PCB not working, so I did a shortcut around it. 

Share this post


Link to post
Share on other sites

To 1) no idea :-/

 

Best Regards, Thorsten.

Share this post


Link to post
Share on other sites

Thank you for your answer, Thorsten!  :rolleyes:

 

I was actually able to fix this one too. I could see that in the connector to the DIN Board one wire didn't look good. Despite this wire (number 10) wasn't connected on the other side, I changed the connector and now it is working! Yippee.

 

I guess somehow the bad connector conducted some current between the button row and column, so that the row was constantly lighting. But I don't know much about electronics.  

Share this post


Link to post
Share on other sites

Good that you found this - because I had no idea what (aside from a connection issue) could cause such an effect! ;-)

 

Best Regards, Thorsten.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now