Problems booting with 5v pin power supply.
I using mini pro and I encountered some strange artifact - I can't seem to be able to boot properly while using 5v pin (not with the usb port).
It's ok when I use usb cable to power my device, but when I use 5v pin I have to "reset" it in order to get to work properly. Then it will ok till the next power outage.
I suppose that there might be some issues with my external power supply or there is something happening during the first boot.
First boot with usb cable attached is also ok - so it's strange.
I need some clues - what to look for or how to get a some debug boot messages without plugging in an usb.
Put a huge (3,200uf) electrolytic capacitor between the 5v and ground pins, and make sure your power supply can deliver at least 500ma, easily.
Can you tell us what you are powering it with exactly, what is connected the the board, and also show us your connections -- either as a photo or as a schematic drawing? Otherwise we could be guessing all day.
I have some straighforward connections so not much to show or draw:
- ds18b20 (x2 in parallel) (using 3 pins - not in parasite mode)
- 2x PWM for led dimming (driver powered from the 24v rail)
- DS3231 (i2c)
I had a 100uF in the power rail but it didn't help
Every time I push the reset button - d1 boots normally. I hooked up TX,RX during the power up stage (not using usb) and until I press reset button - it's dead (hooking up power doesn't give me any led flashes or serial output). I measured and there is +5V on the power rail so I'm not sure what's wrong.
I'm using some sort of combo power supply 24v + 5V output + common GND and I suspect that there might be some issues concerning stuff like - not enough load on the +5v side for the PSU to start properly - but then, reset brings my d1 mini to life.
During my tests I noticed 2 behaviours :
- I power my board with usb using a phone charger - d1 boots normally, I turn on the PSU, disconnect the charger and it still works (ho reboots or anythin)
- I turn on my PSU (d1 won't boot), I plug in usb with charger - d1 still won't boot, as if having PSU powet at start makes d1 hang, but when I connect it to a pc (with serial monitors) I suppose a reset is done and d1 boots
I just wanted to know if there there is perhaps some sort of simple solution like: "You should pull up the reset pin or it won't work: etc.
Hope my explanations may help a little.
There is no simple solution that comes to my mind.
One possible explanation -- but it's a long shot -- is that there is some kind of leakage from the 24V rail into the GPIO15 pin that makes it read as high on boot -- and then the board boots into SDIO mode, and waits for firmware to be sent to it -- which would make it appear dead.
A schematic showing all the connections and pins would help greatly in figuring out what is happening.
@deshipu As soon as I get home I'll give a look (the schmatic I have available online does not reflect "soldered reality"). But you reply gave a clue. Which pins configurations are considered "meaningful" during boot up and might interrupt my boot, the ones I found are ?
a) GPIO15 (D8) - high state makes go go to sdio mode (sd card boot mode)
b) GPIO15 (D8) - low, GPIO0 (D3) - low, GPIO2(D4) - high = UART download mode
c) GPIO15 (D8) - low, GPIO0 (D3)- high, GPIO2(D4) - high = boot from SPI
I'm pretty sure my ds18b20 are connected do D4 and data line is pulled up to 3v3 that would make me fall into b) scenario. Would UART download mode give symptoms as I described ?
The "UART download mode" is basically "programming mode" -- that's what the board does when you are uploading code to it. If I remember correctly, it would display a line of garbled characters on the UART (so you would see the LED blinking briefly) and then wait for the code.
Ok, I managed to solve it (or rather the cause was found).
Problem was not in PSU but in an not powered arduino attached to tx/rx pins (and pershaps the sensors at D3 D4 pins - becuse I moved them as well). I cant really tell what was going on, but having arduino rx/tx pins attached to mini's tx/rx stops it from booting properly (a reset is required) - importatns is that removing the arduino fixed the issue (it was not powered since it's not used yet an I use mini's serial as debug rather than a communication port).
When my project will move to the next phase I'll need that uart connection to work - but in the meantime - skipping "not yet used" arduino works.
Thanks for help.