Câblage et codage d'un switch iginition

Avant de câbler mon (vrai) iginition switch de cessna, il faut que je me fasse une idée du code pour pouvoir l'utiliser.
Problème, si je commence remettre mon nez dan le simu, je n'ai pas touché à SIOC depuis plus de 10ans, autant dire que j'ai absolument tout oublié...
Mais ma stratégie de câblage va dépendre de ce que je vais pouvoir faire comme code pour l'interfacer.
Alors je sollicite ceux qui ont encore un cerveau qui ne formate pas les données qui ont plus de 5ans...
Voilà l'idée:

Evidemment ça n'est pas un "simple" commutateur 5 positions avec une masse et une "patte" par position, c'est un peu plus tordu (et rien ne dit que ce soit parfaitement fonctionnel).
A priori j'ai repéré le GND, au centre.
-Position "OFF":
GND - A = 1 (continuité entre GND et borne A)
GND - B = 1
GND - C = 0 (pas de continuité)
-Position "L MAG":
GND-A = 0
GND-B = 1
GND-C = 0
-Position "R MAG":
GND-A = 1
GND-B = 0
GND-C = 1
-Position "BOTH":
GND-A = 0
GND-B = 0
GND-C = 0
-Position "START" (momentanée)
GND-A = 0
GND-B = 0
GND-C = 1
(D - E = 1)
En gros le petit point embêtant c'est pour le start. On voit que je pourrais utiliser GND-C, mais le problème c'est que GND-C est aussi = 1 sur la position "R MAG"
Es-ce que c'est contournable dans le code en disant en posant des conditions du style:
Si GND-B = 1 et GND-C = 1 Alors RMAG, mais pas de START
Si GND-C = 1 et tout le reste à 0 Alors START.
Sinon j'ai repéré que D-E =1 uniquement au START
Je pourrais donc utiliser D en un autre GND (ou même relier les 2), ne pas utiliser C mais utiliser E juste pour le START.
C'est peut être plus simple pour le code?
En gros ça me ferait:
(GND-A et GND-B)=1 => OFF
GND-A=0 et GND B=1 => LMAG
GND-A=1 et GND B=0 => RMAG
(GND-A et GND-B)=0 => BOTH
D-E=1 => START
Problème, si je commence remettre mon nez dan le simu, je n'ai pas touché à SIOC depuis plus de 10ans, autant dire que j'ai absolument tout oublié...
Mais ma stratégie de câblage va dépendre de ce que je vais pouvoir faire comme code pour l'interfacer.
Alors je sollicite ceux qui ont encore un cerveau qui ne formate pas les données qui ont plus de 5ans...
Voilà l'idée:

Evidemment ça n'est pas un "simple" commutateur 5 positions avec une masse et une "patte" par position, c'est un peu plus tordu (et rien ne dit que ce soit parfaitement fonctionnel).
A priori j'ai repéré le GND, au centre.
-Position "OFF":
GND - A = 1 (continuité entre GND et borne A)
GND - B = 1
GND - C = 0 (pas de continuité)
-Position "L MAG":
GND-A = 0
GND-B = 1
GND-C = 0
-Position "R MAG":
GND-A = 1
GND-B = 0
GND-C = 1
-Position "BOTH":
GND-A = 0
GND-B = 0
GND-C = 0
-Position "START" (momentanée)
GND-A = 0
GND-B = 0
GND-C = 1
(D - E = 1)
En gros le petit point embêtant c'est pour le start. On voit que je pourrais utiliser GND-C, mais le problème c'est que GND-C est aussi = 1 sur la position "R MAG"
Es-ce que c'est contournable dans le code en disant en posant des conditions du style:
Si GND-B = 1 et GND-C = 1 Alors RMAG, mais pas de START
Si GND-C = 1 et tout le reste à 0 Alors START.
Sinon j'ai repéré que D-E =1 uniquement au START
Je pourrais donc utiliser D en un autre GND (ou même relier les 2), ne pas utiliser C mais utiliser E juste pour le START.
C'est peut être plus simple pour le code?
En gros ça me ferait:
(GND-A et GND-B)=1 => OFF
GND-A=0 et GND B=1 => LMAG
GND-A=1 et GND B=0 => RMAG
(GND-A et GND-B)=0 => BOTH
D-E=1 => START