A driver program feladata, hogy kapcsolatot tartson a hardver és a vezérlő program(ok) között, úgy, hogy elfedje a
viszonylag bonyolult hardverkezelési protokollt, egy egységes és egyszerű kezelő felületet biztosítva a vezérlő
program írójának. A driver a vezérlő program felé két interfésszel rendelkezik. Az egyik az IO interfész, amin OUT parancsok
és INPUT updatek közlekednek, a másik a CEI interfész amin vezérlő parancsokat adhatunk a hardvernek, és amin információkat
és hibajelzéseket kapunk vissza. A legegyszerűbb és a leg szoftver és oprendszerfüggetlenebb interfész szerintem a
TCP/IP ASCII TEXT. Ez megnyitja azt a lehetőséget, hogy a most egyelőre csak W2K, WXP oprendszereken futó driverhez
bármilyen más oprendszerből kapcsolódhassunk különösebb nehézségek nélkül, az az például egy a munkahelyünkön futó
REDHAT LINUX-ból python-ban írt script segítségével becsukhatjuk otthon a garázskaput. A TEXT interface-nek persze van egy
hátránya is, mégpedig az, hogy a szövegekben levő információkat parszolni kell, és ezután az adatokat még valódi számmá
is kell alakítani. Ez azonban minden programozónak a saját kedvenc programnyelvén történik, így valószínüleg nem okoz
majd semmiféle nehézséget.
A driver program nemcsak az interfészeket biztosítja, és a kezelést egyszerűsíti, hanem egy ablakot is kitesz a képernyőre,
melyben a hardver vizualizált képe látható. Itt a kártyákon nem csatlakozók vannak mint a valóságban, hanem ki és bemeneti értékek.
A digitális csatornák LED szimbólumokkal jelzik az állapotukat. A motorok sebességei a szervók kitérései pedig százalékos
számértékekekel kerülnek megjelenítésre.
A ci4adrv.exe nem klasszikus értelemben vett windows driver, még nem is service, így a vezérlő program futtatása elött kell elindítani.
Indítás után megnyitja az IO és a CEI interfészt, majd felveszi a kapcsolatot a hardverrel,
ekkor lekérdezi, hogy milyen kártyák melyik slotba vannak bedugva. Amint a hardver lekérdezése, az input scannelés és egyéb paraméterek
beállítása megtörténik, a driver kész az adatok küldésére és fogadására. A drivernek van az
alsó toolbar-on egy animált trayicon-ja, amelynek segítségével az ablakát rejthetjük, vagy elővarázsolhatjuk, illetve
kiléphetünk belőle. A driver státuszbárján mindig kiírja, hogy az adott pillanatban milyen állapotban van. Ha akarod a
program debug logot is ír, amiből a működésre vonatkozó további információkat nyerhetsz ki. A program ablakát a
képernyőn tetszőleges helyre tolhatjuk, ezt a helyet illetve a kilépéskori rejtett állapotát a kilépés után is megjegyzi.