77
hi! SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth

Sparky Jr. (Programmable RGB LED HID)

Embed Size (px)

DESCRIPTION

Sparky Jr. is a programmable RGB LED mod companion light-up activation controller for arcade pushbuttons. 2 parts software, 1 part hardware, the Sparky Jr. is a unique interface and an extendable platform with a unique combination of Arduino, Processing and RGB LEDs. Eugene Andruszczenko (32teeth) walks us through the ideation, creation and realization of leveraging OpenSource Hardware and Software through to product development. GitHub: http://32teeth.github.io/SparkyJr/

Citation preview

  • 1. hi! SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth

2. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth hi,mynameis: eugeneyevhen andruszczenko 3. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth iamthe: executivedirector, technology 4. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth 5. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth 6. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth iam: tinkerer,hacker, technologyenthusiast 7. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth iamalsoa: rapidprototype developer 8. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth iadvocate: ethicaldisruption throughshowcasingideas 9. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth iamheretodaytointroduce: today'sdiscussion 10. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth SparkyJr. RGBLEDController 11. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth SparkyJr. RGBLEDController whatisthe SparkyJr. 12. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth whatisthe SparkyJr. the backstory 13. a few years ago 14. i joined a fightclub 15. i got myself a fightstick 16. i got myself a fightsticki met some people with ideas 17. the birth of an open source product 18. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth SparkyJr. a programmable RGB LED mod companion light up activation controller for arcade pushbuttons on gaming fightsticks 19. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth SparkyJr. built on an open source microcontroller standard. 20. interlude 21. interlude 22. a challenge has entered the ring 23. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth challenge. low barriers to participation keep costs low (under $25) core hardware only shift registers LED driver IC simple interface for non tech savvy folk open source FTW! 24. cont(str)ain yourself 25. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth limits. atmega328[p][au][nd] only has 20 I/O 6 of which are PWM common arcade controllers have 8 face buttons 8 RGB LEDs = 24 lines (1 common, 1 per color) thats 32 lines 12 more than we have [facepalm] this was our "'oh sh1t" moment this was our "awwwwwww sh111111111t" moment 26. work with what you have 27. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth approach. 8 I/O for button inputs multiplex the rest 8 I/O for LED common line (anode/cathode) 3 I/O for colors (red, green, blue) row column scanning really really fast (no flicker) port manipulation faster than digitalWrite hello timers aka TCCR (Timer/Counter Control Register) TCCR0B = TCCR0B & 0b1111000 | 0x01; millis() and delay() TCCR1B = TCCR1B & 0b1111000 | 0x01; TCCR2B = TCCR2B & 0b1111000 | 0x01; PORTD = B1010010 28. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth results. can be measured by what the eye can see. 29. interlude 30. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth + 31. interfacing with hardware 32. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth challenge.round2. low barriers to participation keep costs low (free) plugins drivers simple interface for non tech savvy folk open source FTW! 33. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth + + 34. the birth of the 'configurator' 35. an interface created by a software engineer SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth 36. an interface created by a web developer SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth 37. an interface created by a web based software engineer SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth 38. milestones 39. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth officialLaunch. the first commercial version was pre programmed to the users specified configuration using the purchase order form Made to order! 40. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth stayopen. the first commercial version had an FTDI pinout for advanced users to reset, reprogram, hack. Great Results! 41. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth round2. the second generation introduced a downloadable configurator, built in Processing, exported as a Java application. 42. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth shared. the second generation spawned a collaborative project with two web stores dedicated to fighting game hardware and parts 43. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth round3. the third generation release was a collaboration with the web stores, under license to manufacture and distribute under their brands 44. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth helpdesk. end user support became a full time job (almost) 45. a long hiatus 46. a brief hiatus 47. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth silenceisbroken. in november of twenty thirteen, i joined createInTO and met rick mason 48. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth round4. the quietly release fourth generation was showcased incorporated with the third generation configurator 49. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth reboot. taking the hardware back to the arduino uno r3 no gimmicks 50. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth rebuild. both the core SparkyJr. software and configurator where revisited from received feedback, rebuilt, and optimized 51. demo time! 52. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth click me 53. what's next 54. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth + + + 55. ambitious 56. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth + + 57. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth = 58. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth + 59. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth webenabled. adding web based capabilities tore down any remaining barriers to participation 60. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth extended. adding web based capabilities tore down any remaining barriers to participation 61. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth api. chrome extensions add capabilities to connect to devices using the usb and serial libraries 62. what's next for sparky 63. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth the final frontier ps360+ ready ws2811 chainable ready same configurator 64. product development lifecycle 65. other projects 66. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth arduino in your pocket 67. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth lcd/tft ready touch ready 68. and finally 69. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth