2020-01-24 (F) Weekly Summary

I changed some of the hardware to match what will eventually go into the badge, but it was similar enough to what I was working with that I did not need any revisions to the code. The change allowed me to access the pins used in SPI communication so I could talk to a color screen. After I got a demo program running, I was able to print color-coded values based on the sensor reading.
Good news about the color display

I started a pin assignment list to help with the schematic layout, and during that time, I remembered that I wanted to add buttons. I wanted the buttons to act like a gamepad, so a couple of switches to one side would act like gamepad buttons, while four others would serve as the directional pad. I wanted to add a disc above the buttons that would look and act like a D-pad but one that can attach through a hole in the PCB. The control cap may end up being as simple as a screw passing through a standoff, but I will probably need a prototype board before I can experiment.
Direction pad idea

The pin assignment list quickly became unruly. I kept forgetting mental notes about why particular pins needed to go one place, and couldn't go to another, only to I forgot which pins I was supposed to remember. Finally, I created a spreadsheet to arrange assignments with notes and colors fluidly. I used this day to figure out the necessary pins for the SAO ports.
Pin assignments

I started the schematic with a footprint for the ESP-WROOM-32 module, a header for the screen, and six buttons. The D-pad described above will use 6mm*6mm tactile switches, and the game buttons will use 12mm*12mm*7.3mm buttons with caps. All of these parts were wildly inexpensive.
Start of the schematic with ESP and screen module

The schematic kept growing with the passive parts. SAO ports were a couple of GPIO points, 3.3V power, and I2C port pins. I decided to start with four copies, two for the face, and two more for the sides, which will require right-angle header pins. At my discretion, I added an analog output from a DAC pin for audio, even though it may never get used.
Diagnostic tools on schematic

I purposely started with undemanding devices that had standard footprints and did not need much more than a connection directly to the microcontroller. The buttons had pull-up resistors, the SAO ports had protection resistors, but little passives were simple. The LEDs needed a little research to see what kind of filtering they required. I placed a small capacitor for each light and a filtering resistor on the data line. The power circuit will be more complex, and the communication should be the worst.
Addressable LEDs in schematic

The rest of the summary posts have been arranged by date.

First time here?

Completed projects from year 1
Completed projects from year 2
Completed projects from year 3
Completed projects from year 4
Completed projects from year 5
Completed projects from year 6

Disclaimer for http://24hourengineer.blogspot.com and 24HourEngineer.com

This disclaimer must be intact and whole. This disclaimer must be included if a project is distributed.

All information on this blog, or linked by this blog, is not to be taken as advice or solicitation. Anyone attempting to replicate, in whole or in part, is responsible for the outcome and procedure. Any loss of functionality, money, property, or similar, is the responsibility of those involved in the replication.

All digital communication regarding the email address 24hourengineer@gmail.com becomes the intellectual property of Brian McEvoy. Any information contained within these messages may be distributed or retained at the discretion of Brian McEvoy. Any email sent to this address, or any email account owned by  Brian McEvoy, cannot be used to claim property or assets.

Comments to the blog may be utilized or erased at the discretion of the owner. No one posting may claim property or assets based on their post.

This blog, including pictures and text, is copyright to Brian McEvoy.