RadioLib/README.md

58 wiersze
3.4 KiB
Markdown
Czysty Zwykły widok Historia

2019-02-08 14:58:29 +00:00
# RadioLib [![Build Status](https://travis-ci.org/jgromes/RadioLib.svg?branch=master)](https://travis-ci.org/jgromes/RadioLib)
2018-07-14 15:03:27 +00:00
2018-12-26 12:46:06 +00:00
### _One radio library to rule them all!_
2018-07-14 15:03:27 +00:00
## Universal wireless communication library for Arduino
2019-05-25 08:44:27 +00:00
## 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.
2019-02-05 08:59:11 +00:00
RadioLib allows its users to integrate all sorts of different wireless communication modules into a single consistent system.
Want to add a Bluetooth interface to your ZigBee network? Sure thing! Need to connect LoRa network to the Internet with a GSM module? RadioLib has got your back!
2018-07-14 15:03:27 +00:00
2019-02-05 08:59:11 +00:00
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 Arduino can handle!
2018-07-14 15:03:27 +00:00
### Supported modules:
2018-12-26 12:46:06 +00:00
* __CC1101__ FSK radio module
2019-07-17 18:12:29 +00:00
* __ESP8266__ WiFi module
2018-07-14 15:03:27 +00:00
* __HC05__ Bluetooth module
* __JDY08__ BLE module
2019-06-01 18:56:24 +00:00
* __nRF24L01__ 2.4 GHz module
2018-07-14 15:03:27 +00:00
* __RF69__ FSK/OOK radio module
2019-05-19 15:10:11 +00:00
* __RFM9x__ series LoRa modules (RFM95, RM96, RFM97, RFM98)
* __SX127x__ series LoRa modules (SX1272, SX1273, SX1276, SX1277, SX1278, SX1279)
* __SX126x__ series LoRa modules (SX1261, SX1262, SX1268)
2018-07-14 15:03:27 +00:00
* __SX1231__ FSK/OOK radio module
* __XBee__ modules (S2B)
### Supported protocols:
2019-05-19 15:10:11 +00:00
* __MQTT__ for modules: ESP8266
* __HTTP__ for modules: ESP8266
2019-06-01 18:56:24 +00:00
* __RTTY__ for modules: SX127x, RFM9x, SX126x, RF69, SX1231, CC1101 and nRF24L01
* __Morse Code__ for modules: SX127x, RFM9x, SX126x, RF69, SX1231, CC1101 and nRF24L01
2018-07-14 15:03:27 +00:00
2019-07-31 05:27:40 +00:00
### Supported platforms:
2019-11-23 09:11:07 +00:00
* __AVR__ - tested on Uno, Mega and Leonardo
2019-11-23 09:24:50 +00:00
* __ESP8266__ - tested NodeMCU and Wemos D1
2019-11-23 09:11:07 +00:00
* __ESP32__ - tested on ESP-WROOM-32
* __STM32__ - tested on Nucleo L452RE-P
2019-11-23 09:24:50 +00:00
* __SAMD__ - Arduino Zero, Arduino MKR boards, M0 Pro etc.
2019-11-23 09:11:07 +00:00
* __SAM__ - Arduino Due
2019-11-23 09:24:50 +00:00
* __nRF52__ - Adafruit Bluefruit Feather etc.
* __Intel Curie__ - Arduino 101
* __megaAVR__ - Arduino Uno WiFi Rev.2 etc.
The list above is by no means exhaustive. Most of RadioLib code is independent of the used platform, so as long as your board is running some Arduino-compatible core, RadioLib should work.
2019-07-31 05:27:40 +00:00
2018-07-14 15:03:27 +00:00
### In development:
* __SIM800C__ GSM module
2019-05-19 15:10:11 +00:00
* __LoRaWAN__ protocol for SX127x, RFM9x and SX126x modules
2018-07-14 15:03:27 +00:00
* ___and more!___
## Frequently Asked Questions
### Where should I start?
2019-03-12 19:59:31 +00:00
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. Also, you should check out [RadioShield](https://github.com/jgromes/RadioShield) - open source Arduino shield that will allow you to easily connect any two wireless modules supported by RadioLib!
2018-07-14 15:03:27 +00:00
2019-02-05 08:59:11 +00:00
### RadioLib doesn't support my module! What should I do?
Start by creating new issue (if it doesn't exist yet). If you have some experience with Arduino 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.