acid-drop

- Hacking the planet from a LilyGo T-Deck using custom firmware
git clone git://git.acid.vegas/acid-drop.git
Log | Files | Refs | Archive | README | LICENSE

README.md (6747B)

      1 # RadioLib ![Build Status](https://github.com/jgromes/RadioLib/workflows/CI/badge.svg)
      2 
      3 ### _One radio library to rule them all!_
      4 
      5 ## Universal wireless communication library for embedded devices
      6 
      7 ## See the [Wiki](https://github.com/jgromes/RadioLib/wiki) for further information. See the [GitHub Pages](https://jgromes.github.io/RadioLib) for detailed and up-to-date API reference.
      8 
      9 RadioLib allows its users to integrate all sorts of different wireless communication modules, protocols and even digital modes into a single consistent system.
     10 Want to add a Bluetooth interface to your LoRa network? Sure thing! Do you just want to go really old-school and play around with radio teletype, slow-scan TV, or even Hellschreiber using nothing but a cheap radio module? Why not!
     11 
     12 RadioLib was originally created as a driver for [__RadioShield__](https://github.com/jgromes/RadioShield), but it can be used to control as many different wireless modules as you like - or at least as many as your microcontroller can handle!
     13 
     14 ### Supported modules:
     15 * __CC1101__ FSK radio module
     16 * __LLCC68__ LoRa module
     17 * __nRF24L01__ 2.4 GHz module
     18 * __RF69__ FSK/OOK radio module
     19 * __RFM2x__ series FSK modules (RFM22, RM23)
     20 * __RFM9x__ series LoRa modules (RFM95, RM96, RFM97, RFM98)
     21 * __Si443x__ series FSK modules (Si4430, Si4431, Si4432)
     22 * __SX126x__ series LoRa modules (SX1261, SX1262, SX1268)
     23 * __SX127x__ series LoRa modules (SX1272, SX1273, SX1276, SX1277, SX1278, SX1279)
     24 * __SX128x__ series LoRa/GFSK/BLE/FLRC modules (SX1280, SX1281, SX1282)
     25 * __SX1231__ FSK/OOK radio module
     26 
     27 ### Supported protocols and digital modes:
     28 * __AX.25__ using 2-FSK or AFSK for modules:  
     29 SX127x, RFM9x, SX126x, RF69, SX1231, CC1101, RFM2x and Si443x
     30 * [__RTTY__](https://www.sigidwiki.com/wiki/RTTY) using 2-FSK or AFSK for modules:  
     31 SX127x, RFM9x, SX126x, RF69, SX1231, CC1101, nRF24L01, RFM2x, Si443x and SX128x
     32 * [__Morse Code__](https://www.sigidwiki.com/wiki/Morse_Code_(CW)) using 2-FSK or AFSK for modules:  
     33 SX127x, RFM9x, SX126x, RF69, SX1231, CC1101, nRF24L01, RFM2x, Si443x and SX128x
     34 * [__SSTV__](https://www.sigidwiki.com/wiki/SSTV) using 2-FSK or AFSK for modules:  
     35 SX127x, RFM9x, SX126x, RF69, SX1231, CC1101, RFM2x and Si443x
     36 * [__Hellschreiber__](https://www.sigidwiki.com/wiki/Hellschreiber) using 2-FSK or AFSK for modules:  
     37 SX127x, RFM9x, SX126x, RF69, SX1231, CC1101, nRF24L01, RFM2x, Si443x and SX128x
     38 * [__APRS__](https://www.sigidwiki.com/wiki/APRS) using AFSK for modules:  
     39 SX127x, RFM9x, SX126x, RF69, SX1231, CC1101, nRF24L01, RFM2x, Si443x and SX128x
     40 
     41 ### Supported Arduino platforms:
     42 * __Arduino__  
     43   * [__AVR__](https://github.com/arduino/ArduinoCore-avr) - Arduino Uno, Mega, Leonardo, Pro Mini, Nano etc.
     44   * [__mbed__](https://github.com/arduino/ArduinoCore-mbed) - Arduino Nano 33 BLE and Arduino Portenta H7
     45   * [__megaAVR__](https://github.com/arduino/ArduinoCore-megaavr) - Arduino Uno WiFi Rev.2 and Nano Every
     46   * [__SAM__](https://github.com/arduino/ArduinoCore-sam) - Arduino Due
     47   * [__SAMD__](https://github.com/arduino/ArduinoCore-samd) - Arduino Zero, MKR boards, M0 Pro etc.
     48 
     49 * __Adafruit__
     50   * [__SAMD__](https://github.com/adafruit/ArduinoCore-samd) - Adafruit Feather M0 and M4 boards (Feather, Metro, Gemma, Trinket etc.)
     51   * [__nRF52__](https://github.com/adafruit/Adafruit_nRF52_Arduino) - Adafruit Feather nRF528x, Bluefruit and CLUE
     52 
     53 * __Espressif__
     54   * [__ESP32__](https://github.com/espressif/arduino-esp32) - ESP32-based boards
     55   * [__ESP8266__](https://github.com/esp8266/Arduino) - ESP8266-based boards
     56 
     57 * __Intel__
     58   * [__Curie__](https://github.com/arduino/ArduinoCore-arc32) - Arduino 101
     59 
     60 * __SparkFun__
     61   * [__Apollo3__](https://github.com/sparkfun/Arduino_Apollo3) - Sparkfun Artemis Redboard
     62 
     63 * __ST Microelectronics__
     64   * [__STM32__ (official core)](https://github.com/stm32duino/Arduino_Core_STM32) - STM32 Nucleo, Discovery, Maple, BluePill, BlackPill etc.
     65   * [__STM32__ (unofficial core)](https://github.com/rogerclarkmelbourne/Arduino_STM32) - STM32F1 and STM32F4-based boards
     66 
     67 * __MCUdude__
     68   * [__MegaCoreX__](https://github.com/MCUdude/MegaCoreX) - megaAVR-0 series (ATmega4809, ATmega3209 etc.)
     69   * [__MegaCore__](https://github.com/MCUdude/MegaCore) - AVR (ATmega1281, ATmega640 etc.)
     70 
     71 * __Raspberry Pi__
     72   * [__RP2040__](https://github.com/arduino/ArduinoCore-mbed) - Raspberry Pi Pico and Arduino Nano RP2040 Connect
     73   * [__Raspberry Pi__](https://github.com/me-no-dev/RasPiArduino) - Arduino framework for RaspberryPI
     74 
     75 * __Heltec__
     76   * [__CubeCell__](https://github.com/HelTecAutomation/CubeCell-Arduino) - ASR650X series (CubeCell-Board, CubeCell-Capsule, CubeCell-Module etc.)
     77 
     78 * __PJRC__
     79   * [__Teensy__](https://github.com/PaulStoffregen/cores) - Teensy 2.x, 3.x and 4.x boards
     80 
     81 The list above is by no means exhaustive - RadioLib code is independent of the used platform! Compilation of all examples is tested for all platforms officially supported prior to releasing new version.
     82 
     83 ### In development:
     84 * __AX5243__ FSK module
     85 * __LoRaWAN__ protocol for SX127x, RFM9x and SX126x modules
     86 * ___and more!___
     87 
     88 ## Frequently Asked Questions
     89 
     90 ### Where should I start?
     91 First of all, take a look at the [examples](https://github.com/jgromes/RadioLib/tree/master/examples) and the [Wiki](https://github.com/jgromes/RadioLib/wiki) - especially the [Basics](https://github.com/jgromes/RadioLib/wiki/Basics) page. There's a lot of useful information over there. If something isn't working as expected, try searching the [issues](https://github.com/jgromes/RadioLib/issues/).
     92 
     93 ### Help, my module isn't working!
     94 The fastest way to get help is by creating an [issue](https://github.com/jgromes/RadioLib/issues/new/choose) using the appropriate template. It is also highly recommended to try running the examples first - their functionality is tested from time to time and they should work. Finally, RadioLib is still under development, which means that sometimes, backwards-incompatible changes might be introduced. Though these are kept at minimum, sometimes it is unavoidable. You can check the [release changelog](https://github.com/jgromes/RadioLib/releases) to find out if there's been such a major change recently.
     95 
     96 ### RadioLib doesn't support my module! What should I do?
     97 Start by creating new issue (if it doesn't exist yet). If you have some experience with microcontrollers and C/C++ in general, you can try to add the support yourself! Use the template files in `/extras/` folder to get started. This is by far the fastest way to implement new modules into RadioLib, since I can't be working on everything all the time. If you don't trust your programming skills enough to have a go at it yourself, don't worry. I will try to implement all requested modules, but it will take me a while.