According to some of our engineers, if you hold this Qwiic Arcade switch up next to your ear, you can hear the sounds of Pac-Man scrolling across the screen like it's 1984. With its great clicky tactile feel, the Qwiic Arcade adds a certain retro flair to your project while handling all the complications of debouncing and polling. The Qwiic Arcade simplifies those nasty worries away into an easy to use I2C device with no soldering required. Thanks to our Arduino library, using the switch is as simple as plugging in a Qwiic cable and calling
If you need multiple arcade buttons for your project, fear not! Each switch has a configurable I2C address, so you can daisy-chain multiple switches over Qwiic and still address each one individually. We've got an example in our Arduino Library that provides a super-easy way to configure your Qwiic Switch to whatever I2C address you desire.
In addition to handling blinking and debouncing the Qwiic Arcade has configurable interrupts which can be configured to activate upon a button press or click. This means that code on your microcontroller need not waste valuable processing time checking the status of the switch but instead can run a small function whenever the switch is pressed or clicked! For more information on interrupts check out our guide here!
We've also taken the liberty of implementing a FIFO queue onboard the Qwiic Arcade where it keeps an internal record of when the button was pressed. This means that if you happen to be Alex Trebek and you have a network of Qwiic Arcade buttons running your Jeopardy Game, you can determine who pushed their button first without polling them constantly! This saves your microcontroller time to do other, more important things - like winning the game itself.
We currently offer the Qwiic Arcade in both red and blue, but if you're itchin' for another color, you can swap the microswitch assembly into any of our other arcade buttons.
We've written an Arduino library to help you get started quickly. You can download the library through the Arduino library manager by searching 'SparkFun Qwiic Button' or you can get the GitHub repo as a .zip file and install the library from there.
This board is one of our many Qwiic compatible boards! Simply plug and go. No soldering, no figuring out which is SDA or SCL, and no voltage regulation or translation required!
We do not plan to regularly produce SparkX products, so get them while they’re hot!
NOTE: The I2C address of the Qwiic Arcade is 0x6F and is jumper selectable to 0x6E through 0x60 (software-configurable to any address). A multiplexer/Mux is required to communicate to multiple Qwiic Arcade sensors on a single bus. If you need to use more than one Qwiic Arcade sensor consider using the Qwiic Mux Breakout.
Based on 1 ratings:
The FIFO queue functionality of the sparkfun/Qwiic Button firmware is broken. This bug was reported on Aug 26, 2020 and is still not fixed. The QWIIC button is unusable without the ability to access the button press and button click timestamps in the queue. Each queue holds 15 timestamps. The only way to access a timestamp other than the first or last is to pop the oldest (last) timestamp. The popPressedQueue function doesn't work.
Avoid all of the SparkFun QWIIC buttons and switches. Regrettably, I bought eight of them which are now paperweights.
Note: This is an issue with the QWIIC button firmware, not with the Arduino and Python libraries. If you fix the firmware yourself, you need to spend $40 in parts to reprogram the button / switch.