EOL/RAF code to control the NAI iPM and send UDP packets to nidas. Main program can be forked by nidas dsm process or run standalone.
This code can be run four different ways: from nidas, or from the command line with a menu, specifying an address and command, or free running as would be called from nidas.
To run from nidas, use the ipm.xml file in this directory as a template to add the iPM to the project xml files. Download and install this software to the DSM where the iPM is mounted, eg git clone this repo, "scons", and "scons install". Then when dsm_server is started, it will launch this code, initialize the iPM and send commands as configured in the XML.
To run from the command line, login to the DSM where the iPM is mounted, and enter one of the following command line patterns:
"ipm_ctrl -m
"ipm_ctrl -b
"ipm_ctrl -b
"scons" will build ipm_ctrl
To run with the emulator,
"python3 emulate.py"
and append -e to the above command. The emulator responds more slowly than the iPM. The -e increases the timeout period.
This software uses googletest for unit testing.
"scons tests" will build the tests. "tests/g_test" will run the tests.
To deploy the code via a dpkg, run "./build_dpkg"