3 months agoMQTT: 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.

3 months agoMQTT: 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

3 months agoMQTT: 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...)

3 months agoMQTT: 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.

3 months agoMQTT: 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

4 months agoMQTT: 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.

4 months agoMQTT: 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

4 months agoMQTT: 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

4 months agoMQTT: 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

4 months agoMQTT+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.

4 months agoIDE: 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.

4 months agomerge 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

4 months agoMQTT: 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.

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

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

5 months agoSVGHMI: 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.

5 months agoMQTT: 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.

5 months agoMQTT: 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.

5 months agoIDE: 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

5 months agoMQTT: 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.

5 months agoMQTT: 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.

5 months agoMQTT: WIP, destroys paho client during failure handling at init and at cleanup. Use mutex to protect retrieve.
Edouard Tisserant <edouard@beremiz.fr> [Tue, 23 Jul 2024 11:05:46 +0200] rev 3997
MQTT: WIP, destroys paho client during failure handling at init and at cleanup. Use mutex to protect retrieve.

5 months agoMQTT: Implements reconnecting in publish thread in case thread is waken-up but client is disconnected.
Edouard Tisserant <edouard@beremiz.fr> [Mon, 22 Jul 2024 16:13:27 +0200] rev 3996
MQTT: Implements reconnecting in publish thread in case thread is waken-up but client is disconnected.

Note: paho's lostConnection callback got already disabled in previous commit.

5 months agoMQTT: take C part away from python code for readability.
Edouard Tisserant <edouard@beremiz.fr> [Mon, 22 Jul 2024 16:09:12 +0200] rev 3995
MQTT: take C part away from python code for readability.

C lines change a bit because of unnecessary escaping for '\'.

5 months agoMQTT: WIP, prevent crash after disconnect. Disable auto-reconnect on connection lost callback.
Edouard Tisserant <edouard@beremiz.fr> [Mon, 22 Jul 2024 12:12:33 +0200] rev 3994
MQTT: WIP, prevent crash after disconnect. Disable auto-reconnect on connection lost callback.

6 months agoMQTT: Stop publish thread properly on PLC stop
Edouard Tisserant <edouard@beremiz.fr> [Thu, 18 Jul 2024 12:05:26 +0200] rev 3993
MQTT: Stop publish thread properly on PLC stop

6 months agoMQTT: Fix overkill use of wx sizer
Edouard Tisserant <edouard@beremiz.fr> [Thu, 18 Jul 2024 11:42:08 +0200] rev 3992
MQTT: Fix overkill use of wx sizer

6 months agoMQTT: Fix crash when browsing locations
Edouard Tisserant <edouard@beremiz.fr> [Thu, 18 Jul 2024 11:28:38 +0200] rev 3991
MQTT: Fix crash when browsing locations

6 months agoMQTT: WIP. Added handling of received messages (subscriptions)
Edouard Tisserant <edouard@beremiz.fr> [Wed, 17 Jul 2024 17:02:32 +0200] rev 3990
MQTT: WIP. Added handling of received messages (subscriptions)

Dropped perfect hash in favor of bisection
Also fixed indentation (tabs)

6 months agoMQTT: WIP, added publish thread waking-up when published variables change.
Edouard Tisserant <edouard@beremiz.fr> [Tue, 16 Jul 2024 09:41:45 +0200] rev 3989
MQTT: WIP, added publish thread waking-up when published variables change.