Summary of Throbbing Apple Logo Sticker using PIC10F206 microcontroller
This article describes a DIY project creating a "throbbing" Apple logo sticker that mimics the sleeping Mac power indicator. Inspired by a pulsating Apple Store sign and a car decal, the author built a compact device using a PIC10F206 microcontroller and an LED. The code utilizes pulse width modulation with precomputed gamma-corrected values to create an exponential brightness ramp, ensuring the battery lasts for weeks while continuously pulsing without external sensors.
Parts used in the Throbbing Apple Logo Sticker:
- PIC10F206 microcontroller
- White LED (surface-mount or 3mm through-hole)
- 3 volt lithium coin cell (CR2032)
- Battery holder
- Circuit board (etched or perfboard)
- Clear rubber suction cup
- Glue (hot-melt, silicone, or cyanoacrylate)
- Apple logo decal on clear glass window
Throbbing Apple Logo Sticker
Step 1
The Device
– The microcontroller itself. In this case I used a surface-mount PIC10F206 as it’s what I had on hand, but just about any simple microcontroller will do provided you have the facilities to program it.
– A white LED. I’ve made throbbers using both surface-mount and 3mm through-hole varieties.
– A 3 volt lithium coin cell (CR2032 in this case).
– Battery holder.
– Circuit board to contain the components. Since I was using surface-mount parts, I opted to etch something for the occasion. If using through-hole components, the design is simple enough that a small piece of PCB perfboard with wire jumpers is likely sufficient.
– A clear rubber suction cup; pack of six from local hardware store.
– Glue of some sort. Hot-melt glue, silicone adhesive or cyanoacrylate “Krazy Glue” should all work fine.
– Apple logo decal adhered to a clear glass window.
Two components that typically appear in microcontroller and LED projects are conspicuously absent: there’s no current-limiting resistor for the LED (the lithium watch battery used is intrinsically limited in current), and there’s no decoupling capacitor across the microcontroller’s power leads (simply wasn’t needed in this noncritical application).
Step 2
The Code
Here’s the PIC assembly source code for the project.
The intensity of the LED is varied using pulse width modulation (PWM). Other Instructables and tutorials elsewhere already cover this in much better detail than I could. No offense intended in suggesting searching around elsewhere if you’re not yet familiar with the theory.
The PWM duty cycle does not ramp up and down linearly. Gamma correction creates an exponential ramp that the eye perceives as a near-linear increase in brightness. Because I’m lazy and because so little program space was being used, rather than work out an exponentiation function I simply have a big table of precomputed gamma-corrected values. The PIC10F206 had enough space to contain this table, but a more constrained device might not have this luxury and actual math code will be needed.
One pin from the PIC (GP2) is used for output. This pin was chosen as I might later decide to use this chip’s comparator function (available on pins GP0 and GP1) to detect nighttime or shade and enable the throb only when sufficiently dark. As it is, the device just throbs endlessly when the battery is installed, regardless of environment. The exponential PWM duty cycle means the LED is off most of the time, and a fresh battery can run the device continuously for a couple of weeks.
For more detail: Throbbing Apple Logo Sticker using PIC10F206 microcontroller
- How does the LED intensity vary?
The intensity varies using pulse width modulation with precomputed gamma-corrected values. - Can I use a different microcontroller?
Yes, any simple microcontroller works provided you have facilities to program it. - Does the device require a current-limiting resistor?
No, the lithium watch battery is intrinsically limited in current so no resistor is needed. - Is a decoupling capacitor required?
No, a decoupling capacitor was not needed for this noncritical application. - How long will a fresh battery last?
A fresh battery can run the device continuously for a couple of weeks. - Does the throb change based on lighting conditions?
Currently, the device throbs endlessly regardless of the environment. - What kind of glue works best for assembly?
Hot-melt glue, silicone adhesive, or cyanoacrylate Krazy Glue all work fine. - Why were gamma-corrected values used instead of math functions?
The author chose a table of precomputed values because they were lazy and there was enough program space.

