Skip to content
/ C3-PR Public
forked from c3d2/C3-PR

C3 Presence Robot based on the expanded version of the Espressif ESP webcam

Notifications You must be signed in to change notification settings

dk5ee/C3-PR

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

63 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

C3 Presence Robot

A simple and affordable telepresence experimentation platform. Based on the Espressives ESP32-CAM example revisited which in itself is a rework of the 'official' ESP32 Camera example sketch from Espressif.

Robots rising

Construction Howto in German: https://codimd.c3d2.de/c3-pr-tutorial

AI-THINKER ESP32-CAM vs Other Modules:

The current design uses the AI-THINKER ESP32-CAM boards. If possible we will keep compatibilty with other modules.

Motor Driver Hardware

Development of a small motor driver clip-on board is under way. If you want to get started now, wire your own Dual TB6612FNG motor driver board in a way that AIN2 (BIN2) is the inverted signal of AIN1 (BIN1). We only have so many GPIOs, so we need to use them wisely.

board prototype board prototype

See pcb folder for more information on shematics and gerber files.

Mechanical Parts

Various designs for mechanical parts are under development.

grubby style design

Troubleshooting:

Please read this excellent guide for help with common issues of the ESP32-CAM module: https://randomnerdtutorials.com/esp32-cam-troubleshooting-guide/

Setup:

  • For programming you will need a suitable development environment. We had a lot of fun and 'fun' with the Arduino IDE, but PlatformIO leaves it in the dust. Just check out this repo, set your wifi credentials according to myconfig.sample.h and you should be good. However if want to use the Arduino IDE, rename esp32-cam-webserver.cpp to esp32-cam-webserver.ino in the src directory. The Arduino IDE might still work for you. For further instructions and wiring, please refer to the original repo.
  • After burning the firmware to ESP32 the file data/index.html needs to be uploaded to the ESP32 using SPIFFS. See here how to do this.

Notes:

  • This currently ONLY gets tested with the AI-THINKER modules with OV2640 camera installed. We try to keep the code for other cameras in but this might change in the future.

Plans

  • Improve Wifi, add a captive portal (e.g. AutoConnect for setup.
  • Over the air updates.
  • Improve motor control and UI, all this is currently very very basic.
  • Concurrent access to website and stream doesn't seem to work well (or at all). Fix this.

References

How to use gamepads in browsers (no external libraries needed, BROWSER DEPENDENT!) https://gamedevelopment.tutsplus.com/de/tutorials/using-the-html5-gamepad-api-to-add-controller-support-to-browser-games--cms-21345 Differential Steering with Gamepads https://www.impulseadventure.com/elec/robot-differential-steering.html

About

C3 Presence Robot based on the expanded version of the Espressif ESP webcam

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • HTML 55.3%
  • C++ 33.7%
  • C 6.4%
  • Python 4.6%