M5Stack® Encoder Module for M5Stack FACES ESP32 Pocket Computer with 12pcs RGB LED MEGA328 Inside I2C for Arduino

Eachine1
sku: 1538395
ACCORDING TO OUR RECORDS THIS PRODUCT IS NOT AVAILABLE NOW
$9.99
Shipping from: China
Description
Description: ENCODER is compatible with FACE Kit. You can have it replace the keycoard panel inside the FACE kit. It is designed for rotary encoder control, integrated Mega328 microprocessor inside and LEDs around the encoder. The series communication protocol between M5 core and ENCODER is IIC (adress: 0x5E) Product Features: 12 RGB Led IIC communication Simple API for programming Mega328 inside Encoder detection Product Size: 58.2mm x 54.2mm x 10mm Product weight: 17g EasyLoader click to download EasyLoader 2.After downloading the software, double-click to run the application, connect the M5 device to the computer via the data cable, select the port parameters, and click "Burn" to start burning. 3.The CP210X (USB driver) needs to be installed before the EasyLoader is burned. Click here to view the driver installation tutorial Function: Control single RGB /* Parameter: led_index: 0 ~ 11 r, g, b: 0 ~ 254 */ void Led(int led_index, int r, int g, int b){ // IIC send data Wire.beginTransmission(Faces_Encoder_I2C_ADDR); Wire.write(led_index); Wire.write(r); Wire.write(g); Wire.write(b); Wire.endTransmission(); }Copy to clipboardErrorCopied Read encoder increment void get_encoder_increment(void){ int temp_encoder_increment; // IIC read data Wire.requestFrom(Faces_Encoder_I2C_ADDR, 3); if(Wire.available()){ temp_encoder_increment = Wire.read();// get increment button_state = Wire.read();// get button value } if(temp_encoder_increment > 127){//anti-clockwise direction = 1;// flag for encoder direction encoder_increment = 256 - temp_encoder_increment; } else{// clockwise direction = 0; encoder_increment = temp_encoder_increment; } }Copy to clipboardErrorCopied Package Included: 1x M5Stack ENCODER Module Encoder turnpanel Related Link: Offical Video Forum The Firmware of inside MEGA328 Example: for Arduino IDE If you want the complete code faces_encoder.ino, please click here. /* * faces_encoder.ino */ #include #define Faces_Encoder_I2C_ADDR 0X5E // declaration int encoder_increment;//positive: clockwise nagtive: anti-clockwise uint16_t encoder_value=0; int button_state; uint8_t direction;//0: clockwise 1: anti-clockwise int temp_encoder_increment; // initialization M5.begin(); Wire.begin(); // get data from ENCONDER Wire.requestFrom(Faces_Encoder_I2C_ADDR, 3); if(Wire.available()){ temp_encoder_increment = Wire.read();// the first byte: increment button_state = Wire.read();// the second byte: button value } // IIC send data, 4bytes Wire.beginTransmission(Faces_Encoder_I2C_ADDR); Wire.write(led_index); Wire.write(r); Wire.write(g); Wire.write(b); Wire.endTransmission();Copy to clipboardErrorCopied
Price history chart & currency exchange rate