( bucko | 2019. 09. 09., h - 10:40 )

Ebből néhány órajel-impulzussal ki lehet hozni.

Sajnos ennél sokkal rosszabb a helyzet. A több bájtos parancsoknál a néhány órajel csak az adott bájtot teszi rendbe. Pl. egy vagy több cím bájt esetén (eeprom címzés, modbus) az eszköz nem mindig felejti el a "kályhát". Ilyenkor marad a valódi reset, vagy a sérült protokoll befejezése és eldobása - ami bonyolítja a helyzetet.
A másik eset, amikor az eszköz eleve nem válaszol egy ideig, pl. eeprom írás.

Ezeket ez eseteket elsősorban az adatlapon leírtak pontos megvalósításával lehet megoldani. Az általános szoftveres megoldás nem minden esetben elegendő. Ilyenkor a busz művelet elemeit - akár a szabványtól eltérő módon - egyedileg kell meghatározni.

Jó példa az AM2320. Ez egy i2c + modbus eszköz, de tartalmaz két olyan időzítést, ami nem szerepel a szabványban. Az rpi-re megírt lib alapú driver kiválóan működik. Az rpi más órajelű verzójával meg kiakad. Nyugodtan állíthatjuk, hogy az első eset hibátlan működése csak véletlen volt. ;)