Přenosový modul O3ENetbus

Původní myšlenka zachovat pro kompatibilitu ethernetovou komunikaci Modbus vzala za své. Důvodem je jistá neobratnost tohoto protokolu. Jednak přenáší délkou dosti omezené datové bloky, druhým důvodem je jeho zapouzdření v TCP paketu. TCP komunikace sice doručuje paket "za každou cenu", odvrácenou stranou mince je však skutečnost, že nikdo neví kdy a v jakém pořadí.

Proto byl vytvořen originální O3ENetbus, který ctí nároky na přenos dat velmi rychlých technologických celků. Textové zprávy jsou v něm originálně zakódované a binární pakety stejně nikdo nedešifruje. Základem komunikace je UDP paket, který nepodléhá manažeru TCP. V tempu stroje O3mach je důležité, aby datový paket dorazil v co nejkratším čase. Pokud se tak nestane, je na cestě další, "novější". Kromě archivace, jejíž opětovné doručení může přechodně počkat, je "starý" paket pro dispečink a vizualizaci již bezcenný.
Poměr délky přenášených dat v jednom paketu je 250:1470 slabikám (Modbus:O3ENetbus). Z toho je zřejmé, že Modbus si svou existenci v systému O3 opravdu nezaslouží.

Existence ENetbus zapadá do celkového kontextu rychlého měření, uchování a přenosu dat. Měřená data jsou uchovávána v kruhovém bufferu paměťového segmentu. Pro jejich přenos v reálném čase je použit vždy časově poslední záznam. Záznamy předchozí jsou zachovávány pro "reklamaci" komunikace, neboli doplnění datových záznamů do případného archivu, který spravuje dispečerský či vizualizační systém v PC. Archivní záznamy udržuje vizualizační komponenta grafického vývojového prostředí a programátor nemá s touto činností příliš starostí.

Zvláštní funkci mají souborová data přímo v O3mach. Tato se udržují v paměťovém segmentu a v případě výpadku napájení se zapisují do Flash paměti. Přístroj má dostatečnou kapacitu zalohovací baterie aby stihnul data uložit i do pomalé Flash. Po obnovení napájení se přečte celý souborový záznam do paměti. Do datových souborů (může jich být několik) se zapisují nové záznamy "na konec" kruhového bufferu. Ty uchované lze po výpadku zpětně přečíst, aby se zjistily všechny možné následky výpadku, protože poslední data již nemohla být doručena. Toto zpracování výpadku rovněž ošetuje komponenta vývojového systému.

Další komponenta řeší situaci tak, že soubor po výpadku přejmenuje na archivní a v reálném čase spravuje úplně nový soubor. Tato situace však obnáší dostatečnou kapacitu Flash, která není nekonečná. Programátor také může zajistit kopii souboru na paměťovou SD-kartu. Kopie souboru na tuto se provádí buď v idle-cyklu (původní soubor je uchován v externím paměťovém segmentu RAM, která je mnohonásobně větší než Flash), čili v čase, kdy program zpracuje scan a čeká na další naměřené údaje. Je však nutné odladit, zda v jeho programu zbývá nějaký Idle-time, případně připustit odložení zpracování dalšího scanu o několik desítek mikrosekund, jež jsou nutné pro přenos bufferu na interface karty. Může také použít Force režim, kdy je měření a ovládání zastaveno.