GUI Programing Part 1

A project log for Ultra Servo V2.0

The intent behind the Ultra Servo is to give a maker or a robotics a powerful building block.

patchartrandpatchartrand 08/09/2019 at 02:390 Comments

I decided that the best way to interact with the servo is to have a dedicated application. I did toy with the Idea of the user changing parameters in the Arduino sketch and re-uploading it to the servo. That's not a real polished product and will deter some hobbyists from the product. So I started to build the interface to read/write settings. Here is a screenshot of the GUI

The user can select read/write/perm.write for any of the settings. The difference between write and perm.write is how it is handled in the Arduino. The write changes a volatile variable only (will reset at startup) and the perm.write changes the volatile variable and the EEPROMPT variable. This was done to give flexibility to change a parameter multiple times without "wearing out" the EEPROMPT storage. This is particularly useful when using the servo in a robotics application that a master computer may change the PID gains multiple times per second.