ExplodingLemur Posted June 4, 2020 Report Posted June 4, 2020 (edited) I'm having some weird LED issues on a sammichFM I just built. Both rows of LEDs light up or flicker when I pass my finger near the pins linking the display board to the mainboard, over the traces, or over the 74HC595 shift register that runs the LEDs. The LCD, buttons, and encoder all operate properly. Any idea what might be the cause? Edited June 7, 2020 by ExplodingLemur Quote
latigid on Posted June 4, 2020 Report Posted June 4, 2020 Can you get any normal LED function? Touch up the soldering on everything to do with the LEDs (pin headers, ICs, caps, resistors etc.), also check LEDs have the correct polarity . Quote
ExplodingLemur Posted June 4, 2020 Author Report Posted June 4, 2020 I don't seem to be able to get any normal LED function. I've got a scope and can probe the signals going to the UI board. I see RC, SC, SI, SO. If I'm reading the docs correctly then RC is the latch enable, SC is the shift clock, and SO is the serial data? SC clocks 8 bits into this shift register, SO is either 0 or 1 on each SC rising edge, then RC is sent high to latch the new 8 bits in the register. Lather, rinse, repeat. Since there are 10 LEDs I assume some kind of multiplexing is taking place. What's the expected behavior I should be getting on these pins, and what is a known button press I can do from the main screen that's guaranteed to toggle an LED state? Quote
Antichambre Posted June 4, 2020 Report Posted June 4, 2020 (edited) 1 hour ago, ExplodingLemur said: Since there are 10 LEDs I assume some kind of multiplexing is taking place Yes they are multiplexed using the two transistors T1 and T2 both connected to the same 595 shift register, 5 pins for leds columns, 2 pins for rows via the transistors.http://www.midibox.org/dokuwiki/lib/exe/fetch.php?media=sammichfm:sammichfm_cs_pcb_rev_1.pdf Could you post some pictures of the board? Edited June 4, 2020 by Antichambre Quote
ExplodingLemur Posted June 4, 2020 Author Report Posted June 4, 2020 Front/back of the display board and front of the main board attached. Quote
latigid on Posted June 4, 2020 Report Posted June 4, 2020 (edited) Pics are a bit blurry, but it looks like the LEDs have the correct orientation. You should be able to scope a (probably) 1/8 pulse on the LED cathodes anodes if that column's LED is illuminated. Likewise, you should see an alternating (but up to 1/8) pulse on the transistor base. Do the transistors follow the expected pinout? When uploading the hex file did you specifically choose the sammich one or "normal" MIDIbox FM? Edited June 4, 2020 by latigid on Quote
ExplodingLemur Posted June 4, 2020 Author Report Posted June 4, 2020 I'll grab the scope and check in a bit. Thank you. I burned the bootloader with a PICKit3, then uploaded MIOS and the sammichFM application hex files via MIOS Studio. I also made sure the bootloader and MIOS images were for the right chip (18F4685) Quote
Antichambre Posted June 4, 2020 Report Posted June 4, 2020 Yep picture are too much small difficult to see if the transistors are in the good way, are you sure they are BC547 and not BC557 or something else? Better picture maybe? ;) just this parts: Quote
ExplodingLemur Posted June 4, 2020 Author Report Posted June 4, 2020 Try these. Yep, confirmed BC547. Quote
Antichambre Posted June 4, 2020 Report Posted June 4, 2020 (edited) Personally I don't see anything wrong, because of the wire I suppose it's an ebay copy version. Did you try to change the shift register(74HC595)? Edited June 4, 2020 by Antichambre Quote
ExplodingLemur Posted June 5, 2020 Author Report Posted June 5, 2020 Yep, eBay. The bodge wire ties /OE to ground. I swapped the shift register without any change. I kinda wonder if I've got a short between SC and SO somewhere. I'll know more after scoping it. Quote
ExplodingLemur Posted June 5, 2020 Author Report Posted June 5, 2020 SO is just held high. RC pulses, then SC sends 24 clock pulses in 3 separate trains, then RC pulses again. Wait a while and repeat. So, maybe a short between SO and +5V. Ch1 is SO, Ch2 SC, Ch3 RC. Quote
latigid on Posted June 5, 2020 Report Posted June 5, 2020 Maybe then check the data signals reach the shift register? You can cross-reference the PIC Core and DOUT schematics:http://ucapps.de/mbhp/mbhp_doutx4.pdfhttp://ucapps.de/mbhp/mbhp_core_v3.pdf If in doubt you can also disconnect the sandwich and run wires directly from the Core pins. Quote
ExplodingLemur Posted June 5, 2020 Author Report Posted June 5, 2020 I tapped the unpopulated header right by the shift register. Seeing SO held high the whole time has me wondering where I'm losing that data. I'll probe around some more. Quote
Antichambre Posted June 5, 2020 Report Posted June 5, 2020 You can use the SRIO interconnection tester. This just check the lines. 1 Quote
ExplodingLemur Posted June 7, 2020 Author Report Posted June 7, 2020 On 6/5/2020 at 0:57 AM, Antichambre said: You can use the SRIO interconnection tester. This just check the lines. RC and SC look good, but SO (aka DO) shows ~1VDC regardless of state. Ooh...hey look at that, I installed one of the resistor networks backwards. Just gonna go ahead and fix that ;) Quote
ExplodingLemur Posted June 7, 2020 Author Report Posted June 7, 2020 Oops, nope, they're installed correctly. What I thought was a pin 1 indicator just now was a smudge of flux or something. All the resistor networks are installed the right way around. Quote
ExplodingLemur Posted June 7, 2020 Author Report Posted June 7, 2020 I pulled all the shift registers from the input board. RC and SC are good, but SO is 0V no matter what. Installing IC1 (74HC165) and then IC2 (other '165) results in no change in behavior. Installing IC3 (74HC595) gives me 1V on SO again regardless of it being pulled high or low. Checking the '595 socket now to make sure I've got continuity where I should and opens where I shouldn't. Quote
ExplodingLemur Posted June 7, 2020 Author Report Posted June 7, 2020 Continuity checks are good. Tried a third 74HC595 in that socket, no change. I guess I've got something wrong on the main board. Quote
latigid on Posted June 7, 2020 Report Posted June 7, 2020 Check back to the Core pin and whether the PIC is socketed properly or has adjacent shorts, check the interconnection header pins/socket. Quote
ExplodingLemur Posted June 7, 2020 Author Report Posted June 7, 2020 Okay, it's ID10T error confession time. I hadn't soldered all the pins on the female header that the display board plugs into. Since Vdd, Vss, and SC are jumpered by traces on both boards I didn't notice it. That left SO unconnected. Yeah, it works now. ::sigh:: Quote
latigid on Posted June 7, 2020 Report Posted June 7, 2020 Glad to hear! Enjoy your sFM! You can get some cool sounds out of it but I found programming is not 100% straightforward. 1 Quote
Antichambre Posted June 7, 2020 Report Posted June 7, 2020 Great! Time to release the iron and take the keyboard, have fun! 1 Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.