The SparkFun Qwiic Twist is a digital RGB rotary encoder breakout that is also able to connect to our Qwiic Connect System. The Twist takes care of all the various interrupts, switches, PWM'ing of LEDs, and presents all those features over an easy-to-use I2C interface. The Qwiic Twist was designed to get rid of the large mass of wires that are needed to implement an RGB encoder in a breadboard enabling you to stop messing around with interrupt debugging and get back to your project! Utilizing our handy Qwiic system, no soldering is required to connect it to the rest of your system. However, we still have broken out 0.1"-spaced pins in case you prefer to use a breadboard.
One rotation in the clockwise direction for the rotary encoder increases the overall count by 24 and -24 in the counter-clockwise direction. The number of 'ticks' or steps you have turned the knob are all transmitted over I2C. The red, green, and blue LEDs are all set via software commands and can be digitally mixed to achieve over 16 million colours!
We designed Qwiic Twist with an indent encoder which gives the user a great 'clicky' feel. Additionally, the encoder has a built-in button so the user can select a GUI menu or element by pressing down on it. The Qwiic Twist uses a 6mm shaft and works great with our Clear Plastic Knob listed in the Hookup Accessories below or any other 6mm knob.
We've also written an Arduino library for the Qwiic Twist showing off all the different features of the Twist and for easy interfacing to the breakout including a litany of examples!
NOTE: The I2C address of the Rotary Encoder is 0x3F and is jumper selectable to 0x3E (software-configurable to any address). A multiplexer/Mux is required to communicate to multiple Rotary Encoder sensors on a single bus. If you need to use more than one Rotary Encoder sensor consider using the Qwiic Mux Breakout.
The SparkFun Qwiic Connect System is an ecosystem of I2C sensors, actuators, shields and cables that make prototyping faster and less prone to error. All Qwiic-enabled boards use a common 1mm pitch, 4-pin JST connector. This reduces the amount of required PCB space, and polarized connections mean you can’t hook it up wrong.
- Length/Width: 1" x 1.2" (25.4mm x 30.5mm)
- Height: 0.984" (25mm)
- Voltage: 3.3V
- Approximately 2.8mA LEDs off
- Approximately 40.6mA with LEDs on 100%
- 24 ticks per 360° rotation
- Clockwise and counterclockwise direction is detected
- Software configurable I2C address - up to 111 devices on a single bus
- Built-in momentary button
- RGB LED controlled via PWM allowing for up to 16M colours
- Up to 400kHz I2C communication
- Jumpers for address selection, interrupt pull up disable, and I2C pull up disable
- I2C Address: 0x3F (Jumper Open, Default), 0x3E (Jumper Closed)
- 2x Qwiic Connectors
- Dimensional drawing: PDF / JPG
- PEL12T Encoder Datasheet
- Eagle Files
- Hookup Guide
- Register Map: PDF / JPG
- Qwiic Page
- Arduino Library