mirror of
https://github.com/sascha-hemi/pycom-documentation.git
synced 2026-03-21 12:05:39 +01:00
196 lines
5.0 KiB
Markdown
196 lines
5.0 KiB
Markdown
---
|
|
title: "Pybytes library API"
|
|
aliases:
|
|
---
|
|
|
|
|
|
The Pybytes library is positioned in the [frozen](/advance/frozen/) section of the firmware. It can be imported like regular modules:
|
|
```python
|
|
from _pybytes import Pybytes
|
|
pybytes = Pybytes()
|
|
```
|
|
|
|
|
|
## Provisioning
|
|
|
|
### Pybytes.activate(activation string)
|
|
|
|
Provision the device to Pybytes. Use the `activation string` provided in Pybytes to activate the device.
|
|
|
|
### pybytes.read_config([filename='/flash/pybytes_config.json', reconnect=False])
|
|
|
|
Load the Pybytes configuration file. By default, this is found in `/flash/pybytes_config.json`
|
|
|
|
### pybytes.update_config(key, [value=None, permanent=True, silent=False, reconnect=False])
|
|
|
|
Update a `key` and `value` of the default configuration file. additional options:
|
|
* `permanent`: will call `pybytes.write_config()`. If set `False`, the update will not be stored in the configuration file.
|
|
* `silent`: set `silent` parameter of above.
|
|
* `reconnect`: calls `pybytes.reconnect()`
|
|
|
|
### set_config([key=None, value=None, permanent=True, silent=False, reconnect=False])
|
|
|
|
Same as `update_config(...)`
|
|
|
|
### pybytes.write_config([file='/flash/pybytes_config.json', silent=False])
|
|
|
|
Writes the updated configuration to the default configuration file. The parameters:
|
|
* `file`: The file name and location
|
|
* `silent`: Do not print anything
|
|
|
|
### pybytes.print_config()
|
|
|
|
Print the configuration settings to the REPL
|
|
|
|
## Connection
|
|
|
|
### pybytes.connect()
|
|
|
|
Connect the device to Pybytes following the loaded configuration file. You will need to load a configuration file before calling this.
|
|
|
|
### pybytes.start([autoconnect=True])
|
|
|
|
Same as `pybytes.connect()`, with the option to not connect
|
|
|
|
|
|
### pybytes.connect_lte()
|
|
|
|
Connect to Pybytes using LTE and the settings from the configuration file.
|
|
|
|
### pybytes.connect_wifi([reconnect=True, check_interval=0.5])
|
|
|
|
Connect to Pybytes using WiFi and the settings from the configuration file.
|
|
|
|
### pybytes.connect_sigfox()
|
|
|
|
Connect to Pybytes using SigFox and the settings from the configuration file.
|
|
|
|
### pybytes.connect_lora_otaa([timeout=120, nanogateway=False])
|
|
|
|
Connect to Pybytes using LoRa OTAA and the settings from the configuration file.
|
|
|
|
### pybytes.connect_lora_abp([timeout, nanogateway=False])
|
|
|
|
Connect to Pybytes using LoRa ABP and the settings from the configuration file.
|
|
|
|
### pybytes.disconnect()
|
|
|
|
Disconnect from Pybytes gracefully. Closes the MQTT connection and socket.
|
|
|
|
### pybytes.reconnect()
|
|
|
|
Calls `pybytes.disconnect()` followed by `pybytes.connect()`
|
|
|
|
### pybytes.isconnected()
|
|
|
|
Returns the connection status to Pybytes, can be `True` or `False`.
|
|
|
|
### pybytes.is_connected()
|
|
|
|
Same as `pybytes.isconnected()`
|
|
|
|
## Signals
|
|
|
|
### pybytes.send_signal
|
|
|
|
Note this will create a separate thread.
|
|
__class__ __init__ __module__ __qualname__
|
|
start __dict__ WAKEUP_ALL_LOW WAKEUP_ANY_HIGH
|
|
connect deepsleep
|
|
|
|
send_custom_message set_custom_message_callback
|
|
send_ping_message send_info_message
|
|
send_scan_info_message send_digital_pin_value
|
|
send_analog_pin_value send_node_signal
|
|
send_signal __periodical_pin_callback
|
|
register_periodical_digital_pin_publish
|
|
register_periodical_analog_pin_publish
|
|
add_custom_method enable_terminal
|
|
send_battery_level send_custom_location
|
|
__recv_message __process_protocol_message
|
|
export_config enable_ssl
|
|
enable_lte dump_ca activate smart_config
|
|
__smart_config_callback __smart_config_setup
|
|
__frozen __activation __custom_message_callback
|
|
__config_updated __pybytes_connection
|
|
__smart_config __conf __pymesh __conf_reader
|
|
## Sending messages
|
|
|
|
## Miscellaneous
|
|
|
|
### pybytes.deepsleep()
|
|
To test the Pybytes library API, connect your device to Pymakr and call the methods listed below.
|
|
You can use the Pybytes library API in your MicroPython project.
|
|
|
|
|
|
### Debugging
|
|
Enable debugging if you are having any issues.
|
|
There are multiple debug levels, the lowest is 0 which is for warnings only and 99 is the highest used and will print more debugging messages
|
|
|
|
#### use:
|
|
|
|
```
|
|
>> import pycom;
|
|
>> pycom.nvs_set('pybytes_debug', debugLevel)
|
|
```
|
|
|
|
#### e.g.
|
|
```
|
|
>> import pycom;
|
|
>> pycom.nvs_set('pybytes_debug', 99)
|
|
```
|
|
|
|
|
|
# API List
|
|
|
|
|
|
* [Activate](activate)
|
|
|
|
* [Connect](connect_device)
|
|
|
|
* [Connect LTE](connect_lte)
|
|
|
|
* [Connect LoRa ABP](connect_lora_abp)
|
|
|
|
* [Connect LoRa OTAA](connect_lora_otaa)
|
|
|
|
* [Connect Sigfox](connect_sigfox)
|
|
|
|
* [Connect Wifi](connect_wifi)
|
|
|
|
* [Deepsleep](deepsleep)
|
|
|
|
* [Disconnect](disconnect)
|
|
|
|
* [Dump CA](dump_ca)
|
|
|
|
* [Enable LTE](enable_lte)
|
|
|
|
* [Enable SSL](enable_ssl)
|
|
|
|
* [Enable terminal](enable_terminal)
|
|
|
|
* [Export configuration](export_config)
|
|
|
|
* [Get configuration](get_config)
|
|
|
|
* [Is connected](is_connected)
|
|
|
|
* [Print configuration](print_config)
|
|
|
|
* [Read configuration](read_config)
|
|
|
|
* [Reconnect](reconnect)
|
|
|
|
* [Send info message](send_info_message)
|
|
|
|
* [Send ping message](send_ping_message)
|
|
|
|
* [Send signal](send_signal)
|
|
|
|
* [Set configuration](set_config)
|
|
|
|
* [Start](start)
|
|
|
|
* [Update configuration](update_config)
|