Output week was messy. The assignment was to add an output device to a microcontroller board and program it to do something. I did not start from scratch this week. I leaned on a previous screen assignment and treated the screen as the output. The screen is simple and brutally honest: it either shows something, or it does not. No ambiguity.
During office hours, Anthony showed us how to solder the Seeed Studio XIAO RP2040 onto the PCB. I soldered for the first time. It was finicky - I added two 1001 resistors and a screen. I named the board Simon.
The goal was straightforward: get the board to output text. Using ChatGPT, I wrote a program that flashes: Simon says: helloworld across the screen. This is the smallest possible proof of life. It counts.
Errors en route were predictable in retrospect. When I first plugged the board into my computer, the lights did not flash, which meant the computer could not read it properly. During office hours, it turned out I had short-circuited two GPIO pins, and it was visible on a quick one-over. My cable was also faulty, so even when things were โright,โ nothing loaded reliably.
I also lost time to bootloader confusion. The move is to hold down the tiny B button while plugging the board in so it enters boot mode and shows up correctly. It is a very small ritual for a very large amount of relief.
Group Assignment
Group assignment:
measure the power consumption of an output device