Week 8: Input devices
Created | |
---|---|
Tags | Electronics PrototypingXIAO |
My job would be made a little easier with the XIAO ESP32C3 dev-board I created in week5. I could directly connect a few inputs and outputs to the board to prototype the system before designing the final schematic on Kicad.
While I figure out how to fabricate one of these on my own by next week, I instead decided to interface another cool input device with my controller - a joystick!
I faced a lot of issues with programming my board this time. Sometimes uploading the code to the controller would fail, saying failed to upload: no serial data received.
Whenever this happened, I learned the long way that I needed to hard reset the board by pressing down the BOOT and RESET buttons at the same time and then connecting the USB-C cable to the board.

After figuring that out, I did not get any data from the joystick on serial. Testing with a multimeter, I noticed the 5V pin on my board had no voltage.
With some more testing I realized that the 5V pin on my XIAO did not have a electrically valid connection to the 5V header on the board. When designing, I ran the traces for the 5V pin underneath the board, so my guess is the trace below the board had broken somehow. Since I couldn’t check or fix this trace, I instead decided to just solder a jumper to the 5V pin on the xiao so it is usable. Ugly, but usable.
Finally I was able to get X, Y position data from the joystick. Hurray!