I have a Johnny 5 from Robot Shop/Lyxmotion. It has a Botboardunio and SCC-32. I’ve also got the Ping connected to the Botboarduino. I also added a EasyVR to give voice and hearing and can control J5 by voice. What I really want to do is make J5 autonomous, but I find the amount of memory in the Botboarduino rather limiting. First, I thought add WiFi to J5 and control from my PC. Then I discovered the ESP32 that has both WiFi and 4M of program memory. Light bulb moment why not connect a ESP32 board via serial to Botboarduino. So, I bought a Arducam ESP32 UNO PSRAM from Robot Shop. It has a camera, SD card interface and 4MB program memory. I was thinking it must have some free GPIO pins to provide RX/TX serial interface. If necessary, I will give up the SD card interface. To connect the 3.3v Arducam to the 5v Botboarduino I will use a ‘voltage level convertor’. All sounded straight forward until I tried to find out more about the Arducam’s pin usage – I tried to find out if there are any unused GPIO pins or which GPIO pins are connected to the SD card interface.
Eventually I found this article on how to release GPIO pins and still keep the SD interface functional (if slower):
https://dr-mntn.net/2021/02/using-the-sd-card-in-1-bit-mode-on-the-esp32-cam-from-ai-thinker
This releases GPIO 12,13 which is enough to do serial interface with existing Botboarduino. Now I need to power the ESP32 at 3.3v. This is fine via USB connected to PC, but what I really need is a battery.
I’ve looked on Robot Shop site and there are several promising in-stock LiPo 3.7v batteries, but I need a charger as well. I’ve also read that Lithium batteries don’t like being drained too much!
I am looking for suggestions on combinations that are in-stock and connect together i.e. battery must plug into Arducam ESP32 UNO PSRAM and the charger i.e. it’s a plug/socket thing. Also how do I protect my battery from being discharged too much?