This is the upgraded version of our original project: I2C Encoder. We have added some new improvements. Most importants are the support of the RGB encoders, the extension of the addressing to 7bit and a new shape.
After the first version of the I2C encoder, we collected all the suggestions and we made this new upgraded version!
- It support the standard rotary encoder and the RGB encoder
- It’s possible to set all the 7bit of the I2C address trough a SMD jumper
- Dimension of 25x25mm or 0.98×0.98inch
- With the castellated holes is possible to connected several boards on the 4 sides
- Possibility to solder the pull-up resistor on the I2C bus
- 3 General Purpose pins. (GP pins)
- 256 byte of internal EEPROM divided in the 2 bank of 128 byte
- Advanced configuration respect the first version
This new version is powered by the PIC16F18344. Respect to the MCU on the first version, it has more GPIO and the EEPROM memory.
The new design of the board support both the standard encoders and the illuminated RGB encoders.
Moreover, there are the castellated holes on all the 4 sides of the PC, in this way will be possible to connect multiple board by soldering them.
There are also 3 configurable GPIOs organized with the same footprint of a RGB LED. They are called GP1 GP2 and GP3.
But in case you are using the RGB encoder, the configurable GPIOs are only 2: GP1 and GP2.
- PWM: In this way you can add a RGB LED
- OUTPUT: You can use the pins as standard digital output.
- Analog: The pins are connected to the internal ADC of the PIC. In this way you can add sensors or potentiometer
- Input: You can use the pins as standard digital input. Plus you can configure also the interrupt on the edges
The INT pin is an open-drain output, and it’s used to send an interrupt to the master.
The interrupt is active low, and have multiple sources where it’s possible to mask.
- Encoder push button pressed
- Encoder push button released
- Encoder is moved clockwise
- Encoder is moved counterclockwise
- The counter value reach the maximum value
- The counter value reach the minimum value
- The GP pins changed when configure as digital input
This is the preliminary version of the internal registers:
Now it is possible to configure the Counters register to work as int 32bit or as float numbers IEEE 754.
There is also the possibility to set the Increment step, which meas that it’s possible to set of how much the Counter Value is increased or decreased at every encoder step.
There are 4 types of encoders that you can add “Accessory to be soldered” into your order according to your preference . All has 20 pulses for rotation:
- EC11 with handle 20mm long and 6mm diameter.
- EC11 with handle 15mm long and 6mm diameter.
- Bourns PEC11L-4120F-S0020 with handle 20mm long and 6mm diameter.
- Bourns PEC11L-4020F-S0020 no dent with handle 20mm long and 6mm diameter.
This is a mechanical encoder with an integrated RGB LED and a transparent shaft. It’s possible to control the RGB LED that makes the shaft illuminated. With the transparent knob, it’s possible to use the rotary encoder and see the light coming from the RGB LED. The encoder comes with nut and the washer.
This RGB encoder is available in our Tindie store, you can purchase it seperately from I2C Encoder V2 or add it as “Accessory to be soldered” when you order I2C Encoder V2.
There are two types of knobs for the RGB Encoder. You can purchase them together with I2C Encoder V2 as “Accessory to be soldered”.
- Skirt diameter: 20mm
- Upper part diameter: 13mm
- Total height: 19mm
- Skirt diameter: 25mm
- Upper part diameter: 19mm
- Total height: 15mm
Updates and more details:
Check our firmware updates and more examples on Github.
For more details, please visit our hackaday page here.
Check out I2C Encoder V2.1, which is an upgrated both on HW and firmware respect to I2C Encoder V2.
Check out our product description video:
You can purchase these items in our Tindie and eBay stores: