What would it take to build an addressable LED like the WS2812 (aka Neopixel) using only discrete transistors? Time for a small “1960 style logic meets modern application” technology fusion project.Continue reading “The TransistorPixel”
Flashing a LED is certainly among the first set of problems any burgeoning electronics specialist is tackling, may it be by using an ancient NE555 or, more recently, a microcontroller to control the LED. As it turns out, we can turn any trivial problem into a harder one by changing its constraints.Continue reading “Ultra Low Power LED Flasher using the Padauk PFS154”
Two years ago I took a deeper look into the APA102. Although it was more expensive than the common WS2812, and harder to come by, it had some intriguing properties. The main benefits are a timing-insensitive SPI interface, allowing easy interfacing to standard periphery, and a much higher PWM frequency of >19kHz, making the APA102 almost flicker free.
So much about that. Considering how things with LEDs from China go, it should not take too long for clones to appear? Indeed! Recently, several comments showed up on my blog, reporting about issues with APA102 LEDs they bought. It quickly turned out that these were SK9822, APA102 clones from the same company that already brought the SK6812 to us, a WS2812 clone.
One of these people was Mike. He developed the Weblight, a WebUSB controlled RGB LED. The prototype (shown below, red pcb) worked well, but when he commissioned a small production run (black pcb), the LED started to show odd update behavior. Mike was nice enough to share a couple of boards with me for further investigation.
Yay, another mini-project with the ATtiny10!
A while ago I devised a scheme to drive an electronic dice with only two IO lines. I finally found the time and motivation to build up a small design using this as an entry for the hackaday 1k compo. Please find project details on the hackaday.io page or the github repository.
The ATtiny102 and ATtiny104 are Atmels newest addition to the AVR ATtiny family. They are a bit different to most of the other devices in that family, since they are based on the AVRTINY CPU core, which was so far only used in the ATtiny4/5/9/10/20/40. I have previously done several projects on the ATtiny10, so I was naturally excited to see another addition to this family. Both new devices are clearly targeted at the lower end, with only 1kb of flash.
Two interesting new features compared to the ATtiny10 are self-programming capability and an integrated UART. Naturally, this asks for a serial bootloader. Since no bootloader is available for this device I set out to work to work on one.
The current state can be found at the Github repository linked below.
Right now it is able to upload and execute user programs on ATtiny104 and ATtiny85, but it is far from being optimized. I stopped working in Gluon for various reasons, but may be picking it up again at some point.
During the last months, a new WS2812 alternative appeared on the market: The SK6812. I finally managed to get my hands on some of them to take a closer look. In most aspects these devices are basically clones of the WS2812. What is interesting however, is that the manufacturer came up with a couple of new variations of the stock 5050 RGB LED.
As with many components from mainland china, it seems very difficult to identify the actual manufacturer of these devices, as vendors tend to rebrand data sheets. It appears that at least one of the original manufacturers is Opsco Optoelectronics. However, it is likely that there is more than one manufacturer is using the SK6812 brand, which does possibly only refer to the controller chip itself. The “SK” prefix, on the other hand, is normally used by Shenzhen Sikewei Electronics, which seems to specialize on speech ICs and similar low-cost applications. Are they connected? No idea…
The WS2812 RGB LEDs with integrated controller are fairly successful devices that come in a variety of packages. Recently, similar devices by other manufacturers started to appear.
I managed to get my hands on a few samples of LEDs with PD9823 controller, courtesy of Soldering Sunday, and was able to subject them to more scrutiny. The manufacturer of the IC seems to be “BaiCheng”. You can find it in several LEDs with different package types. There is a single page “datasheet”, linked here, but little else is known to me.
The given timing values are, again, completely different from any other device. So are these really compatible to the WS2812? Only one way to find out: I used the same setup to extract the timing as described earlier for the WS2812. You can find the results below.
Possibly the smallestest ATtiny85 based ‘duino derivative.
Recently, Olimex anncounced the Olimexino 85s, claimed to be the “World’s smallest Arduino ever“. Now, that looks like a challenge. I guess it is about time to show off what has been on my desk since some time last year: The Nanite, pictured below.
I recently received an external USB battery as a promotional gift (see image below). While I always thought of these as a superfluous gimmick, I realized that these devices could be quite useful as mobile power source for various projects. After all, dealing with lithium ion batteries in your own projects can be dangerous and you need additional circuitry to ensure charging and voltage conversion.
External USB batteries can be charged with a normal micro-b USB charger and are supposed to output stabilized 5V at above 1A. And they come fully integrated at a price point where it is difficult to get even the battery alone. See Aliexpress for example and many others. Since there is little reason to trust hardware at this price point, I decided to tear the device down to see whether all the necessary parts are there.
I previously reported on reverse engineering a candle flicker LED. My approach was to extract the “flicker” pattern from the input current variation and to deduce the algorithm from statistical analysis.
Reverse engineering the controller chip
Of course there is another, more involved, approach. And that is to reverse engineer the circuit directly from the die. Andrew Zonenberg from Siliconpr0n decapsulated and imaged the controller chip from one of my LEDs. You can find his report here.
He managed to obtain very high-resolution optical microscopy images of the top-level metal. It turns out that the controller chip is manufactured in a relatively coarse CMOS process with one metal layer and 1-2 µm resolution. This is 1980ies technology. But of course, that is all that is needed for a circuit as simple as a flicker-LED.