Jump to content

Troubleshooting midiphy SEQ v4+


latigid on
 Share

Recommended Posts

Thanks @Hawkeye and @latigid on...

That's almost certainly right re, the WS board pins and the Core headers. I realise it wasn't the WS board USB itself that was affecting the power, but the point at which pressure could be applied to turn the red WS board power light on and off was oddly specific! I've done some microsurgery on the pins and managed to achieve stable power this AM but I may put some shorts around the +5v and GND as redundancy as well later.

Thanks for the tip on testing, Andy - I'm no electronics expert and I hadn't put 2 and 2 together with the Cap charging and momentary continuity.

It's all good learning (for me)!

I'll let you know when it's producing beats :)

Link to comment
Share on other sites

Ladies, Gentlemen... it lives!

And what a handsome centrepiece it makes in my little music den :)

IMG_0790.thumb.jpg.d8bd0cf3e51bf2f2144a2

I couldn't wait to do anything like read the manual so I've jumped straight in to produce some basslines out of my Shruthi XT. Big wide grin on face!

Thank you Peter @Hawkeye and Andy @latigid on for the help with the build and troubleshooting. I think I had a couple of small problems that were only cold joints but identifying and finding both was tricky and I would still be swearing at it without you. Obviously thanks to Thorsten @TK. for the design, code, etc.

I've got a lot of gear to plug into it - thank goodness for 8 MIDI ports.

Next steps: a BLM and a SID V2 :)

Cheers!

Edited by SimonSays
  • Like 1
Link to comment
Share on other sites

@SimonSaysWow great job! I am getting there bit by bit myself.

I am at the DIN switch test phase, I have the lemec boards plugged in and since I hosed my JA board I have the Left lemec plugged into the core and running seq_r instead. The left board is checking out good so far. The right lemec's encoders register normal when I twist them, but pressing them as a switch registers 4 events. All the switches on the right board register as 4 different switches, I assume the ones in their little matrix.  The bottom 4 (SW17, 18, 19,20) do not register at all.  Any idea what this could be?

Sample output when I press ENSW8 on right lemec:

[130673.482] 90 4b 7f   Chn# 1  Note On  D#4  Vel:127
[130673.495] 91 63 7f   Chn# 2  Note On  D#6  Vel:127
[130673.500] 90 63 7f   Chn# 1  Note On  D#6  Vel:127
[130673.515] 90 33 7f   Chn# 1  Note On  D#2  Vel:127
[130673.618] 91 63 00   Chn# 2  Note Off D#6 (optimized)
[130673.622] 90 4b 00   Chn# 1  Note Off D#4 (optimized)
[130673.636] 90 33 00   Chn# 1  Note Off D#2 (optimized)
[130673.640] 90 63 00   Chn# 1  Note Off D#6 (optimized)

Thanks

Link to comment
Share on other sites

At a guess, some of the components from the seq-plate are shorting out those on le mec. The usual offender is the encoder right above the J89A header, but it could be more around IC3 on le mec, e.g. long diode legs from above.

Check the diode orientation too.

The note numbers from your output can be used to trace events in the NGC:

D#2 = note 39
D#4 = note 63
D#6 = note 87

They correspond to the fourth column of buttons, pin 14 of IC2. Check the sixth pin (counted from the left when looking at the top of the seq-plate) of the 10-pin header J2.

Link to comment
Share on other sites

9 hours ago, latigid on said:

At a guess, some of the components from the seq-plate are shorting out those on le mec. The usual offender is the encoder right above the J89A header, but it could be more around IC3 on le mec, e.g. long diode legs from above.

Check the diode orientation too.

The note numbers from your output can be used to trace events in the NGC:

D#2 = note 39
D#4 = note 63
D#6 = note 87

They correspond to the fourth column of buttons, pin 14 of IC2. Check the sixth pin (counted from the left when looking at the top of the seq-plate) of the 10-pin header J2.

I get a similar output each time I press any of the encoders on the right lemec board, not just the ENSW8. I don't see anything touching, and I see the same behavior if I swap seq-plates from the left lemec board. 

As for SW19, when I temporarily install all the switches in the lower row, each switch registers similar 'quadruple' output messages as the encoders. Same thing happens if I test SW1->16 as Peter shows in the video with a small, horseshoe shaped length of wire.  

I reflowed some points and all the diodes, still no luck, unfortunately.  Given that it's happening to all switches, would there be a point somewhere that would affect all of them somehow? 

Also I don't have the JA board connected past the right lemec so not sure if that is affecting things?

Link to comment
Share on other sites

Are the note events always the same, no matter what switch is pressed? I can't see any of the parts designators, so I can't help there. It's a bit fuzzy, but the solder joints look rough rather than smooth. So maybe some cold joints are there. Maybe try a slightly higher iron temperature?

The JA board not being connected doesn't affect things.

Are you sure you have seq_r.ngc loaded?

As you have a working le mec, you can compare voltages on IC2 and IC3. Note any differences.

Link to comment
Share on other sites

11 hours ago, latigid on said:

Are the note events always the same, no matter what switch is pressed? I can't see any of the parts designators, so I can't help there. It's a bit fuzzy, but the solder joints look rough rather than smooth. So maybe some cold joints are there. Maybe try a slightly higher iron temperature?

The JA board not being connected doesn't affect things.

Are you sure you have seq_r.ngc loaded?

As you have a working le mec, you can compare voltages on IC2 and IC3. Note any differences.

Well for each button pressed it's the same each time. I get different groups of 4 registered in the debug screen on each encoder.  Now I can't get any of them to register, unfortunately, after a good cleaning.  Encoder twists still register great.

COnfirmed I have seq_r.ngc loaded.

I started comparing lemec L and R, and on IC1 on the L board, I don't see any voltage on pin 4 and 6, although I do on the R board. My L board is working fine (switches/encoders that is), should pin 4 and 6 read +5V as on the R board IC1?  IC1 is right next to the J89 connector on the Left board, so wasn't sure if maybe that is relevant to my problem. 

I'll continue comparing the IC voltages via my scope but just curious which ones should be the same between L and R. All of them?

Thank you

Link to comment
Share on other sites

If you remove the seq-plate do you get the same behaviour? That would rule out clearance problems.

ICs 1 and 5 scan the encoders (no matrix). ICs 2 (sink side) and 3 (DIN side) form the matrix for switches.

Pins 11,12,13,14,3,4,5,6 of a 165 shift register are the inputs. If you don't read a voltage, probably the contacts in the encoder are connected to the common (0V) pin. Turning the encoder will change the state of the 165 inputs. You should also test the switch behaviour on IC3 in this way (first column pin 11, eighth column pin 6). I.e. test a switch in column 1, check that the input on pin 11 toggles low and high again. Check that the other inputs do not toggle.

With your scope you can check pin 2 (clock, I think it's 1kHz) and pin 1 (strobe/latch, triggers after a certain number of clocks). Pin 10 is the serial data input that comes from 165s further down in the chain, pin 9 is the serial output that shifts data to the MCU or the previous 165 in the chain. Pin 15 should be at 0V.

Did you already check if any adjacent pins of the ICs are shorted?

IC2 could also be tested without the matrix running. 

Restart MIOS studio and don't load an NGC file. If you can be careful enough, you can try bridging the 165 inputs to 0V one at a time. Monitor the console data output. You could also use

set dout x 1

where x is the 595 output to control sets of 4 switches without using a matrix, but maybe this doesn't clarify the problem.

 

 

Link to comment
Share on other sites

Maybe your issue is actually on the sink side, where multiple rows are triggering at the same time. 

With the NGC loaded, with your scope you should see the 595 outputs on IC3 (pins 15,1,2,3,4,5,6,7) toggling high in a sequence of 8. The pins correspond to

A B
C D
E F
G H

where A controls the first four encoder switches, B the second four encoder switches, C the first four Matias switches...G the first four MEC switches (note SW19!)...

 

Link to comment
Share on other sites

I'm just troubleshooting a midi keyboard connectivity issue... I'm not sure if it's me getting it wrong, or a USB issue, but I can't get my Arturia Keystep to play over the USB connection. I can easily route the 5 pin Midi into In1 to whatever I want... when using the USB port, I can't get anything working. Also, a couple of times I've plugged into the USB port and the Seq has locked and everything has been playing at about 1/4 speed.

I'm guessing I've shorted something in the USB path but thought I'd see if this sounded familiar?

@niles - it might be the light, or flux, but some of the ICs on Le Mec R look a little splashy. Worth reflowing those, perhaps?

Keep at it - this thing is brilliant when you get it hooked up!

Link to comment
Share on other sites

23 hours ago, latigid on said:

Restart MIOS studio and don't load an NGC file. If you can be careful enough, you can try bridging the 165 inputs to 0V one at a time.

I tested it this way and saw only one note at a time when I bridged those 165 pins to 0V. Also I see the same behavior with the seq-plate removed so I don't think it's a clearance issue.

On 5/4/2019 at 2:25 PM, latigid on said:

Pins 11,12,13,14,3,4,5,6 of a 165 shift register are the inputs. If you don't read a voltage, probably the contacts in the encoder are connected to the common (0V) pin. Turning the encoder will change the state of the 165 inputs. You should also test the switch behaviour on IC3 in this way (first column pin 11, eighth column pin 6). I.e. test a switch in column 1, check that the input on pin 11 toggles low and high again. Check that the other inputs do not toggle.

On the L board, I see a sequence of 1 square wave that drops to 0V, and holding down 2 switches I see 2 square wave seqments drop to 0V so I assume that is all good.  On the R board, there is no sequence(?sorry I don't know the correct term) drop to 0V, it's the whole thing, just all flat to 0V. Same with the other columns on the R board.

I checked, no shorts between pins on ICs.

On 5/4/2019 at 2:31 PM, latigid on said:

With the NGC loaded, with your scope you should see the 595 outputs on IC3 (pins 15,1,2,3,4,5,6,7) toggling high in a sequence of 8. The pins correspond to


A B
C D
E F
G H

where A controls the first four encoder switches, B the second four encoder switches, C the first four Matias switches...G the first four MEC switches (note SW19!)...

With seq_r loaded,  on the Left board, on the scope I see a sequence on each of the output pins of IC2, although I can't seem to see any activity even if I press the switches. They just seem static although that could be my inexperience. I mean, the Left board switches still register in MIOS studio console so it's prob me :)  On the Right board however, each of the outputs of IC2 are reading high, no sequence. That would probably make sense that IC3 has all the high readings, then, right? If it depends on the outputs of IC2 being correct sequence?

Both chips have clock in, it appears.

Hopefully I'm still moving in a forward direction with this!

Link to comment
Share on other sites

I think you've ascertained that the DIN side is good. Thanks for the tests!

The sequence of outputs on the 595 just goes around in a cycle. It toggles one output high, which turns that transistor "on". Meanwhile, all other outputs are low, so all other transistors are "off". Then the next output goes high. By turning on one transistor at a time, you enable only one row to be scanned (here only four switches). This is how you differentiate between switches in the column of (here four). It makes not difference if any switch is pressed; the 595 outputs cycle like a background task.

The fact that you see (or saw) all four switches triggering makes sense, as your 595 outputs are all high, rather than 1/8 each time. So I suggest paying close attention to IC2 again. E.g. it looks like pin 8 is not soldered properly? It is actually possible (hopefully not, but a possibility nonetheless) to damage CMOS by sending it data while the chip is not properly powered.

If you compare IC2, pin 14 on both boards, you should see a similar pulse train that is offset by (I think) 24 clock ticks. Pin 12 should toggle at the end (and I think also at the start) of the pulse train.

Check R26 is properly soldered and that pin 13 of IC2 is ~0V.

 

 

 

Link to comment
Share on other sites

13 hours ago, latigid on said:

Check R26 is properly soldered and that pin 13 of IC2 is ~0V.

I believe it is, what is the side of R26 connected to? I see the end closest to the pcb edge is to pin 8 of IC2. I thought I could test resistance between pin 8 and the mystery point just to be sure R26 is soldered on there correctly.

Turns out there is no pulse train on Pin 14 on the R board. I see it clearly on the L board, it does help that one board works to compare! Do you think this IC2 is just a dud or perhaps damaged somehow? I get 0V on pin 13, also.

Edited by niles
Link to comment
Share on other sites

R26 is connected between 0V and pin 13. If pin 13 is at 0V, it's a good sign.

Perhaps the serial data doesn't make it to IC2. Actually ICs 17, 19 and 20 are before IC2 and finally IC4 in the chain. Scope the same pin 14 on each IC to see how far it gets. You can also check for continuity between the following points:

J89 pin 6 (middle pin, other side of the notch), IC17 pin 14
IC17 pin 9, IC19 pin 14
IC19 pin 9, IC20 pin 14
IC20 pin 9, IC2 pin 14

 

Looking at your picture, I can see a probably cold joint on IC19, pin 14.

IC17-19-20.thumb.PNG.9884a2e895ccb81f012

 

 

Edited by latigid on
Link to comment
Share on other sites

On 5/6/2019 at 2:24 PM, latigid on said:

Perhaps the serial data doesn't make it to IC2. Actually ICs 17, 19 and 20 are before IC2 and finally IC4 in the chain. Scope the same pin 14 on each IC to see how far it gets.

Initially I wasn't seeing anything on pin 14 on IC20, so I reflowed 17, 19, 20 pins and now I do see something. I do see normal (I think) behavior on IC2 now. I am curious what the CLK signal should be, though. You mentioned 1khz. I'm reading a little over 667khz on all clks, including the left le mec board. Thinking it was user error, I tried my function generator with a 10khz square wave the scope read it perfectly with no adjustments.  I am wondering if perhaps it's just getting clk'd too fast to really give reliable operations? What controls the frequency signal?

Link to comment
Share on other sites

20 hours ago, latigid on said:

Frequency is controlled by the CPU, I'd say if you see the clocks at all it's good. It might be that RC is 1 kHz. 

How's your DIN matrix looking? 

Makes sense, I suppose it would want to go as fast as possible for quick registering. Is the RC = reset clock?

Still not seeing any action on switches. I did for a little time right after I reflowed the ICs I mentioned but now nothing is showing up in MIOS.  I'll test all the pins again with the scope and report back and basically go back through your previous posts on this thread.  I still get perfect encoder twisting registering in MIOS studio, just no switches. 

Link to comment
Share on other sites

 

Allo Houston, we have a problem !!

I just finished the JA pcb, and started the test phase.

- Installing Midibox NG : ok
- Loading seq_l : ok
- Set debug on : ok

tests: no answer ! no button works and no LED reacts. I started by checking if I didn't make a mistake with the cables and in the resistance network but , everything seems correct, no visible solder bridge either (or maybe i missed something). However, I noticed that the ICs get very hot during the test. Apart from that, I admit I don't know where to start verifications.
Here are the pictures of the pcb. Thank you in advance for your help:)

(yes the pins near matrix are soldered upside down (ourgl), going to correct that with my hot air station ^^)

IMG_20190509_180755.jpg

IMG_20190509_180817.jpg

Edited by otropom
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...