Pi header plugged in wrong, No LCD with Pi


 

RyanM

New member
I built a HM 4.2.4 last week and got everything running (without my probes which were ordered). I accidentally plugged my Pi ZeroW in with one header row off, so the wrong 8 pins were plugged in while the other 8 weren't plugged in at all. This fried my Pi, but the HM still functioned without it, and showed my temps with the thermocouple pit probe just fine.

I just received my replacement Pi today and when I installed it the LCD would no longer function, and just showed black bars across the top row. If I remove the Pi the LCD would still function as normal. The Pi was initially getting temps from the pit probe and reporting them in browser, so that was working fine (just no LCD). More problems started when I tried to change settings, they don't seem to be saving. I reset my config, but I can't write firmware and get the AVR fuse Error.

Did I fry my PCB board? Or maybe the ATMEGA chip? What's next for me to try?

Without Pi
h9K7vIah.jpg


With Pi
0Vhfo7Th.jpg


Web Interface working
N2Lke1yl.jpg
 
That's certainly unusual. The LCD is connected to the Pi in a sort of roundabout way so I can see how it is possible they are related but it is unclear why that would happen. It could mean that the SPI bus that they're both on is being driven by the Pi, but if it were something in my control the LCD would work until the Pi booted and then stop. It is like the Pi is driving it right from power up which would be something I've never seen before. I also can't imagine what could happen on the HeaterMeter side that would be damaged and cause this behavior.

I'm kinda just thinking out loud here because I don't have a solution for you. Have you tried going over to the LinkMeter -> AVR Firmware page in the webui and flashing the "bundled" hm.hex while the Pi is plugged in? That also uses the SPI bus and might reset things back to normal?
 
There seems to be a lack of solder on the pads on the LCD. Perhaps mating it up with the Pi is causing some of the pins to lose contact with the LCD?
 
That's a good point. I thought about that too because it looked like it was just sitting on the pins which would cause an intermittent connection. It seems way too coincidental that it would always work when not connected to the Pi and then never work when connected.

I just noticed that you say it gets AVR Fuses ERROR when connected to the Pi so that throws that out the window. Did you say the HeaterMeter settings aren't saving or things like network settings aren't saving? If it is HeaterMeter settings remember that blank settings on the config webui can't be changed because that's actually an error, you can only change settings that have a value.
 
So the other side of the LCD pin header is what is soldered, not the ends that are visible, I'll solder those to be sure but I don't think it's the issue at this point, wouldn't make sense that it works without the pi.

I was able to reset my config last night, and then changed and successfully saved my network settings. What didn't save or change at all were my probe settings. I can't change it to a thermocouple, or select the type of probe I'm using. Nothing seems to save when I select it from the drop-down, and I no longer can see my pit probe thermocouple temp now as I cant change those settings.

I then finally tried to reflash the AVR firmware in the webui and had the fuses error.

Thanks for the responses so far, I'm going to figure this out somehow!
 
So I've been testing continuity on the PCB for awhile now, I haven't found any issues so far. All of my LCD pins are connected to what they need to be. I reinstalled the HM image on my Pi and I am now able to change my probe settings again. So now I'm back to my initial issue of not having the LCD working when the Pi is plugged in, and working fine when it's unplugged! So strange. I might order a new ATMega and a new shift register, I can't come up with another solution here.

Edit: Forgot to mention, I still can't flash firmware to the ATMega, I still get the AVR Fuse Error. So I'm probably still using whatever I flashed to it on my initial setup, before I screwed up and fried my first Pi.
 
Last edited:
In the pic with the pi attached, but no pi visible, it that due to using a Pi Zero W or does the screen stay like that after you remove the HM board from the Pi?
 
You can't see it behind because its the pi zero w. When I unplug it (after powering off, I haven't hot plugged/unplugged) the LCD goes back to working as normal.

I have reflowed all of the Pi headers, atmega socket pins, shift register, and LCD connections. Still the same thing. I'm pretty stumped so far.

To be clear, the top row of pi gpio pine were plugged into the bottom row HM header socket, while the bottom row of Pi gpio pins weren't plugged in at all. This lasted for about 60 seconds before I realized what I had done, and fried the Pi in the process.

I would think the shift register still works fine as the LCD works without the pi, so I'm hoping I cooked something on the atmega.
 
I have done something similar, but I can't remember if my LCD screen went kaput or anything else besides the RPI fried.

If you tried to flash the Atmega chip and you are getting fuse fault, you may have screwed up the chip.
 
That's what I'm hoping, I've also noticed that the blower seems to always run at 12v (pulse isn't activated) no matter what the fan percentage is set to. I'm hoping I just screwed up the atmega chip. I ordered another, but it's going to be a week or so before I get it. Guess I can build some other stuff on the meantime.

I checked my two arduino Uno's I had laying around and the chips are surface mounted, so I'll have to wait!
 
take the atmega chip out and see if there's still 12v at the blower. If so, your blower circuit needs to be fixed.
 
Man I was really hoping it was just the ATMega that was fried, but nope, still 12v at the blower pin when I pulled the chip. I've seen a couple of threads addressing that problem, but I think I'll just replace the whole blower circuit, do you know which parts it would likely be?
 
I would say to wait on swapping out blower circuit parts until you've got the new ATmega chip installed. There is no pulldown on the drive MOSFET for the blower so even just ambient charge from the air can charge the gate of the output and cause it to turn on and run the blower at full power. It relies on the microcontroller to actively disable the pin. If you really want to test that you can connect the microcontroller pin labeled BLW to any GND with a small bit of wire (just touch the wire to the pads, no need to solder). The blower should turn off. If it does still run then you do have a problem in the blower circuit as well.

Another thing to look at is Status -> System Log and Status -> Kernel Log after you try to do an AVR Firmware update (and you get the AVR Fuses ERROR) message. See if there are any new lines at the end of either of those after trying to do the update which would indicate if there's a software problem.
 
I would say to wait on swapping out blower circuit parts until you've got the new ATmega chip installed. There is no pulldown on the drive MOSFET for the blower so even just ambient charge from the air can charge the gate of the output and cause it to turn on and run the blower at full power. It relies on the microcontroller to actively disable the pin. If you really want to test that you can connect the microcontroller pin labeled BLW to any GND with a small bit of wire (just touch the wire to the pads, no need to solder). The blower should turn off. If it does still run then you do have a problem in the blower circuit as well.

Another thing to look at is Status -> System Log and Status -> Kernel Log after you try to do an AVR Firmware update (and you get the AVR Fuses ERROR) message. See if there are any new lines at the end of either of those after trying to do the update which would indicate if there's a software problem.

I jumpered PD3 (pin #5 on the socket) to ground and the blower output was still 12v, so I obviously fried that circuit too. So I might as well order the replacement parts for that. Looks like a diode, capacitor and a couple of mosfets? Any good way to see which one is bad, or what would fail first in this situation?


Here are my logs for kernel and system log.
https://pastebin.com/y06Yegjg
https://pastebin.com/NBXgz82M
 
Click to embiggen

Here's a voltage diagram of what you should see with 0% blower output. You can start at the microcontroller output and work your way back across the traces and maybe see where things are going wrong. Odds are that the first BS170 MOSFET is conducting or the power MOSFET is conducting.

Driving parts are: BS170, FQU11P06TU, 2.2k resistor, 220u inductor, 1N5819 diode, 47u/25V capacitor. Then the feedback circuit is 64k, 22k, 100k resistor and a 0.1uF capacitor (not included in image). Only the BS170 and FQU11P06TU are likely culprits.
 
You're working with a HMv4.2.4, right? Here is an image that lays out the blower circuits for that boards, including voltage information for blower on/off states:

HM_Blower_Notes.jpg


I didn't read the whole thread, but think your troubles started when you plugged things together wrong. If that is the case the components I would suspect are the ATMega and Q1. If I were in your shoes this is how I would proceed.

First, in the HM config I would set the blower to PULSE mode (not Voltage Mode), this disables the blower feedback circuit. If the blower works properly in Pulse Mode I would suspect something fried in the feedback circuit, perhaps L1. An inductor is difficult to test unless you have a ring tester in your multimeter, most don't, so I would just replace if you suspect it is bad.

If the blower still doesnt work right in Pulse mode then I would move on to verifying the ATMega is doing what it should. Measure the voltage on Pin5 (blue line) to see if it reads the proper voltage at 0% and 100%, if not then I would pull the ATMega from the socket and insert it back with the leg from Pin 5 not installed in the socket (just bend it outward slightly). Now measure the voltage on the isolated leg of Pin5, if it still does not read the proper voltages then I would re-flash the ATMega and hope that clears up whatever got messed up, if it doesn't behave properly then I would replace the ATMega. If when isolated the voltages on Pin5 are proper then I would re-insert Pin5 and move on to troubleshooting the blower circuit.

First stop is Q1, center pin should read the same voltages as Pin5 from ATMega. If these voltages are wonky now that Pin5 is inserted back in the socket then I would look for shorts on Q1 or suspect Q1 as bad. If no obvious shorts are found I would remove Q1, verify voltages on Pin5 & center pin of the Q1 socket are proper (the same), then check the voltage on the right pin of Q1, it should be the same as the voltages on the left pin of Q3. With Q1 removed they should both be 0v, and blower should be at full blast. Carefully tap 12V to either right leg of Q1 or left leg of Q3, the blower should shut off. If it does then that verifies Q3 is in working order, if it does not then Q3 may be fried, or there may be a short on the Q3 end of the circuit. If the blower goes off/on when you tap then remove 12V to that leg then I would replace Q1 with a new BS170. If the blower still does not behave I would check that 12V is getting to the right leg of Q3 and also check R14, verify continuity to the next two components from each respective leg of R14 and make sure it is still reading the proper resistance value. If all this checks out it may be time to replace Q3.

Like I said at the start, I didn't read your entire thread, so if you have already verified any portion of the above then skip over that portion of the troubleshooting routine. The circuit itself is not all that complicated, shouldn't be too tough to fix. If you do end up ordering replacement parts I would suggest you order the entire blower circuit, because the parts are cheap but shipping is more expensive, better to get them all at once rather than ordering twice!

Hope this was helpful, good luck with your repair!
 
Last edited:
Ah dangit, Ralph didn't even read the whole thread but he gave you a better answer than I did because I completely forgot that you had a 4.2 board and not a 4.3 which is what I drew the diagram for. Not only did he give you the proper diagram but he also added a more complete description than I did.

Ralph, you are a treasure!
 
Thank you both for taking the time to help me, it's really appreciated! And great diagram Ralph, I should be able to test that circuit tonight. My replacement ATMega should be here Monday, and hopefully that fixes the issue with my LCD as well, if not do you think a new shift register is needed, or possibly replacement LCD? I have a spare i2c one laying around but it doesn't look like those are compatible. It's probably cheap enough just to order all of that with the blower circuit parts as well. I'll update after testing everything later.
 
Yes, that sounds reasonable, if LCD is still jacked up with new ATMega then look at the shift register and/or the LCD board itself. Most of the HM parts are real cheap, I would just throw the whole HM parts list into the Mouser cart and then pull off the more pricey items you definitely do not need until the mouser cart total $$ is low enough and order. Shipping will prob be as much as the parts, and spare parts are always good to have around...
 
I setup my blower and damper today and am just finishing off some printed parts. When I was hooking everything up I noticed the blower was working just fine. I changed the settings from pulse back to voltage and that worked well too! So it looks like whatever issue I had was involving the ATmega still, it still acts a bit funny. At this point I am able to use the webui to run everything, and hopefully the new ATMega solves my LCD and flashing issues tomorrow. Pretty exciting stuff. Thanks for all your help, I have a much better understanding of the circuit now too!
 

 

Back
Top