Getting Started
Hardware Requirements
TX Side (Radio Transmitter Module)
- Microcontroller: Raspberry Pi Pico (RP2040)
- Radio: SX1280 radio module with SPI interface
- Wiring:
- SPI: SCK (GP18), MOSI (GP19), MISO (GP16), CS (GP17)
- Control: BUSY (GP20), DIO1 (GP21), RST (GP22)
- UART: TX (GP8), RX (GP9) to RC Board
RX Side (Flight Controller Receiver)
- Microcontroller: Raspberry Pi Pico W (RP2040 with WiFi - for future features)
- Radio: SX1280 radio module (same wiring as TX)
- Output: CRSF protocol (TX → GP8, RX → GP9)
RC Board (Input Controller)
- Microcontroller: Raspberry Pi Pico
- Display: SH1106G OLED display (128x64, I2C)
- ADC: ADS1115 16-bit ADC module (I2C)
- Inputs: 2x 2-axis analog joysticks, 4x toggle switches, 2x navigation buttons
Software Setup
- Install PlatformIO: The project uses PlatformIO for building and uploading firmware.
- Clone the Repository: Clone the XLRS firmware repository.
- Build and Upload:
- TX Module:
pio run -e tx_sx128x -t upload - RX Module:
pio run -e rx_sx128x -t upload - RC Board:
pio run -e rc-crsf -t upload
- TX Module:
Note: The TX module expects to receive channel data from the RC board via UART protocol. Make sure the RC board is running and connected before the TX module will transmit.