Commit Graph

69 Commits

Author SHA1 Message Date
Jarno Rankinen 4062e62071 gh-3 config file entry and cli flag to enable the Prometheus exporter. Disabled by default. 2023-03-14 23:27:49 +02:00
Jarno Rankinen df9e6d5471 gh-3 Prometheus exporter for unreserved coils 2023-03-14 23:13:36 +02:00
Jarno Rankinen 02312c522b Squashed commit of the following:
commit 4b3f7c6f45
Author: Jarno Rankinen <jarno@oranki.net>
Date:   Tue Mar 14 12:36:03 2023 +0200

    Configuration file ~/.config/enervent-ctrl/configuration.yaml

    If the file does not exist, will be generated with default values.
    CLI flags override values from configuration file.

Closes gh-19
2023-03-14 12:37:34 +02:00
Jarno Rankinen d53e976a36 Squashed commit of the following:
commit 468bc33f7e
Author: Jarno Rankinen <jarno@oranki.net>
Date:   Tue Mar 14 09:37:07 2023 +0200

    gh-7 Log failed authentications. Forked rocketlaunchr/https-go to add CN to the generated certifcate

commit 0e10c9d925
Author: Jarno Rankinen <jarno@oranki.net>
Date:   Sun Mar 12 22:30:53 2023 +0200

    gh-7 Added HTTP basic authentication to REST API. Default credentials pingvin:enervent. Still need to implement logging failed auth requests. A log file option is also a good idea.

commit a3165db631
Author: Jarno Rankinen <jarno@oranki.net>
Date:   Sun Mar 12 12:41:41 2023 +0200

    gh-7 Updated Home Assistant rest example to https

commit 54b555c523
Author: Jarno Rankinen <jarno@oranki.net>
Date:   Sun Mar 12 12:25:53 2023 +0200

    gh-7 Enabled SSL encryption

commit 2738b60386
Author: Jarno Rankinen <jarno@oranki.net>
Date:   Sun Mar 12 12:07:36 2023 +0200

    gh-7 Implemented automatic self-signed SSL generation on startup under ~/.config/enervent-ctrl

Closes gh-7
2023-03-14 09:37:36 +02:00
Jarno Rankinen ec402259f4 Rename build directory to BUILD 2023-03-10 14:15:56 +02:00
Jarno Rankinen 4b89aec1c5 0.0.17 Remove 'Days until service'. Closes gh-25 2023-03-10 11:13:07 +02:00
Jarno Rankinen a0dedc7fcd 0.0.16 Correct hreg addresses for humidity readings. Outside hum still shows 0%, will need to wait until summer to see if the reading works. Closes gh-26. Added 48h avg hum readings back to HASS dashboards 2023-03-10 11:09:36 +02:00
Jarno Rankinen a0bb5c3e69 temperature endpoint can take raw register value, full degrees C or a single decimal precision float degrees C value as parameter. up & down as parameters shift the temperature setpoint up or down a full degree. Closes gh-21 2023-03-09 22:35:43 +02:00
Jarno Rankinen 415bf638be gh-24 0.0.14 ReadCoil, WriteCoil, WriteCoils, andheckMutexCoils, now use common modbus.Client with proper locking 2023-03-09 22:18:12 +02:00
Jarno Rankinen afcbe06581 gh-24Rework of the locking mechanisms. The bug causinga deadlock was probably caused by locking bebefore calling another function that also tries to acquire the lock... 2023-03-09 22:05:46 +02:00
Jarno Rankinen c79f172f32 gh-24 WriteRegister uses common modbus.Client 2023-03-09 21:57:32 +02:00
Jarno Rankinen d0d26d346a gh-24 ReadRegister uses common modbus.Client 2023-03-09 21:51:43 +02:00
Jarno Rankinen 602a560cf9 gh-24 updateCoils and updateRegisters now use common modbus.Client 2023-03-09 21:26:28 +02:00
Jarno Rankinen a49978ee5f gh-21 PUT /api/v1/temperature/<action> for changing temperature setpoint 2023-03-09 16:15:54 +02:00
Jarno Rankinen 193cfede8d 0.0.12 Include all coil values in homeassistant status output 2023-03-08 20:46:07 +02:00
Jarno Rankinen 0f081fe5fd CLI flags
-debug enables debug logging
-httplog enables HTTP access logging
-interval N sets background update interval to N seconds

closes gh-18
2023-03-03 10:09:43 +02:00
Jarno Rankinen 8e8b51f8b9 Improved p.Debug.Println, left out the DEBUG: prefix as couldn't figure out how to add the suffix yet. Closes gh-17 2023-03-03 09:28:41 +02:00
Jarno Rankinen dbbc22809e 0.0.10 PinvinKL.Debug.Println, logs debug messages with prefix 'DEBUG:' if debug is enabled 2023-03-03 08:20:54 +02:00
Jarno Rankinen 93992d3dd6 POST /api/v1/coils/N to flip a coil 2023-03-03 08:08:36 +02:00
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 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 1b1a9c75ea gh-6 Panel room temperature reading for Home Assistant status, comments 2023-02-23 20:08:47 +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 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 e30c83c96a gh-10 Background updates for data 2023-02-19 12:28:26 +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
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 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