Having let the smoke out of 2 ESP8266 Feathers, we know it's a bad thing to have a USB console cable connected while there is power from a 5V regulator feeding into either BAT or USB on the ESP8266 Feather.
Solution is to provide power only via the 5V lead on the USB micro-B connector. This requires constructing a cable which:
-has a USB connected mounted on the side of the robot
-has a USB micro-B connector that plugs into the ESP8266 Feather
-has switching that connects the +5V and GND going into the ESP8266 to at most one of:
-the +5V and GND from the cable to the side mounted USB jack
-the +5V and GND from the 5V regulator connected to the 12V battery
-the switch must be "break before make", i.e. it can't temporarily bridge the cable and regulator input.
Having a "neither" position is a handy second level reset that goes beyond grounding the reset pin, and cycles the power to the 8266, IMU, etc.
I have double pole double throw ON-OFF-ON toggle switches that should work nicely.
Having let the smoke out of 2 ESP8266 Feathers, we know it's a bad thing to have a USB console cable connected while there is power from a 5V regulator feeding into either BAT or USB on the ESP8266 Feather.
Solution is to provide power only via the 5V lead on the USB micro-B connector. This requires constructing a cable which: -has a USB connected mounted on the side of the robot -has a USB micro-B connector that plugs into the ESP8266 Feather -has switching that connects the +5V and GND going into the ESP8266 to at most one of: -the +5V and GND from the cable to the side mounted USB jack -the +5V and GND from the 5V regulator connected to the 12V battery -the switch must be "break before make", i.e. it can't temporarily bridge the cable and regulator input.
Having a "neither" position is a handy second level reset that goes beyond grounding the reset pin, and cycles the power to the 8266, IMU, etc.
I have double pole double throw ON-OFF-ON toggle switches that should work nicely.