A lightweight web teleoperations interface and data dashboard for the RE-RASSOR project. https://rerassor.com/
Documentation, assembly, and notes found here: Drive link
- Network agnostic. The controller and rover can be on different wifi networks
- Sub 100ms latency between button click and stepper action
- Easy setup. Just flash the esp32, enter wifi credentials, name your rover, and you're done
- Real-time video feed and visualization of on-board telemetry
- Download and open roverclient.ino with Arduino IDE
- Change the following variables to match your network, and choose a custom rover name and secret
const char* ssid = "yourssid";
const char *password = "yourpassword";
const char *url = "/?name=yournamehere&yoursecrethere";
- Follow these instructions to add esp32 board to the IDE
- Install the following libraries (latest version is fine) (needs updated to include MPU9250 lib)
- Plug in the esp32, select esp32 dev module as the board, and select the corresponding com port
- Upload the sketch
assuming that the network you provided has internet, you should see the rover listed on rerassor.com
build
docker build --no-cache -t re-rassor-lightweight .
dev (run locally)
docker run -p 8080:8080 -p 443:443 -p 80:80 -e NODE_ENV=dev re-rassor-lightweight
ECS, if you don't know what this does, ignore it
docker run -p 8080:8080 -p 443:443 -p 80:80 -e SSL_KEY=<raw text key> SSL_CERT=<raw text cert> re-rassor-lightweight
EC2, if you don't know what this does, ignore it
docker run -p 8080:8080 -p 443:443 -p 80:80 -e SSL_KEYPATH=/etc/letsencrypt/live/rerassor.com/privkey.pem SSL_CERTPATH=/etc/letsencrypt/live/rerassor.com/fullchain.pem re-rassor-lightweight
change type of message to "INFO" and pass in IMU, latency, current wheel speed, etc
implement camera feed into WSS stream
lower turning speed
CI/CD w Docker on AWS
If Arduino IDE error about entering flash mode, unplug IMU connections. see (https://randomnerdtutorials.com/esp32-pinout-reference-gpios/). GPIO 2 connected to on-board LED, must be left floating or LOW to enter flashing mode.