Skip to content
Phil edited this page Nov 29, 2025 · 54 revisions

Version 1.7.1.2

  • another TCP enhancement (timeout & loop instead of blocking forever)
  • issue with Viessdata csv if once_only poll items fixed
  • vitolog.txt renamed to viconnlog.txt

29.11.2025

Version 1.7.1.0

  • switch to disable optolinkvs2_switch.log file
  • some log messages removed, some log messages added
  • logger_util some rework by ChatGPT
  • cosmetics

Changes in settings_ini:
entries added:

no_logger_file = False          # if true the optolinksvs2_switch.log will not get written  

20.11.2025

Version 1.7.0.0

  • New TCP solution. Properly cleans up and releases all connections.

20.11.2025

Version 1.6.1.1

  • BB Filter one byte notation 'b:2' bug fixed

Version 1.6.1.0

  • new format specifiers added:
    • 'boolinv' returns True if val == 0 else False
    • 'offon' returns ON if val == 0 else OFF

18.11.2025

Version 1.6.0.5

  • several times reworked regarding request_pointer and timing...
  • return code on timeout with viconn_to_mqtt corrected

16.11.2025

Version 1.6.0.2

  • minor issue with request_pointer fixed

Version 1.6.0.1

  • request task control fixed: alternating Vitoconnect / (poll or mqtt or tcp) ensured
    (previously 2 Viconn, 1 poll)

11.11.2025

Version 1.5.0.5

  • Vitoconnect traffic published on MQTT (may get disabled in ini)
  • filter not to publish redundant data on MQTT (use command reset_previous to re-initialize)
  • wo1c engery via RPC (as with vicare) implemented
  • logger implemented -> optolinkvs2_switch.log
  • timing changed to ensure possiblle reconnect after TCP exit
  • some more minors?
  • some Pylance stuff

Changes in settings_ini:
entries added:

viconn_to_mqtt = True           # Vitoconnect traffic published on MQTT
mqtt_no_redundant = False       # if True no previously published unchanged messages

# special for wo1c: read daily/weekly energy statistics +++++++++++
wo1c_energy = 0                 # 0:disabled, €N: every n-th cycle

20.10.2025

Version 1.4.5.1

  • message when poll only once items removed from poll_list
  • message telling with which poll item an error occured causing the script to exit
  • moinors (mainly formal)

17.09.2025

Version 1.4.5.0

  • "poll only once" implemented: items in poll_list with poll_cycle set 0 get read only once and are removed from the poll_list after initial poll cycle.
  • minors

12.09.2025

Version 1.4.4.0

  • implemented additional formats utf16 and vcaldatetime (first day of week = 00)
  • some debug prints removed
  • minors

12.09.2025

Version 1.4.3.0

  • affects one-wire utilization only
  • sometimes you might realize runaways of 1w values. this release eliminates these by supressing values of high deviation against previous value up to 3 times.
  • see c_w1value for details. if you need to change the checker parameters, edit line 30 of request_util.py
    w1val = c_w1value.W1Value(addr, max_change=10.0, max_ignore=3)

17.06.2025

Version 1.4.2.2

  • made negative (integer) values possible with write command

18.04.2025

Version 1.4.2.1

  • print out MQTT messages other than cmnd

18.04.2025

Version 1.4.2.0

  • MQTT logging option implemented

Changes in settings_ini:
value added:

mqtt_logging = False             # dis/enables logging of paho.mqtt (default: False)

18.04.2025


Version 1.4.1.0

  • new format specifiers added:

    • 'bool' returns True if val != 0 else False
    • 'onoff' returns ON if val != 0 else OFF
    • 'bin' returns data binary according to data/byte length
    • 'f:<frmt>' allows to specify any format accepted in a f" clause
  • format specifiers now can get used in combination with ByteBit Filter

30.03.2025


Version 1.4.0.0

  • ATTENTION: ByteBit Filter made congruent. Now returns raw/hex by default if no scale is given. So set scale to 1 to achieve the same result (decimal output) as in earlier versions without scale.
    now ("MyDatapoint", 0x1234, 3, 'b:2:2', 1), resturns same result as ("MyDatapoint", 0x1234, 3, 'b:2:2'), before.
    now ("MyDatapoint", 0x1234, 3, 'b:2:2'), resturns same result as ("MyDatapoint", 0x1234, 3, 'b:2:2::raw'), before.
    Same with read; 0x1234; 3; b:2:2. The raw 'endian' is kept for downward compatibility but might get removed in future versions. If you use like ("MySensorVal", 0x1234, 3, 'b:0:1', 0.1), nothing needs to be done.

Changes in settings_ini:
only default values changed:

port_vitoconnect = '/dev/ttyAMA0'  # was ttyS0 before
resp_addr_format = 'x'  # was 'd' before

16.03.2025


Version 1.3.1.3

  • If an issue occurs with Viconnect communication, the main loop gets stopped and everything starts again (protocoll init -> run Viconn reception thread -> main loop)
  • serlog2log.py added to convert serlog to vitolog-like format
  • retain of MQTT Topics selectable

initial Version is 1.3.0.0, there were some fixes/reworks in between

Changes in settings_ini:
value added:

mqtt_retain = False              # Publish retained messages. Last message per topic is stored on broker and sent to new/reconnecting subscribers. 

Feb 28, 2025


es gibt noch ein paar Änderungen, die bis hier nicht dokumentiert sind. Da wären z.B.

  • Bug Fix bei Bit Mask Funktion im ByteBit-Filter
  • LWT feature
  • diverse 'kosmetische' Änderungen
  • ...

für Details die Commits checken, vlt helfen die Kommentare ;-)


Version 1.2.0.0

  • poll_list now possible as poll_list.py file:
    • if poll_list.py exists in working dir, poll list items are taken from there, else from settings_ini
    • c_polllist introduced for that
  • option PollCycle implemented for polling an item only every x-th time
    • if first list item of poll item is int, it is taken as PollCycle
  • olbreath time made configurable (olbreath in settings_ini)
  • c_logging introduced for vitolog

Changes in settings_ini:
value added:

olbreath = 0.1                  # Pause (seconds) after a request-response cycle (default: 0.1)

23.01.2025


Version 1.1.0.1

  • buffered csv writing implemented
    • cmd 'FlushCsv' (TCP) for immediate writing
    • buffer_to_write added to settings_ini
  • receive_fullraw() enhanced (read_all, sleep 1ms->5ms)

Changes in settings_ini:
value added:

buffer_to_write = 60            # Buffer size before writing to CSV (default: 60)

11.05.2024


Version 1.1.0.1

vitolog bug fix (module referece corrected)

06.05.2024


Version 1.1.0.0

Support of reading 1-wire bus sensors implemented.

E.g. cheap an nearly zero-effort measuring/logging of additional temperatures possible.

Currently DS18B20 (Temperature) and DS2423 (4-Channel Counter) supported. Easy to expand.

Address not used by Optolink to be selected and entry in settings_ini.w1sensors dict to be added.

No scaling, byte len or signed used (everything done in read_w1sensor function)

04.05.2024

Clone this wiki locally