Metadata-Version: 2.4
Name: wiliot_certificate
Version: 4.5.2
Summary: A library for certifying Wiliot-compliant boards
Author-email: Wiliot <support@wiliot.com>
License-Expression: MIT
Project-URL: Wiliot, https://www.wiliot.com
Project-URL: Certified, https://www.wiliot.com/product/ambient-iot-network#partner-device-certification
Classifier: Programming Language :: Python :: 3
Classifier: Operating System :: OS Independent
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: flask>=3.1
Requires-Dist: plotly>=6.0.0
Requires-Dist: statsmodels>=0.14.4
Requires-Dist: pandas>=2.2.3
Requires-Dist: tabulate>=0.9.0
Requires-Dist: paho-mqtt>=2.1.0
Requires-Dist: bitstruct>=8.20.0
Requires-Dist: protobuf>=6.30.2
Requires-Dist: jsonschema>=4.23.0
Requires-Dist: pyserial>=3.5
Requires-Dist: jinja2>=3.1.5
Requires-Dist: werkzeug>=3.1.3
Requires-Dist: requests>=2.32.3
Dynamic: license-file

# wiliot-certificate

<!-- Description -->
wiliot-certificate is a Python library that provides tools for testing and certifying boards for compatibility with Wiliot’s ecosystem.
This python package includes the following tools:
 - Certification Wizard (`wlt-cert`)
 - Certificate CLI (`wlt-cert-cli`)
 - Tester Upgrade (`wlt-cert-tester-upgrade`)
 - Registration Certificate Test (`wlt-cert-reg`)
 - Wiliot Board Type Management CLI (`wlt-btm`)

# Versioning: 
wiliot-certificate versions 4.5.x are compatible with firmware version >=4.4.0.
- Bridge API version >= 12
- Gateway API version >= 203

## Installing wiliot-certificate
````commandline
pip install wiliot-certificate
````

## Using wiliot-certificate
### Certification
````commandline
wlt-cert
````
This tool is the default to test and certify your device.
It runs a setup wizard that walks you through the initialization steps before running the tests.
You'll need a [validation schema](https://community.wiliot.com/customers/s/article/Validation-Schema) and a [tester device](https://community.wiliot.com/customers/s/article/Wiliot-Certification).
Once set up it opens a terminal and tests your device.



### Certificate CLI
````commandline
wlt-cert-cli -h
````
CLI version of the certificate. Use -h for details on the different arguments.


### Tester Upgrade
````commandline
wlt-cert-tester-upgrade
````
Upgrades the firmware of the tester device to the version required for certification.


### Registration Certificate
````commandline
wlt-cert-reg
````
Certify the gateway registration process to Wiliot platform.
The gateway must use Wiliot production MQTT broker, and mustn't be registered to any account on Wiliot platform.
Use -h for details on the arguments (see [Registration](https://community.wiliot.com/customers/s/article/Wiliot-Certification) for more info).

### Wiliot Board Type Management
````commandline
wlt-btm
````
CLI tool for managing board type versions in Wiliot's Board Type Management (BTM) system.
This tool allows you to manage firmware versions for gateways and bridges.

#### Key Features:
- **Board Types**: List available board types
  ````commandline
  wlt-btm --env aws --server prod --token AAbbCC11... --get_board_types
  ````

- **Get Versions**: Retrieve available versions for board types
  ````commandline
  wlt-btm --env aws --server prod --token AAbbCC11... --get --ifc wifi
  ````

- **Post New Versions**: Set new firmware versions for gateways or bridges
  ````commandline
  wlt-btm --env aws --server prod --token AAbbCC11... --post --ifc wifi --unified 4.5.0 --wifi 4.5.0 --ble 4.5.0
  ````

- **File Management**: Upload/download firmware files and validation schemas
  ````commandline
  wlt-btm --env aws --server prod --token AAbbCC11... --ifc wifi --unified 4.5.0 --put_file X.Y.Z.json
  wlt-btm --env aws --server prod --token AAbbCC11... --ifc wifi --unified 4.5.0 --put_file brg_app.bin
  ````

- **Beta/Official Status**: Move versions between beta and official
  ````commandline
  wlt-btm --env aws --server prod --token AAbbCC11... --ifc wifi --unified 4.5.0 --beta 0  # Move to official
  wlt-btm --env aws --server prod --token AAbbCC11... --ifc wifi --unified 4.5.0 --beta 1  # Move to beta
  ````

Use `wlt-btm -h` for complete list of arguments and options.


## The following capabilities are not tested in this version
##### Cloud Connectivity & Misc
 - Board type registered within the Board Type Management system
##### Module Energy 2400
  - Functionality of energy pattern, output power and duty cycle
##### Module Energy SUB1G
  - Functionality of energy pattern and duty cycle 
##### Module Datapath 
  - RSSI edge cases: -127 and 0 
  - Functionality of transmission pattern, output power
##### Calibration 
  - Functionality of output power and interval calibration 
  - Functionality of calibration transmission patterns for the configuration STANDARD & EU & DISABLE
