USB Smart Button


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.

USB Pinout

Pin Name Cable color Description Mini Prog
1 VCC Red +5 VDC Vdd
2 D- White Data – SDATA
3 D+ Green Data + SCLK
4 GND Black Ground Gnd

USB Smart Button Firmware.zip
USB Smart Button Dual Link Firmware.zip
Sine Wave Table.xls
Scan Code Table.xls

So Machine Pong

The past few days I have been playing around with a So Machine starter kit thinking to myself what can I make this thing do that is interesting. I am not sure how but I came across the idea of writing pong for the M238 PLC and HMI STU 855 but it is a-lot more fun than starting motors.  The code is primarily structured text with a function block to bring in the signals from the paddles which are mechanical quadrature encoders pictured above the HMI.  I have attached the Project for anyone whom wants to transform their So Machine Starter Kit into A So Pong Device.

So Machine Pong Project Archive Download