SlideShare uma empresa Scribd logo
1 de 77
hi!
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
hi,mynameis:
eugeneyevhen
andruszczenko
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
iamthe:
executivedirector,
technology
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
iam:
tinkerer,hacker,
technologyenthusiast
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
iamalsoa:
rapidprototype
developer
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
iadvocate:
ethicaldisruption
throughshowcasingideas
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
iamheretodaytointroduce:
today'sdiscussion
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
SparkyJr.
RGBLEDController
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
SparkyJr.
RGBLEDController
whatisthe
SparkyJr.
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
whatisthe
SparkyJr. the backstory
a few years ago…
i joined a fightclub
i got myself a fightstick
i got myself a fightsticki met some people with ideas
the birth of an open source product
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
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
SparkyJr.
built on an open source microcontroller standard.
interlude
interlude
a challenge has entered the ring
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!
cont(str)ain yourself
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)
that’s 32 lines
12 more than we have [facepalm]
this was our "'oh sh1t" moment
this was our "awwwwwww sh111111111t" moment
work with what you have
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
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
results.
can be measured by what the eye can see.
interlude
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
+
interfacing with hardware
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!
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
+ +
the birth of the 'configurator'
an interface created by a software engineer
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
an interface created by a web developer
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
an interface created by a web based software engineer
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
milestones
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!
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!
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.
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
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
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
helpdesk.
end user support became a full time job (almost)
a long hiatus
a brief hiatus
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
silenceisbroken.
in november of twenty thirteen, i joined
createInTO and met rick mason
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
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
reboot.
taking the hardware back to the arduino uno r3
no gimmicks
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
demo time!
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
click me
what's next
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
+ + +
ambitious
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
+ +
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
=
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
+
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
webenabled.
adding web based capabilities tore down any remaining
barriers to participation
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
extended.
adding web based capabilities tore down any remaining
barriers to participation
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
what's next for sparky
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
the final frontier
ps360+ ready
ws2811 chainable ready
same configurator
product development lifecycle
other projects
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
arduino in your pocket
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth
lcd/tft ready
touch ready
and finally
SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth

Mais conteúdo relacionado

Mais procurados

Cassiopeia Ltd - standard Arduino workshop
Cassiopeia Ltd - standard Arduino workshopCassiopeia Ltd - standard Arduino workshop
Cassiopeia Ltd - standard Arduino workshoptomtobback
 
Python Programming for Arduino
Python Programming for ArduinoPython Programming for Arduino
Python Programming for Arduinorsorage
 
Arduino Robotics workshop Day1
Arduino Robotics workshop Day1Arduino Robotics workshop Day1
Arduino Robotics workshop Day1Sudar Muthu
 
Introducing the Arduino
Introducing the ArduinoIntroducing the Arduino
Introducing the ArduinoCharles A B Jr
 
arduino-ppt
 arduino-ppt arduino-ppt
arduino-pptjhcid
 
Basics of arduino uno
Basics of arduino unoBasics of arduino uno
Basics of arduino unoRahat Sood
 
Arduino projects list about 2342 arduino list of projects use arduino for p...
Arduino projects list   about 2342 arduino list of projects use arduino for p...Arduino projects list   about 2342 arduino list of projects use arduino for p...
Arduino projects list about 2342 arduino list of projects use arduino for p...Ashraf11111
 
Introduction to Arduino and Circuits
Introduction to Arduino and CircuitsIntroduction to Arduino and Circuits
Introduction to Arduino and CircuitsJason Griffey
 
Maker Education : Bob the Robot
Maker Education : Bob the RobotMaker Education : Bob the Robot
Maker Education : Bob the RobotFun2Do Labs
 
Arduino 8-step drum sequencer 3 channels
Arduino 8-step drum sequencer 3 channelsArduino 8-step drum sequencer 3 channels
Arduino 8-step drum sequencer 3 channelstomtobback
 
Getting started with arduino workshop
Getting started with arduino workshopGetting started with arduino workshop
Getting started with arduino workshopSudar Muthu
 
Winter traning arduino report final
Winter traning arduino report finalWinter traning arduino report final
Winter traning arduino report finalGovind Jha
 
Arduino Platform with C programming.
Arduino Platform with C programming.Arduino Platform with C programming.
Arduino Platform with C programming.Govind Jha
 

Mais procurados (18)

Cassiopeia Ltd - standard Arduino workshop
Cassiopeia Ltd - standard Arduino workshopCassiopeia Ltd - standard Arduino workshop
Cassiopeia Ltd - standard Arduino workshop
 
Python Programming for Arduino
Python Programming for ArduinoPython Programming for Arduino
Python Programming for Arduino
 
Arduino
ArduinoArduino
Arduino
 
Different Arduino Boards
Different Arduino BoardsDifferent Arduino Boards
Different Arduino Boards
 
What is Arduino ?
What is Arduino ?What is Arduino ?
What is Arduino ?
 
Arduino Robotics workshop Day1
Arduino Robotics workshop Day1Arduino Robotics workshop Day1
Arduino Robotics workshop Day1
 
Introducing the Arduino
Introducing the ArduinoIntroducing the Arduino
Introducing the Arduino
 
arduino-ppt
 arduino-ppt arduino-ppt
arduino-ppt
 
Arduino Uno Pin Description
Arduino Uno Pin DescriptionArduino Uno Pin Description
Arduino Uno Pin Description
 
Aurdino presentation
Aurdino presentationAurdino presentation
Aurdino presentation
 
Basics of arduino uno
Basics of arduino unoBasics of arduino uno
Basics of arduino uno
 
Arduino projects list about 2342 arduino list of projects use arduino for p...
Arduino projects list   about 2342 arduino list of projects use arduino for p...Arduino projects list   about 2342 arduino list of projects use arduino for p...
Arduino projects list about 2342 arduino list of projects use arduino for p...
 
Introduction to Arduino and Circuits
Introduction to Arduino and CircuitsIntroduction to Arduino and Circuits
Introduction to Arduino and Circuits
 
Maker Education : Bob the Robot
Maker Education : Bob the RobotMaker Education : Bob the Robot
Maker Education : Bob the Robot
 
Arduino 8-step drum sequencer 3 channels
Arduino 8-step drum sequencer 3 channelsArduino 8-step drum sequencer 3 channels
Arduino 8-step drum sequencer 3 channels
 
Getting started with arduino workshop
Getting started with arduino workshopGetting started with arduino workshop
Getting started with arduino workshop
 
Winter traning arduino report final
Winter traning arduino report finalWinter traning arduino report final
Winter traning arduino report final
 
Arduino Platform with C programming.
Arduino Platform with C programming.Arduino Platform with C programming.
Arduino Platform with C programming.
 

Semelhante a Sparky Jr. (Programmable RGB LED HID)

Arduino embedded systems and advanced robotics
Arduino embedded systems and advanced roboticsArduino embedded systems and advanced robotics
Arduino embedded systems and advanced roboticsShubham Bhattacharya
 
Advanced view of atmega microcontroller projects list at mega32 avr
Advanced view of atmega microcontroller projects list   at mega32 avrAdvanced view of atmega microcontroller projects list   at mega32 avr
Advanced view of atmega microcontroller projects list at mega32 avrWiseNaeem
 
Using arduino and raspberry pi for internet of things
Using arduino and raspberry pi for internet of thingsUsing arduino and raspberry pi for internet of things
Using arduino and raspberry pi for internet of thingsSudar Muthu
 
Advanced view arduino projects list use arduino for projects
Advanced view arduino projects list   use arduino for projectsAdvanced view arduino projects list   use arduino for projects
Advanced view arduino projects list use arduino for projectsWiseNaeem
 
Ardublock tutorial
Ardublock tutorialArdublock tutorial
Ardublock tutorialJakie_Li
 
Industrial Applications of Arduino using Ladder Logic
Industrial Applications of Arduino using Ladder LogicIndustrial Applications of Arduino using Ladder Logic
Industrial Applications of Arduino using Ladder LogicRobocraze
 
Arduino - Learning.pdf
Arduino - Learning.pdfArduino - Learning.pdf
Arduino - Learning.pdfKhalilSedki1
 
Advanced View Arduino Projects List - Use Arduino for Projects (4).pdf
Advanced View Arduino Projects List - Use Arduino for Projects (4).pdfAdvanced View Arduino Projects List - Use Arduino for Projects (4).pdf
Advanced View Arduino Projects List - Use Arduino for Projects (4).pdfIsmailkhan77481
 
A BEGINNER’S JOURNEY INTO THE WORLD OF HARDWARE HACKING
A BEGINNER’S JOURNEY INTO THE WORLD OF HARDWARE HACKINGA BEGINNER’S JOURNEY INTO THE WORLD OF HARDWARE HACKING
A BEGINNER’S JOURNEY INTO THE WORLD OF HARDWARE HACKINGSilvio Cesare
 
Advanced view of atmega microcontroller projects list at mega32 avr
Advanced view of atmega microcontroller projects list   at mega32 avrAdvanced view of atmega microcontroller projects list   at mega32 avr
Advanced view of atmega microcontroller projects list at mega32 avrWiseNaeem
 
DIY UNO Play Breadboard ATMEGA328P with FT232 Breakout Board
DIY UNO Play Breadboard ATMEGA328P with FT232 Breakout BoardDIY UNO Play Breadboard ATMEGA328P with FT232 Breakout Board
DIY UNO Play Breadboard ATMEGA328P with FT232 Breakout BoardRaghav Shetty
 
Advanced View Arduino Projects List - Use Arduino for Projects-2.pdf
Advanced View Arduino Projects List - Use Arduino for Projects-2.pdfAdvanced View Arduino Projects List - Use Arduino for Projects-2.pdf
Advanced View Arduino Projects List - Use Arduino for Projects-2.pdfWiseNaeem
 
Advanced View Arduino Projects List - Use Arduino for Projects 1.pdf
Advanced View Arduino Projects List - Use Arduino for Projects 1.pdfAdvanced View Arduino Projects List - Use Arduino for Projects 1.pdf
Advanced View Arduino Projects List - Use Arduino for Projects 1.pdfWiseNaeem
 
NSTA 2013 Denver - ArduBlock and Arduino
NSTA 2013 Denver - ArduBlock and ArduinoNSTA 2013 Denver - ArduBlock and Arduino
NSTA 2013 Denver - ArduBlock and ArduinoBrian Huang
 
IRJET- Smart Gloves to Convert Sign Languages to Vocal Output
IRJET- Smart Gloves to Convert Sign Languages to Vocal OutputIRJET- Smart Gloves to Convert Sign Languages to Vocal Output
IRJET- Smart Gloves to Convert Sign Languages to Vocal OutputIRJET Journal
 
Advanced View Arduino Projects List - Use Arduino for Projects 2.pdf
Advanced View Arduino Projects List - Use Arduino for Projects 2.pdfAdvanced View Arduino Projects List - Use Arduino for Projects 2.pdf
Advanced View Arduino Projects List - Use Arduino for Projects 2.pdfWiseNaeem
 
ATTiny85 ATTiny45 and ATTiny13 based projects list - ATMega32 AVR.pdf
ATTiny85 ATTiny45 and ATTiny13 based projects list - ATMega32 AVR.pdfATTiny85 ATTiny45 and ATTiny13 based projects list - ATMega32 AVR.pdf
ATTiny85 ATTiny45 and ATTiny13 based projects list - ATMega32 AVR.pdfIsmailkhan77481
 
ESP32 WiFi & Bluetooth Module - Getting Started Guide
ESP32 WiFi & Bluetooth Module - Getting Started GuideESP32 WiFi & Bluetooth Module - Getting Started Guide
ESP32 WiFi & Bluetooth Module - Getting Started Guidehandson28
 
A000067-datasheet.pdf
A000067-datasheet.pdfA000067-datasheet.pdf
A000067-datasheet.pdfwardi25
 

Semelhante a Sparky Jr. (Programmable RGB LED HID) (20)

Arduino embedded systems and advanced robotics
Arduino embedded systems and advanced roboticsArduino embedded systems and advanced robotics
Arduino embedded systems and advanced robotics
 
Advanced view of atmega microcontroller projects list at mega32 avr
Advanced view of atmega microcontroller projects list   at mega32 avrAdvanced view of atmega microcontroller projects list   at mega32 avr
Advanced view of atmega microcontroller projects list at mega32 avr
 
Using arduino and raspberry pi for internet of things
Using arduino and raspberry pi for internet of thingsUsing arduino and raspberry pi for internet of things
Using arduino and raspberry pi for internet of things
 
Advanced view arduino projects list use arduino for projects
Advanced view arduino projects list   use arduino for projectsAdvanced view arduino projects list   use arduino for projects
Advanced view arduino projects list use arduino for projects
 
Ardublock tutorial
Ardublock tutorialArdublock tutorial
Ardublock tutorial
 
Industrial Applications of Arduino using Ladder Logic
Industrial Applications of Arduino using Ladder LogicIndustrial Applications of Arduino using Ladder Logic
Industrial Applications of Arduino using Ladder Logic
 
Arduino - Learning.pdf
Arduino - Learning.pdfArduino - Learning.pdf
Arduino - Learning.pdf
 
Advanced View Arduino Projects List - Use Arduino for Projects (4).pdf
Advanced View Arduino Projects List - Use Arduino for Projects (4).pdfAdvanced View Arduino Projects List - Use Arduino for Projects (4).pdf
Advanced View Arduino Projects List - Use Arduino for Projects (4).pdf
 
A BEGINNER’S JOURNEY INTO THE WORLD OF HARDWARE HACKING
A BEGINNER’S JOURNEY INTO THE WORLD OF HARDWARE HACKINGA BEGINNER’S JOURNEY INTO THE WORLD OF HARDWARE HACKING
A BEGINNER’S JOURNEY INTO THE WORLD OF HARDWARE HACKING
 
Advanced view of atmega microcontroller projects list at mega32 avr
Advanced view of atmega microcontroller projects list   at mega32 avrAdvanced view of atmega microcontroller projects list   at mega32 avr
Advanced view of atmega microcontroller projects list at mega32 avr
 
DIY UNO Play Breadboard ATMEGA328P with FT232 Breakout Board
DIY UNO Play Breadboard ATMEGA328P with FT232 Breakout BoardDIY UNO Play Breadboard ATMEGA328P with FT232 Breakout Board
DIY UNO Play Breadboard ATMEGA328P with FT232 Breakout Board
 
Advanced View Arduino Projects List - Use Arduino for Projects-2.pdf
Advanced View Arduino Projects List - Use Arduino for Projects-2.pdfAdvanced View Arduino Projects List - Use Arduino for Projects-2.pdf
Advanced View Arduino Projects List - Use Arduino for Projects-2.pdf
 
Advanced View Arduino Projects List - Use Arduino for Projects 1.pdf
Advanced View Arduino Projects List - Use Arduino for Projects 1.pdfAdvanced View Arduino Projects List - Use Arduino for Projects 1.pdf
Advanced View Arduino Projects List - Use Arduino for Projects 1.pdf
 
NSTA 2013 Denver - ArduBlock and Arduino
NSTA 2013 Denver - ArduBlock and ArduinoNSTA 2013 Denver - ArduBlock and Arduino
NSTA 2013 Denver - ArduBlock and Arduino
 
IRJET- Smart Gloves to Convert Sign Languages to Vocal Output
IRJET- Smart Gloves to Convert Sign Languages to Vocal OutputIRJET- Smart Gloves to Convert Sign Languages to Vocal Output
IRJET- Smart Gloves to Convert Sign Languages to Vocal Output
 
Advanced View Arduino Projects List - Use Arduino for Projects 2.pdf
Advanced View Arduino Projects List - Use Arduino for Projects 2.pdfAdvanced View Arduino Projects List - Use Arduino for Projects 2.pdf
Advanced View Arduino Projects List - Use Arduino for Projects 2.pdf
 
ATTiny85 ATTiny45 and ATTiny13 based projects list - ATMega32 AVR.pdf
ATTiny85 ATTiny45 and ATTiny13 based projects list - ATMega32 AVR.pdfATTiny85 ATTiny45 and ATTiny13 based projects list - ATMega32 AVR.pdf
ATTiny85 ATTiny45 and ATTiny13 based projects list - ATMega32 AVR.pdf
 
ESP32 WiFi & Bluetooth Module - Getting Started Guide
ESP32 WiFi & Bluetooth Module - Getting Started GuideESP32 WiFi & Bluetooth Module - Getting Started Guide
ESP32 WiFi & Bluetooth Module - Getting Started Guide
 
A000067-datasheet.pdf
A000067-datasheet.pdfA000067-datasheet.pdf
A000067-datasheet.pdf
 
Practicas con arduino
Practicas con arduinoPracticas con arduino
Practicas con arduino
 

Último

The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 

Último (20)

The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 

Sparky Jr. (Programmable RGB LED HID)

  • 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.
  • 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!
  • 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) that’s 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.
  • 30. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth +
  • 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
  • 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.
  • 45. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth helpdesk. end user support became a full time job (almost)
  • 48. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth silenceisbroken. in november of twenty thirteen, i joined createInTO and met rick mason
  • 49. 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
  • 50. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth reboot. taking the hardware back to the arduino uno r3 no gimmicks
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56. 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
  • 58. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth click me
  • 60. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth + + +
  • 62. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth + +
  • 63. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth =
  • 64. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth +
  • 65. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth webenabled. adding web based capabilities tore down any remaining barriers to participation
  • 66. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth extended. adding web based capabilities tore down any remaining barriers to participation
  • 67. 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
  • 68. what's next for sparky
  • 69.
  • 70. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth the final frontier ps360+ ready ws2811 chainable ready same configurator
  • 73. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth arduino in your pocket
  • 74. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth lcd/tft ready touch ready
  • 75.
  • 77. SparkyJr. RGB LED Controller 32teeth eugeneyevhen 32teeth.github.io in/32teeth