Skip to content

Commit

Permalink
chef sample app (#16731)
Browse files Browse the repository at this point in the history
* new: chef app is a configurable application that processes zap files during the build process

Change-Id: Ia6aeba2d5587e09074defcd34dc5028288d74a90

* fix: esp32 functional on master on 28/mar/2021

Change-Id: I33f572f313dc7be91e208b074fe6ba6c7ab9da31

* chg: removed old zap files that need to be updated

Change-Id: Ibbe26ad39ba69d251fd4ef956632eb1aac9dfdf8

* Restyled by whitespace

* Restyled by clang-format

* Restyled by gn

* Restyled by prettier-markdown

* Restyled by autopep8

* fix: init server on scheduled task

Change-Id: If7c287ea7e9632fb8b4a49e8e4c82af4002cf4e4

* fix: excluded unsued context from task call

Change-Id: I8a353828804b2a203d336e47edbe58ce7d62163a

* chg: fixes to paths in README file

Change-Id: I252594388ec759c84525ea9090c153bdd7f80d3f

* fix: update to zap regen script to ignore chef sample app

Change-Id: Ia17baae1a7cca206fd1854928f1b56ca05c0b9e7

* Update wordlist: add new work (flags gzbf) and sort|unique the word list

Co-authored-by: Restyled.io <[email protected]>
Co-authored-by: Andrei Litvin <[email protected]>
  • Loading branch information
3 people authored Apr 6, 2022
1 parent 5601756 commit 172c024
Show file tree
Hide file tree
Showing 38 changed files with 8,844 additions and 47 deletions.
70 changes: 23 additions & 47 deletions .github/.wordlist.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ aabbccddeeff
aarch
abcdef
abfb
appwrite
ABI
ABIs
ables
Expand Down Expand Up @@ -56,6 +55,7 @@ APIs
apk
AppConfig
AppImpl
appliable
ApplianceControl
applianceeventsandalert
ApplianceIdentification
Expand All @@ -70,6 +70,7 @@ ApplyUpdateRequest
ApplyUpdateResponse
approver
appspot
appwrite
aps
arg
argc
Expand Down Expand Up @@ -143,6 +144,7 @@ BooleanState
bootable
Bootloader
BorderRouterAP
bouffalolab
BRD
breakpoint
bredr
Expand Down Expand Up @@ -176,7 +178,6 @@ CatalogVendorId
CBB
cbd
ccf
csg
CCMP
CCS
CCSTUDIO
Expand Down Expand Up @@ -233,6 +234,7 @@ clusterAttrs
clusterId
clusterList
clusterListName
ClusterObjectTests
ClusterRevision
ClusterTestGeneration
cmake
Expand All @@ -252,11 +254,13 @@ Comcast
Commandline
Commissionable
commissionables
commissionee
CommissioningFlow
commondatastorage
CONF
CONFIG
ConfigDescription
configs
configTOTAL
ConfigurationManager
ConfigurationManagerImpl
Expand Down Expand Up @@ -293,6 +297,7 @@ CQM
crypto
cryptographic
CSA
csg
csrrequest
csu
csv
Expand All @@ -312,12 +317,12 @@ dadbdcdddedf
DAP
DAPLINK
DataFrame
datamodel
DataModelRevision
dataset
datasets
DataVersion
dbf
doru
DBG
dBm
DBUILD
Expand Down Expand Up @@ -406,6 +411,7 @@ Dockerfile
Dockerfiles
Don'ts
DoorLock
doru
DOTBR
DOVERLAY
downcasting
Expand Down Expand Up @@ -566,6 +572,7 @@ gtk
GUA
Gv
gz
gzbf
HaloaceticAcidsConcentrationMeasurement
hardcoded
hardknott
Expand Down Expand Up @@ -600,7 +607,6 @@ idx
ifconfig
ifdef
ifdefs
itsfoss
IGMP
ignoreApplyUpdate
ignoreQueryImage
Expand Down Expand Up @@ -651,6 +657,7 @@ isLowerCase
isUpperCase
itemName
iterable
itsfoss
JDK
jinja
JLink
Expand Down Expand Up @@ -834,7 +841,6 @@ mydir
MyPASSWORD
MySSID
NAMESERVER
nameserver
namespacing
nano
natively
Expand Down Expand Up @@ -902,15 +908,14 @@ optionOverride
optionsMask
optionsOverride
orgs
otaissues
otatesting
OTA
OTADownloader
otaDownloadPath
otaImageList
OTAImageProcessorDriver
OTAImageProcessorImpl
OTAImageProcessorInterface
otaissues
OTAProvider
OTAProviderIpAddress
OTAProviderNodeId
Expand All @@ -921,6 +926,7 @@ OTARequestorDriver
OTARequestorSerialPort
OtaSoftwareUpdateProvider
otasoftwareupdaterequestor
otatesting
otaURL
OTBR
otcli
Expand All @@ -947,10 +953,8 @@ pbxproj
PCA
pcaps
PDFs
PDM
PDK
PSECT
pdm
PDM
peerAddrStr
peerNodeId
peerSessionId
Expand All @@ -959,7 +963,6 @@ percentageLiftValue
periodicQueryTimeout
pexpect
pickString
psect
PID
Pigweed
PinCode
Expand Down Expand Up @@ -1001,6 +1004,7 @@ ProxyValid
ProxyView
PRs
PSCAN
PSECT
PSK
PSoC
PTR
Expand Down Expand Up @@ -1030,8 +1034,8 @@ QRCodeUrl
QSPI
QueryImage
QueryImageResponse
Quickstart
queryImageStatus
Quickstart
qvCHIP
RADVD
raspberryPi
Expand All @@ -1040,7 +1044,6 @@ rAv
RCP
ReadAttribute
ReadConfigValue
RPis
readelf
readfds
README
Expand Down Expand Up @@ -1082,6 +1085,7 @@ rootfs
RPC
RPCs
RPi
RPis
rsn
RSSI
rsync
Expand All @@ -1102,7 +1106,6 @@ scalable
scm
sco
scp
ssbl
ScriptBinding
SDC
SDHC
Expand Down Expand Up @@ -1133,7 +1136,6 @@ SetupQRCode
sexualized
SHA
ShadeConfiguration
SSBL
showDocumentation
shubhamdp
SIGINT
Expand Down Expand Up @@ -1167,6 +1169,7 @@ spinel
src
SRP
SRV
SSBL
SSID
startoffset
StartScan
Expand Down Expand Up @@ -1236,6 +1239,7 @@ TESTSSID
TestString
TestStruct
TestThreadStackMgr
TestTimedRequestTimeout
TestUint
TestUpdateValue
testws
Expand Down Expand Up @@ -1272,10 +1276,11 @@ totalTests
TotalTrihalomethanesConcentrationMeasurement
trackAlloc
trackFree
transitionTime
TransferSession
transitionTime
TransportMgrBase
TrustedRootCertificates
tsan
TSG
tsv
TTL
Expand Down Expand Up @@ -1355,12 +1360,12 @@ WakeOnLan
WantedBy
watchdogTimeout
webpage
wg
wget
whde
whitespace
whitespaces
whl
wg
wic
WiFiNetworkDiagnostics
WindowCovering
Expand All @@ -1381,8 +1386,8 @@ xAAAA
xab
xaver
xb
xbef
xBEEF
xbef
xc
xcd
Xcode
Expand Down Expand Up @@ -1441,32 +1446,3 @@ zephyrproject
Zigbee
zigbeealliance
zigbeethread
libshell
TestGroupDemoConfig
ACLs
AddNOC
CHIPConfig
CHIPProjectAppConfig
CaseAdminNode
DataVersion
ProxyView
ReadAttribute
WriteAttribute
kAdminister
kManage
kOperate
kView
xFFFFFFFD
ClusterObjectTests
TestTimedRequestTimeout
datamodel
appliable
commissionee
configs
NAMESERVER
UTF
localedef
nameserver
nmcli
tsan
bouffalolab
4 changes: 4 additions & 0 deletions examples/chef/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
zap-generated
project_include.cmake
linux/args.gni
linux/sample.gni
38 changes: 38 additions & 0 deletions examples/chef/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# MATTER CHEF APP

The purpose of the chef app is to to increase the coverage of device types in
Matter.

It uses the shell app a starting point, adding the processing of ZAP files and
the support of a few targets under a unified build script: `chef.py`.

As it incorporates the processing of ZAP files as part of the build process, it
does not use `zzz_generated`, but rather places the auto-generated zap artifacts
under its `zap-generated` temporary folder.

All device types available (DM/IM .zap files) are found inside the `devices`
folder.

## Building a Sample Application

Run `chef.py -h` to see the available commands

## Building your first sample

1. Make sure you have the toolchain installed for your desired target
2. Update your SoC SDK paths on `chef_config.py` and flip the `configured`
variable to True
3. Run `$ chef.py -u` to update zap and the toolchain (on selected platforms)
4. Run `$ chef.py -gzbf -t <platform> -d lighting`. This command will run the
ZAP GUI opening the `devices/lighting.zap` file and will allow editing. It
will then generate the zap artifacts, place them on the `zap-generated`
folder, run a build and flash the binary in your target

## Creating a new device type in your device library

1. Run `$ chef.py -g -d <device>` to open in the ZAP GUI a device to be used as
a starting point.
2. Edit your cluster configurations
3. Click on `Save As` and save the file with the name of your new device type
into the `devices` folder. This device is now available for the script. See
`chef.py -h` for a list of devices available.
1 change: 1 addition & 0 deletions examples/chef/README_DEVICE.md
1 change: 1 addition & 0 deletions examples/chef/README_OTCLI.md
1 change: 1 addition & 0 deletions examples/chef/README_SHELL.md
Loading

0 comments on commit 172c024

Please sign in to comment.