diff --git a/README.md b/README.md index 09bcf3a3850bf2f4ff6606508b5ff05a1c07c805..157f5a33eada1f65e87fc04e695138251c0aa760 100644 --- a/README.md +++ b/README.md @@ -17,12 +17,13 @@ The *CO2 Ampel* can: * Send data over [LoRaWAN](https://en.wikipedia.org/wiki/LoRa#LoRaWAN). * Display measurements and configuration on a small website. * Log data to a [CSV](https://en.wikipedia.org/wiki/Comma-separated_values) file, directly on the ESP flash memory. +* Accept many interactive commands. ## Hardware Requirements * [ESP8266](https://en.wikipedia.org/wiki/ESP8266) or [ESP32](https://en.wikipedia.org/wiki/ESP32) microcontroller (this project has been tested with *ESP8266 ESP-12 WIFI* and *TTGO ESP32 SX1276 LoRa*) * [Sensirion SCD30](https://www.sensirion.com/en/environmental-sensors/carbon-dioxide-sensors/carbon-dioxide-sensors-co2/) "Sensor Module for HVAC and Indoor Air Quality Applications" -* [NeoPixel Ring - 12](https://www.adafruit.com/product/1643) +* [NeoPixel Ring - 12](https://www.adafruit.com/product/1643), or [NeoPixel Ring - 16](https://www.adafruit.com/product/1463) (experimental) See the [documentation](https://transfer.hft-stuttgart.de/gitlab/co2ampel/ampel-documentation) for more info. @@ -67,6 +68,33 @@ make upload board=esp32 && make monitor # For ESP32 * *Upload* * *Tools > Serial Monitor* +## Available commands + +In Arduino IDE *Serial Monitor* or PlatformIO *Monitor*, type `help` + Enter in order to list the available commands: + +* `auto_calibrate 0/1` (Disables/enables autocalibration). +* `calibrate` (Starts calibration process). +* `calibrate 600` (Starts calibration process, to given ppm). +* `calibrate! 600` (Calibrates right now, to given ppm). +* `co2 1500` (Sets co2 level, for debugging purposes). +* `color 0xFF0015` (Shows color, specified as RGB, for debugging). +* `csv 60` (Sets CSV writing interval, in s). +* `format_filesystem` (Deletes the whole filesystem). +* `free` (Displays available heap space). +* `local_ip` (Displays local IP and current SSID). +* `lora 300` (Sets LoRaWAN sending interval, in s). +* `mqtt 60` (Sets MQTT sending interval, in s). +* `night_mode` (Toggles night mode on/off). +* `reset` (Restarts the sensor). +* `reset_scd` (Resets SCD30). +* `send_local_ip` (Sends local IP and SSID via MQTT. Can be useful to find sensor). +* `set_time 1618829570` (Sets time to the given UNIX time). +* `show_csv` (Displays the complete CSV file on Serial). +* `timer 30` (Sets measurement interval, in s). +* `wifi_scan` (Scans available WiFi networks). + +The commands can be sent via the Serial interface, from the webpage or via MQTT. + ## Authors * Eric Duminil (HfT Stuttgart)