Was wondering if the source code exists anywhere for the NI Shared Libraries such as libFRC_NetworkCommunication.so in GitHub - wpilibsuite/ni-libraries: Houses the NI Libraries for WPILib building.
We have been doing a research project learning more about how the driver station and robot talk to each other. There has been many things discovered to date, and we see commit messages about changes to how the robot code handles call backs on the arrival of new data and how that is copied to different buffers for handling.
But in network traces we see data packets we have not been able to ID yet. Hoping the code exists so we can understand a little more the startup sequence (get date / time) and the packet we see on a regular basis back from the robot we don’t have a mapping too.
Any leads would be appreciated!
Randy
I’m 99% sure the NI-provided libraries are closed source.
However, others have done investigation on the protocols. This site has some info from 2020 that should still be relevant.
Thank you. Had not found that site yet, that helps me on one of the unknown packets :-).
Hopefully it is still not closed source, but I was afraid that might be the case.
Randy
They are all still closed source.
For netcomm itself, it is a black box and theres no public documentation for it.
For chipobject, which is the FPGA library, theres nothing special in there. Its just a wrapper around the FPGA registers,. The FPGA itself is a black box, but theres actually very little special it does that can’t be easily extrapolated.
Thank you! So when the refactor was done on the data packets inbound from the driver station was that done completely in WPILIB, or was that done in conjunction with changes by NI in the core netcomm library?
NI does all the netcomm changes, but we can work with them for what changes we need, so they were things we asked for.
1 Like