Advance wireless joystick

This project is about to create a joystick for controlling robots or drone. but when you want to buy one of them and use it in your projects you need to access code and datasheet. In the other hand, in some case, you need to full control of joystick and its functions for your robot. it can not be done without full access to source code and hardware.

Wireless Joystick

Today, wireless communication are commonly use in projects. wireless communication, or sometimes simply wireless, is the transfer of information
between two or more points that are not connected by an electrical conductor In computers.

Build your own joystick with PIC MCU
producted Joystick for our purpose

We designed and produced a joystick for our purpose. its used HMT and HMR module to communicate with the robot in 9600 baud rate and 915 MegaHertz. Both HMT and HMR module use serial protocol. Alphabetic LCD ( 2×16 Character LCD ) use to display data and information.


We use PIC microcontroller (PIC MCU) as the main processor of this project. it can be so good performance for communicating between peripherals such as transmitter and LCD. In other words, it has enough IO pins and peripherals. The joystick uses two actuators and four ADC output as MCU inputs. there are two joystick modules for all directions. this module combines two potentiometers and a pushbutton switch into a solid mechanical package with an ergonomic thumb dome. perfect for controlling motors, servos, etc. The potentiometers track the position of the joystick in two dimensions and the button responds to downward pressure. Springs pull the joystick back to the center position. I use PIC16F877A with external 8 Mhz crystal as clock source. If you want to use an internal clock, you can disable it from the compiler.

Encode and Decode system

Same as IP on the internet we used IP in the communication system. each data carried with one identification code at the start frame. The first frame always is IP address and the second frame is data. A second frame encodes with the parity bit. This strategy can help to identify an error in the message we received.

A parity bit, or check bit, is a bit added to a string of binary code to ensure that the total number of 1-bits in the string is even or odd. There are two variants of parity bits: even parity bit and odd parity bit. In the case of even parity, for a given set of bits, the occurrences of bits whose value is 1 is counted. If that count is odd, the parity bit value is set to 1, making the total count of occurrences of 1s in the whole set (including the parity bit) an even number. If the count of 1s in a given set of bits is already even, the parity bit’s value is 0.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.