Rotary quadrature-encoder with push-button + ATtiny85 micro-controller - serial data out
Designed by madworm in GermanyThis product is no longer available for sale.
The seller may be offering an improved version or it may be hanging out on the beach, enjoying the retired life.
The Knob All boards come preloaded with my latest firmware, have been tested for proper operation and are ready to go (except DIY option). PWM on the DIR-pin is enabled. You will also get a little …
Read More…All boards come preloaded with my latest firmware, have been tested for proper operation and are ready to go (except DIY option). PWM on the DIR-pin is enabled.
You will also get a little adapter to convert from the standard 6pin 0.1in ISP header down to the smaller 2mm one used the circuit board. You need to tilt the adapter sideways and apply a bit of pressure to ensure all pins make contact.
With the latest additions to the firmware (velocity, PWM output to control something else directly, like a logic-level MOSFET...), the remaining FLASH memory of the attiny25 was getting a bit low. Not seriously low, but below 35%. Now with a total of 4kb of code-space (about 2.5kb free, if you use my firmware), there should be enough room for even the wildest and strangest ideas.
First of all it is a very small printed circuit board, combining a mechanical rotary encoder with a micro controller. The micro reads the encoder, counts ticks and direction and registers the state of the push-button. Simple functions are provided to query the state of the encoder, whether a button has just been pressed or released and how many ticks have occurred. Only about 1.5kb of code-space is used.
The demo firmware currently provides functions for:
* read the current state of the push-button
* check for button-pressed event
* check for button-released event
* read the amount of accumulated ticks (+/-) in a small buffer
* read the velocity - updated 10x per second
* optional automatic coarse/fine mode (velocity dependent)
* soft-uart for sending numbers, ascii characters and strings
* optional 30kHz PWM output on the 'DIR' pin
* interrupt code for time / delay, encoder reading in background
* simple compile script (linux)
The supplied compile bash-script makes used of an installed version of the Arduino-IDE (1.0.4), so you shouldn't have any issues with getting the right version of the avr-gcc compiler for your distribution. Just adapt the PATH variable used in the script according to your system.
Linux / mac (maybe) users will get the benefit of a couple of scripts / patches that allow you to create an Arduino-IDE 'sketch'. This requires the MIT attiny code as well. You can download a modified version of the Arduino-IDE including the firmware / examples here.
I've added detailed descriptions for Microsoft detainees on how to migrate the code to the Arduino-IDE. All of this will have to be done by hand and should be done in 5 minutes.
Product: (None)
Documentation: (None)
Shipping: (None)
Communication: (None)
Robert | Dec. 25, 2013
Navid | April 25, 2013
By clicking Register, you confirm that you accept our Terms & Conditions
We recognize our top users by making them a Tindarian. Tindarians have access to secret & unreleased features.
We look for the most active & best members of the Tindie community, and invite them to join. There isn't a selection process or form to fill out. The only way to become a Tindarian is by being a nice & active member of the Tindie community!