blob: ebd63eda45ab6b124ad1a80f304e1d4d476ac30a [file] [log] [blame] [view]
# CHIP ESP32 Pigweed Example Application
Please
[setup ESP-IDF and CHIP Environment](../../../docs/platforms/esp32/setup_idf_chip.md)
and refer
[building and commissioning](../../../docs/platforms/esp32/build_app_and_commission.md)
guides to get started.
---
- [Introduction](#introduction)
- [Testing the Example Application](#testing-the-example-application)
---
### Introduction
The ESP32 example demonstrates the usage of Pigweed module functionalities in an
application.
The example is based on [CHIP](https://github.com/project-chip/connectedhomeip),
the [Pigweed](https://pigweed.googlesource.com/pigweed/pigweed) module, which is
a collection of libraries that provide different functionalities for embedded
systems, and the ESP32 platform.
You can use this example as a training ground for making experiments, testing
Pigweed module features and checking what actions are necessary to fully
integrate Pigweed in a CHIP project.
Pigweed functionalities are being gradually integrated into CHIP. Currently, the
following features are available:
- **Echo RPC** - Creates a Remote Procedure Call server and allows sending
commands through the serial port to the device, which makes echo and sends
the received commands back.
### Testing the Example Application
Run the following command to start an interactive Python shell, where the Echo
RPC commands can be invoked:
python -m pw_hdlc.rpc_console --device /dev/tty.SLAB_USBtoUART -b 115200 $CHIP_ROOT/third_party/pigweed/repo/pw_rpc/pw_rpc_protos/echo.proto -o /tmp/pw_rpc.out
To send an Echo RPC message, type the following command, where the actual
message is the text in quotation marks after the `msg=` phrase:
rpcs.pw.rpc.EchoService.Echo(msg="hi")