Introduction: Make 8 CH RC Transmitter and Receiver With Stm32f103 and Nrf24l01
Overview
The 8-channel RC transmitter and receiver system crafted for the PCBWay 6th Contest is a highly intricate and technologically advanced solution tailored for remote-controlled applications. By harnessing the capabilities of the STM32F103C8T6 microcontrollers, NRF24L01 wireless communication modules, a 0.96-inch OLED display, buzzer, dual pots, dual switches, resistors, capacitors, and other key components, this project offers a sophisticated and feature-rich platform for hobbyists and RC enthusiasts.
Supplies
Material for Transmitter:
STM32:https://bit.ly/3ODReqC
NRF24L01 GT24 Mini:https://bit.ly/3HTMQA0
E11 ENC:https://bit.ly/3UDggKq
0.96 OLED:https://bit.ly/49arquy
10k resistance(smd):https://bit.ly/3SAMR0D
1k resistance(smd):https://bit.ly/3SAMR0D
100nf cap(smd):https://bit.ly/3ODT22S
Buzzer:https://bit.ly/3uru93D
SS8050/bc547 transistor:https://bit.ly/487k8q0
AMS117(3.3v reg):https://bit.ly/497yk3N
10uF cap:https://bit.ly/3SzbI4Y
Male Headers:https://bit.ly/3uxOzrJ
Material for Receiver:
Note: You have to desolder the components from the stm32f103c8t6 development board and then place n solder these smd components to receiver board.
STM32:https://bit.ly/3ODReqC
NRF24L01 GT24 Mini:https://bit.ly/3HTMQA0
Male Headers:https://bit.ly/3uxOzrJ
AMS117:https://bit.ly/497yk3N
10uF cap:https://bit.ly/3SzbI4Y
100nf cap(smd):https://bit.ly/3ODT22S
Step 1: WORKING OF TX AND RX
Transmitter (TX) Working
User Interface Initialization:
- Upon power-up, the STM32F103C8T6 microcontroller on the transmitter initializes the user interface, activating the 0.96-inch OLED display to present the main menu.
- The menu system is designed to facilitate easy navigation and configuration of various settings.
Control Inputs Processing:
- The dual pots and switches on the transmitter provide the user with tactile controls. These inputs are read by the STM32F103C8T6, allowing users to adjust parameters such as stick calibration, channel tuning, and mode selection.
Data Encoding and Transmission:
- User inputs and configurations are encoded by the microcontroller into a data packet.
- The NRF24L01 wireless module is then employed to transmit this packet wirelessly to the receiver.
PPM Output for Simulator:
- If the simulator mode is selected, the transmitter generates a PPM signal based on user inputs and transmits it through the NRF24L01 module.
- This facilitates a realistic training environment for RC enthusiasts using simulators.
Audio Feedback with Buzzer:
- The microcontroller triggers the buzzer to provide audible feedback for specific events, warnings, or successful execution of user commands, enhancing the user experience.
Customizable Channel Configuration:
- Users can navigate through the menu to configure individual channel settings, including inversion and tuning.
- The transmitter stores these configurations for precise control over connected devices.
SCHEMATIC OF TX
Receiver (RX) Working
Wireless Data Reception:
- The NRF24L01 module on the receiver continuously scans for incoming data packets.
- Once a packet is received, it is forwarded to the STM32F103C8T6 microcontroller for processing.
Data Decoding and Channel Output:
- The microcontroller decodes the received data packet, extracting user inputs and configurations sent by the transmitter.
- It processes this information to generate PWM, PPM, or SBus signals based on user preferences.
Output Signal Options:
- For 8-channel PWM operation, the receiver generates separate PWM signals for each channel, suitable for direct control of servos or other PWM-compatible devices.
- In PPM mode, the receiver consolidates the signals into a single PPM stream for compatibility with a wide range of RC devices.
- SBus mode utilizes a streamlined serial communication protocol for efficient and high-speed data transfer.
Smooth Operation and Device Control:
- The processed signals are then sent to connected devices, ensuring smooth and responsive control.
- The receiver's capabilities allow for precise and dynamic control over RC vehicles, drones, or other devices.
SCHEMATIC OF RX
Step 2: OUTPUT SIGNALS OF TX AND RX
Transmitter PPM Output:
This diy transmitter is capable of giving ppm signal output through aux port to play any pc fpv or simulator with this.To enable this option you have to go to output setting on transmitter oled menu and then you have to turn on the ppm output.
Note:When you are using this transmitter with receiver.Makesure to turn off the ppm output.Because its high priority signal.
Receiver Output Signals:
The receiver that i made is capable of giving 8 CH PWM,PPM and also SBUS signal.You can use this receiver with rc car,drones and aircraft.
For Binding:
You have turn on both the transmitter and receiver.Then you have to press reset button of receiver and then the receiver will automatically bind to the transmitter.
Step 3: UPLOADING CODE
FIRMWARE UPLOADING
To upload the firmware into this transmitter and receiver.First you need any type of usb to serial converter.In this time i am CH340 usb serial converter.
Then you need to connect the usb serial converter to transmitter and receiver according to this diagram.
Transmitter
Receiver
Software
After making the connection of usb serial converter to transmitter and receiver.You have to download and install this software.
Software Link:https://www.st.com/en/development-tools/flasher-stm32.html#get-software
After installing the software
Follow Steps:
- plug the usb serial converter to pc.
- Press Reset button which are located on stm32.Very important.
- Select the com port.
- Click on next and click again next icon.
- Select Erase icon on top.
- Now click on next and the software will delete its previous data.
- Click on back icon and select Download to device icon.
- Click on its three dots icon and select the Hex file (Download from Down Below) where it is located.
- Then click on next icon and the code will uploaded to device within 15 secs.