Thu, 05 Dec 2024 16:45:37 +0100py_ext: rework logic CSV reader FB output refresh logic.
Edouard Tisserant <edouard@beremiz.fr> [Thu, 05 Dec 2024 16:45:37 +0100] rev 4061
py_ext: rework logic CSV reader FB output refresh logic.

Saving with CSV write FB now triggers CSV read FBs to refresh outputs immediately.

Thu, 05 Dec 2024 13:56:59 +0100py_ext: fix CSV Writer
Edouard Tisserant <edouard@beremiz.fr> [Thu, 05 Dec 2024 13:56:59 +0100] rev 4060
py_ext: fix CSV Writer

fix POU logic :
- SAVE is a BOOL
- invocation of py_eval on rising edge of SAVE
- remove save python argument

fix python:
- use no encoding for file open (python2)
- re-use detected dialect if any
- use no "rt+" and truncate since no need to re-sniff dialect for output file
- return "OK" instead of "#SUCCESS", preventing POU logic to ACK result
- support creating new line if writing just after last line
- support appending data on short rows

fix example:
- use a HMI:Button to trigger CSV write instead of HMI:Input +1
- reload CSVs on on each new CSV opened in file browser
- add display of CSV write output

Wed, 04 Dec 2024 12:00:37 +0100IDE: Fix wrong red wire coloring in FBD
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 04 Dec 2024 12:00:37 +0100] rev 4059
IDE: Fix wrong red wire coloring in FBD

Tue, 03 Dec 2024 21:26:52 +0100C runtime: move generated erpc interface in separate "service" directory
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 03 Dec 2024 21:26:52 +0100] rev 4058
C runtime: move generated erpc interface in separate "service" directory

Tue, 03 Dec 2024 21:22:45 +0100IDE: Fix PLCOpenEditor (wxPython4 menus) and drop broken PDF doc support.
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 03 Dec 2024 21:22:45 +0100] rev 4057
IDE: Fix PLCOpenEditor (wxPython4 menus) and drop broken PDF doc support.

Mon, 02 Dec 2024 11:33:19 +0100Extend HMI:JsonTable, create Edit CSV POU, create example, add some doc (#41)
Dino Kosic <44305363+kraskrom@users.noreply.github.com> [Mon, 02 Dec 2024 11:33:19 +0100] rev 4056
Extend HMI:JsonTable, create Edit CSV POU, create example, add some doc (#41)

* Extend Jsontable widget, create Edit CSV POU, create example for both

* Add doc for HMI:Image and HMI:JsonTable

* Expand example to include HMI:Image

Thu, 28 Nov 2024 14:46:50 +0100Tests: matiec version bump for GH workflow
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 28 Nov 2024 14:46:50 +0100] rev 4055
Tests: matiec version bump for GH workflow

Thu, 28 Nov 2024 14:39:26 +0100Merge remote-tracking branch 'hggit/python3' into python3
Edouard Tisserant <edouard.tisserant@gmail.com> [Thu, 28 Nov 2024 14:39:26 +0100] rev 4054
Merge remote-tracking branch 'hggit/python3' into python3

Wed, 27 Nov 2024 19:48:12 +0100IDE: fix exception when moving FBD elements with keyboard.
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 27 Nov 2024 19:48:12 +0100] rev 4053
IDE: fix exception when moving FBD elements with keyboard.

Wed, 27 Nov 2024 16:31:24 +0100Tests: matiec version bum for GH workflow
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 27 Nov 2024 16:31:24 +0100] rev 4052
Tests: matiec version bum for GH workflow

Thu, 28 Nov 2024 14:27:58 +0100merge
Edouard Tisserant <edouard@beremiz.fr> [Thu, 28 Nov 2024 14:27:58 +0100] rev 4051
merge

Thu, 28 Nov 2024 14:13:03 +0100Tests: extend FOR loop tests in IEC-61131 language test
Edouard Tisserant <edouard@beremiz.fr> [Thu, 28 Nov 2024 14:13:03 +0100] rev 4050
Tests: extend FOR loop tests in IEC-61131 language test

Wed, 13 Nov 2024 14:42:34 +0100Modbus: allows modbus thread stack size customization with MODBUS_STACK_SIZE macro.
Edouard Tisserant <edouard@beremiz.fr> [Wed, 13 Nov 2024 14:42:34 +0100] rev 4049
Modbus: allows modbus thread stack size customization with MODBUS_STACK_SIZE macro.

For example, add "-DMODBUS_STACK_SIZE=0x2000" to target CFLAGS to limit stack size to 128kB

Wed, 16 Oct 2024 15:45:15 +0200SVGHMI: swap position and range of ForEach widget so that both range and size can be optional.
Edouard Tisserant <edouard@beremiz.fr> [Wed, 16 Oct 2024 15:45:15 +0200] rev 4048
SVGHMI: swap position and range of ForEach widget so that both range and size can be optional.

Wed, 27 Nov 2024 16:05:26 +0100Tests: add ST FOR loop tests to IEC-61131 language tests
Edouard Tisserant <edouard@beremiz.fr> [Wed, 27 Nov 2024 16:05:26 +0100] rev 4047
Tests: add ST FOR loop tests to IEC-61131 language tests

Sat, 23 Nov 2024 01:09:55 +0100requirements: update eRPC dependency to include subdirectory for Python
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 23 Nov 2024 01:09:55 +0100] rev 4046
requirements: update eRPC dependency to include subdirectory for Python

Sat, 23 Nov 2024 00:49:57 +0100C runtime: fix ExtendedCall stub
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 23 Nov 2024 00:49:57 +0100] rev 4045
C runtime: fix ExtendedCall stub

Sat, 23 Nov 2024 00:49:26 +0100eRPC: switch to beremiz/erpc fork with no CRC on TCP
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 23 Nov 2024 00:49:26 +0100] rev 4044
eRPC: switch to beremiz/erpc fork with no CRC on TCP

Fri, 22 Nov 2024 16:31:51 +0100Merge remote-tracking branch 'hggit/python3' into python3
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 22 Nov 2024 16:31:51 +0100] rev 4043
Merge remote-tracking branch 'hggit/python3' into python3

Tue, 19 Nov 2024 23:52:04 +0100IDE: Allow environment variable override in ThirdPartyPath, and use it also for matiec.
Edouard Tisserant <edouard.tisserant@gmail.com> [Tue, 19 Nov 2024 23:52:04 +0100] rev 4042
IDE: Allow environment variable override in ThirdPartyPath, and use it also for matiec.

Mon, 18 Nov 2024 22:42:11 +0100IDE: re-use eRPC URI definitions in connector factory.
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 18 Nov 2024 22:42:11 +0100] rev 4041
IDE: re-use eRPC URI definitions in connector factory.

Preparing for serial and US eRPC connection.

Mon, 18 Nov 2024 13:55:51 +0100Cosmetic changes
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 18 Nov 2024 13:55:51 +0100] rev 4040
Cosmetic changes

Mon, 18 Nov 2024 13:52:40 +0100IDE: refactor discovery panel / zeroconf
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 18 Nov 2024 13:52:40 +0100] rev 4039
IDE: refactor discovery panel / zeroconf

Bundle ZeroConf listener and interfaces changes monitor into separate module.
Prepare to extend with USB device browsing.

Mon, 18 Nov 2024 13:37:08 +0100IDE: refactor ERPC URI editor, add serial and USB URI types
Edouard Tisserant <edouard.tisserant@gmail.com> [Mon, 18 Nov 2024 13:37:08 +0100] rev 4038
IDE: refactor ERPC URI editor, add serial and USB URI types

Wed, 13 Nov 2024 23:10:36 +0100python runtime: update ServicePublisher to current Zeroconf API
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 13 Nov 2024 23:10:36 +0100] rev 4037
python runtime: update ServicePublisher to current Zeroconf API

Mon, 11 Nov 2024 15:22:44 +0100eRPC: Backward compatibility with runtime versions missing GetVersions extended call.
Edouard Tisserant <edouard@beremiz.fr> [Mon, 11 Nov 2024 15:22:44 +0100] rev 4036
eRPC: Backward compatibility with runtime versions missing GetVersions extended call.

Fri, 08 Nov 2024 11:34:46 +0100eRPC: Version bump
Edouard Tisserant <edouard@beremiz.fr> [Fri, 08 Nov 2024 11:34:46 +0100] rev 4035
eRPC: Version bump

Fri, 08 Nov 2024 11:34:00 +0100python_runtime: fix ExtendedCall register/unregistering.
Edouard Tisserant <edouard@beremiz.fr> [Fri, 08 Nov 2024 11:34:00 +0100] rev 4034
python_runtime: fix ExtendedCall register/unregistering.

Mon, 28 Oct 2024 16:06:50 +0100eRPC: Server closes connection on exception to prevent client to block until timeout when it happens.
Edouard Tisserant <edouard@beremiz.fr> [Mon, 28 Oct 2024 16:06:50 +0100] rev 4033
eRPC: Server closes connection on exception to prevent client to block until timeout when it happens.

Mon, 28 Oct 2024 16:02:47 +0100Add ExtendedCall to PLCObject as a replacement of RemoteExec and reflect it in eRPC interface.
Edouard Tisserant <edouard@beremiz.fr> [Mon, 28 Oct 2024 16:02:47 +0100] rev 4032
Add ExtendedCall to PLCObject as a replacement of RemoteExec and reflect it in eRPC interface.

ExtendedCall is a generic remote procedure call that runtime code can register to and that IDE extensions can call.
For example a fieldbus extension can use ExtendedCall to browse the fieldbus devices connected to the runtime.

Fri, 25 Oct 2024 14:51:38 +0200Removed dependency in requirements.txt.
Edouard Tisserant <edouard@beremiz.fr> [Fri, 25 Oct 2024 14:51:38 +0200] rev 4031
Removed dependency in requirements.txt.

Wed, 16 Oct 2024 12:18:14 +0200TESTS: Update Matiec revision in GH workflow
Edouard Tisserant <edouard.tisserant@gmail.com> [Wed, 16 Oct 2024 12:18:14 +0200] rev 4030
TESTS: Update Matiec revision in GH workflow

Fri, 11 Oct 2024 10:49:07 +0200MQTT: update test project to reflect latest changes
Edouard Tisserant <edouard@beremiz.fr> [Fri, 11 Oct 2024 10:49:07 +0200] rev 4029
MQTT: update test project to reflect latest changes

Fri, 11 Oct 2024 10:46:46 +0200SVGHMI update generated XSLT
Edouard Tisserant <edouard@beremiz.fr> [Fri, 11 Oct 2024 10:46:46 +0200] rev 4028
SVGHMI update generated XSLT

Fri, 11 Oct 2024 10:38:30 +0200SVGHMI: remove widgets deprecated since long
Edouard Tisserant <edouard@beremiz.fr> [Fri, 11 Oct 2024 10:38:30 +0200] rev 4027
SVGHMI: remove widgets deprecated since long

Fri, 11 Oct 2024 10:34:15 +0200SVGHMI: add ForEach widget example
Edouard Tisserant <edouard@beremiz.fr> [Fri, 11 Oct 2024 10:34:15 +0200] rev 4026
SVGHMI: add ForEach widget example

Fri, 11 Oct 2024 10:18:57 +0200SVGHMI: Extend ForEach widget to expose range, position and size in a way comparable with ScrollBar widget.
Edouard Tisserant <edouard.tisserant@gmail.com> [Fri, 11 Oct 2024 10:18:57 +0200] rev 4025
SVGHMI: Extend ForEach widget to expose range, position and size in a way comparable with ScrollBar widget.

Fri, 11 Oct 2024 09:31:34 +0200SVGHMI: code cleanup
Edouard Tisserant <edouard@beremiz.fr> [Fri, 11 Oct 2024 09:31:34 +0200] rev 4024
SVGHMI: code cleanup

Mon, 30 Sep 2024 16:21:11 +0200MQTT: Add status global variable MQTT_STATUS_n, one per MQTT client
Edouard Tisserant <edouard@beremiz.fr> [Mon, 30 Sep 2024 16:21:11 +0200] rev 4023
MQTT: Add status global variable MQTT_STATUS_n, one per MQTT client

Thu, 26 Sep 2024 15:28:10 +0200MQTT: strip unsupported types from type choice dropdown, better wrong type detection in build.
Edouard Tisserant <edouard@beremiz.fr> [Thu, 26 Sep 2024 15:28:10 +0200] rev 4022
MQTT: strip unsupported types from type choice dropdown, better wrong type detection in build.

Thu, 26 Sep 2024 09:40:09 +0200MQTT: remove debug prints
Edouard Tisserant <edouard@beremiz.fr> [Thu, 26 Sep 2024 09:40:09 +0200] rev 4021
MQTT: remove debug prints

Wed, 25 Sep 2024 11:10:33 +0200MQTT: add JSON fixed size 1D array support. WIP. Parsing array still broken.
Edouard Tisserant <edouard@beremiz.fr> [Wed, 25 Sep 2024 11:10:33 +0200] rev 4020
MQTT: add JSON fixed size 1D array support. WIP. Parsing array still broken.

Fri, 20 Sep 2024 15:30:22 +0200MQTT: do not convert to UPPERCASE json keys.
Edouard Tisserant <edouard@beremiz.fr> [Fri, 20 Sep 2024 15:30:22 +0200] rev 4019
MQTT: do not convert to UPPERCASE json keys.

Fri, 20 Sep 2024 15:12:53 +0200MQTT: added support for strings in JSON payload only.
Edouard Tisserant <edouard@beremiz.fr> [Fri, 20 Sep 2024 15:12:53 +0200] rev 4018
MQTT: added support for strings in JSON payload only.

Thu, 19 Sep 2024 15:12:45 +0200MQTT: remove accidentally committed debug printfs + cosmetic
Edouard Tisserant <edouard@beremiz.fr> [Thu, 19 Sep 2024 15:12:45 +0200] rev 4017
MQTT: remove accidentally committed debug printfs + cosmetic

Thu, 19 Sep 2024 12:06:53 +0200MQTT: fix invocation of json_scanf (use pointers, not values...)
Edouard Tisserant <edouard@beremiz.fr> [Thu, 19 Sep 2024 12:06:53 +0200] rev 4016
MQTT: fix invocation of json_scanf (use pointers, not values...)

Thu, 19 Sep 2024 12:05:35 +0200MQTT: fix bisection failing when topics start with same substring.
Edouard Tisserant <edouard@beremiz.fr> [Thu, 19 Sep 2024 12:05:35 +0200] rev 4015
MQTT: fix bisection failing when topics start with same substring.

Tue, 17 Sep 2024 11:17:24 +0200MQTT: Update available type choices when data types are changed in the IDE
Edouard Tisserant <edouard@beremiz.fr> [Tue, 17 Sep 2024 11:17:24 +0200] rev 4014
MQTT: Update available type choices when data types are changed in the IDE

Fri, 13 Sep 2024 14:28:07 +0200MQTT: remove standalone MQTT clien generator code.
Edouard Tisserant <edouard@beremiz.fr> [Fri, 13 Sep 2024 14:28:07 +0200] rev 4013
MQTT: remove standalone MQTT clien generator code.

Code was inherited from OPC-UA extension, but not properly maintained.

Fri, 13 Sep 2024 14:26:55 +0200MQTT: add JSON payload corresponding to IEC Structured types
Edouard Tisserant <edouard@beremiz.fr> [Fri, 13 Sep 2024 14:26:55 +0200] rev 4012
MQTT: add JSON payload corresponding to IEC Structured types

- uses https://github.com/cesanta/frozen
- frozen.c is added as a resulting c file in generat_C (fix toolchain_gcc.py as it was breaking dependency checking)
- structured types are converted to C #define, in turn generating json_scanf and json_printf statements

Thu, 05 Sep 2024 15:55:46 +0200MQTT: WIP supporting structured types : do not crash when generating C code if using location with no size
Edouard Tisserant <edouard@beremiz.fr> [Thu, 05 Sep 2024 15:55:46 +0200] rev 4011
MQTT: WIP supporting structured types : do not crash when generating C code if using location with no size

Fri, 30 Aug 2024 15:17:03 +0200MQTT: add dropdown to select type assigned to a topic
Edouard Tisserant <edouard@beremiz.fr> [Fri, 30 Aug 2024 15:17:03 +0200] rev 4010
MQTT: add dropdown to select type assigned to a topic

Fri, 30 Aug 2024 11:54:36 +0200MQTT+IDE: Allow user to associate IEC structure datatype to a topic.
Edouard Tisserant <edouard@beremiz.fr> [Fri, 30 Aug 2024 11:54:36 +0200] rev 4009
MQTT+IDE: Allow user to associate IEC structure datatype to a topic.

Fri, 30 Aug 2024 11:50:23 +0200IDE: allow structures to be located.
Edouard Tisserant <edouard@beremiz.fr> [Fri, 30 Aug 2024 11:50:23 +0200] rev 4008
IDE: allow structures to be located.

Sat, 07 Sep 2024 12:50:57 +0200merge MQTT grafted from python2 branch - untested
Edouard Tisserant <edouard.tisserant@gmail.com> [Sat, 07 Sep 2024 12:50:57 +0200] rev 4007
merge MQTT grafted from python2 branch - untested

Thu, 22 Aug 2024 12:16:45 +0200MQTT: add test projects, to be later included in automated testing.
Edouard Tisserant <edouard@beremiz.fr> [Thu, 22 Aug 2024 12:16:45 +0200] rev 4006
MQTT: add test projects, to be later included in automated testing.

Thu, 22 Aug 2024 12:15:31 +0200MQTT: add SSL support
Edouard Tisserant <edouard@beremiz.fr> [Thu, 22 Aug 2024 12:15:31 +0200] rev 4005
MQTT: add SSL support

Thu, 08 Aug 2024 14:56:13 +0200SVGHMI: cosmetic
Edouard Tisserant <edouard@beremiz.fr> [Thu, 08 Aug 2024 14:56:13 +0200] rev 4004
SVGHMI: cosmetic

Tue, 06 Aug 2024 15:25:57 +0200SVGHMI: Fix watchdog not cleanly restarting browser because not waiting for stop operation to finish before restarting.
Edouard Tisserant <edouard@beremiz.fr> [Tue, 06 Aug 2024 15:25:57 +0200] rev 4003
SVGHMI: Fix watchdog not cleanly restarting browser because not waiting for stop operation to finish before restarting.

Thu, 01 Aug 2024 12:11:11 +0200MQTT: WIP, re-organized disconnection handling, now keep track of connection status and reconnect accordingly.
Edouard Tisserant <edouard@beremiz.fr> [Thu, 01 Aug 2024 12:11:11 +0200] rev 4002
MQTT: WIP, re-organized disconnection handling, now keep track of connection status and reconnect accordingly.

This fixes bug with non-reconnecting to broker when having no published variables.

Thu, 01 Aug 2024 12:09:28 +0200MQTT: link to SSL only when needed.
Edouard Tisserant <edouard@beremiz.fr> [Thu, 01 Aug 2024 12:09:28 +0200] rev 4001
MQTT: link to SSL only when needed.

Wed, 24 Jul 2024 15:14:02 +0200IDE: Fix "Save" toolbar button and file menu entry not appearing when extension makes changes
Edouard Tisserant <edouard@beremiz.fr> [Wed, 24 Jul 2024 15:14:02 +0200] rev 4000
IDE: Fix "Save" toolbar button and file menu entry not appearing when extension makes changes

Tue, 23 Jul 2024 17:05:59 +0200MQTT: WIP fix modified status not being set when adding and modifying topics or attributes.
Edouard Tisserant <edouard@beremiz.fr> [Tue, 23 Jul 2024 17:05:59 +0200] rev 3999
MQTT: WIP fix modified status not being set when adding and modifying topics or attributes.

Fix loading of CSV that was not applying model types, and that not checking conformance either.

Tue, 23 Jul 2024 15:30:04 +0200MQTT: WIP, PLC starts even if MQTT client can't connect broker, and publish+subscribe again when reconnecting.
Edouard Tisserant <edouard@beremiz.fr> [Tue, 23 Jul 2024 15:30:04 +0200] rev 3998
MQTT: WIP, PLC starts even if MQTT client can't connect broker, and publish+subscribe again when reconnecting.