Software running on an ESP32 to report measurements taken from atlas sensors
it pushes collected measurements to an InfluxDB bucket
Install the Arduino IDE
Copy the all libraries from /libraries
to your Arduino's library location, usually at ~/Documents/Arduino/libraries
cp -R ./libraries/* ~/Documents/Arduino/libraries
or create a symlink 😏
ln -fs /Users/<user>/autoponico/arduino/libraries /Users/<user>/Documents/Arduino/libraries
Open the .ino
file with Arduino IDE, compile and happy upload 🔥
Note
To update from webapp, generate the .bin
file from Arduino IDE, rsync it to the ws-server and send command management update
from webapp, it will tell the Arduino to download that file and apply updated firmware.
ping
ph
cal_low
cal_mid
cal_high
cal_clear
read_ph
ec
: bypass AT commands to Atlas sensor eg:ec R
sendsR
to sensor serialcontrol
ph_up
ph_down
ph_setpoint
ph_auto
ec_up
ec_down
ec_setpoint
ec_auto
info
management
reboot
update
wifi
: Set SSID and password:management wifi <SSID>,<password>
info
influxdb
info
Get influxdb infoupdate
Pass the entire object{"enabled": "true", "url": "", "org": "", "bucket": "", "token": ""}
kalman
info
NodeJS program using typescript to handle websockets between webapp and Arduino boards
Move to dir cd ./ws-server
Install packages yarn install
Run with env (cat .env | xargs) nodemon main.ts
For production, run with env (cat prod.env | xargs) ts-node main.ts
Note
sudo snap install --classic certbot sudo certbot certonly --standalone -d autoponico-ws.tucanorobotics.co
NextJS bootstraped app, check webapp/README.md
for more info