potřeboval bych od zdejších guru trošku pomoci s problémem. Mám na stole projekt na ovládání turniketu včetně počítání osob. Technicky je ovládání turniketu vyřešeno (pomocí RFID čipu). Turniket má 5 RPi 3B(2x vchod, 2x východ a "polikač karet) a je ovládán přes seplé relé. Čtečky jsou připojené přes UART (+ bižuterie okolo - převodníky UART na 485 kvuli délce, diagnostické diody, pípak...). RPi komunikují se serverem přes API, který vyhodnocuje možnost průchodu a posílá zpět na RPi informaci, zda uživatel může projít, či ne. Poté je hlídáno "rameno" turniketu, zda člověk skutečně prošel, nebo se někde "zakecal" a turniketem neprošel. S tímto problém zatím nemám.
Problém nastává trochu s logikou. Pokud na 1 RPi někdo čipne, potřebuji zablokovat načítání čipů na protější RPi (aby se lidé v turniketu nesrazili čelem

Tak sem se trochu rozepsal a teď k problému. Pokud mi vypadne LAN, tak toto mám ošetřené. Pokud ale protější RPi restartuju, tak mi nastává chyba "Broken Pipe" a nejsem schopen se z ní "nějak" vymotat. Problém je pravděpodobně v tom, že než RPi zdetekuje, že je protější RPi off-line, tak tam vlítně ještě nějaký dotaz na stav pinu a ten už není možné vyřídit a celá komunikace se rozsype.
Dá se nějak v GPIOZero uzavřít navázaná komunikace a znovu ji sestavit? Nebo Broken Pipe nějak jinak ošetřit? Pokud někomu pomůže python kód, tak mu ho klidně zašlu, ale má cca 800 řádků a sem ho asi nemá smysl dávat...
Za jakýkoliv nápad děkuji