@kvk and @JuliaTruchsess Thank you both for your insights. Much appreciated both here and in your contributions elsewhere in the forum.
Blinky follow-up:
Both the DIP and 8SOIC are NE555 from Texas Instruments. Min voltage 4.5V.
I did not rigorously check, no. I had built the blinky circuit before I came across the AoE passage, wanted to check something, and turning the voltage knob lower was easiest.
On to the next board and chasing different (and hopefully more useful) ghosts!
Moving on to CE Header and CE Sensor.
The CE Header is a great idea. Following previous students comments (Thank you @Steve_Mayze ) I created both a socket and header footprint. There are already some good writeups on troubleshooting this board.
Based on previous students experience, I wanted to make the board bigger so it was easier to probe. And while doing this, decided to put both a header and a socket on the same board. I thought perhaps I could connect two sensor boards to one header board, if the sensors that I wanted to use were on different boards. This was also my first introduction to the Teensy, and I used the Teensy 4.0.
There were a couple of pins on the header not populated, tempting me to find something else to connect. I added a couple stretch objectives. Since the sensor board measures temperature and light already, I decided to try and add a microphone for sound. I also wanted some experience with hidden pads and with op-amps.
I selected on an analog microphone, the Knowles SPQ1410HR5H. The low bar goal here is to get the Teensy to detect if there is sound or not. No signal analysis.
The microphone has 4 hidden circular pads, two of which are ground, so thought maybe I could get this to work. The microphone output is connected to a LM358 which is a dual-channel op-amp. The circuit comes directly from the suggested interface circuit in the SPQ1410HR5H datasheet. I left the 0805 resistor values TBD, and put in plenty of 0Ohm resistors to be able to connect and disconnect parts of the circuit. Here is the final version of relevant schematic snippet:
Here is the layout and 3d model of my version of the Teensy Breakout:
Here is the Sensor board (Note: U4 is the microphone.)
I won’t share all the ghost chases, but will share the setup that I used. I built up one sensor board with everything populated, and then used another sensor board to populate only the microphone and associated components (see bottom board below). I used 30AWG hookup wire and soldered this to the leads of the microphone to their respective pads so I could see them to make sure I had good (relatively) connections. Then during testing, I could verify that the output of the microphones were the same between boards, and do the majority of resistor swapping on the test board, then transfer the final resistor selection to fully populated board.
The Results:
With Chris’s guidance, and reading through previous students work I was able to get all original circuit sensors to work. The stretch objectives were more difficult, and I had to go between board, simulation, and testing quite a few times. But I was able to get the microphone to pick up sound, and get the signal into the Teensy.
When the music stops, the sound signals settle to ~1.65V. The snippet of code that is shown - type “k” to get the chasing LEDs.
Mistakes:
-
While troubleshooting the boards, I reread the datasheets and noticed the Knowles SPQ1410HR5H datasheet design guide says not to use Class 2 dielectric capacitors near the microphone. The KEMET X7R ones that I used (C5 and C6 in schematic above) are Class 2. I used these because they are used elsewhere and when constructing the layout, copied them over. The datasheet and design guide do not go into detail about what size or type capacitor to use, so I started looking for an acceptable replacement. And, as I sometimes have a propensity to do, went off into the weeds. Then circled back. The capacitors “worked” for what I was trying to achieve. However, if doing this circuit again, would do a better search for these capacitors.
-
I put two zero ohm resistors on the bottom of the Teensy Breakout board, in case I messed up TX and RX. These were the only two components on the backside, and I put them there because I didn’t want to put them under the Teensy. After building up the boards and starting testing there was no communication. Yep, I forgot to turn the board over and populate these. I bring this up because…adding components that are supposed to mitigate problems should not cause problems. I will probably continue adding these in the future, but be more aware of where I place them.