When I try to read the FIO2 register using LJM.eReadName I can watch the configuration in Kipling change from Output-low to Input-high. The second time I read FIO2 using LJM.eReadName the value returned is high. I do not understand why anything is changing with a read. What am I missing? All the FIO0-7 do the same thing.
Reading the DIO/FIO/EIO/CIO/MIO registers will automatically configure the respective IO as input. There is a weak (100kΩ) pullup to 3.3V on the inputs, that should be why the channels are reading high.
To read the state without modifying the direction, you will need to use the bitmask registers. Additional information can be found in our DIO documentation:
http://labjack.com/support/datasheets/t-series/digital-io#bitmask
Thanks for your quick response. The bitmask registers solved the problem.