Skip to content
This repository has been archived by the owner on Oct 4, 2021. It is now read-only.

Commit

Permalink
Merge remote-tracking branch 'origin/dev' into main
Browse files Browse the repository at this point in the history
  • Loading branch information
proddy committed Oct 31, 2020
2 parents 366f848 + 6c309a2 commit a01ce7d
Show file tree
Hide file tree
Showing 568 changed files with 18,874 additions and 33,072 deletions.
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ assignees: ''
*Before creating a new issue please check that you have:*

* *searched the existing [issues](https://github.com/proddy/EMS-ESP/issues) (both open and closed)*
* *searched the [wiki help pages](https://bbqkees-electronics.nl/wiki/gateway/troubleshooting.html)*
* *searched the [documentation help section](https://emsesp.github.io/docs)*

*Completing this template will help developers and contributors to address the issue. Try to be as specific and extensive as possible. If the information provided is not enough the issue will likely be closed.*

Expand All @@ -29,7 +29,7 @@ assignees: ''
*If applicable, add screenshots to help explain your problem.*

**Device information**
*Copy-paste here the information as it is outputted by the device. You can get this information by from the telnet session using the `system` command and `info`.*
*Copy-paste here the information as it is outputted by the device. You can get this information by from http://ems-esp.local/api?device=system&cmd=report.*

**Additional context**
*Add any other context about the problem here.*
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/questions---troubleshooting.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ assignees: ''
*Before creating a new issue please check that you have:*

* *searched the existing [issues](https://github.com/proddy/EMS-ESP/issues) (both open and closed)*
* *searched the [wiki help pages](https://bbqkees-electronics.nl/wiki/gateway/troubleshooting.html)*
* *searched the [documentation help section](https://emsesp.github.io/docs)*

*Completing this template will help developers and contributors help you. Try to be as specific and extensive as possible. If the information provided is not enough the issue will likely be closed.*

Expand All @@ -23,7 +23,7 @@ assignees: ''
*If applicable, add screenshots to help explain your problem.*

**Device information**
*Copy-paste here the information as it is outputted by the device. You can get this information by from the telnet session with the logging set to Verbose mode.*
*Copy-paste here the information as it is outputted by the device. You can get this information from http://ems-esp.local/api?device=system&cmd=report.*

**Additional context**
*Add any other context about the problem here.*
71 changes: 71 additions & 0 deletions .github/workflows/build_firmware.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
name: Build Firmware

on:
push:
branches:
- dev
tags:
# - '*.*.*'
paths:
- 'CHANGELOG_LATEST.md'

jobs:

release:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2

- name: Version
id: fetch_version
run: |
version=`grep -E '^#define EMSESP_APP_VERSION' ./src/version.h | awk '{print $3}' | sed 's/"//g'`
echo "::set-output name=s::$version"
- name: Setup Python
uses: actions/setup-python@v1

- name: Install
run: |
python -m pip install --upgrade pip
pip install -U platformio
platformio upgrade
platformio update
- name: Build web
run: |
cd interface
npm install
npm run build
- name: Build images
run: |
platformio run -e esp8266
platformio run -e esp32
- name: Delete
uses: dev-drprasad/[email protected]
# if: startsWith(github.ref, 'refs/tags/')
with:
delete_release: true
tag_name: dev
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Changelog
run: cat RELEASENOTES_DEV.md CHANGELOG_LATEST.md > BODY.txt

- name: Release
uses: softprops/action-gh-release@v1
# if: startsWith(github.ref, 'refs/tags/')
with:
body_path: BODY.txt
name: Development Build v${{steps.fetch_version.outputs.s}}
tag_name: dev
prerelease: true
files: |
./build/firmware/*.*
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

64 changes: 64 additions & 0 deletions .github/workflows/check_code.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
name: Code Check

on:
push:
branches: [dev]
paths:
- 'src/**'
pull_request:
# The branches below must be a subset of the branches above
branches: [dev]
schedule:
- cron: '0 11 * * 5'

jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest

strategy:
fail-fast: false
matrix:
# Override automatic language detection by changing the below list
# Supported options are ['csharp', 'cpp', 'go', 'java', 'javascript', 'python']
language: ['cpp']
# Learn more...
# https://docs.github.com/en/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#overriding-automatic-language-detection

steps:
- name: Checkout repository
uses: actions/checkout@v2
with:
# We must fetch at least the immediate parents so that if this is
# a pull request then we can checkout the head.
fetch-depth: 2

# If this run was triggered by a pull request event, then checkout
# the head of the pull request instead of the merge commit.
- run: git checkout HEAD^2
if: ${{ github.event_name == 'pull_request' }}

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
with:
languages: ${{ matrix.language }}

# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v1

# ℹ️ Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl

# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
# and modify them (or add more) to build your code if your project
# uses a compiled language

#- run: |
# make bootstrap
# make release

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v1
56 changes: 56 additions & 0 deletions .github/workflows/release_main.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
name: Release Main

on:
workflow_dispatch:
branches: [ main ]

jobs:

release:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2

- name: Version
id: fetch_version
run: |
version=`grep -E '^#define EMSESP_APP_VERSION' ./src/version.h | awk '{print $3}' | sed 's/"//g'`
echo "::set-output name=s::$version"
- name: Setup Python
uses: actions/setup-python@v1

- name: Install
run: |
python -m pip install --upgrade pip
pip install -U platformio
platformio upgrade
platformio update
- name: Build web
run: |
cd interface
npm install
npm run build
- name: Build images
run: |
platformio run -e esp8266
platformio run -e esp32
- name: Changelog
run: cat RELEASENOTES.md CHANGELOG_LATEST.md > BODY.txt

- name: Release
uses: softprops/action-gh-release@v1
with:
body_path: BODY.txt
name: EMS-ESP v${{steps.fetch_version.outputs.s}}
tag_name: v${{steps.fetch_version.outputs.s}}
prerelease: false
files: |
./build/firmware/*.*
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

22 changes: 22 additions & 0 deletions .github/workflows/standalone_build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
name: Standalone Build

on:
push:
branches: [ dev ]
paths:
- 'src/**'

jobs:
build:

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2

- name: make clean
run: make clean

- name: make
run: make

1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ pio_local.ini
# project specfic
/scripts/stackdmp.txt
emsesp
firmware
/data/www/
/lib/framework/WWWData.h
/interface/build/
Expand Down
18 changes: 9 additions & 9 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
# EMS-ESP Changelog
# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [2.0.1]
## [2.0.1] September 13 2020

### Added
- Able to set individual MQTT publish intervals per device
Expand Down Expand Up @@ -47,7 +47,7 @@ First version of v2 with
- Support for Home Assistant MQTT Discovery (https://www.home-assistant.io/docs/mqtt/discovery/)
- Can be run standalone as an independent Access Point or join an existing WiFi network
- Easier first-time configuration via a web Captive Portal
- Supporting over 70 EMS devices (boilers, thermostats, solar modules, mixing modules, heat pumps, gateways)
- Supporting over 70 EMS devices (boilers, thermostats, solar modules, mixer modules, heat pumps, gateways)

See README.me for more details.

Expand Down Expand Up @@ -105,7 +105,7 @@ There are breaking changes in this release. See `publish_time` below and make su
- Added `kick` command to reset core services like NTP, Web, Web Sockets
- Added WiFi static IP (setting done in WebUI only)
- `log w <type_id>` for watching a specific telegram type ID
- initial support for EMS+ GB125s and MC110's (https://github.com/proddy/EMS-ESP/wiki/MC110-controller)
- initial support for EMS+ GB125s and MC110's
- Buderus RFM200 receiver

### Fixed
Expand Down Expand Up @@ -149,7 +149,7 @@ There are breaking changes in this release. See `publish_time` below and make su
## [1.9.2] 2019-10-19

#### Important! This build has breaking changes:
- MQTT topics have changed. Use the `mqttlog` command to see the names of the subscriptions and the format of the payload data. Also reference the [Wiki page](https://github.com/proddy/EMS-ESP/wiki/MQTT).
- MQTT topics have changed. Use the `mqttlog` command to see the names of the subscriptions and the format of the payload data.
- Home Assistant `.yaml` files need updating to reflect the recent MQTT changes
- The web builder has been upgraded to use Gulp 4. Remove `tools/webfilesbuilder/node_modules` and re-install the libraries using `npm ci` from within the `tools/webfilesbuilder` folder

Expand Down Expand Up @@ -199,7 +199,7 @@ There are breaking changes in this release. See `publish_time` below and make su
- Web login password is now mandatory
- Faster detection of EMS devices on bus by using the 0x07 telegram instead of the brute-force scan
- Fixes to the default HA climate component .yaml file to support latest Home Assistance ('heat' added)
- Update documentation in Wiki on MQTT and troubleshooting
- Update documentation on MQTT and troubleshooting
- Slowed down firmware upload via the Web to prevent users rebooting too early
- Change way WiFi is initialized to prevent dual AP and Client

Expand All @@ -212,7 +212,7 @@ There are breaking changes in this release. See `publish_time` below and make su

### Changed

- New web interface with more features showing Boiler, Thermostat, Solar Module and Heat Pump. See https://github.com/proddy/EMS-ESP/wiki/Running-and-Monitoring
- New web interface with more features showing Boiler, Thermostat, Solar Module and Heat Pump.
- Merged with @susisstrolch's TxMode2 branch for improved support for sending EMS packages. This is the default tx mode.
- Upgraded MyESP library optimizations for WiFi, AP and error handling
- `reboot` command renamed to `restart` to keep consistent with web interface
Expand All @@ -228,12 +228,12 @@ There are breaking changes in this release. See `publish_time` below and make su
### Added

- Added back -DCRASH in Debug build target for capturing any ESP8266 stack dumps during crashes
- Web Interface, for checking stats and setting wifi credentials. See wiki for more details.
- Web Interface, for checking stats and setting wifi credentials. See documentation for more details.
- reset firmware option. If the reset button on the ESP is pressed during boot up sequence (the LED is flashing very fast) all settings are erased and goes into AP mode.
- Added tx_mode back with options 0,1 and 2 until we've fixed option 2 that works for everyone and doesn't reset ESP
- More solar module data captured, thanks to @Vuego123
- Detect thermostat mode for EMS+ RC300/Moduline 3000
- MQTT message to set boiler flowtemp (`boiler_cmd_flowtemp`). See [wiki](https://github.com/proddy/EMS-ESP/wiki/MQTT).
- MQTT message to set boiler flowtemp (`boiler_cmd_flowtemp`).

### Fixed

Expand Down
51 changes: 51 additions & 0 deletions CHANGELOG_LATEST.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
# Changelog

### Added
- boiler `heatingactivated`, automatic select parameter telegrams for write
- boiler `wWType` parameter, in Console and MQTT
- support for uploading compressed firmware binaries in web UI
- setting to manually override the MQTT retain flag
- New API via HTTP REST API to read and set values. See https://emsesp.github.io/docs/#/API
- `show commands` command
- exporting of system settings using the `system info` command in Web and Console. Added link into the Web's Settings page.
- setting to change how booleans are rendered in MQTT (on/off, true/false, 1/0)
- enable ADC setting, add boiler circulation commands, add thermostat RC300 summermodes
- Added all device info to web UI for Thermostat and Boiler
- Added all device values to Home Assistant MQTT Discovery under separate devices and entities
- Show Rx and Tx quality in Console and Web UI
- Added button and tooltip to EMS Devices in Web
- wwtemp and wwtemplow to MQTT, Console and Web
- summer, winter modes for the CW400 thermostat
- new command under system called `report`. http://ems-esp/api?device=system&cmd=report to generate a report log for troubleshooting
- thermostat error codes
- Console command `publish ha` to also force the creation of the Home Assistant MQTT Discovery topics
- Heat pump values (dew temperature and relative air humidity)
- Console up key to repeat last command
- added RC300 floordrying, building, damped temperature

### Fixed
- fix wwontime readback
- fixed support for RC300 via MQTT commands (#505)
- Some minor optimizations to memory handling in the MQTT service
- Prevent MQTT from publishing empty json payloads
- Accurate detection of warm water and heating (#515)
- Fix writing to the Junkers FR120 thermostat
- support for changing summermode
- added missing `heatingtype` to thermostat data
- handle incomming ems+ read requests, ignore F7 telegrams with 3byte-id
- fix month for setting clock from NTP

### Changed
- renamed wWCircPumpType to wWChargeType
- Installation and Configuration notes moved to the official EMS-ESP documentation site
- `call` commands can be done from the Console root for all devices
- Updated EMS-ESP official documentation (https://emsesp.github.io/docs/#/)
- JWT Secret renamed to Super User Password
- EMS Devices in Web UI shows button and tooltip to remind users they can click on a device
- MQTT topic name changes (see doc)
- Mixing renamed to Mixer

### Removed
- Console contexts for thermostat and boiler
- Removed option to enable/disable the MQTT Heartbeat. It's always on.

Loading

0 comments on commit a01ce7d

Please sign in to comment.