The other day I found out that the company I work for would be getting some promotional USB Smart Buttons for our new website. I though how fun would it be to reprogram these buttons to go to our competitors website and put them on a few select employees desk. So the first thing to figure out was what is inside… I had hoped for a micro and eeprom so all that would be required is the changing of a string in the eeprom but instead all I found was a cypress CY7C63803 micro controller. This prank was going to take a bit more effort than I had first thought so I ordered a PSoC Mini-Prog and downloaded the PSoC Designer Software and started writing my own version of the USB Smart Button Firmware. Below is the firmware for the one URL version of the Smart Button with PWM three phase color phasing LED’s. I have also posted the Excel spreadsheets that I used to make the Sine Table and ASCII to Scan Code Tables. Please enjoy reprogramming your USB Smart Buttons with this free firmware. I know I got a few good laughs out of it and some good experience working with USB HID devices.