Arduino Rotary Encoder Protocol
This protocol controls a rotary encoder connected to the microcontroller. Rotary encoders can turn infinite number of rounds. If the rotary encoder turns or the state of the button on the encoder changes, the device sends an event to the .Net. You can use full, half or quarter rotary encoders.
How to build a test circuit with a rotary encoder and an Arduino Mega?
Arduino codes are included.
I. "Welcome" event from microcontroller
Example
c=welcome&type=OzRotaryController&id=IqlZci&pos=2&t=3
Parameters
Parameter | Type | Range | Functionality |
c | String | "welcome" | Identifies the welcome message. |
type | String | "OzRotaryController" | Determines the type of the device. |
id | String | 6 characters (numbers, uppercase and lowercase characters) | The ID of the device which is chosen by the microcontroller. |
pos | Byte | 0-255 | Determines the position of the device on the list of the ID manager of the microcontroller. Please make sure there are no other devices in the same position. |
t | Byte | 0-255 | Counts the number of events sent combined. Counts from 0 to 255 then from 0 again. |
II. Commands to microcontroller
None
III. Event from microcontroller
"Rotary Changed" event
This event is called if the rotary encoder changes direction or the button is pressed or released.
Example
c=rotarychange&button=1&left=0&right=0&id=IqlZci&t=3
Parameters
Parameter | Type | Range | Functionality |
c | String | "rotarychange" | Identifies the event. |
button | Bool | 0,1 | Button's state (see:OzekiButtonController). |
left | Bool | 0,1 | If rotated left, it changes to 1. It is 0 otherwise. |
right | Bool | 0,1 | If rotated right, it changes to 1. It is 0 otherwise. |
id | String | 6 characters (numbers, uppercase and lowercase characters) | The ID of the device which is chosen by the microcontroller. |
t | Byte | 0-255 | Counts the number of events sent combined. Counts from 0 to 255 then from 0 again. |
Response
This response is sent from your computer.
c=rotarychange_resp&button=1&left=0&right=0&id=IqlZci&t=1
Parameters
Parameter | Type | Range | Functionality |
c | String | "rotarychange_resp" | Identifies the event response. |
button | Bool | 0,1 | Button's state (see:OzekiButtonController). |
left | Bool | 0,1 | If rotated left, it changes to 1. It is 0 otherwise. |
right | Bool | 0,1 | If rotated right, changes to 1. It is 0 otherwise. |
id | String | 6 characters (numbers, uppercase and lowercase characters) | The ID of the device which is chosen by the microcontroller. |
t | Byte | 0-255 | Counts the number of responses sent combined. Counts from 0 to 255 then from 0 again. |
More information
- RF 433 MHz Transceiver serial protocol
- Analog Joystick serial protocol
- Analog Sensor serial protocol
- Button serial protocol
- Buzzer serial protocol
- DC Motor serial protocol
- DHT Sensor serial protocol
- EEPROM serial protocol
- Keyboard serial protocol
- Gyroscope Sensor serial protocol
- ID Manager serial protocol
- IR Transceiver serial protocol
- LCD Display serial protocol
- NFC Reader serial protocol
- Optical Gate serial protocol
- Register
- RF24 Transceiver serial protocol
- RGB Led serial protocol
- RGB Sensor serial protocol
- Rotary Encoder serial protocol
- Servo Motor serial protocol
- Step Counter serial protocol
- Stepper Motor serial protocol
- Switch serial protocol
- Temperature Sensor serial protocol
- Timer serial protocol
- Ultrasonic Sensor serial protocol
- Welcome messages of the Ozeki 3D Printer