![]() |
Mpguino not fully starting, or locking up
My mpguino started acting up lately. Yesterday it reset itself on the way to work, but I figured not a huge deal. This morning as I left, it wouldnt work and I reset it, then realized it had somehow lost all its settings. I reset the parameters and it worked fine on the way to work. At lunchtime I tried to reflash the program (even the original program before changing the cursor position though it shouldnt have made a difference) several times, but it just acts really weird. Sometimes it wants to restart itself several times. When it does stay running, sometimes it goes to the contrast screen, other times not. Try to push any buttons and either one button works then it locks up, or it is totally locked up. It says it always is a successful flash.
I took it apart and all the connections are good. I wonder if anything got corrupted in the firmware? If thats what it sounds like, how do I go about fixing it? Or any other ideas? |
How are you powering it?
|
I haven't used the device, but I am a computer engineer and work with similar stuff regularly. Checking your connections is a good start, but remember that a hairline fracture in a solder joint may only show up in real-world usage. I would recommend touching up all the solder to see if that solves your issue. Successful flashing means that the firmware is there and good. I assume you've done "verify" to make sure it is there and good.
A sometimes-good test for solder cracks is to power up the board and twist it back and forth to see if it duplicates the original issue. If so, solder it all up and you should be good. good luck. I ought to build me one of these. They work on OBD1 cars, eh? |
In the car I am powering it with a constant 12v from the memory wire of the radio, no jack, I soldered the wires direct to the jack pads on the back of the board. Ill have to check but theres a chance it might be closer to 14 volts when running.
On the bench I am powering it with the computer USB power. I have all the boards mounted with soft rubber hose on the screws on both sides, to hopefully keep it from stressing joints. One thing I noticed on the bench is the light on the board that normally flashes at a precise regular pace is now erratic and sometimes not even on at all. I just went out and plugged it into the car. It went to the parameter setting screen, I went through the parameters, seemed to work ok. Didnt start the car or anything. On the bench I tried it at 10 or 20 times and it wouldnt run right at all. Wonder if theres a voltage issue? I havent done "verify". What does it do, just compare the flashed program with the original and make sure it is the same? This stuff is new to me so I havent messed with anything Im not familiar with. |
I'm thinking a "brownout" issue is likely, given the history if the atmel flash. Is it more likely to "forget" immediately after trying to start the car perhaps?
|
Does hte issue occur on the bench AND in the car?
|
When it did it yesterday, it reset about 4-5 miles into the 25 mile trip, but didnt lose the parameters. I soldered everything really good but Ill have to check for loose wires anyway. No splice taps.
It worked great everyday since I built it and got the wires oriented properly, about 2 weeks ago. Till yesterday of course. This morning I didnt touch it when I got in the car, it appeared normal, it displayed yesterdays mpg. When I started the car, it didnt update, and thats when I realized it was locked up so I hit reset. It went to the parameters screen and the default parameters came up so I knew it was all cleared. I pulled over and reset them and it worked fine all the way to work. On the bench is where it is unusable. I dont have a way to put pulses into it on the bench though. Im using the same computer and same usb cable that worked just great before. Edit: Though it doesnt explain the reset while driving, it could explain the reset while starting. Which will probably be worse for the next 9 months as the mornings get colder here and the voltage drops while cranking. When I get off work, Ill plug it in USB again and check the voltage at the 5v pin with a multimeter. I checked it last week when fiddling with the display on USB power and it was basically 5v right on, like 4.95 or so. |
Sorry, this is going to take a little guesswork.
Please do measure the voltage on the arduino 5 volt pin when it is plugged into the USB. |
dcb, are you still blocking my posts?
|
Ok this might be it, or at least the bench part.
On the bench, first plugging it in gives 4.95, but then after a couple seconds it drops to 4.78. Tried this several times, same values. And it still wont work on the bench. In the car, it gives 5.01 regardless of whether or not the engine is running. Plugged it in and it seemed to work just fine. Ill have to check it on a cold morning and see what I get. But now I think about it, 9 volts input is technically still supposed to be ok, and if the car is below 9 volts the ECM wont work to let the car start anyway. So maybe Ive got a bad USB jack or solder. Ill check it when I get home with a different cable and computer and see what happens, to see if it is the jack or not. Maybe the incident yesterday was a hiccup in the car electrical system. |
Well it worked great all the way home. 3 individual "trips" and no problems.
Got home and tested it with my own multimeter, 5.03 in the car. Brought it in and plugged it into the computer here with my own cable and it would only run on USB about 10% of the time, the rest of the time it would lock up and go screwy. Voltage was 4.98 sometimes and 4.88 other times here at home. Same erratic flashing light on the board. One thing I found was that nearly every time I tested the voltage on USB power, it would seem to clear the program, and the screen would do nothing but flash blank. It wouldnt even work in the car. I would have to reflash it to make it work. I tried "verify" and it just repeated back to me the size of the sketch. So I finally reflashed it and didnt measure voltage, and it seems to work ok in the car. Hopefully tomorrow it works better going to work and back. In the program I did change the default variables to my own, so I wont have to change them every time it clears or resets. I checked the voltage from 5V to both ground pins and got the same thing. Also tested the voltage at the power jumper pin and it matches that at the 5V pin. So there is a power "brownout" issue with these boards? Checking it for hairline cracks is a good idea too, but nearly everything on this board is too small for me to solder. Should have built the kit I guess. |
Quote:
Quote:
Going back to the setup screen means the eprom was corrupted, maybe it is overloading the USB power? |
Thanks dcb. I unplugged all the mpguino circuitry and just ran the board itself. First connected to USB gets me 5.03v. Obviously I dont have a display to check but the light on the board seems to flash properly with the other parts unplugged, unlike any other time lately on USB power. Then I took it out to the car. Same thing there, 5.03v with things unplugged.
The mpguino does not power on and off with ignition. It is soldered to the courtesy circuit, which powers the radio memory and on my car has no way of switching off and is not connected through ignition or ecm or anything else. It is 12v constant power. However, maybe taking it out of the car and plugging it into USB power enough times has taken its toll on it? If the bootloader is corrupted, how would I go about reflashing that? I did see some things on the arduino site but it is not really clear. |
Well, if you can reprogram it easily with the mpguino circuitry unplugged, and it works well with it plugged in to the car, then that might be a workaround.
I guess I would plug things in one at a time and see when the usb starts flaking out. Buttons, interface circuit, LCD. You need an isp cable to load bootloaders, and some patience. I made an isp cable out of an old parallel cable and a few resistors and a bit of hard drive connector. I've revived a couple chips with it and can buy plain atmega168 chips without a bootloader on them. But if your arduino returns to "normal" without the extra circuitry then the extra circuitry is suspect. http://www.estudiolivre.org/img/wiki..._schematic.jpg |
Thanks dcb, that really helps if I need to do that. Looks similar to an interface cable I made once for my calculator.
I tried things one by one, and it appears that the 2N3906 transistor circuit was making it flake out. Switches and display power connected I got 5.03 volts. Without the transistor connected but display signals connected I got 4.98 volts. With the transistor connected I got 4.87 volts and screwing up after a few minutes (maybe it takes a moment for it to heat up and start leeching power and screwing up). Disconnecting my secondary transistor didnt make a difference, I tried that first. So what I did was abandon the 2N3906 circuit, and rewire my NPN transistor as the only one. (I posted earlier in the release one workspace thread about what it takes to make this oddball display dim.) I put the control leg to digital pin 9, and break the display ground with the other 2 pins. Forgot what theyre called, but I know it is the correct order. I didnt use a resistor on the control leg. I ended up with an extremely bright display that still gave me 4.97 volts left over. I knew it would do this, so I took the list of numbers and subtracted them from 255 and reflashed the program, that was the quickest way. The dimming acts normal now. Even with the pwm putting out the full 5v at 255 to dim my display fully, it still gives 4.98 volts left over. And both in the car AND on the bench so far, it appears to work like a million bucks. I got a feeling I fixed it. Ill let you know tomorrow if I have any more glitches. Thank you so much for all your help. |
No Prob, glad you got it under control :) :thumbup:
|
All times are GMT -4. The time now is 04:09 PM. |
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions Inc.
Content Relevant URLs by vBSEO 3.5.2
All content copyright EcoModder.com