I want to make something that will light up when my coffee cup is warmed. What would happen if a flexible PCB, 8 bit micro controller, some LED's, a coffee cup and some code were combined? The Photo to the Left is just a place holder.
Components
9×
WS2812B
Single Wire Serial LED - Will add more if they fit.
Wrote some code to bit-bang the control sequence, but nothing was happening.
Turns out the delay statements I was using were causing too much of a delay.
In googling the problem, I found a blog post on Steve Phillips website. see http://stevephillips.me/blog/using-ws2812b-pic-microcontroller I saw he was just using a few NOP() functions which tells the microcontroller to do nothing over the next few cycles.
Got most of the components. Waiting for the resistors and capacitors.
Ordered metric 0603 components instead of 0603 imperial components. Ops. Moral of the story don’t trust the metric system. ???
All the tools needed to make a good prototype board The soldering Iron is a Weller WM 120. It’s only 12 Watts but it’s great for surface mount and even some through hole components.Defiantly needed the fine tweezers and Flux to help flow the solder where it belongs.Now on to the coding.
Two weeks ago I completed the first revision of the board and was not happy with how it turned out.
First there were only 3 LED's on the board, which is OK, but I wanted more LED's.
Second, the LED's lowest supported voltage was 3.5V and the Temperature sensor chip I originally chose required a 3V power supply. Having two different Voltage levels required me to use a I2C logic level shifter and a LDO for the 3.3V supply.
For the new board I chose a smaller Microcontroller, as well as a different Temperature sensor.
I added pads so that the multiple strips can be wired together. the pads should also be compatible with standard WS2812B Strips.
For the New temperature sensors I chose the LM75BDP,118 from NXP because they were a good size and they used I2c.
I Chose PIC16F18426-I/ST as my processor because it was in a nice small package.
Lots of Fun work today. The Datasheet for the LED's appeared to recommend filter capacitors on the data line so Those were added. A Pin is placed on each side of the string so the boards can be designed to be daisy chained to add more LED's I want to add more LED's to the string and will do so if there is enough space. Wired up the Temperature sensor. The data sheet for the sensor also recommended a filter capacitor on the data line.
Also Added a 3V Regulator so the whole board runs on a single 5V Power Supply.
The Resistors and Capacitor on the Left of the microcontroller were recommended by Microchips datasheet for the PIC18F25K80. I chose this Microcontroller because it had a broader temperature range and a fairly small footprint.
I learned how to use git today and added a Repository on git hub for the code and board files.
Used Mouser's free Library Loader to create a package outline for the MCP9904T.
The website for Library Loader is https://componentsearchengine.com If you particular editor does not have the components they will have them or they have a form to help generate one using values from the data sheet.
I am using KiCad, but it also works for Eagle, OrCAD, Altium, and several others.
Found some good articles on driving the WS2812B LEDs.
Is this design for the Flexible PCB Contest? You could design it, and enter your design for a free flex. https://hackaday.io/contest/163267-flexible-pcb-contest