# Adding protocols

Adding your device protocol to OpenMQTTGateway enables it to increase interoperability and to create new use cases with your device. Below you will find some guidance to do that.

# RF or IR

For adding RF and IR protocols to OpenMQTTGateway the best way is to do a pull request to RCSwitch (opens new window), Pilight (opens new window) for RF, and IRRemoteESP8266 (opens new window) for IR.

# BLE

For BLE message decoding OpenMQTTGateway uses the Theengs Decoder (opens new window) library. New device decoder pull requests can be submitted directly to the GitHub repository (opens new window).

Currently we support the reading of advertizing BLE devices, advertizing means that the BLE device broadcasts regularly its sensor data without the need of a BLE connection.