Dokter
De Dokterpagina is een one-stop-gezondheidscontrole. Het voert een handvol tests uit op het apparaat, de simkaart en de hostomgeving, en als er een voor de hand liggende oplossing is, biedt het een inline actie om deze toe te passen. Begin hier als iets niet werkt. De kans is groot dat de dokter al weet wat het is.
Hardware-compatibiliteit
De eerste kaart op de Dokterpagina is een hardware-compatibiliteit paneel. Het bevat twee gerelateerde besturingselementen: Keer de aspolariteit om schakelaar en een live dragpad polariteitstest. Beide bestaan omdat verschillende productieruns van de Sidewinder Force Feedback 2 de force-feedback-polariteit anders interpreteren - op sommige sticks trekt wat de brug denkt dat 'vooruit' is, fysiek terug, en omgekeerd. De schakelaar is de oplossing op installatieniveau; de test is hoe je weet of je hem moet omdraaien.
Live polariteitstest
Klik Begin en een klein X-Y-sleeppad wordt actief. Beweeg de puck rond, de stick volgt in realtime - de brug wordt automatisch ingeschakeld in de Mock-modus gedurende de duur van de test, zodat de prereqs-controle slaagt zonder een simverbinding. Klik Stop als je klaar bent. Een bevestigingsmodaliteit vraagt “Heeft de stick de puck gevolgd?”:
- Ja — polariteit is correct, er is geen wijziging aangebracht.
- Nee — de schakelaar draait automatisch om en elke daaropvolgende kracht op zowel de pitch- als de roll-as wordt tenietgedaan aan de uitvoerrand van het apparaat.
Als u halverwege de test de Doctor-pagina verlaat, wordt deze stil gestopt en wordt uw vorige invoerbron (Live of Inactief) hersteld - geen expliciete stop vereist.
Aspolariteit omkeren (handmatig)
De schakelaar aan de linkerkant van de kaart is dezelfde instelling die de test zou schrijven. Gebruik het direct als je al weet dat je stick moet worden omgedraaid. Je hebt dit bijvoorbeeld bij een eerdere installatie meegemaakt en wilt het instellen voordat je gaat testen. De instelling is op installatieniveau, niet per profiel: het leeft in de voorkeuren van de brug, is van toepassing op zowel de pitch- als de roll-as samen, en overleeft een herstart.
Bij eerdere builds kon de toonhoogte onafhankelijk van de rol worden omgekeerd. Dat kwam niet overeen met hoe de firmware-eigenaardigheden van de FFB2 feitelijk aanwezig zijn: wanneer één as wordt omgekeerd, zijn beide dat wel. De schakelaar draait ze nu als een paar om. Bestaande instellingen per pitch worden bij de eerste lancering naar voren gemigreerd.
Software-gemengde periodieken
De brug heeft twee manieren om periodieke en eenmalige effecten (gerommel, buffetten, rillingen...) naar de FFB2 te sturen. Hardware-modus – de standaard voor een nieuwe installatie – maakt gebruik van DirectInput-hardware-effecten, en beta.11 houdt die topologie bewust klein: één vectorconstante, één tweeassige veer en een luie periodieke pool met drie slots. De firmware stuurt de periodieke golfvormen nog steeds op de oorspronkelijke snelheid aan; de brug hergebruikt eenvoudigweg die fysieke slots voor de huidige start- en landingsbaan, motor, buffet en eenmalige signalen. Software-gemengde periodieken, de schakelaar op dezelfde Doctor-rij, houdt alleen het hardwarepad voor continue kracht/centrering bij en synthetiseert periodieke en eenmalige signalen in C# bij 200 Hz, waarbij het resultaat wordt opgevouwen in de uitvoer met constante kracht.
De hardwaremodus is helderder en heeft een lagere latentie bij de effecten met de hoogste frequentie, omdat de firmware deze sneller aanstuurt dan de tickrate van de bridge. Software blending is de terugval in compatibiliteit voor driverstacks die nog steeds crashen in de hardwaremodus, voor mislukte testresultaten, of voor gebruikers die daar bewust de voorkeur aan geven. Een generieke onreine exit dwingt op zichzelf niet tot software-blending. Beide modi gebruiken dezelfde veertien effecten met dezelfde afstemmingsschuifregelaars per effect - de keuze is een verzenddetail, geen functieschakelaar. Hoe dan ook opnieuw opstarten vereist; de coördinator leest de modus bij het opstarten.
Klik Hardware-effecten testen om de compacte hardwaretopologie veilig uit te proberen. De dokter start een afzonderlijk werkproces, wijst dezelfde vectorconstante, een veer met twee assen en een periodieke pool toe die de brug tijdens de vlucht gebruikt, en haalt deze vervolgens neer. Als de DirectInput/PID-stack van Windows crasht, sterft alleen de werker en blijft de brug open. Als de test slaagt, schakelen Doctor en de runtime bij de volgende lancering naar dezelfde hardwaremodusstatus, zodat de Doctor-status en de daadwerkelijke dispatchermodus overeenkomen.
Hoe controles zijn ingericht
Elke controlerij bestaat uit vier delen:
- Statuspunt — groen (geslaagd), oranje (waarschuwing), rood (mislukt), grijs (niet van toepassing op dit platform).
- Titel – wat wordt gecontroleerd.
- Details — een samenvatting van één regel van wat er is gevonden. Beweeg de muis (of tik op aanraking) om alle details te zien.
- Actieknop - alleen aanwezig als er iets actiegerichts is. Voorbeelden: Installeer udev-regel, Gebruik poort :5111, Repareren….
De cheques
Apparaat
Bevestigt dat de Sidewinder Force Feedback 2 zichtbaar is voor het besturingssysteem en dat de bridge deze exclusief kan openen. Mislukt als de VID/PID niet aanwezig is, of als een ander proces de hendel vasthoudt.
Linux udev-regel
Checks whether /etc/udev/rules.d/99-ffb-bridge.rules
aanwezig is en overeenkomt met de canonieke inhoud. Bij afwezigheid is de actie Installeer udev-regel — this
triggers a pkexec gevraagd om het bestand naar een bevoorrechte locatie te schrijven.
Dokter detecteert NixOS (door te zoeken naar /etc/NIXOS) en vervangt de rij udev-regels door een instructie waaraan u de regel kunt toevoegen configuration.nix instead. See
Installeren voor het fragment.
SimConnect-configuratie
Looks for MSFS's SimConnect.xml op de voor het platform geschikte locatie, ontleedt het en vergelijkt eventuele ingeschakelde IPv4-vermeldingen met de poort die de bridge gebruikt. Drie mogelijke uitkomsten:
- Overeenkomende vermelding gevonden. Groen – niets te doen.
- Binnenkomst in een andere haven. Amber — biedt een Gebruik poort:X knop om die poort over te nemen.
- Geen bruikbare invoer (of niet-parseerbaar bestand). Rood — biedt een Repareren… knop waarmee het installatiedialoogvenster wordt geopend (zie hieronder).
Bereikbaarheid van SimConnect
Onderzoekt de geconfigureerde TCP-poort. Verzendt een echt SimConnect OPEN-pakket en inspecteert de antwoordheader zodat deze onderscheid kan maken MSFS luistert van er luistert iets anders.
Bereikbaarheid X-Plane
Sends a tiny RREF probe to 127.0.0.1:49000 en wacht kort op een dataref als antwoord. Brengt zowel de time-out als die van Winsock in kaart WSAECONNRESET (ontvangen toen een ICMP-poort die niet bereikbaar was, werd afgeleverd) naar "niet actief".
Looptijd
Controleert of de regellus tikt op de beoogde 50 Hz. Waarschuwt als het gemiddelde van de afgelopen 60 seconden onder de 45 Hz daalt.
Crashlogboek
Als er een crashlogboek van de laatste sessie is, wordt de rij oranje en wordt er een aanbieding weergegeven Onthullen om ernaar te springen in uw bestandsbeheerder, en Verzenden via feedbackformulier waarmee een feedbackinzending vooraf wordt ingevuld met het bijgevoegde logboek.
Dialoog repareren
Repareren… knoppen passen de wijzigingen niet rechtstreeks toe; ze openen een dialoogvenster waarin precies wordt weergegeven wat er gaat veranderen, waar en (op Linux) wat de auth-prompt u zal vragen goed te keuren.
De dialoog is altijd additief: bestaande vermeldingen worden nooit overschreven. Als het doelbestand niet kan worden geparseerd, wordt in het dialoogvenster uitgelegd dat er eerst een back-up met tijdstempel wordt gemaakt. Annuleren is altijd de veilige keuze.
Linux pkexec-gedrag
Acties die naar systeempaden schrijven (udev-regels, alles onder
/etc) route through pkexec. Je ziet de normale polkit-prompt van je distro - dezelfde waarvoor verschijnt gparted of een pakketbeheerder GUI. Uitgangscodes Dokter interpreteert:
| Afsluiten | Betekenis | Dokter meldt |
|---|---|---|
0 | Succes | Groen vinkje; rij wordt opnieuw geëvalueerd. |
126 | De gebruiker heeft de verificatieprompt afgewezen | Amber “Geannuleerd” – probeer het opnieuw als u klaar bent. |
127 | Geen polkit-agent/authenticatiefout | Rood “Authenticatie mislukt.” |
Het runnen van de bridge in een minimale omgeving (Linux zonder hoofd, zwaaien zonder een polkit-agent) is prima - je kunt alleen de bevoorrechte oplossingen van Doctor niet gebruiken. Installeer de vereiste bestanden handmatig of start een polkit-agent voordat u de bridge start.
Als Doctor overal groen is
De app zou moeten werken. Als dit niet het geval is, toont het gebeurtenislogboek van Diagnostics meer details dan de status van Doctor in één regel. Ga daarheen, of ga naar Problemen oplossen voor veel voorkomende symptomen en oplossingen.