I have two different boards running the same code with the same chip (ATMega32u4).
THe problem is that the 2nd board seems to lose the program that has been flashed to the chip if it loses power.
Both of these boards have mini USB connectors and get power from USB and both run at 5v.
First (Working) Board
Second (Failing) Board
The second board is a knock-off of that board which I bought on amazon. You can see the details for that board at: Pro Micro knock-off board at amazon
NOTE: I'm not expecting anyone to examine those boards perfectly and tell me the exact reason why. I'm just adding that info in case someone notices something completely different that would indicate the problem.
Programming the Boards
When I program the boards I set the Arduino IDE to the Pro Micro board at 5v and 16Mhz and the program flashing works equally well on both boards. I then run the knock-off board and it works perfectly. It's a little program that receives data from bluetooth and displays the data elsewhere.
Loss of Power, Loss of Flashed Program
On the first board, I programmed it once weeks ago and it works after being powered off for days. Obviously, that's the way it is supposed to work.
On the second board, if it loses power at all it seems to lose the program.
Common Things To Check?
I'm just wondering if there are some common things I can check to determine why the program seems to be lost.
Are there any obvious things that I'm just missing? Is it possible the manufacturer hasn't wired something up properly which would cause this --- I mean is this common problem with board manufacturing? I have 5 of these knock-off boards and have tested two so far and both seem to have the problem.
Any help is greatly appreciated.
Edit: Additional Info
I found the following information in a review on Amazon:
Like some other reviewers, my Pro Micro seemed to be losing the sketch when disconnected from power. However, I've now figured out that the Pro Micro isn't actually losing the sketch, there is a different problem altogether. When the Pro Micro is reconnected to power, for some reason the bootloader isn't running the sketch. If you then do a soft-reset by connecting the RST pin to ground, upon reset the bootloader starts running the sketch successfully.
So the issue can be worked around by wiring a button to the RST pin and hitting the button every time you plug in the Pro Micro so that it will reset and run the sketch. It's annoying that the issue exists, but at least it's workable.
- Can anyone explain this phenomena?
- Might there be another workaround that is an automated solution-- versus pushing a button each time?