Thomas Basler
|
223b7ff3ce
|
Adjusted serial parsing to detect model
There are some MI-1500 models which are compatible with the Gen3 protocol.
The adjustment takes this into account.
|
2022-10-08 18:03:56 +02:00 |
|
Thomas Basler
|
1cbff8afca
|
Added HM-350 to list of known devices
|
2022-10-08 10:58:59 +02:00 |
|
Thomas Basler
|
b5cb24a46d
|
Fix AlarmDataCommand timeout for 15 entries
|
2022-10-08 02:34:54 +02:00 |
|
Thomas Basler
|
fbd58554b9
|
Show HW Version as decimal instead of hex
|
2022-10-06 23:29:18 +02:00 |
|
Thomas Basler
|
20b799b630
|
webapp: Show NRF24 connection status
|
2022-10-06 23:29:17 +02:00 |
|
Thomas Basler
|
64ae87faf1
|
Define several methods as private
|
2022-10-06 23:29:15 +02:00 |
|
Thomas Basler
|
e1690e8f74
|
Apply limit instantaneously if inverter info is available
|
2022-10-06 23:29:05 +02:00 |
|
Thomas Basler
|
b02d36d042
|
Added IDs to identifiy inverters to DevInfoParser
|
2022-10-06 18:34:31 +02:00 |
|
Thomas Basler
|
373e1e5e8f
|
Fixed function not used warning
|
2022-10-05 18:51:21 +02:00 |
|
Thomas Basler
|
7cede84785
|
Fixed uninitialized variable warning
|
2022-10-05 18:42:41 +02:00 |
|
Thomas Basler
|
d021d7529f
|
Fix parentheses error in AlarmLogParser
|
2022-10-04 23:38:32 +02:00 |
|
Thomas Basler
|
4031b71d7d
|
Implemented resend of PowerCommand
|
2022-10-04 18:12:55 +02:00 |
|
Thomas Basler
|
0fd714b165
|
Implemented first few classes for power control
TurnOn and TurnOff
|
2022-10-04 18:12:55 +02:00 |
|
Thomas Basler
|
66453b0854
|
Return correct formatted HwVersion
|
2022-10-03 13:58:50 +02:00 |
|
Thomas Basler
|
6cbcfacac6
|
Renamed several methods from Sample to Simple
|
2022-10-03 13:14:31 +02:00 |
|
Thomas Basler
|
b2a30621db
|
Extended and updated event log texts
|
2022-10-02 23:52:35 +02:00 |
|
Thomas Basler
|
eef6c37de9
|
Beautify serial output of package log
|
2022-10-02 18:43:19 +02:00 |
|
Thomas Basler
|
18ec145dda
|
Added command names to serial output
|
2022-10-02 17:17:34 +02:00 |
|
Thomas Basler
|
c8c6b2a978
|
Renamed DevInfoSample to DevInfoSimple
|
2022-10-02 17:01:46 +02:00 |
|
Thomas Basler
|
a3d9c6ae0f
|
Fixed array size of 1 channel inverters
|
2022-10-02 16:04:02 +02:00 |
|
Thomas Basler
|
67e0d0274d
|
Code cleanup: Remove not required comments
|
2022-10-02 15:44:33 +02:00 |
|
Thomas Basler
|
1aef350c2e
|
Remove not required method isA()
|
2022-10-02 15:43:11 +02:00 |
|
Thomas Basler
|
2a71be06ab
|
Fix cpplint: Adjust syntax of todo comment
|
2022-10-02 12:34:25 +02:00 |
|
Thomas Basler
|
989026d049
|
Fix cpplint: make one argument constructor explicit
|
2022-10-02 12:33:23 +02:00 |
|
Thomas Basler
|
862b65e844
|
Added method to detect whether an inverter is reachable
|
2022-10-01 02:16:47 +02:00 |
|
Thomas Basler
|
a261eb838c
|
Added method to detect whether a inverter is producing
|
2022-10-01 02:00:56 +02:00 |
|
Thomas Basler
|
754913368a
|
Implemented way to periodically fetch the current limit from the inverter
The fetch is only executed at least 4 minutes after the last set command.
Otherwise it would generate a entry in the event log (ID 2)
|
2022-09-30 18:34:30 +02:00 |
|
Thomas Basler
|
3153ee4993
|
Implemented getTimeout method in AlarmDataCommand
|
2022-09-30 18:34:30 +02:00 |
|
Thomas Basler
|
a707ab501d
|
Implemented method to check whether the last command was successfull
This also allows to retransmit the command after specific time if not successfull
|
2022-09-30 18:34:30 +02:00 |
|
Thomas Basler
|
a8ee8afb17
|
Set correct timeout for DevControlCommand
|
2022-09-30 18:34:30 +02:00 |
|
Thomas Basler
|
a2880cc447
|
Add RX main command to structure which is passed to handleResponse
This is required because the DevControlCommands just set the first byte to define whether the request was successfull or not
|
2022-09-30 18:34:30 +02:00 |
|
Thomas Basler
|
2376da1722
|
Create function to set ActivePower on inverter level
|
2022-09-30 18:34:30 +02:00 |
|
Thomas Basler
|
73e2aaf8fe
|
Implemented setting/getting of limit/type for ActivePowerControl
|
2022-09-30 18:34:30 +02:00 |
|
Thomas Basler
|
d998271944
|
Implemented crc16 calculation for DevControlCommand
|
2022-09-30 18:34:30 +02:00 |
|
Thomas Basler
|
cfdbf5963c
|
Empty classes of ActivePowerControl
|
2022-09-30 18:34:30 +02:00 |
|
Thomas Basler
|
8e2aa8981f
|
Fix #170: Update byte assignment for statistics data
|
2022-09-28 18:44:59 +02:00 |
|
Thomas Basler
|
b8f03eddfd
|
Fixed scheduler issue
When the RF method took very long inverters where skipped
|
2022-09-25 17:28:50 +02:00 |
|
Thomas Basler
|
68fc0c2547
|
Extend memory to fetch all eventlog entries
|
2022-09-25 17:26:48 +02:00 |
|
Thomas Basler
|
53692bae34
|
Fix timeout for alarm messages
|
2022-09-23 19:13:08 +02:00 |
|
Thomas Basler
|
950b211fd5
|
Set getLocalTime timeout to 0 to prevent watchdog triggers
This happens especially when no WiFi is configured and the user enters the NTP info page
|
2022-09-19 20:45:44 +02:00 |
|
Thomas Basler
|
9cda41f5e9
|
Use uint32_t, rather than the C type long
|
2022-09-15 19:00:38 +02:00 |
|
Thomas Basler
|
c07b18a9d8
|
Use static_cast<float>(...) instead C-style cast
|
2022-09-15 18:53:41 +02:00 |
|
Thomas Basler
|
c43346134d
|
Use static_cast<int>(...) instead C-style cast
|
2022-09-15 18:48:22 +02:00 |
|
Thomas Basler
|
088ba58827
|
Mark Single-parameter constructors explicit
|
2022-09-13 22:50:33 +02:00 |
|
Thomas Basler
|
de33b9ff88
|
Do not use namespace using-directives. Use using-declarations instead.
|
2022-09-13 21:35:51 +02:00 |
|
Thomas Basler
|
abcabf7fb6
|
Added header guard
|
2022-09-13 21:11:32 +02:00 |
|
Thomas Basler
|
b0460c7f14
|
Add documentation of current class hierarchy
|
2022-09-09 20:53:15 +02:00 |
|
Thomas Basler
|
b7961024a1
|
Fetch limit every 10 minutes
|
2022-09-09 20:17:52 +02:00 |
|
Thomas Basler
|
3e5fb00248
|
Fetch inverter limit at least once
|
2022-09-09 18:41:54 +02:00 |
|
Thomas Basler
|
c28a532bf1
|
Added base classes for SystemConfigPara
|
2022-09-09 18:41:07 +02:00 |
|
Thomas Basler
|
185fea987d
|
Added some initializations to prevent missunderstandings and errors
|
2022-09-05 21:53:50 +02:00 |
|
Thomas Basler
|
31e56f6c2b
|
Code hardening: introduce const keyword
|
2022-09-05 21:41:45 +02:00 |
|
Thomas Basler
|
26268479fb
|
Fix #96 and #95 : Reworked handling of inverter editing
|
2022-08-24 02:53:34 +02:00 |
|
Thomas Basler
|
1456974616
|
Fix #76: Null Pointer exception when adding a inverter with unkonwn serial number
|
2022-08-16 19:47:51 +02:00 |
|
Thomas Basler
|
991838ae2c
|
Added reactive power output and display
|
2022-08-10 20:40:26 +02:00 |
|
Thomas Basler
|
528c56eaa6
|
Added parser and commands for hardware version and part nr
|
2022-08-10 20:12:52 +02:00 |
|
Thomas Basler
|
c3a043b1ce
|
Improve handling of firmware data fetch
|
2022-08-10 19:03:02 +02:00 |
|
Thomas Basler
|
f566a8c522
|
Implemented parser methods and publish to mqtt
|
2022-08-10 19:03:02 +02:00 |
|
Thomas Basler
|
ee339fa9bd
|
Use Parser class in Statistics and Alarm parser
|
2022-08-10 19:03:02 +02:00 |
|
Thomas Basler
|
8715320282
|
Implemented DevInfo command
|
2022-08-10 19:03:02 +02:00 |
|
Thomas Basler
|
ef5d549f8a
|
Fix exception when deleting a inverter
|
2022-08-09 21:46:40 +02:00 |
|
Thomas Basler
|
6c088a9898
|
Implemented channel hopping on TX frequencies
Every sent package changes the frequency
|
2022-08-04 20:10:44 +02:00 |
|
Thomas Basler
|
4ff6433b90
|
Added first empty classes for DevControl and ParaSet
|
2022-08-03 20:36:35 +02:00 |
|
Thomas Basler
|
037f7b9caf
|
Move CRC check of multidata command from InverterAbstract to MultiDataCommand class
|
2022-08-03 19:51:10 +02:00 |
|
Thomas Basler
|
3abc7d7e3d
|
Increase max receiveable packages to 12
* Required for large eventlogs
|
2022-08-03 19:21:52 +02:00 |
|
Thomas Basler
|
081b19f9fb
|
Allow fragments without payload
This is required for several DevControl commands
|
2022-08-03 19:13:31 +02:00 |
|
Thomas Basler
|
857e4a3671
|
Remove RequestType and place handling of response in the command class
|
2022-08-03 18:50:34 +02:00 |
|
Thomas Basler
|
a73707380f
|
RequestFrameCommand can now be configured individually for each command
If the return value equals nullptr, a retransmit is not performed
|
2022-08-02 21:14:41 +02:00 |
|
Thomas Basler
|
c35f12c7be
|
Fixed CRC calculation
|
2022-07-30 12:50:07 +02:00 |
|
Thomas Basler
|
0d26337575
|
Fixed retransmit count
|
2022-07-30 11:59:01 +02:00 |
|
Thomas Basler
|
442b27e859
|
Fixed assignment of router and target address
|
2022-07-30 11:10:04 +02:00 |
|
Thomas Basler
|
4413b603e3
|
Replace inverter_transaction with new command classes
|
2022-07-30 00:37:54 +02:00 |
|
Thomas Basler
|
4daa121663
|
Added several classes to encapsulate the packet generation
|
2022-07-29 23:31:28 +02:00 |
|
Thomas Basler
|
b2e41a1cfd
|
Fix #37: Typo in statistics name (will lead to incompatible mqtt topic)
|
2022-07-24 12:38:00 +02:00 |
|
Thomas Basler
|
0fed0ba614
|
Update AlarmLogParser
* Show times > 12:00:00
* Fixed parsing of StartTime
|
2022-07-19 21:17:15 +02:00 |
|
Thomas Basler
|
dcc7e47b19
|
Hoymiles: Introduce init method to have a clean init on beginning
Constructor is not possible for obvious reasons
|
2022-07-18 21:30:12 +02:00 |
|
Thomas Basler
|
c6499e09bd
|
Ignore fragment number zero. Should fix #29
It seems that some inverters send packages with fragment number zero and a valid CRC. Must ignore such packets!
|
2022-07-15 22:37:42 +02:00 |
|
Thomas Basler
|
4373ee651f
|
Added YieldTotal and YieldDaily to 1 channel inverters to CH0
|
2022-07-15 18:49:17 +02:00 |
|
Thomas Basler
|
05c478d1f2
|
Added several guards and error messages
Try to prevent heap corruptions
|
2022-07-14 18:54:53 +02:00 |
|
Thomas Basler
|
e057ed3ed7
|
Fixed issue that no data in live view where shown
Happend only for inverters which didn't answer any request
|
2022-07-12 21:21:04 +02:00 |
|
Thomas Basler
|
4259df9ee6
|
Hoymiles Lib: Allow configuration of all pins
|
2022-07-12 18:42:52 +02:00 |
|
Thomas Basler
|
5bb9acdbc6
|
Refactored Hoymiles Lib: Move statistics parser into separate class
|
2022-07-12 18:27:56 +02:00 |
|
Thomas Basler
|
d9ecb64a4d
|
Only add timezone offset if value > 0
|
2022-07-08 18:22:35 +02:00 |
|
Thomas Basler
|
f7eb54fa41
|
First version of webapi for event log
|
2022-07-08 18:22:35 +02:00 |
|
Thomas Basler
|
b9bb753906
|
First try to implement Alarm Log fetching
|
2022-07-08 18:22:35 +02:00 |
|
Thomas Basler
|
4f2d705314
|
Added possibility to override pin assignments
|
2022-07-08 18:20:36 +02:00 |
|
Thomas Basler
|
dfdf8d9054
|
Added event log count to 1 channel invterers
|
2022-07-08 18:08:56 +02:00 |
|
Thomas Basler
|
56f764d10f
|
Fixed queue handling and added event log count
|
2022-07-04 19:36:58 +02:00 |
|
Thomas Basler
|
0f75c4a6a4
|
Introduced some pin defines
|
2022-07-02 11:58:31 +02:00 |
|
Thomas Basler
|
839720ee8a
|
Fix compilation warning
warning: backslash-newline at end of file
|
2022-07-01 17:46:51 +02:00 |
|
Thomas Basler
|
c4e911cecf
|
Add very simple method differ between requests
The last request is required to use the right parser for the received payload as the package type is not encoded in the received data
|
2022-06-30 21:14:58 +02:00 |
|
Thomas Basler
|
b2271373a4
|
Print inverter serial as hex
|
2022-06-30 21:06:23 +02:00 |
|
Thomas Basler
|
54b7673f1a
|
Replace magic numbers by some constants
|
2022-06-30 18:58:55 +02:00 |
|
Thomas Basler
|
e9e5c715f5
|
Remove duplicated variable
The content of _activeSerial is also available in currentTransaction.target
|
2022-06-27 21:56:55 +02:00 |
|
Thomas Basler
|
65fb13fa41
|
Better detection of invalid dates (no NTP sync)
|
2022-06-27 21:06:54 +02:00 |
|
Thomas Basler
|
10de26bcb8
|
Better handling of rerequest of complete packets
|
2022-06-27 19:37:03 +02:00 |
|
Thomas Basler
|
ab6261da92
|
Move the whole stats request into the inverter class
This enables in future releases so send multiple requests for e.g. MI inverters
|
2022-06-27 19:26:16 +02:00 |
|
Thomas Basler
|
7a0394151a
|
First implementation of TX queue
This is required to implement some features of e.g. MI Inverters or to read the event log of HM inverters
|
2022-06-27 19:09:52 +02:00 |
|
Thomas Basler
|
96ef182d38
|
Fixed issue with irradiation calculation
getChannelMaxPower is zero based while the first string is 1 based on getChannelFieldData
|
2022-06-25 11:13:25 +02:00 |
|
Thomas Basler
|
bce3fc78e8
|
Renamed field names which are used for mqtt and web ui
|
2022-06-24 18:03:44 +02:00 |
|