O QuadmeUp Crossbow é um projeto de bricolage que fornece 5 km (pelo menos) de link RC para UAV (aviões e drones) por um preço abaixo de US $ 40. Eu usa módulos de rádio SX1278 (Lora 868MHz/915MHz) (como Honerf RFM95W) conectados às placas compatíveis com Arduino. Pode ser Arduino regular conectado via SPI a SX1278 ou placa dedicada como Adafruit Feather 32u4 RFM Lora ou Lora32U4 II
Versões futuras podem ser portadas para os módulos ESP32 LORA32.
Funciona:
Precisa de implementação:
Para compilar, a seguinte bibliotecas deve ser instalada:
| Byte | Descrição | Notas |
|---|---|---|
| 1 | Tipo de quadro e canal de rádio usado | bits 7-5 define quadro, bits 4-0 canal de rádio atual |
| 2 - 33 | Carga útil | lenghth definido por tipo de quadro |
| comprimento da carga útil + 2 | CRC | Usando o método CRC8_DVB_S2 |
O CRC é calculado usando o método crc8_dvb_s2 . O valor inicial do CRC para cada quadro CRC é igual a CRC de 4 bytes de ligação (exclusivos para o módulo transmissor).
| Valor | Valor Hex | Descrição | Direção | Comprimento da carga útil |
|---|---|---|---|---|
| 0000 | 0x0 | RC canais dados RC_DATA | Tx -> rx | 9 |
| 0001 | 0x1 | Receptor Saúde e Telemetria Básica RX_HEALTH | Rx -> tx | 6 |
| 0010 | 0x2 | Solicite a configuração do receptor | Tx -> rx | nenhum uso |
| 0011 | 0x3 | Configuração do receptor | Rx -> tx | nenhum uso |
| 0100 | 0x4 | Defina a configuração do receptor | Tx -> rx | nenhum uso |
| 0101 | 0x5 | Quadro de ping, usa 9 bytes de carga útil | Tx -> rx | 4 |
| 0110 | 0x6 | Quadro de pong, a mesma carga útil que ping | Rx -> tx | 4 |
| 0111 | 0x7 | Quadro BIND , transmitido pelo TX apenas durante a ligação | Tx -> rx | 4 |
RC_DATA FORMATO FORMAO protocolo permite enviar 10 canais RC no total codificado como seguinte
O comprimento total da carga útil RC_DATA é de 9 bytes
RX_HEALTH Frame Formato| Byte | Descrição |
|---|---|
| 1 | Rx rssi |
| 2 | Rx snr |
| 3 | RX Supply Volatage, enviada em 0,1V |
| 4 | RX Entrada analógica 1 enviado em 0,1V |
| 5 | RX Entrada analógica 2 enviada em 0,1V |
| 6 | Bandeiras |
| Pedaço | Significado |
|---|---|
| 00000001 | Dispositivo no modo falhas seguintes |
PING e PONG Os quadros PING e PONG devem determinar a rodada de pacotes entre o módulo TX e RX . O TX envia o quadro PING com micros curt. Se o RX receber o quadro PING , ele responderá sua carga útil como quadro PONG .
BIND| Byte | Descrição |
|---|---|
| 1 | Chave de ligação byte 0 |
| 2 | Chave de ligação byte 1 |
| 3 | Chave Byte Byte 2 |
| 4 | Chave Byte Byte 3 |
1520OpenTX 2.2.1 ou mais recente é necessário com o RF SBUS externo ativado.
SBUS1-1612.0ms ou 14.0ms normal 
Testado com:
O módulo RX emite dados RC usando o protocolo SBUS. O truque é que o módulo RX DIY não possui inversores; portanto, o sinal SBUS também não é invertido (padrão TTL), enquanto o protocolo SBUS padrão utilizou sinal serial invertido.
Isso significa o seguinte:
Depois de piscar TX e RX, a ligação é necessária.

