If you use the LabJack T4, then they use a unified LJM API and the same code works well cross-platform. I use the T4’s very cool ability to run code (it has a Lua runtime and can run a command-response server), so that I can send commands asynchronously from PTB and let the LabJack deal with any timing (for example if one uses a variable-length TTL to control a reward system). See the details on the wiki:
For the LabJack U3/U6 they use the exodriver on Linux/macOS and I also share some code for that, but on Windows they use a different driver and I never bothered to work out how to access it.
I assume that an Arduino would also work just as well and would be cross-platform, and I have some code to handle that too:
I found super fast and low variability command-response times with PTB’s IOPort and the legacy hardware interface from Mathworks: Serial port interface code -- a performance comparison
xiangrui’s RTBox should also work well cross-platform, but I think you already have a LabJack?