* Refactor GitHub Actions workflows for build, documentation, and linting
- Consolidated build logic into reusable workflows (`task-build.yml` and `task-docs.yml`) to reduce duplication across multiple workflows.
- Introduced `environments.json` to centralize the list of PlatformIO build environments, improving maintainability and clarity.
- Updated `build.yml` and `build_and_docs_to_dev.yml` to utilize the new reusable workflows and environment definitions.
- Enhanced `release.yml` to streamline the release process and integrate documentation generation.
- Created reusable linting workflow (`task-lint.yml`) to standardize code formatting checks across the repository.
- Simplified manual documentation workflow by leveraging the new reusable documentation workflow.
- Improved artifact management and retention policies across workflows.
- Updated dependencies and versions in workflows to ensure compatibility and performance.
* CI/CD pipeline agnostic of Workflow Engine and integrated on github actions
- Implemented ci.sh for orchestrating the complete build pipeline.
- Created ci_00_config.sh for centralized configuration of build scripts.
- Created ci_build_firmware.sh for building firmware for specified PlatformIO environments.
- Created ci_prepare_artifacts.sh for preparing firmware artifacts for upload or deployment.
- Created ci_set_version.sh for updating version tags in firmware configuration files.
- Created ci_build.sh to orchestrate the complete build pipeline.
- Created ci_qa.sh for code linting and formatting checks using clang-format.
- Created ci_site.sh for building and deploying VuePress documentation with version management.
- Implemented checks for required tools and dependencies in the new scripts.
- Updated common_wu.py, compressFirmware.py, gen_wu.py, generate_board_docs.py, and prepare_deploy.sh with descriptive comments.
Refactor CI/CD scripts for improved modularity and clarity
- Consolidated build steps in task-build.yml to utilize ci.sh for version tagging, building, and artifact preparation.
- Updated task-lint.yml to use ci.sh for code formatting checks instead of ci_qa.sh.
- Enhanced CI_SCRIPTS.md documentation to reflect changes in script usage, command structure, and output organization.
- Improved internal scripts for better error handling and logging.
- Streamlined the output structure for build artifacts and documentation.
* An FSK version for esp32dev-rtl_433 has been added to handle the Bresser 5-in-1 weather station with a standard 868 MHz c1101
* Change platform and DGateway_Name
Enable the management of different connections at runtime with a set of certs for each.
Add parameters to the WiFi Manager onboarding, client certificates, and certificate validation
* First build with IDF, tested with esp32dev-ble only.
* Fix frameworks for non-esp32 boards
* Add blufi support.
* Adds an environment to use esp-idf and Arduino as a component to facilitate incorporating blufi for onboarding and configuration.
---------
Co-authored-by: h2zero <powellperalata@gmail.com>
* [FSK] Add Lilygo Heltec environment with FSK modulation
Enable RTL_433 frequency and active receiver change with WebUI
Add FSK environment for Heltec and Lilygo
* [SYS] Configuration portal for Ethernet board
Enable Wifi Manager as a configuration portal for Ethernet boards, also leverage the Wifi Access point as a fallback connectivity method
Add link to the WebUI from HA and reduce key length
* Remove unnecessary environment
Now that one environment cans support wifi and ethernet, merge the 2
* [LORA] Capability to change LORA frequency and Add OLED
Merge of the 2 environments for TTGO V1
* Merge messages keys with upper level json
* Id as a sub topic
* Add display and state measures
* Add frequency configuration through WebUI
* Add parameters
* Add auto discovery
* Add node example for ttgo lora32 v1
* Add environments and fix scope
* Support for sync word as a byte
* Fix TX Power setting
* Add LoRa gateway description
* Add onlyknown filter
* [DISC] Add runtime configuration for OpenHAB
Add an MQTT configurable system key "ohdiscovery" for OpenHAB auto discovery
* Docs and environments update
* Add environment for board Wemos Lolin C3 mini
* Lolin C3 mini: disable serial output as a default
---------
Co-authored-by: Argafal <dev.omg@argafal.de>
* BLE Display - THB, THBX, PLANT, AIR, BATT, BODY
* SCALE
* BBQ
* Filter MS-CDP, GAEN and IBEACON
* Mopeka & Smart Dry
* ACEL
ACEL sensor, as most also have temp and hum, but no acceleration info display included so far.
* Only display when properties are present
Only display when properties are present, to avoid model only display for devices which require active scanning at a larger interval, e.g. Mi Band and similar.
* LilyGo-BLE environment
* BLE display relocated
BLE display relocated to have pubadvdata "type" in message, required for the different type display functions.
* [BT] Adaptive scan
Add adaptive scan to avoid users setting parameters and deduct automatically the scan requirements from the list of devices
---------
Co-authored-by: DigiH <github@digih.net>
* Added board ESP32 DOIT DevKit V1 with SX1278 module Ai-Thinker Ra01
Gateway using RTL_433_ESP library, need SX1278
ESP32 DOIT DevKit V1 & external Ai Thinker Ra01 Loraboard SX1278 on VPSI and (DIO0=15, DIO1=4, DIO2=16 and RST=17)
* [DOCS] - Generate board documentation automaticaly from platformio.ini
To reduce maintenance effort
* [CI] Differentiate boards from platformio.ini
So that only one line can be commented to use customs environments
* Update to rtl_433_ESP 0.1.5
Includes support for LILYGO® LoRa32 V2.1_1.6.1 433 Mhz
* Fix lint issue
* Fix build and lint issues
* Add lilygo-rtl_433 to build.yml
* added thingspulse gateways
* added thingspulse gateways, RGB LED for tinypico
* Added some LED and Birghtness options
* Requested Changes
* fixed format
This macro is not necessary to add per environment as it is present into com-esp as a global macro for all ESP, also modifying nodemcuv2-mqtt-fw-test env to test self signed only. Removing env:esp32dev-mqtt-fw-test as self signed cert are already tested into env:esp32dev-ble-aws.
Co-authored-by: Florian <1technophile@users.noreply.github.com>
* Add RGB Led management for errors, infos, and send receive events
Add RGB led management for indicators, integrate it for M5 Atom and ESP32 C3 and S3 dev board
Update Fastled version to 3.5.0.
The default behavior is with regular LED, to use RGB Led the macro RGB_INDICATORS needs to be define, along with the FASTLED_IND_TYPE, FASTLED_IND_DATA_GPIO and FASTLED_IND_NUM_LEDS
Note that some RGB led need to have a different color scheme, so in this case it can be entered along with the data PIN definition: -DFASTLED_IND_DATA_GPIO=27,GRB
* Add FastLed library to the environments
* Update Arduino core and BLE/WiFiManager libs.
* Add esp32-s3 and esp32-c3 environments.
* Update build script to use matrix.
* Update release build.
* Fix WiFiManager crash
* Use espressif32 version 3.5.0 for standard ESP32.
* Resolves BLE scan_evt timeout issue with latest version (5.2.0).
* ESP32C3 and ESP32S3 Env's use espressif32 version 5.2.0.
* Update LED pins for C3/S3 environments.