░ ░░░░ ░░ ░░ ░░ ░░░░ ░░░░░░░░ ░░ ░░░ ░░░ ░░░░ ░░ ░
▒ ▒ ▒ ▒▒ ▒▒▒▒▒▒▒▒ ▒▒▒▒▒▒▒▒ ▒▒▒ ▒▒▒▒▒▒▒▒▒ ▒▒▒▒▒▒▒▒▒▒▒ ▒▒▒▒▒ ▒▒▒▒▒▒▒▒ ▒▒▒▒ ▒▒▒▒▒ ▒▒▒▒
▓ ▓▓ ▓▓▓▓ ▓▓▓▓ ▓▓▓▓▓▓▓▓▓▓▓ ▓▓▓▓▓▓▓ ▓▓▓▓▓ ▓▓▓ ▓▓ ▓▓▓▓▓ ▓▓▓▓
█ ██ ██ ████████ ████████ ███ █████████ ███████████ █████ ████ ██ ████ █████ ████
█ ████ ██ ██ ██ ████ ████████ ██ ███ ███ ████ █████ ████
At first, I wanted to do something with a thermistor whose readings would be visualized on a NeoPixel. But that would be an analog device, and seeing as I haven't done even a digital, I²C yet, I thought that'd be more achievable. Also, I couldn't find a footprint for the thermistor we have, so Instead I decided to go with a ADXL345 accelerometer, which supports I²C and also had a footprint downloadable from digikey.
This was my first schematic that I designed for this. But it turned out, after looking at the specific esp32 devboard we have been given, the pins are in a much different order. So I had to edit the symbol in kicad and rearrange my schematic. I also had to redo this after my first board cutting attempt because I somehow miscounted the pins. The final schematic turned out like this:
This part wasn't that hard to fgure out despite having to redo it after editing the schematic pin order. I made my traces 0.4 mm for the most part. There was one difficulty however. The way the ADXL345 and the esp32 have their SDA and SCL pins ordered makes it impossible to route them without crossing over one another. so I put a zero ohm resistor as a bridge over the traces.
I cut three boards for this assignment and none of them worked. I would have done more but I ran out of time. The first board I cut was entirely due to my own oversight in design. The footprint for the esp32 I was using had an incorrect number of pins. So I had to edit that in KiCad and try again.
My second board would have been perfect except at the last second of cutting it came away from the spoilboard and got stuck on the bit, causing the trace between power and the I2C pullup resistors to be severed.
(I forgot to take a picture of this one before soldering but it basically looks the same as the first board except it has less pin holes for the esp32.)
The last board I tried suffered from poor engraving quality, causing the traces to be shredded and unusable. I assume the bits were worn at this point though they seemed okay when I checked them before starting the job.
Out of my boards I thought the second would be the most likely to be salvagable, because it was really only ruined on that once trace.
Soldering the smd devices with the paste and NeoDen went fine and I soldered the pins onto my new esp32. Then I soldered the female header
onto the NeoPixel side of my board and had the realization that my board wouldn't work as intended even if it had come out perfect because I forgot
to account for the flipping of the esp32 pins on the other side. Awkward. But oh well.
I did try very hard to bridge the gap of the cut trace, first with two different types of wire, and then with just pure solder, but I could not get it to work
with any method after about an hour of trying. It was probably something that was wrong with my technique but like I said it wouldn't have mattered anyways because
my pins were flipped.
Despite my blunder I did think that if I had wired everything correctly, the NeoPixel side of my board should still work if I moved the esp32 on the other side of the header. Upon testing it it does work! So this is my first time attempting to use a neopixel, and it turned out successful. So at least half of my board works as intended.
All in all I had a lot of frustration this week, especially because I feel like I was very close to a maybe working board(?) But I could not stop messing up for the life of me. While I didn't have time to cut another board before class on Tuesday, I did redo my layout to account for the flipped position of the esp32, so assuming the carvera cut it cleanly, this one would actually work (i think).