Thomas Basler
3cf8fea8e0
Fix: Guru Meditation (StoreProhibited) when saving DTU settings
...
Fixed #1725
2024-02-06 21:47:06 +01:00
Thomas Basler
9093f9de79
Change default target frequency for US and BR
2024-01-14 17:09:53 +01:00
Thomas Basler
a1f2c93cf6
Added const keywords
2024-01-14 16:37:43 +01:00
Thomas Basler
c20caf8097
Feature: Support HMS/HMT inverters in different countries with different frequency bands
...
Thanks to @Fribur, @homeautomation2022 and @stefan123t
2024-01-14 16:37:34 +01:00
Thomas Basler
188c4688ab
Distinct between Band and Country
...
This allows different frequencies (Startup/Default etc.) for the same band configuration.
2024-01-14 00:06:35 +01:00
Thomas Basler
6b44694a12
Added frequency and command definitions for the 900 MHz band (North America)
2024-01-13 15:29:17 +01:00
Thomas Basler
16cd1a90d5
Move HOY_BOOT_FREQ from define to function
2024-01-13 14:48:23 +01:00
Thomas Basler
58f0121c11
Create separate definition for the 860MHz band of the CMT2300A
...
This is required to support different countries in the future. The defines where moved to function to change the values dynamically
2024-01-13 14:48:23 +01:00
Thomas Basler
2c92750100
webapp: Remove hard coded min/max frequencies for CMT module
2024-01-13 12:51:20 +01:00
Thomas Basler
ee78698e37
Migrate all frequency calculations to Hz
...
Previously the code contains calculations using a mixture of kHz and Hz.
Thanks to @Fribur
2024-01-13 12:51:20 +01:00
Thomas Basler
ce2109ab1b
Rename define CMT_BASE_CH_OFFSET860 to CMT_BASE_CH_OFFSET
2024-01-13 11:40:30 +01:00
Thomas Basler
e95afbf2cc
Use references instead of pointers whenver possible
2023-12-12 13:26:07 +01:00
Thomas Basler
8fb43fedf8
Add const keyword to methods
2023-12-12 01:30:40 +01:00
Thomas Basler
d6494fa791
Add const keyword to method parameters
2023-12-12 00:21:14 +01:00
Thomas Basler
47e905bcfc
Add const statement to several variables
2023-12-11 19:54:57 +01:00
Thomas Basler
32d91379fa
Init all data members befor pushing it into the buffer
2023-09-30 10:48:41 +02:00
Thomas Basler
82b0272ceb
Removed duplicate code by moving it into the radio base class
2023-06-03 12:07:46 +02:00
Thomas Basler
8f2a2b40b1
Fix: Filter incoming packages from CMT module for the right destination address
...
The CMT module receives every package on it's target frequency. Compared to the NRF module to filtering takes place. Therefor it's required to check if the package destination id is really the id of our dtu
2023-05-24 21:55:15 +02:00
Thomas Basler
5d2656550c
Optimize detection if RF module is configured
...
Use PinMapping method instead of dedicated method in Hoymiles lib --> Same result but reduces variables
2023-04-17 23:19:53 +02:00
Thomas Basler
af3a277e30
Introduced HoymilesRadio property to determine if a configuration attempt was done
2023-04-17 18:59:56 +02:00
Thomas Basler
1416efc6f9
Fix: Endless loop when CMT module was configured but not connected
2023-04-17 18:58:23 +02:00
Thomas Basler
6856ba9972
Fix: Change defines to get a correct calculation if base frequency of CMT module is different compared to Hoymiles base frequency
2023-04-15 10:55:48 +02:00
Thomas Basler
f3942bb647
Fix: Set correct frequency when changing it via web ui
...
Previously it could happen that the frequency was changed between saving old and recovering new frequency. Therefor an invalid frequency was saved in the CMT module
2023-04-15 10:55:48 +02:00
Thomas Basler
e2aa29f117
Remove cmtProocess method and move RF logic into the cmt2300wrapper class
2023-04-15 10:55:48 +02:00
Thomas Basler
f5767e61ef
Implement CMD56 as own command.
...
By doing so, it's possible to send all packets via the sendEsbPacket method. A lot of stuff could be removed which is no more used.
2023-04-15 10:55:48 +02:00
Thomas Basler
cfb37906ca
Rename cmtFreqToChan to getChannelFromFrequency and simplify handling of current channel
2023-04-15 10:55:48 +02:00
Thomas Basler
a11ee472c6
Optimize cmtChToFreq method to return float instead of string. Renamed also to getFrequencyFromChannel
2023-04-15 10:55:48 +02:00
Thomas Basler
2a92f67a9a
Implement get and set channel in cmt2300 wrapper class
2023-04-15 10:55:48 +02:00
Thomas Basler
fffd872b20
Replace HOY_BASE_FREQ by CMT_BASE_FREQ
2023-04-15 10:55:48 +02:00
Thomas Basler
5b648b63ac
Implemented blocking write method in CMT2300 driver and use it in sendEsbPacket.
2023-04-15 10:55:48 +02:00
Thomas Basler
6331210b94
IsReachable of the inverter was never reached
2023-04-15 10:55:48 +02:00
Thomas Basler
50ce7f014d
Expose min and max frequency in HoymilesRadio_CMT
2023-04-15 10:55:48 +02:00
Thomas Basler
1614b2ad2d
Add newline after log output
2023-04-15 10:55:48 +02:00
Thomas Basler
5e11f0b854
Implement property in HoymilesRadio_CMT to set the frequency during runtime
2023-04-15 10:55:48 +02:00
Thomas Basler
fe5e5bc4b1
Implement cmtBaseChOff860 as a define
2023-04-15 10:55:48 +02:00
Thomas Basler
4561e52735
Adjusted some comments
2023-04-15 10:55:48 +02:00
Thomas Basler
996404ceed
Introduce gpio2 for the CMT2300A module
...
This implements the sending interrupt instead of polling. On the other hand, gpio3 is made optional.
2023-04-15 10:55:48 +02:00
Thomas Basler
fc5f6887cb
Adjust name from CMT2300a to CMT2300A
2023-04-15 10:55:47 +02:00
Thomas Basler
098691af9d
First step towards a modular CMT2300 driver similar to the NRF24 one
2023-04-15 10:55:47 +02:00
Thomas Basler
06cc19fc70
Use TimeoutHelper for TX timeout
2023-04-15 10:55:47 +02:00
Thomas Basler
46036eb958
Simplify dumpBuf method in HoymilesRadio
2023-04-15 10:55:47 +02:00
Thomas Basler
83c623708f
Fix crash if radio settings where changed while the radio was not initialized
2023-04-15 10:55:47 +02:00
Thomas Basler
45882543b6
Allow dynamic pin mapping for CMT module
2023-04-15 10:55:47 +02:00
Thomas Basler
3c0d89f599
Replaced println by printf and code style changes
2023-04-15 10:55:47 +02:00
Thomas Basler
90c689a41a
Implement HoymilesRadio_CMT
2023-04-15 10:55:47 +02:00