Week 13
Goal
For this week, I wanted to develop a front end for my final project.
Development
I decided to use tkinter for its simplicity.
One of my goals for the semester was to start leveraging LLMs in my work more.
The few attempts I had made had left me disappointed,
but I figured for something like this, the LLMs should be very good.
I asked ChatGPT.
My prompt and its response can be found
here.
I have some personal issues with the coding style,
but it worked pretty well!
I cleaned up the code a little bit to my liking.
Then I added a speed-to-delay conversion,
using the minimum delay in microseconds I had found in my stepper motor exploration.
Finally, I used pyserial to pipe this delay to the dongle
(running the main firmware).
I left the serial port as a user-supplied argument.
Any time the user changes a value (using the slider, or the text box),
a new delay value is written to the dongle over serial.
The dongle then sends that values to The Luggage using the nRF24L01+,
and the firmware on that side uses the value to set a delay for the stepper controller,
thereby setting the speed.
The final product can be found here. Some screenshots:
Future Work
I wanted to write my final interface in Rust using eframe.
Because by the time this week came up I was focusing on my final project,
the work fell victim to my demand-side time management of that project.
I have included Future Work for most weeks,
but for this one, I do intend to circle back to it very soon –
just as soon as I integrate the large box for my final project!

