Help accessing I/O

I’m brand new to ABB robots, Robotstudio, & PC SDK. I’m working on a test application to read or write digital I/O states. I can log into a controller and find some of the Buses, Units, and Signals, but the i/o I’m interested in accessing (on devicenet) doesn’t show up with these instructions:

IOFilterTypes aSigFilter = IOFilterTypes.Digital;
SignalCollection signals = controller.IOSystem.GetSignals(aSigFilter);

Calling
UnitCollection units = controller.IOSystem.GetUnits();

returns System, PANEL, and DRV.

And reading the buses, my devicenet bus also doesn’t show up. I can see the i/o’s from the flexpendant and Robotstudio, so I know they’re there!

So how do I use PC SDK to read devicenet (or any fieldbus) i/o?

Thanks!

Update: I can access my devicenet I/O now. Not sure why it wasn’t working earlier.

New Problem: Input states are always returned as 0, signal.Value = 0.0 and signal.Get() always returns 0. I can see the value change in RobotStudio.

Any ideas?