943 Commits

Autor SHA1 Nachricht Datum
Reinder Feenstra
09e6798e73 world: added settings to go online/power on/run on world load 2023-12-18 17:17:58 +01:00
Reinder Feenstra
373af31565 z21: fixed kernel always firing onEmergenctStop on stop change 2023-12-10 22:18:07 +01:00
Reinder Feenstra
cafe69ddb9 Added about server option to client main menu 2023-12-09 22:17:44 +01:00
Filippo Gentile
948b10d422 Z21: fix input address validation 2023-12-07 19:16:49 +01:00
Reinder Feenstra
7e690d1fce loconet: fix: interfaced caused crash when network connection failed 2023-12-06 23:51:03 +01:00
Reinder Feenstra
cb23c99940 traintasticdiy: added startup delay, default = 500ms
some devices reset on connect, give them some time to boot
2023-12-06 00:12:16 +01:00
Reinder Feenstra
3a3bee66ba traintasticdiy: fix: hardware io handler dropped bytes of incomplete messages 2023-12-05 23:21:04 +01:00
Reinder Feenstra
a4a1e39c25 traintasticdiy: added loggin of dropped bytes
(untested)
2023-12-05 22:48:37 +01:00
Reinder Feenstra
0e61dc96d1 Revert "windows: don't call zlibVersion(), it causes a crash #FIXME"
This reverts commit 13552ae7ae7461fff58c69637151aaeacfda963c.
2023-11-28 22:45:38 +01:00
Reinder Feenstra
37e486ae46
Merge pull request #90 from traintastic/33-client-connect-hangs-sometimes
fix: client connect hangs sometimes
2023-11-27 17:19:40 +01:00
Reinder Feenstra
5c69cb107d signaling: improved 3 aspect signal
signal is now aware of next signal aspect
2023-11-26 23:51:55 +01:00
Reinder Feenstra
12e23c90a9 fix: show proper error if language file loading fails
closes #89
2023-11-23 23:09:46 +01:00
Reinder Feenstra
46461cb46a
fix 2023-11-17 08:44:59 +01:00
Reinder Feenstra
61da24b5a2 fix 2023-11-17 00:05:04 +01:00
Reinder Feenstra
0337ac6a4d another experiment, see #33
create connection in server thread and strart reading without using the eventloop
2023-11-16 23:27:33 +01:00
Reinder Feenstra
1e9ef650c2 fix: determine connection id in network thread, see #33 2023-11-15 18:21:38 +01:00
Reinder Feenstra
cdac489b11 fix: hanging client connect, see #33
The asio socket was moved in the eventloop thread, no in the server io context thread.
Asio doc don't explicitly say moving is thread safe, so it moste likely isn't.
2023-11-14 22:38:29 +01:00
Reinder Feenstra
f5f85ee438 fix: added missing include (for Release build) 2023-11-14 22:33:15 +01:00
Reinder Feenstra
15393d4183 fix: added missing virtual 2023-11-14 22:32:55 +01:00
Reinder Feenstra
8f636f2be4 board: made signals aware of path reservation #WIP 2023-11-13 23:25:16 +01:00
Filippo Gentile
3bd9a876a0 ClientKernel: do not abbreviate variable names 2023-11-06 01:29:23 +01:00
Filippo Gentile
7a2eea573c ClientKernel: make getLocoCache() return reference
It cannot be null
2023-11-06 01:28:47 +01:00
Filippo Gentile
ff428c4b85 LanXLocoInfo: rework max function index support 2023-11-06 01:26:16 +01:00
Filippo Gentile
39eef0f273 ClientKernel: prefix members with m_
Now m_isUpdatingFromKernel

P.S. I'm tired of rebasing!
2023-11-06 01:26:10 +01:00
Filippo Gentile
45cbc58c2a ClientKernel: use Doxygen \note in comment 2023-11-06 01:26:01 +01:00
Filippo Gentile
5b48969fbb server: Z21 ClientKernel prevent speed trend override 2023-11-05 22:43:56 +01:00
Filippo Gentile
379c22c0fc Z21: ClientKernel store last received step in 126 scale 2023-11-05 22:43:55 +01:00
Filippo Gentile
4d36f515ac Z21 ClientKernel: always react to stop and direction
React to Emenrgency Stop and direction change regardless of timeout
status
2023-11-05 22:43:53 +01:00
Filippo Gentile
1e6d350d0b Z21 ClientKernel: do not propagate external changes
Decoder changes caused by Z21 should not be sent back to Z21
2023-11-05 22:32:09 +01:00
Filippo Gentile
5bdbeeb72e WIP: add LocoCache to Z21 ClientKernel 2023-11-05 22:28:54 +01:00
Filippo Gentile
373c277cc7 server: Z21 LanXLocoInfo support F29 to F31
Z21 Firmware 1.42 adds F29 to F31 to LAN_X_LOCO_INFO
2023-11-05 22:28:53 +01:00
Filippo Gentile
50279a12d9 server: Z21 ClientKernel, try/catch when updating decoder 2023-11-05 22:28:52 +01:00
Filippo Gentile
3e3eaca008 server: Z21 handle LAN_X_LOCO_INFO
Handle LanXLocoInfo inside ClientKernel
This allows reacting to external decoder state changes
2023-11-05 22:28:52 +01:00
Filippo Gentile
46fae8ca17 DecoderChangeFlags: add operator|=() 2023-11-05 22:28:50 +01:00
Reinder Feenstra
84ef8713cd nx button: draw gray if not enabled 2023-11-05 16:38:14 +01:00
Reinder Feenstra
174ffd8690
Added stringop-overflow ignore for MinGW 2023-11-04 00:56:51 +01:00
Filippo Gentile
0a5e654df7 server: Z21 use less hardcoded values
- Add new labels for message values
- Remove unneeded Z21 namespace prefix
- Fix newlines after case
2023-11-03 23:11:48 +01:00
Filippo Gentile
52fdb3371e server: Z21 custom checksum for LanXLocoInfo message 2023-11-03 23:11:47 +01:00
Filippo Gentile
14df2a7344 server: Z21 better checksum calculation
- Tweak XpressNet checksum code to accept custom message size
- Renamed LanX::calcChecksum() to LanX::updateChecksum()
- Added LanX::isChecksumValid()
- Internally reuse XpressNet checksum code
- Removed old commented function in LanXGetLocoInfo
2023-11-03 23:11:46 +01:00
Filippo Gentile
313d3b2d57 server: Z21 Use helper functions in ClientKernel
Use helper functions for LanXSetLocoDrive message
2023-11-03 23:11:45 +01:00
Filippo Gentile
2c73473ea8 server: Z21 Utils, fix 28 speed step format 2023-11-03 23:11:44 +01:00
Filippo Gentile
e0d5375a35 server: Z21 fix race condition for power state
- Read/Write track power state only from EventLoop thread
('m_trackPowerOn' and 'm_emergencyStop' must be accessed
only from EventLoop thread, except on kernel start.)

This fixes infinite async loop power on/off at startup connecting Z21
2023-11-03 23:11:44 +01:00
Filippo Gentile
5a291f0c91 server: Z21 ClientKernel fix crash on disconnect
See #53
When disabling communications, kernel object is deleted
but EventLoop callback will run after and access deleted
object through captured 'this'
Temporary fix for this problem is to copy log ID value instead.
2023-11-03 23:11:43 +01:00
Reinder Feenstra
93d0dc62bf blockpath: added check to prevent paths crossing/endless loops 2023-11-02 23:10:15 +01:00
Reinder Feenstra
022a9f97a5 fix: added missing include (for Release builds) 2023-11-01 23:17:25 +01:00
Reinder Feenstra
8ec71e496d adding path reservation #WIP
see #14
2023-11-01 22:19:04 +01:00
Reinder Feenstra
f58d09bc7e fix: added missing include 2023-11-01 20:45:51 +01:00
Reinder Feenstra
13552ae7ae windows: don't call zlibVersion(), it causes a crash #FIXME 2023-11-01 20:30:21 +01:00
Reinder Feenstra
d931591fab fix: added missing include 2023-11-01 17:02:14 +01:00
Reinder Feenstra
f9641404ae fix: single/double slip turnout links weren't correct 2023-10-31 23:45:40 +01:00