Files
Live_RC/docs/decoder-setup.sv.md
2026-08-28 20:56:58 +02:00

8.1 KiB

Decoder-, IP- och AMMC-konfiguration

Den här guiden beskriver hur fysiska MyLaps/AMB-decoders kopplas till RC RaceCore. Exemplen använder följande nätverk:

Enhet Exempeladress Uppgift
RC RaceCore/backend 192.168.1.100 Kör Node.js, AMMC-processerna, webb och API
Operatörens laptop 192.168.1.50 Öppnar webbgränssnittet, kör inte AMMC
Main-decoder 192.168.1.10 Start/mål och varvräkning
Mellantidsdecoder 192.168.1.11 Valfri split/mellantid
Depå in-decoder 192.168.1.12 Öppnar depåstopp
Depå ut-decoder 192.168.1.13 Stänger depåstopp

Byt adresserna mot adresserna i ditt nätverk.

Tre olika adresstyper

De här värdena får inte blandas ihop:

Värde Exempel Vem använder det?
Decoder-IP 192.168.1.10 AMMC ansluter till fysisk decoder
AMMC WebSocket ws://192.168.1.100:9000 Webbläsaren ansluter till AMMC på backend-hosten
Backend URL http://192.168.1.100:8081 Webbläsaren använder webb, API och sparning

127.0.0.1 betyder alltid "den här maskinen". Använd därför bara ws://127.0.0.1:9000 när webbläsaren kör på samma dator som backend. Från en laptop ska du använda backend-datorns LAN-IP, till exempel ws://192.168.1.100:9000.

Dataflödet

Bilens transponder
  -> fysisk loop i banan
  -> fysisk decoder med egen IP
  -> AMMC-process på backend-datorn
  -> unik WebSocket-port på backend-datorn
  -> webbläsaren/RC RaceCore
  -> aktiv session, resultat och statistik

Komplett exempel:

Main:      decoder 192.168.1.10 -> AMMC på backend :9000 -> main/start/mål
Split:     decoder 192.168.1.11 -> AMMC på backend :9001 -> mellantid
Depå in:   decoder 192.168.1.12 -> AMMC på backend :9002 -> öppna stopp
Depå ut:   decoder 192.168.1.13 -> AMMC på backend :9003 -> stäng stopp

Laptop 192.168.1.50 öppnar:
  http://192.168.1.100:8081
och ansluter till:
  ws://192.168.1.100:9000
  ws://192.168.1.100:9001
  ws://192.168.1.100:9002
  ws://192.168.1.100:9003

Välj antal decoders

Installation Fysiska decoders Aktivera
Vanlig tidtagning 1 Main
Tidtagning + mellantid 2 Main + Split
Tidtagning + depåstopp 3 Main + Depå in + Depå ut
Komplett endurance 4 Main + Split + Depå in + Depå ut

Depåtid kräver alltid både Depå in och Depå ut. En enda depådecoder kan inte beräkna stopptiden.

Roller och standardportar

Roll Decoder-IP i exemplet AMMC-port Påverkar varv? Sparad data
Main start/mål 192.168.1.10 9000 Ja Passering, varv och varvtid
Mellantid 192.168.1.11 9001 Nej Split från senaste main-passering
Depå in 192.168.1.12 9002 Nej Tidpunkt och aktiv förare/bil vid infart
Depå ut 192.168.1.13 9003 Nej Tidpunkt och färdig depåstopptid

Varje fysisk decoder ska ha en unik IP. Varje aktiverad AMMC-process ska ha en unik WebSocket-port. Använd aldrig samma port för två roller.

Rekommenderad konfiguration: Managed AMMC

AMMC körs på samma dator som startats med npm start eller npm.cmd start. Webbläsaren kan köras på en annan dator.

  1. Starta backend.
  2. Öppna Inställningar.
  3. Kontrollera Backend URL: http://192.168.1.100:8081 från andra datorer.
  4. Aktivera Hanterad AMMC.
  5. Fyll i de roller som finns fysiskt.

Exempel på fälten under Hanterad AMMC:

Fält Värde
Main decoder IP / host 192.168.1.10
Main WebSocket-port 9000
Aktivera mellantidsdecoder På om decoder .11 finns
Mellantid decoder IP / host 192.168.1.11
Mellantid WebSocket-port 9001
Aktivera depådecoders På endast om både .12 och .13 finns
Depå in decoder IP / host 192.168.1.12
Depå in WebSocket-port 9002
Depå ut decoder IP / host 192.168.1.13
Depå ut WebSocket-port 9003
  1. Klicka Spara AMMC.
  2. Klicka Starta AMMC.
  3. Kontrollera att varje aktiverad process står som Kör och inte visar fel.
  4. Klicka Använd serverns WS-url. Detta fyller klientfälten med backend-IP, inte decoder-IP.
  5. Gå till Tidtagning och klicka Anslut decoder.
  6. Kontrollera att Main och valfria roller står som Ansluten.

Klientens WebSocket-fält

När backend är 192.168.1.100 ska klientinställningarna vara:

Klientfält Värde
Main WebSocket-url ws://192.168.1.100:9000
Mellantid WebSocket-url ws://192.168.1.100:9001
Depå in WebSocket-url ws://192.168.1.100:9002
Depå ut WebSocket-url ws://192.168.1.100:9003

Skriv inte decoder-IP i WebSocket-url. ws://192.168.1.10:9000 är normalt fel eftersom AMMC-porten finns på backend-datorn, inte på decodern.

Manuell AMMC-start

Använd manuell start endast när backend inte ska hantera processerna. Kör en process per roll:

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

Syntaxen är:

ammc-amb -w <WebSocket-port på backend> <fysisk decoder-IP>

Starta bara processerna för de roller som används. Stäng av Hanterad AMMC om processerna startas manuellt, annars kan två processer försöka använda samma portar.

Brandvägg

Portarna öppnas på backend-datorn, inte på operatörens laptop.

Linux/UFW:

sudo ufw allow 8081/tcp
sudo ufw allow 9000:9003/tcp

Windows, kör installationsskriptet som administratör:

Start-Process powershell -Verb RunAs -ArgumentList '-ExecutionPolicy Bypass -File .\windows\setup.ps1 -OpenFirewall -StartServer'

Det öppnar TCP 8081 och 9000-9003. Öppna endast portarna på ett betrott LAN. Exponera inte admin-UI, API eller AMMC-portar direkt mot internet.

Start- och testordning

  1. Pinga varje fysisk decoder från backend: ping 192.168.1.10 och motsvarande extradecoders.
  2. Starta backend och kontrollera npm run status eller npm.cmd run status.
  3. Starta Managed AMMC.
  4. Läs AMMC-loggen i Inställningar. Fel mot decoder-IP ska lösas innan webbläsaren felsöks.
  5. Anslut rollerna i Tidtagning.
  6. Kör en transponder över Main. Antal varv ska öka.
  7. Kör över Split. Mellantiden ska uppdateras men varvantalet ska vara oförändrat.
  8. Kör över Depå in. Status ska bli I DEPÅ.
  9. Kör över Depå ut. Ett depåstopp med tid ska skapas.

Var data visas

  • Tidtagning: live leaderboard, split och aktiv/fullständig depålogg.
  • Overlay: senaste split och depåstatus för aktiv session.
  • Race Setup -> Hantera -> Live / resultat: sammanställning per heat.
  • Resultat/PDF: split-/depåsammanställning och full depålogg.
  • Träning -> Mer statistik: statistik per personlig profil och vald klass.
  • Personlig mobilprofil: endast sanerade aggregat, aldrig transponder eller rå depålogg.

Felsökning

Symptom Trolig orsak Kontroll
Decoder offline Main WebSocket kan inte nås AMMC main kör, port 9000, brandvägg
AMMC startar men stannar Fel decoder-IP, binär eller bibliotek AMMC-logg och ping från backend
Laptop når sidan men inte tider WS-url använder 127.0.0.1 Byt till ws://<backend-IP>:9000
Main fungerar men split saknas Split ej aktiverad eller port blockerad .11, port 9001, status i Tidtagning
Depå in visas men inget stopp skapas Depå ut saknas eller använder fel roll .13, port 9003, separat fysisk loop
Varv ökar vid mellantid Samma feed/roll används fel Main och Split ska ha separata decoder-IP/portar
EADDRINUSE Två processer använder samma port Stoppa manuell AMMC eller byt unik port
Ingen anslutning efter kopierade filer Backend kör gammal kod npm restart eller npm.cmd restart

Regler som inte får ändras

  • Endast Main får räkna varv.
  • Split och depå får aldrig läggas in som vanliga passeringar.
  • Depå in och Depå ut måste vara två separata roller.
  • Ett depåstopp kopplas till förare/bil vid depåinfarten även om laget byter förare innan utfarten.
  • Olika klasser hålls separerade i förarstatistik.