Line 49: |
Line 49: |
| | | |
| [[File:Networking_rutos_manual_bluetooth_paired_devices_unpair_button.png|border|class=tlt-border]] | | [[File:Networking_rutos_manual_bluetooth_paired_devices_unpair_button.png|border|class=tlt-border]] |
| + | |
| + | ==ubus commands== |
| + | |
| + | This section contains instructions on how to use <b>ubus commands</b> in order scan and pair with Bluetooth devices. |
| + | |
| + | The <i>ubus</i> [[Command Line Interfaces|command line]] tool provides the possibility to interact with the <i>ubusd</i> server (with all currently registered services). It uses the JSON format for calling procedures with parameters and returning responses. |
| + | |
| + | Before you start using ubus commands to control Bluetooth, make sure that Bluetooth is turned on in the [[#General_Settings|General Settings]] section. |
| + | ---- |
| + | You must first initialize <i>blesemd</i>. You can do that by executing <b><i>blesemd -D</i></b> command. The output should look similar to this: |
| + | |
| + | ... |
| + | root@Teltonika-{{{name}}}:~# <b>blesemd -D</b> |
| + | Initializing blesemd... |
| + | Warning: debug messages will be shown! |
| + | Preparing bluetooth interface... |
| + | Reading config... |
| + | Devices loaded: 0 |
| + | Creating database... |
| + | modbus_data table already exists |
| + | SENT_ID_TABLE already exists |
| + | Create DB done |
| + | Initializing uloop... |
| + | Connecting to ubus... |
| + | Initializing BLE device... |
| + | Initializing BLE ubus interface... |
| + | Adding ubus object... |
| + | ... |
| + | ---- |
| + | Run <b><i>scan.start</b></i> to start Bluetooth scan: |
| + | |
| + | ... |
| + | ubus call blesem <b>scan.start</b> |
| + | ... |
| + | |
| + | To see scan results, use command <b><i>scan.result</b></i>: |
| + | |
| + | ... |
| + | ubus call blesem <b>scan.result</b> |
| + | ... |
| + | ---- |
| + | The scan process takes about 30 seconds. If you see <b><i>"scanning": 1</b></i> in the output it means that scanning is still in progress. Once the scanning has finished, the <i>scan.result</i> output should look similar to this: |
| + | |
| + | ... |
| + | { |
| + | <b>"scanning": 0,</b> |
| + | "devices": [ |
| + | { |
| + | "name": "RT_T", |
| + | "rssi": -72, |
| + | "address": "FF:CB:FF:6F:23:FB" |
| + | } |
| + | ] |
| + | } |
| + | ... |
| + | |
| + | The list of device parameters will always contain"rssi" and "address", while the existence of "name" will depend on whether the paired Bluetooth supports it or not. |
| + | |
| + | ... |
| + | { |
| + | "scanning": 0, |
| + | "devices": [ |
| + | { |
| + | "rssi": -42, |
| + | "address": "2F:2A:0A:0A:7A:AA" |
| + | }, |
| + | { |
| + | "name": "RT_T", |
| + | "rssi": -77, |
| + | "address": "CF:0A:52:5E:35:D7" |
| + | } |
| + | ] |
| + | } |
| + | ... |
| + | ---- |
| + | In order to pair devices use the <b><i>pair</b></i> command and specify the device's MAC address: |
| + | |
| + | ... |
| + | ubus call blesem <b>pair</b> '{<b>"address":"FF:CC:FF:6A:23:CB"</b>}' |
| + | ... |
| + | |
| + | If the pairing process was successful you should see an output similar to this: |
| + | |
| + | ... |
| + | { |
| + | "success": "device successfully paired" |
| + | } |
| + | ... |
| + | --- |
| + | To get the statistics from paired devices, use the <b><i>stat</b></i> command and specify the device's MAC address: |
| + | |
| + | ... |
| + | ubus call blesem <b>stat</b> '{<b>"address":"FF:CB:FA:6A:23:CB"</b>}' |
| + | ... |
| + | |
| + | The output should look similar to this: |
| + | |
| + | ... |
| + | { |
| + | "success": "successfully requested status", |
| + | "model": "3901", |
| + | "battery": 98, |
| + | "temperature": "20.34", |
| + | "humidity": 20, |
| + | "firmware": "23", |
| + | . |
| + | } |
| + | ... |
| + | |
| | | |
| [[Category:{{{name}}} Services section]] | | [[Category:{{{name}}} Services section]] |