Commit Graph

109 Commits

Author SHA1 Message Date
Paul
155536af3c added type 0x07 to detect whats on the EMS bus 2019-09-19 22:54:59 +02:00
Paul
2beb5cd5f3 support for multiple HCs - https://github.com/proddy/EMS-ESP/issues/162 2019-09-07 18:59:32 +02:00
Paul
44d45d221a added model types for web colouring 2019-08-31 12:19:11 +02:00
Paul
bbbb9f13ec add tx_mode back 2019-08-30 23:57:08 +02:00
Paul
f7aaa69408 more EMS+ RC3000 handling 2019-08-29 23:17:56 +02:00
Paul
2b20e182ca store ems plus type (FF, F7, F9) 2019-08-27 22:49:22 +02:00
Paul
6274990353 ems+ updates 2019-08-22 21:18:31 +02:00
Paul
2aae90b7cf removed timezone, handled via JS 2019-08-20 19:02:01 +02:00
Paul
e8c95664d2 comment update 2019-08-18 23:13:55 +02:00
Paul
2dc01d78c4 merge with txmode2 branch 2019-08-11 10:56:41 +02:00
Paul
7997804ed3 merge with txmode2 branch 2019-08-11 10:56:30 +02:00
Paul
83fef0f87f text changes to html colors 2019-08-02 16:07:28 +02:00
Paul
fc52f05453 1.9.0 web - new implementation 2019-08-02 09:26:13 +02:00
Susis Strolch
6dba02603f Merge branch 'dev' of https://github.com/proddy/EMS-ESP-Boiler into txmode2
* 'dev' of https://github.com/proddy/EMS-ESP-Boiler:
  tidy up includes
  write to ems+ thermostats (https://github.com/proddy/EMS-ESP/issues/145)
2019-07-31 10:44:52 +02:00
Paul Derbyshire
cb2427b75e write to ems+ thermostats (https://github.com/proddy/EMS-ESP/issues/145) 2019-07-29 22:38:55 +02:00
Susis Strolch
dab66ce918 fixing tx_mode 2
° stabilize emsuart_rx...
  We can get more than 32 bytes because of the trailing BRK.
  So the buffersize for Rx interrupt is (for safety) increased to 36 bytes.
  If length exceeds 36 bytes we dump them to /dev/null

° reintroduced the phantomBreak flag again
  We _must_ signal to Rx that we have a double break, otherwise
  we get problems in emsuart_recvTask...

° add ems_dumpBuffer which shows TxBuffer before send and RxBuffer after
  receive and applying phantomBreak.
  The dump is activated in "log j" mode and used to debug the
  protocol problems.

° change handling of ID bit 7
  on system start we listen for telegram until we receive a valid one,
  larger than 5 byte.
  Depending on the bit7 of the source address we decide if we have a
  Buderus EMS or a Junkers EMS bus.
  This decision is used to set the variables emsIDMask (0x00 for Buderus,
  0x80 for Junkers) and the emsPollAck buffer, used to send the propper
  acknowledge, depending on EMS type.

° move poll acknowledge function (emsuart_tx_poll) from emsuart.cpp to ems.cpp
  and rename to ems_pollAck

° add EMS_TX_REV_DETECT status for detecting the SourceID.7 bit and setting
  emsIDMask and emsPollAck buffer accordingly

° set initial emsTxStatus to EMS_TX_REV_DETECT

° add 'log j' - jabber - for more extensive debug logs
2019-07-29 19:10:19 +02:00
Paul
93ac421d2f added clang-format around code sections to prevent defines getting screwed with autoformat 2019-07-26 15:19:29 +02:00
Paul
eb3cd7da01 added ems_getTxDisabled() 2019-07-26 12:46:11 +02:00
Paul
f8aabd9bf8 merged in https://github.com/proddy/EMS-ESP/pull/154 from @susisstrolch 2019-07-20 10:22:47 +02:00
Susis Strolch
5587b9d267 reworks because of 'tx_mode 2' and protocol issues
° added markers (GIO12, GPIO14) for logic analyzer debugging

° change UART initialisation
  - set RxFIFO full to 1 char, so we can detect active telegram on EMS-Bus
  - set RxTOT to 1 char for the same reason

° in ems_parseTelegram: ignore telegram if  emsRxStatus != EMS_RX_STATUS_IDLE
  because we missed to respond in a timely manner

° ems_tx_buffer is not void anymore, instead we return the Tx status
° extended the emsTxStatus
  - EMS_TX_WTD_TIMEOUT: timeout while waiting for echo of last Tx byte
    out telegram was ignored by the bus master, so the byte wasn't echoed
  - EMS_TX_BRK_DETECT:  BRK detected while sending the telegram
    bus master send us a break because of protocol violation

° add burnStarts, burnWorkMin and heatWorkMin to MQTT boiler message

TODO:
  + take care of ems_tx_buffer return code
  + accept direct telegram in ems_parse_telegram and do a proper acknowledge
  + split the heartbeat in static (version, IP-address) and dynamic (RSS etc)
  + change the hearbeat to a JSON structure so we can easier pick the uptime
2019-07-19 13:16:23 +02:00
Susis Strolch
7d361061c6 add marker pins (GPIO12, GPIO14) for logic analyser
° use faster macros for LA markers
2019-07-18 11:26:43 +02:00
Paul
61e8f093de ignore n/a values iin mqtt too 2019-07-06 17:14:02 +02:00
Paul
f231c863ec https://github.com/proddy/EMS-ESP/issues/146 2019-07-05 12:17:40 +02:00
Paul
9bc8b3d811 cleanup other devices & SM 2019-07-04 22:59:03 +02:00
Paul
21ae6ebc0d handle rendering of signed shorts nicer 2019-07-01 09:47:29 +02:00
Paul
b56d775d5d formatting 2019-06-29 08:56:50 +02:00
Vuego123
55ff267828 AddedISM1SolarPumpWorkingTime
Added ISM1 Solar Pump Working Time
2019-06-27 23:07:19 +02:00
Paul
4e50d13bd1 add tx_mode back as new tx code can cause resets 2019-06-26 22:02:16 +02:00
Proddy
a6a03e6485 Merge pull request #137 from Vuego123/SolarLogginOnly&BugfixSolar
SolarLoggingOnly&Bugfix
2019-06-26 11:45:21 +02:00
Paul
bdf18b091d support for web server and reset firmware option 2019-06-24 23:40:01 +02:00
Vuego123
9c4e2b5da0 SolarLoggingOnly&Bugfix
- Added solar only logging option
- Added a callback message to set the setpoint of the maximum solar boiler temperature.
-fixed bug with wrong device_id for solar
2019-06-23 23:57:57 +02:00
Vuego123
b984b9e3d8 SplitSolarModuleFromOtherDevices
Solar modules upgrades: a separate Solar Module types list (no longer part of other devices). Made a separate _EMS_SolarModule class (no longer part of _EMS_Other). And updated all code that was impacted by that change.
Also added a device description for solar modules.
Tests on my setup (telnet & MQTT) work as before.
2019-06-20 00:16:34 +02:00
Paul
3766780cab version 1.8.0 final 2019-06-15 15:24:56 +02:00
Paul
40659df6be optimize Tx to handle phantom brk 2019-06-11 22:27:46 +02:00
Paul
58a244ab2a clear list on autodetect 2019-06-08 22:35:37 +02:00
proddy
c3427be109 detect junkers on startup 2019-05-28 19:39:25 +02:00
proddy
4d974bbfa0 set emsReverse if a Junkers heatronic is detected 2019-05-27 22:13:37 +02:00
proddy
dfb3ae856c added support for heatpumps 2019-05-26 17:43:11 +02:00
proddy
4651987da8 tx_mode = tx_delay 2019-05-26 15:56:00 +02:00
proddy
1d7310411f merge Junkers Tx logic 2019-05-26 12:23:50 +02:00
proddy
03d9e6547f txDelay change from bool to int 2019-05-22 00:01:59 +02:00
proddy
f5e0d26913 typo in EMS_VALUE_SHORT_NOTSET 2019-05-09 08:23:09 +02:00
proddy
5bcd6f7db6 compile fixes 2019-05-09 08:15:25 +02:00
proddy
a64dd34379 https://github.com/proddy/EMS-ESP/issues/96 2019-05-03 16:56:28 +02:00
proddy
fbb3a46b85 EMS+ updates 2019-05-03 12:47:25 +02:00
proddy
05285caba0 more tests and fix raw sending 2019-05-01 08:31:59 +02:00
proddy
fac660bb98 minor updates 2019-04-28 10:45:00 +02:00
proddy
8814c2a504 more ems+ optimizations 2019-04-19 17:11:36 +02:00
proddy
84042e8d59 generic support for EMS+ 2019-04-17 22:59:07 +02:00
proddy
5f3e89d818 autodetect deep optimizations 2019-04-16 00:20:38 +02:00