GUI:
GUI is now compatible with PyQt6 and Python 3.10.
New GUI settings dialog.
Required device driver files are now automatically transferred to the pyboard when a task or hardware definition is uploaded.
Pyboards can how be hidden so they do not show up in board select GUI menus by naming them _hidden_ in the setups tab.
Hardware definition files are now stored in a hardware_definitions folder not the generic config folder.
Various small improvements and bug fixes.
Framework:
Major refactoring of framework code to make it simpler and more readable.
Analog inputs now stream data to the computer continously while the framework is running rather than having record and stop methods to start and stop data streaming.
Events triggered by timers are now output to the data log by default.
Removed decimate argument from digital input as it was not used in practice.
Added Frame_trigger device class for triggering camera frames as a specified frequency and recording the frame times to an analog data file.
Added uRFID device class for controlling Priority 1 Designs RFID module.
Added print_variables function for printing variable values to the data log as a json formatted string.
Data import: