Add multi-decoder split and pit timing support

This commit is contained in:
larssand
2026-08-25 19:45:40 +02:00
parent 6f02e955a5
commit 8ea8b3a84e
20 changed files with 876 additions and 147 deletions

View File

@@ -422,10 +422,23 @@ Viktigt:
- Om du öppnar sidan från en annan laptop startas ingen AMMC där.
- Fältet `AMMC binär` i `Settings` är en sökväg på backend-hosten, inte på klienten som surfar in.
#### Koppling av decoders
| Roll | Fysisk placering | Exempel decoder-IP | AMMC WS-port | Funktion |
|---|---|---:|---:|---|
| Main start/mål | Start-/målloop | `192.168.1.10` | `9000` | Räknar varv och bestämmer varvtid |
| Mellantid | Mellantidsloop | `192.168.1.11` | `9001` | Tid från senaste main-passering; räknar aldrig varv |
| Depå in | Infart till depå | `192.168.1.12` | `9002` | Öppnar ett depåstopp |
| Depå ut | Utfart från depå | `192.168.1.13` | `9003` | Stänger och tidtar depåstoppet |
Decoder-IP och WebSocket-adress är två olika saker. Decoder-IP är den fysiska hårdvarans adress som AMMC ansluter till. Webbläsaren ansluter till AMMC på backend-hosten, till exempel `ws://192.168.1.100:9001`. Varje decoder måste ha unik nätverksadress och varje AMMC-process måste ha unik WebSocket-port.
Aktivera bara de kanaler som finns fysiskt på banan. En decoder på `9000` är fortsatt standard och kräver inga extrainställningar. Mellantid kräver en extra decoder. Depåtid kräver två extra decoders eftersom in- och utpassering är separata händelser. Komplett installation använder därför fyra decoders.
1. Lägg AMMC-binärerna i projektmappen `AMMC/` (redan gjort i denna repo).
2. Öppna `Settings`.
3. Aktivera `Hanterad AMMC / Managed AMMC`.
4. Sätt `Decoder IP / host`, kontrollera port `9000`, spara.
4. Sätt Main `Decoder IP / host`, kontrollera port `9000` och aktivera vid behov Mellantid och Depå enligt tabellen ovan.
5. Klicka `Starta AMMC / Start AMMC`.
6. Klicka `Använd serverns WS-url / Use server WS URL` så sätts klienten till t.ex. `ws://<server-ip>:9000`.
@@ -437,7 +450,15 @@ Standardbinärer:
### B. Manuell start
Starta AMMC med WebSocket (exempel):
```powershell
ammc-amb.exe -w 9000 192.168.1.11
ammc-amb.exe -w 9000 192.168.1.10
```
Komplett exempel med fyra decoders, i fyra separata terminaler/processer:
```powershell
ammc-amb.exe -w 9000 192.168.1.10
ammc-amb.exe -w 9001 192.168.1.11
ammc-amb.exe -w 9002 192.168.1.12
ammc-amb.exe -w 9003 192.168.1.13
```
I appen:
@@ -450,6 +471,7 @@ I appen:
Om du kör Linux-brandvägg (UFW), öppna porten:
```bash
sudo ufw allow 8081/tcp
sudo ufw allow 9000:9003/tcp
```
## Auto reload vid uppdatering