Introduction: Camera NanoTank

This intructables show how to use Seeed Studio XIAO ESP32S3 and corresponding camera module to build a NanoTank.

Supplies

Seeed Studio XIAO ESP32S3 Sense

751626 Lipo Battery

DRV8833 Motor Drive Board

2 x Mini 3.7V 6mm Coreless motor (47RPM)

2 x 1 inch rubber band

4 x 12 mm flat head M2 Screw

(Optional) 2.4 GHz T shape antenna

Step 1: What Is NanoTank?

The first time I see NanoTank is at @ushineko3n Twitter. The NanoTank main idea is using the motor case as the axis, this allow the tank become much smaller in size. This project reuse the NanoTank design to build this tiny toy.

Ref.:

https://twitter.com/ushineko3n/status/1490627407963095041

https://itoi.jp/M5Stack.html#NanoTank

Step 2: 3D Print

Please download and 3D print the models at Thingiverse:

https://www.thingiverse.com/thing:5994079

Number of prints required:

motor wheel  x2
lower wheel x4
motor gear x2
body x1
side x2

Step 3: Software Preparation

Arduino IDE

Download and install Arduino IDE if not yet: https://www.arduino.cc/en/software

Arduino-ESP32

Follow installation step to add Arduino-ESP32 support if not yet:

https://docs.espressif.com/projects/arduino-esp32/en/latest/installing.html

XIAO ESP32S3

Follow Seeed studio Wiki to familiar XIAO ESP32S3:

https://wiki.seeedstudio.com/xiao_esp32s3_getting_started/

ESP Async Web Server Library

Download latest ESPAsyncWebServer libraries: (press "Clone or Download" -> "Download ZIP")

https://github.com/arjenhiemstra/ESPAsyncWebServer

Import libraries in Arduino IDE. (Arduino IDE "Sketch" Menu -> "Include Library" -> "Add .ZIP Library" -> select downloaded ZIP file)

Arduino ESP32 filesystem uploader

Follow the installation steps to install Arduino ESP32 filesystem uploader if you are not yet do it:

https://github.com/lorol/arduino-esp32fs-plugin

FSBrowserPlus

Download the FSBrowserPlus at Github:

https://github.com/moononournation/FSBrowserPlus

FSBrowserPlus was developed in my previous projects, you can see more details at:

https://www.instructables.com/Strider-Camera-Robot-V6/

https://www.instructables.com/Strider-Camera-Robot-V2/

https://www.instructables.com/Strider-Camera-Robot/

https://www.instructables.com/Camera-Robot/

Step 4: Upload Program

  1. Open the "FSBrowserPlus.ino" at Arduino IDE
  2. Modify the WiFi and other settings in "FSBrowserPlus.ino" header
  3. Select (Uncomment) your camera dev board in "camera_pins.h", this project should select CAMERA_MODEL_XIAO_ESP32S3_ROBOT
  4. Select Board options according to Seeed studio Wiki
  5. Press "Upload" button to compile and upload program
  6. Select "ESP32 Sketch Data Upload" in "Tools" menu
  7. Select FS Type to "LittleFS" and press "OK" button

Step 5: Soldering Work

Please find the full soldering work video at bilibili:

https://www.bilibili.com/video/BV1x24y1H79h


The GPIO assignment had been revised many times, here are the final connection summary:

XIAO ESP32S3   DRV8833 Drive Board   Other Parts
============ =================== ===========
D0 (GPIO1) -> IN1
D1 (GPIO2) -> IN2
D3 (GPIO4) -> IN3
D4 (GPIO5) -> IN4
BAT- -> GND -> Lipo -ve
BAT+ -> Lipo +ve
3V3 -> VCC
OUT1, OUT2 -> Motor 1
OUT3, OUT4 -> Motor 2

Step 6: Assembly

Step 7: Fix Antenna

The antenna is floating in the air, it is better fix it at the middle with a little hot glue:

https://www.bilibili.com/video/BV1V24y1F72p/

Step 8: Enjoy!

Step 9: What's Next?

Wish list:

  • Power Switch? This NanoTank is too small and not yet have a power switch
  • Mission Launcher?
  • Speed?
  • More Terrain Adaptation?
  • Auto Focus?
  • Snap Photo? XIAO ESP32S3 Sense have built-in SD card slot
  • Sound Streaming? XIAO ESP32S3 Sense actually have built-in digital microphone
  • Visual AI?
  • Speech Command Recognition?
Big and Small Contest

First Prize in the
Big and Small Contest