Skip to content

What is CRSF for Arduino

Cassandra "ZZ Cat" Robinson edited this page Feb 22, 2024 · 2 revisions

CRSF for Arduino is a C++ library that is focused on bringing The Crossfire Protocol to the Arduino ecosystem.

CRSF - AKA The Crossfire Protocol

The Crossfire Protocol (henceforth abbreviated to "CRSF") itself is a universal RC protocol that consists of communication between a controller (commonly referred to as a "handset" and incorrectly referred to as a "transmitter" or "radio") and the transmitter module, communication between the transmitter module and the receiver, and communication between the receiver and a flight controller.

Communication between the controller and transmitter module is facilitated by a high speed UART protocol.
Transmitter and receiver communication is facilitated by either a LoRa or FLRC over-the-air protocol and carrier frequencies are 868 MHz, 915 MHz, and 2.4 GHz, which is used by the likes of ExpressLRS.
Communication between the receiver and flight controller is facilitated by another high speed UART protocol.

Both ExpressLRS and TBS Crossfire use CRSF.

Where and how CRSF for Arduino fits into this

Currently, CRSF for Arduino focuses on communication between the receiver and the "flight controller".
Your target hardware (EG development board) takes the place of the "flight controller", and you have bidirectional UART communication between your receiver and your target hardware.

Clone this wiki locally