Jarno Rankinen
ce1c569564
Methods for reading and writing single holding registers. Unfortunately the writes don't seem to have much effect, the registers are reset after a short period or instantly. Maybe due to something with the library, but no errors are produced. Closes gh-5
2023-03-02 14:24:05 +02:00
Jarno Rankinen
bcb8d55126
gh-10 0.0.7 Check that only one of mutex coils is 1 at a time
2023-03-02 13:36:49 +02:00
Jarno Rankinen
7d6ea93421
'Heater return water' -> 'Return water' in HASS english version
2023-02-28 20:54:37 +02:00
Jarno Rankinen
c304704656
Finish renaming and actually show values for Measurements
2023-02-28 20:51:53 +02:00
Jarno Rankinen
173020b720
Version bump
2023-02-28 20:49:26 +02:00
Jarno Rankinen
6053698552
Rename VentInfo to Measurements, add heater element water temperature to Home Assistant data
2023-02-28 20:47:47 +02:00
Jarno Rankinen
b6450914d1
Coils for cooker hood and central vacuum modes
2023-02-28 20:32:18 +02:00
Jarno Rankinen
150ed97071
gh-6 /api/v1/status returns float values if applicable
2023-02-27 21:10:24 +02:00
Jarno Rankinen
853ef45464
gh-10 WriteCoils, wrapper for forcing multiple consecutive coils with a boolean slice
2023-02-25 01:21:42 +02:00
Jarno Rankinen
f76bddbb45
gh-10 read/write single coil api method
...
GET /api/v1/coils/N
- read coil N (int)
POST /api/v1/coils/N/VAL
- set coil N (int) to VAL, VAL can be one of accepted values for
strconv.ParseBool (1 or 0 is the simplest)
2023-02-24 22:52:13 +02:00
Jarno Rankinen
71e949f760
Highlight changed values in web looking glass pages (/coils, /registers)
2023-02-24 21:56:15 +02:00
Jarno Rankinen
6198d2b522
Added debug output to Monitor()
2023-02-24 21:55:24 +02:00
Jarno Rankinen
6ffb90b848
Reduced Monitor interval to 2 seconds, will implement a cli flag for this soon
2023-02-24 21:54:50 +02:00
Jarno Rankinen
5fddc0dcb7
gh-10 Method for writing a single coil
2023-02-23 22:07:51 +02:00
Jarno Rankinen
1759dabbca
gh-6 Found coil for overpressure (3) by experimenting, fix HA status logic
2023-02-23 20:42:00 +02:00
Jarno Rankinen
b1aa71e5c7
gh-6 Updated Home Assistant configuration files for room temperature
2023-02-23 20:09:33 +02:00
Jarno Rankinen
1b1a9c75ea
gh-6 Panel room temperature reading for Home Assistant status, comments
2023-02-23 20:08:47 +02:00
Jarno Rankinen
1f5a258937
gh-6 Add operating mode to HASS YAMLs
2023-02-19 22:51:57 +02:00
Jarno Rankinen
aba5156e7a
gh-6 Device operating mode parsed from bitfield. Bitfields are now 16 bits long, as they should be
2023-02-19 22:34:34 +02:00
Jarno Rankinen
ea00590e33
Merge pull request #15 from 0ranki/dependabot/pip/enervent-ctrl-python/werkzeug-2.2.3
...
Bump werkzeug from 2.2.2 to 2.2.3 in /enervent-ctrl-python
2023-02-19 21:29:54 +02:00
Jarno Rankinen
175254b4ba
gh-16 Retry reading registers 5 times, added debug variable to PingvinKL.New(). Not much debug output yet.
2023-02-19 21:28:50 +02:00
Jarno Rankinen
ea148e5a38
Fix copy-paste mistake in HASS yamls
2023-02-19 12:31:59 +02:00
Jarno Rankinen
e30c83c96a
gh-10 Background updates for data
2023-02-19 12:28:26 +02:00
Jarno Rankinen
f36c2b4f17
gh-6 Home Assistant sensors and dashboard example YAMLs, finnish and english versions
2023-02-19 11:39:47 +02:00
Jarno Rankinen
d3c2dd5de3
gh-6 All the simpler values for /status endpoint implemented. Alarms, op mode, uptime&date will be in separate functions
2023-02-18 22:18:37 +02:00
Jarno Rankinen
9fefef8a98
gh-6 the update/populate functions now work on the struct they're a member of, instead of on a copy. Added /api/v1/status route
2023-02-18 21:52:53 +02:00
Jarno Rankinen
960c29fbf4
#6 Include raw data multiplier in register struct
2023-02-18 21:06:02 +02:00
Jarno Rankinen
337581be66
#6 Data structures for /status endpoint
2023-02-18 19:37:43 +02:00
Jarno Rankinen
cd57adfb6a
gh-5 Fix hide/show reserved checkbox inverted
2023-02-16 14:20:27 +02:00
dependabot[bot]
2aadecd501
Bump werkzeug from 2.2.2 to 2.2.3 in /enervent-ctrl-python
...
Bumps [werkzeug](https://github.com/pallets/werkzeug ) from 2.2.2 to 2.2.3.
- [Release notes](https://github.com/pallets/werkzeug/releases )
- [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst )
- [Commits](https://github.com/pallets/werkzeug/compare/2.2.2...2.2.3 )
---
updated-dependencies:
- dependency-name: werkzeug
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
2023-02-16 07:20:35 +00:00
Jarno Rankinen
a4fcbdc2ed
gh-14 Tests for newRegister
2023-02-12 22:55:58 +02:00
Jarno Rankinen
b8929f6211
gh-14 Test coil.Reserved assignment
2023-02-12 22:37:23 +02:00
Jarno Rankinen
480279e2f5
gh-14 Unit testing for pingvinKL.newCoil, test.sh for executing tests
2023-02-12 22:31:21 +02:00
Jarno Rankinen
f204aeb4ad
close gh-1 Added checkbox for showing/hiding reserved coil/register values
2023-02-12 14:30:25 +02:00
Jarno Rankinen
0baf86c67f
gh-5 Update datatable on coil/register status pages instead of appending to it
2023-02-12 13:42:11 +02:00
Jarno Rankinen
e780ced158
Update README.md
2023-02-08 20:45:27 +02:00
Jarno Rankinen
afa8f936b1
Update add_to_project.yml
...
Fix typo
2023-02-08 19:55:28 +02:00
Jarno Rankinen
d530ff2876
Add_to_project action
2023-02-08 19:46:51 +02:00
Jarno Rankinen
f851bf44a7
Added comment about building to main.go
2023-02-02 13:38:31 +02:00
Jarno Rankinen
21bfe7a9d5
gh-5 Show bitfields correctly again
...
Bump version to 0.0.3
2023-02-02 13:31:24 +02:00
Jarno Rankinen
64e3a4811a
gh-5 Use dom manipulation for coils as well
2023-02-02 13:25:40 +02:00
Jarno Rankinen
c29692ae3e
gh-5 Improved JS render performance
...
Dramatically improved web table render time by using dom
manipulation instead of string concatenation for generating the
data table
2023-02-02 13:10:30 +02:00
Jarno Rankinen
5d23e34f44
Include static files in build
...
Building requires replacing symlinks under static/ with the target file
contents.
2023-02-02 11:44:34 +02:00
Jarno Rankinen
48bdfd691b
gh-5 Proper handling of bitfield data type
2023-02-02 00:07:36 +02:00
Jarno Rankinen
1080219b23
gh-5 Handle unsigned & signed values
...
updateRegisters now handles signed values correctly. Bitfields and
enumerations are still interpreted as unsigned values
2023-02-01 23:09:50 +02:00
Jarno Rankinen
2758f67299
gh-5 Debug/other output
2023-02-01 22:19:57 +02:00
Jarno Rankinen
3990a0a833
gh-5 Register API route somewhat works now
...
Internal data handling needs much improvement, as signed/unsigned
integers and other data types are not yet handled.
Javascript seems like a really poor choice for parsing the html
table, currently it takes ~10 seconds to hande the data. API
response time is good, so probably switching to Go templates for
the dynamic tables is the best course of action. This will move
the load from clientside to serverside, hopefully the planned
RPi Zero W can handle the computations
2023-02-01 22:12:56 +02:00
Jarno Rankinen
81a7e5cb22
Serve everything from the binary instead of Nginx. Missing TLS, but that may not be a requirement at all
2023-02-01 21:52:55 +02:00
Jarno Rankinen
7eb75541d3
gh-5 Commenting
2023-02-01 00:04:13 +02:00
Jarno Rankinen
f4eb787a10
gh-5 Fetch register data from bus
...
- goburrow/modbus' ReadHoldingRegisters can only fetch 125 registers at a
time, so updateRegisters does several readings
- modbus.ReadHoldingRegisters returns a []byte, where each even byte represents
the MSB of a int16/uint16 and every odd byte is the LSB
- updateRegisters loops through each response slice forming the 16-bit
integers
Still need to figure out a way to properly handle the signed/unsigned
values, and also the enumerations and bitfields. Perhaps changing the
'signed' boolean to a byte and making that a bitfield representing the
value type would be a good way to go. The value can then be properly
formed when fetching it from the in-memory pingvinKL struct, while being
stored as an int(64) internally.
2023-02-01 00:03:47 +02:00