From d6ab6a340ed5272ada6745d84bf657c3e8a7c95b Mon Sep 17 00:00:00 2001 From: Mario Mariete <11509521+melkati@users.noreply.github.com> Date: Tue, 30 Jan 2024 10:32:19 +0100 Subject: [PATCH] Update README.md --- README.md | 61 ++++++++++++++++--------------------------------------- 1 file changed, 17 insertions(+), 44 deletions(-) diff --git a/README.md b/README.md index c4744528..4ec826b4 100644 --- a/README.md +++ b/README.md @@ -25,11 +25,14 @@ This repository is mainly addressed at developers. If you are an end user willin - Sending of data via MQTT - Receiving remote commands via MQTT - MQTT Discovery protocol for Home Assistant (and others supporting it as HomeSeer with mcsMQTT) +- Easy installing via web browser +- Easy WiFi setup via web browser on install and anytime (supports Improv-WiFi) +- Easy WiFi setup via bluetooth with the MyAmbiance App in iOS and Android - ESP-NOW communications protocol from Espressif for long range and low power consuption ([more info here](https://emariete.com/en/gateway-esp-now-mqtt/)) - Over the air updates OTA - Support for Neopixel (WS2812B) addressable LEDs (RGB, GBR and RGBW) - Support for RGB LEDs -- GPIO outputs to, for example, activation of air circulation on CO2 concentration threshold with hysteresis. Check GPIO to use at [my blog CO2 Gadget firmware page](https://emariete.com/medidor-co2-gadget/) +- GPIO outputs for alarms and activation of air circulation on CO2 concentration threshold with hysteresis. Check GPIO to use at [my blog CO2 Gadget firmware page](https://emariete.com/medidor-co2-gadget/) - ~~-LoRa/LoRaWAN in study. If you are interested, please [join this conversation](https://github.com/melkati/CO2-Gadget/issues/35).~~ # Supported hardware and build @@ -88,6 +91,7 @@ CanAirIO sensorlib right now supports: | Panasonic SN-GCJA5L | Yes | Yes | Auto | STABLE | | Plantower models | Yes | --- | Auto | STABLE | | Nova SDS011 | Yes | --- | Auto | STABLE | +| IKEA Vindriktning | Yes | --- | Select | STABLE | Sensirion SPS30 | Yes | Yes | Select / Auto | STABLE | NOTE: Panasonic via UART in ESP8266 maybe needs select in detection @@ -110,7 +114,13 @@ NOTE: Panasonic via UART in ESP8266 maybe needs select in detection | SHT31 | i2c | Auto | STABLE | | AHT10 | i2c | Auto | STABLE | | BME280 | i2c | Auto | STABLE | +| BMP280 | i2c | Auto | STABLE | | BME680 | i2c | Auto | STABLE | + +| DfRobot SEN0469 NH3 | i2c | Auto | TESTING | +| DFRobot SEN0466 CO | i2c | Auto | TESTING | +| Geiger CAJOE | i2c | Select | TESTING | + | DHTxx | TwoWire | Auto | DEPRECATED | NOTE: DHT22 is supported but is not recommended @@ -122,7 +132,7 @@ Full details on CanAirIO sensorlib [here](https://github.com/kike-canaries/canai ## With PlatformIO (recommended) -**Note:** If all you want is to flash CO2 Gadget into your board go [here:](https://emariete.com/en/meter-co2-gadget/). You don't need to compile the firmware. +**Note:** If all you want is to install CO2 Gadget into your board go [here:](https://emariete.com/en/meter-co2-gadget/). You can install it from your web browser and don't need to compile the firmware. ### Install PlatformIO @@ -156,47 +166,10 @@ If using PlatformIO **GUI**, to compile and upload CO2-Gadget into your board, p ## With Arduino **NOTE:** -Currently neither the code is ready to compile with the Arduino IDE nor these instructions are up to date. If you want to compile with the Arduino IDE, you will have to solve includes, dependencies and defines yourself. - -When the code is more stable and changes less often, I will update the code the instructions to compile with the Arduino IDE. Right now it is modified very often with bugfixes and new functionalities and it takes me a lot of time to be aware of maintaining compatibility with the Arduino IDE. +Currently Arduino IDE is not supported. If you want to compile with the Arduino IDE, you will have to solve includes, dependencies and defines yourself. I recommend that you use VS Code with PlatformIO. You have many tutorials on the internet, and it is not as difficult at all as it seems. -#### Prerequisites - -To **compile this project with Arduino IDE** (the integrated development enviroment), you have to **install Arduino IDE**, and **add the libraries** referenced in **lib_deps** in the file [platformio.ini](https://github.com/melkati/CO2-Gadget/blob/master/platformio.ini), as **Arduino won't install it automatically** like PlatformIO does. - -Also, you need to add support for ESP32 boards: - -For Arduino IDE: Adding the line **https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json** in: File > Preferences > Additional Boards Manager URLs. - -In Arduino IDE select your board, COM port, etc. in the Tools menu and to upload to your board select Program -> Upload or click on the "upload" icon. - -To **compile this project with Arduino CLI** (the command line version of Arduino), you first need to install **arduino-cli** or the **Arduino IDE** with the libraries referenced in **lib_deps** in the file [platformio.ini](https://github.com/melkati/CO2-Gadget/blob/master/platformio.ini), because **Arduino won't install it automatically** like PlatformIO does. - -You must first add support for ESP32 boards in Arduino CLI: Follow the next steps: - -```bash -arduino-cli config init -``` - -in the `.arduino15/arduino-cli.yaml` file add: - -```yml -board_manager: - additional_urls: - - https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json -``` - -From `arduino-cli` you can load CO2 Gadget in an ESP32 board following these steps: - -```javascript -arduino-cli core update-index -arduino-cli core install esp32:esp32:esp32 -arduino-cli compile --fqbn esp32:esp32:esp32 CO2_Gadget.ino -arduino-cli upload --fqbn esp32:esp32:esp32:UploadSpeed=115200 -p /dev/ttyUSB0 basic -``` - # Supporting the project If you want to contribute to the code or documentation, consider posting a bug report, feature request or a pull request. @@ -209,13 +182,12 @@ When creating a pull request, we recommend that you do the following: - Clone the repository - Create a new branch for your fix or feature. For example, git checkout -b fix/my-fix or git checkout -b feat/my-feature. - Run to any clang formatter if it is a code, for example using the `vscode` formatter. We are using Google style. More info [here](https://clang.llvm.org/docs/ClangFormatStyleOptions.html) -- Document the PR description or code will be great -- Target your pull request to be merged with `development` branch +- Document the PR description and code is a must +- Target your pull request to be merged with the `development` branch # TODO - [ ] Implement full support for PM 2.5 -- [ ] Full configuration vía web page # Useful information @@ -224,10 +196,11 @@ When creating a pull request, we recommend that you do the following: - [Everything about the Winsen MH-Z19 NDIR CO2 sensors](https://emariete.com/en/sensor-co2-mh-z19b/) - [Everything about the Winsen Low Consumption CO2 Sensor MH-Z1311A](https://emariete.com/en/sensor-co2-low-consumption-mh-z1311a-winsen/) - [MH-Z19B vs Senseair S8 NDIR sensors](https://emariete.com/en/comparison-co2-sensors-mh-z19b-vs-senseair-s8/) +- [Tutorial to build a CO2 Monitor with a TTGO T-Display board](https://emariete.com/en/co2-meter-co2-display-tft-colour-ttgo-t-display-sensirion-scd30/) # Credits -Thanks to all collaborators, contributors and [eMariete](https://emariete.com) community for testing and reports. +Thanks to all collaborators, contributors and to the [eMariete](https://emariete.com) community for testing and reports. --- ## License