This is inspired by ESA - ExoMy project
- add sensor to rover & send values to UI (
Lidar, Proximity,Magnetometer,Gyroscope) - update rover head & body to handle new stuff
- secure rover connection
- handle 4G hat, GPS position & init SMS
- plug arduino to raspberry with I2C & start with sending LiPO battery voltage
Here is a brief summary of what's change comparing to original ExoMy project :
- Move rover code & UI app in this single mono-repo
- Get rid of ROS & convert rover code to native typescript files
- Use Ember.js framework to build more robust control application
- Add feature to rover :
- Add cheap servo workaround
- Send some measure from raspberry PI (Network quality, vcgencmd infos, ...)
- Allow live camera settings update
- Add some HTTP response (ping) to better deal with rover connection.
- Native ROS gamepad support has been replaced by using gamepad Api on UI app.
- Improvement of control app UI
- Convert all SolidWorks files to FreeCAD files
- More to come, see todo
Contains the web app used to control the ExoMy Robot
Robot software aims to be run on Rapsberry
Package to share types/code from control app & Robot software
Contains the docker file & usefull stuff related to docker
Contains Fritzing schema of the robot
Contains freecad file of the robot design
Various usefull stuff (personnal purchase list, freecad macro, ...)
run sudo raspi-config
& ensure Camera, SSH & I2C are enable.
apt-get update && sudo apt-get full-upgrade
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker pi
sudo reboot now
(Optional) test docker installation with :
docker run hello-world
cd
git clone https://github.com/romgere/MyExoMy.git
To see the different options of the script use:
sh ~/MyExoMy/Docker/run_exomy.sh -h
Or if you are already in the MyExoMy/Docker
folder:
sh run_exomy.sh -h
Depending on the state of the project, different configurations of the docker container are used:
This configuration is used to run configuration scripts for the motors as described in the chapter final integration
sh ~/MyExoMy/Docker/run_exomy.sh -c
This configuration is used to start the container for development purposes. It installs the source code and sources the environment. You can make modifications to the code and run your custom launch files.
sh ~/MyExoMy/Docker/run_exomy.sh -d
This configuration is used to autostart the software when ExoMy is switched on. ExoMy can then be controlled using the website or with a gamepad.
sh ~/MyExoMy/Docker/run_exomy.sh -a
Stop Autostart This configuration is used to stop the autostart docker container.
sh ~/MyExoMy/Docker/run_exomy.sh -s
Edit source files from raspberry directly on your computeur :
apt-get install sshfs
cd
mkdir pi_home
sshfs -o allow_other,default_permissions pi@xxx.xxx.xxx.xxx:/home/pi pi_home/ # replace xxx.xxx.xxx.xxx by your raspberry address
cd pi_home/MyExoMy #Open this folder in your IDE