Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

matter end-device implemented in Python #8589

Conversation

markus-becker-tridonic-com
Copy link
Contributor

@markus-becker-tridonic-com markus-becker-tridonic-com commented Jul 23, 2021

Problem

Currently there is a Python matter controller in the source tree. There is no Python matter end-device.

Change overview

This PR facilitates to create a Python based matter end-device.

  • Adds python/chip/server/ServerInit.cpp and Python wrapper
  • Adds Python lighting device sample with README in examples/lighting-app/python
    • This sample requires a DALI-USB-interface
  • Checked onnetwork / ip commissioning and BT/WiFi commissioning
  • In the initiial version of this PR a modified controller-clusters.zap was used. Now the correct lighting-app.zap is used.
  • build-chip-wheel.py was auto-formatted

Testing

  • Manual test of the new Python matter end-device against chip-device-ctrl running on the same host computer as described in the README of the sample added with this PR.

This PR facilitates to create a Python based matter end-device.

* Adds sample with README in examples/lighting-app/python
  * This sample requires a DALI-USB-interface
* Checked onnetwork / ip commissioning only
* Adds server clusters for Python matter end-device to controller-clusters.zap
  * Possibly this should be split into another zap file, but hard to get the
    build system set up without duplicating code. Help/Suggestions welcome.
* build-chip-wheel.py was auto-formatted
* Typo fixed in operational-credentials-server.cpp

TODO:

[ ] check whether WiFi/BLE commissioning would work
@github-actions
Copy link

Size increase report for "esp32-example-build" from f382df3

File Section File VM
chip-ipv6only-app.elf .flash.text -172 -172
chip-shell.elf .flash.text -32 -32
chip-lock-app.elf .flash.text 64 64
Full report output
BLOAT REPORT

Files found only in the build output:
    report.csv

Comparing ./master_artifact/chip-all-clusters-app.elf and ./pull_artifact/chip-all-clusters-app.elf:

sections,vmsize,filesize

Comparing ./master_artifact/chip-pigweed-app.elf and ./pull_artifact/chip-pigweed-app.elf:

sections,vmsize,filesize

Comparing ./master_artifact/chip-temperature-measurement-app.elf and ./pull_artifact/chip-temperature-measurement-app.elf:

sections,vmsize,filesize

Comparing ./master_artifact/chip-ipv6only-app.elf and ./pull_artifact/chip-ipv6only-app.elf:

sections,vmsize,filesize
[Unmapped],0,172
.flash.text,-172,-172

Comparing ./master_artifact/chip-shell.elf and ./pull_artifact/chip-shell.elf:

sections,vmsize,filesize
[Unmapped],0,32
.flash.text,-32,-32

Comparing ./master_artifact/chip-persistent-storage.elf and ./pull_artifact/chip-persistent-storage.elf:

sections,vmsize,filesize

Comparing ./master_artifact/chip-lock-app.elf and ./pull_artifact/chip-lock-app.elf:

sections,vmsize,filesize
.flash.text,64,64
[Unmapped],0,-64


@github-actions
Copy link

Size increase report for "gn_qpg-example-build" from f382df3

File Section File VM
chip-qpg6100-lighting-example.out .text 8 8
Full report output
BLOAT REPORT

Files found only in the build output:
    report.csv

Comparing ./master_artifact/chip-qpg6100-lighting-example.out and ./pull_artifact/chip-qpg6100-lighting-example.out:

sections,vmsize,filesize
.text,8,8
[Unmapped],0,-8

Comparing ./master_artifact/chip-qpg6100-lighting-example.out.map and ./pull_artifact/chip-qpg6100-lighting-example.out.map:

BLOAT EXECUTION FAILED WITH CODE 1:
bloaty: unknown file type for file './pull_artifact/chip-qpg6100-lighting-example.out.map'


@stale
Copy link

stale bot commented Jul 30, 2021

This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs.

@stale stale bot added the stale Stale issue or PR label Jul 30, 2021
@stale stale bot removed the stale Stale issue or PR label Jul 30, 2021
@stale
Copy link

stale bot commented Aug 6, 2021

This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs.

@stale stale bot added the stale Stale issue or PR label Aug 6, 2021
@stale
Copy link

stale bot commented Aug 13, 2021

This stale pull request has been automatically closed. Thank you for your contributions.

@stale stale bot closed this Aug 13, 2021
@yunhanw-google yunhanw-google reopened this Sep 8, 2021
@stale stale bot removed the stale Stale issue or PR label Sep 8, 2021
@stale
Copy link

stale bot commented Sep 15, 2021

This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs.

@stale stale bot added the stale Stale issue or PR label Sep 15, 2021
@stale stale bot removed the stale Stale issue or PR label Sep 16, 2021
@stale
Copy link

stale bot commented Sep 23, 2021

This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs.

@stale stale bot added the stale Stale issue or PR label Sep 23, 2021
@stale
Copy link

stale bot commented Oct 1, 2021

This stale pull request has been automatically closed. Thank you for your contributions.

@stale stale bot closed this Oct 1, 2021
@markus-becker-tridonic-com
Copy link
Contributor Author

This PR has been reworked and rebased in https://github.com/markus-becker-tridonic-com/connectedhomeip/tree/matter-python-end-device-master. Would be great if it could be reopened.

FYI: @yunhanw-google

@markus-becker-tridonic-com markus-becker-tridonic-com changed the title Initial matter Python end-device matter end-device implemented in Python Oct 27, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants