Skip to content

Commit d0da4d0

Browse files
authored
Merge branch 'master' into feature/enable_uart_logging
2 parents f306475 + c1ae85c commit d0da4d0

File tree

104 files changed

+947
-1524
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

104 files changed

+947
-1524
lines changed

.github/workflows/darwin.yaml

+5
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,11 @@ jobs:
4949
- name: Validate zap-cli is NOT available
5050
# run_in_build_env.sh is used to ensure PATH is set to something that would otherwise find zap-cli
5151
run: scripts/run_in_build_env.sh '(zap-cli --version && exit 1) || exit 0'
52+
- name: Run watchOS Build Debug
53+
working-directory: src/darwin/Framework
54+
# Disable availability annotations, since we are not building a system
55+
# Matter.framework.
56+
run: xcodebuild -target "Matter" -sdk watchos -configuration Debug GCC_PREPROCESSOR_DEFINITIONS='${inherited} MTR_NO_AVAILABILITY=1'
5257
- name: Run iOS Build Debug
5358
working-directory: src/darwin/Framework
5459
# Disable availability annotations, since we are not building a system

.github/workflows/lint.yml

-2
Original file line numberDiff line numberDiff line change
@@ -123,12 +123,10 @@ jobs:
123123
--known-failure app/util/generic-callback-stubs.cpp \
124124
--known-failure app/util/im-client-callbacks.h \
125125
--known-failure app/util/MatterCallbacks.h \
126-
--known-failure app/util/message.cpp \
127126
--known-failure app/util/odd-sized-integers.h \
128127
--known-failure app/util/util.cpp \
129128
--known-failure app/util/util.h \
130129
--known-failure app/WriteHandler.h \
131-
--known-failure lib/core/CHIPVendorIdentifiers.hpp \
132130
--known-failure platform/DeviceSafeQueue.cpp \
133131
--known-failure platform/DeviceSafeQueue.h \
134132
--known-failure platform/GLibTypeDeleter.h \

examples/platform/silabs/display/demo-ui-bitmaps.h

+4
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,10 @@
2929
#define ZIGBEE_BITMAP_WIDTH 16
3030
#define ZIGBEE_BITMAP_HEIGHT 16
3131

32+
#define ZIGBEE_BITMAP \
33+
0x3f, 0xfc, 0x07, 0xf0, 0xff, 0xc7, 0xff, 0x9f, 0x01, 0x9c, 0x00, 0x0e, 0x00, 0x07, 0x80, 0x03, 0xc0, 0x01, 0xe0, 0x00, 0x70, \
34+
0x80, 0x39, 0x80, 0xf9, 0xff, 0xfb, 0xff, 0x07, 0xe0, 0x1f, 0xfc
35+
3236
#define RAIL_BITMAP_WIDTH 16
3337
#define RAIL_BITMAP_HEIGHT 16
3438

examples/platform/silabs/display/demo-ui.c

+17-17
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
#include "dmd/dmd.h"
2424
#include "em_types.h"
2525
#include "glib.h"
26+
#include "sl_component_catalog.h"
2627
#include "sl_memlcd.h"
2728
#if SL_WIFI && !SIWX_917
2829
#include "spi_multiplex.h"
@@ -41,28 +42,25 @@
4142
#define PROT2_ID_X_POSITION 79
4243

4344
// Matter Logo
44-
#define PROT2_BITMAP_WIDTH MATTER_LOGO_WIDTH
45-
#define PROT2_BITMAP_HEIGHT MATTER_LOGO_HEIGHT
4645
#define PROT2_X_POSITION 104
4746
#define PROT2_Y_POSITION (APP_Y_POSITION + (APP_Y_POSITION / 2))
48-
#define PROT2_BITMAP (matterLogoBitmap)
49-
#define PROT2_BITMAP_CONN (matterLogoBitmap)
5047

5148
// Networking Protocol Logo
5249
#ifdef SL_WIFI
5350
#define PROT1_BITMAP_WIDTH WIFI_BITMAP_WIDTH
5451
#define PROT1_BITMAP_HEIGHT WIFI_BITMAP_HEIGHT
5552
#define PROT1_X_POSITION 8
5653
#define PROT1_Y_POSITION (APP_Y_POSITION + (APP_Y_POSITION / 2))
57-
#define PROT1_BITMAP (networkBitMap)
58-
#define PROT1_BITMAP_CONN (networkBitMap)
5954
#else
6055
#define PROT1_BITMAP_WIDTH THREAD_BITMAP_WIDTH
6156
#define PROT1_BITMAP_HEIGHT THREAD_BITMAP_HEIGHT
6257
#define PROT1_X_POSITION 8
58+
#ifdef SL_CATALOG_ZIGBEE_ZCL_FRAMEWORK_CORE_PRESENT
59+
#define ZIGBEE_POSITION_Y (APP_Y_POSITION + (APP_Y_POSITION / 2) + (ZIGBEE_BITMAP_HEIGHT / 2))
60+
#define PROT1_Y_POSITION (APP_Y_POSITION + (APP_Y_POSITION / 2) - (ZIGBEE_BITMAP_HEIGHT / 2))
61+
#else
6362
#define PROT1_Y_POSITION (APP_Y_POSITION + (APP_Y_POSITION / 2))
64-
#define PROT1_BITMAP (networkBitMap)
65-
#define PROT1_BITMAP_CONN (networkBitMap)
63+
#endif
6664
#endif
6765

6866
/*******************************************************************************
@@ -82,6 +80,10 @@ static const uint8_t networkBitMap[] = { WIFI_BITMAP };
8280
static const uint8_t networkBitMap[] = { THREAD_BITMAP };
8381
#endif
8482

83+
#ifdef SL_CATALOG_ZIGBEE_ZCL_FRAMEWORK_CORE_PRESENT
84+
static const uint8_t zigbeeBitMap[] = { ZIGBEE_BITMAP };
85+
#endif
86+
8587
// Future usage
8688
// static const uint8_t unconnectedBitMap[] = { QUESTION_MARK_BITMAP };
8789

@@ -141,14 +143,13 @@ void demoUIDisplayApp(bool on)
141143
updateDisplay();
142144
}
143145

144-
void demoUIDisplayProtocol(demoUIProtocol protocol, bool isConnected)
146+
void demoUIDisplayProtocols()
145147
{
146-
GLIB_drawBitmap(&glibContext, (protocol == DEMO_UI_PROTOCOL1 ? PROT1_X_POSITION : PROT2_X_POSITION),
147-
(protocol == DEMO_UI_PROTOCOL1 ? PROT1_Y_POSITION : PROT2_Y_POSITION),
148-
(protocol == DEMO_UI_PROTOCOL1 ? PROT1_BITMAP_WIDTH : PROT2_BITMAP_WIDTH),
149-
(protocol == DEMO_UI_PROTOCOL1 ? PROT1_BITMAP_HEIGHT : PROT2_BITMAP_HEIGHT),
150-
(protocol == DEMO_UI_PROTOCOL1 ? (isConnected ? PROT1_BITMAP_CONN : PROT1_BITMAP)
151-
: (isConnected ? PROT2_BITMAP_CONN : PROT2_BITMAP)));
148+
GLIB_drawBitmap(&glibContext, PROT2_X_POSITION, PROT2_Y_POSITION, MATTER_LOGO_WIDTH, MATTER_LOGO_HEIGHT, matterLogoBitmap);
149+
GLIB_drawBitmap(&glibContext, PROT1_X_POSITION, PROT1_Y_POSITION, PROT1_BITMAP_WIDTH, PROT1_BITMAP_HEIGHT, networkBitMap);
150+
#ifdef SL_CATALOG_ZIGBEE_ZCL_FRAMEWORK_CORE_PRESENT
151+
GLIB_drawBitmap(&glibContext, PROT1_X_POSITION, ZIGBEE_POSITION_Y, ZIGBEE_BITMAP_WIDTH, ZIGBEE_BITMAP_HEIGHT, zigbeeBitMap);
152+
#endif
152153
updateDisplay();
153154
}
154155

@@ -157,6 +158,5 @@ void demoUIClearMainScreen(uint8_t * name)
157158
GLIB_clear(&glibContext);
158159
demoUIDisplayHeader((char *) name);
159160
demoUIDisplayApp(false);
160-
demoUIDisplayProtocol(DEMO_UI_PROTOCOL1, false);
161-
demoUIDisplayProtocol(DEMO_UI_PROTOCOL2, false);
161+
demoUIDisplayProtocols();
162162
}

examples/platform/silabs/display/demo-ui.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ void demoUIDisplayApp(bool on);
126126
* @return
127127
* void
128128
*****************************************************************************/
129-
void demoUIDisplayProtocol(demoUIProtocol protocol, bool isConnected);
129+
void demoUIDisplayProtocols();
130130

131131
/**************************************************************************/
132132
/**

examples/tv-app/android/App/platform-app/src/main/java/com/matter/tv/server/fragments/TerminalFragment.java

+2
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@ public class TerminalFragment extends Fragment {
2424
private static String TERMINAL_INSTRUCTIONS =
2525
"add <vid> [<pid>] Add app with given vendor ID [1, 2, 9050]. Usage: add 9050\r\n"
2626
+ "remove <endpoint> Remove app at given endpoint [6, 7, etc]. Usage: remove 6\r\n"
27+
+ "appobserver <appendpoint> <clientnodeindex> <data> <hint> Send app observer command to client node of the given app endpoint. Usage: appobserver 4 0 data hint\r\n"
28+
+ "printclients <appendpoint> Print list of client nodes for the given app endpoint. Usage: printclients 4\r\n"
2729
+ "setpin <endpoint> <pincode> Set pincode for app with given endpoint ID. Usage: setpin 6 34567890\r\n"
2830
+ "commission <udc-entry> Commission given udc-entry using given pincode from corresponding app. Usage:"
2931
+ "commission 0\r\n"

examples/tv-app/android/java/AppImpl.cpp

+13-6
Original file line numberDiff line numberDiff line change
@@ -324,6 +324,7 @@ ContentApp * ContentAppFactoryImpl::LoadContentApp(const CatalogVendorApp & vend
324324
ChipLogProgress(DeviceLayer, " Looking next=%s ", app->GetApplicationBasicDelegate()->GetCatalogVendorApp()->applicationId);
325325
if (app->GetApplicationBasicDelegate()->GetCatalogVendorApp()->Matches(vendorApp))
326326
{
327+
// need to think about loading apk here?
327328
ContentAppPlatform::GetInstance().AddContentApp(app, &contentAppEndpoint, Span<DataVersion>(gDataVersions[i]),
328329
Span<const EmberAfDeviceType>(gContentAppDeviceType));
329330
return app;
@@ -422,19 +423,25 @@ std::list<ClusterId> ContentAppFactoryImpl::GetAllowedClusterListForStaticEndpoi
422423
ChipLogProgress(DeviceLayer,
423424
"ContentAppFactoryImpl GetAllowedClusterListForStaticEndpoint priviledged vendor accessible clusters "
424425
"being returned.");
425-
return { chip::app::Clusters::Descriptor::Id, chip::app::Clusters::OnOff::Id,
426-
chip::app::Clusters::WakeOnLan::Id, chip::app::Clusters::MediaPlayback::Id,
427-
chip::app::Clusters::LowPower::Id, chip::app::Clusters::KeypadInput::Id,
428-
chip::app::Clusters::ContentLauncher::Id, chip::app::Clusters::AudioOutput::Id,
429-
chip::app::Clusters::ApplicationLauncher::Id };
426+
return { chip::app::Clusters::Descriptor::Id,
427+
chip::app::Clusters::OnOff::Id,
428+
chip::app::Clusters::WakeOnLan::Id,
429+
chip::app::Clusters::MediaPlayback::Id,
430+
chip::app::Clusters::LowPower::Id,
431+
chip::app::Clusters::KeypadInput::Id,
432+
chip::app::Clusters::ContentLauncher::Id,
433+
chip::app::Clusters::AudioOutput::Id,
434+
chip::app::Clusters::ApplicationLauncher::Id,
435+
chip::app::Clusters::Messages::Id };
430436
}
431437
ChipLogProgress(
432438
DeviceLayer,
433439
"ContentAppFactoryImpl GetAllowedClusterListForStaticEndpoint operator vendor accessible clusters being returned.");
434440
return { chip::app::Clusters::Descriptor::Id, chip::app::Clusters::OnOff::Id,
435441
chip::app::Clusters::WakeOnLan::Id, chip::app::Clusters::MediaPlayback::Id,
436442
chip::app::Clusters::LowPower::Id, chip::app::Clusters::KeypadInput::Id,
437-
chip::app::Clusters::ContentLauncher::Id, chip::app::Clusters::AudioOutput::Id };
443+
chip::app::Clusters::ContentLauncher::Id, chip::app::Clusters::AudioOutput::Id,
444+
chip::app::Clusters::Messages::Id };
438445
}
439446
return {};
440447
}

examples/tv-app/android/java/src/com/matter/tv/server/tvapp/MessagesManagerStub.java

-7
Original file line numberDiff line numberDiff line change
@@ -31,13 +31,6 @@ public class MessagesManagerStub implements MessagesManager {
3131
public MessagesManagerStub(int endpoint) {
3232
this.endpoint = endpoint;
3333
Log.d(TAG, "MessagesManagerStub: at " + this.endpoint);
34-
35-
HashMap<Long, String> responseOptions = new HashMap<Long, String>();
36-
responseOptions.put(new Long(1), "Yes");
37-
responseOptions.put(new Long(2), "No");
38-
presentMessages(
39-
"31323334353637383930313233343536", 1, 1, 30, 60000, "TestMessage", responseOptions);
40-
Log.d(TAG, "MessagesManagerStub: added dummy message");
4134
}
4235

4336
@Override

examples/tv-app/tv-common/shell/AppTvShellCommands.cpp

+62
Original file line numberDiff line numberDiff line change
@@ -193,6 +193,11 @@ static CHIP_ERROR PrintAllCommands()
193193
#if CHIP_DEVICE_CONFIG_APP_PLATFORM_ENABLED
194194
streamer_printf(sout, " add <vid> [<pid>] Add app with given vendor ID [1, 2, 9050]. Usage: app add 9050\r\n");
195195
streamer_printf(sout, " remove <endpoint> Remove app at given endpoint [6, 7, etc]. Usage: app remove 6\r\n");
196+
streamer_printf(sout,
197+
" appobserver <appendpoint> <clientnodeindex> <data> <hint> Send app observer command to client node of "
198+
"the given app endpoint. Usage: appobserver 4 0 data hint\r\n");
199+
streamer_printf(
200+
sout, " printclients <appendpoint> Print list of client nodes for the given app endpoint. Usage: printclients 4\r\n");
196201
streamer_printf(
197202
sout, " setpin <endpoint> <pincode> Set pincode for app with given endpoint ID. Usage: app setpin 6 34567890\r\n");
198203
streamer_printf(sout,
@@ -277,6 +282,63 @@ static CHIP_ERROR AppPlatformHandler(int argc, char ** argv)
277282

278283
return CHIP_NO_ERROR;
279284
}
285+
else if (strcmp(argv[0], "printclients") == 0)
286+
{
287+
if (argc < 2)
288+
{
289+
return PrintAllCommands();
290+
}
291+
char * eptr;
292+
293+
uint16_t endpoint = (uint16_t) strtol(argv[1], &eptr, 10);
294+
ContentApp * app = ContentAppPlatform::GetInstance().GetContentApp(endpoint);
295+
if (app == nullptr)
296+
{
297+
ChipLogProgress(DeviceLayer, "app not found");
298+
return CHIP_ERROR_BAD_REQUEST;
299+
}
300+
uint8_t count = app->GetClientNodeCount();
301+
ChipLogProgress(DeviceLayer, " node count: %d", count);
302+
for (uint8_t i = 0; i < count; i++)
303+
{
304+
NodeId node = app->GetClientNode(i);
305+
ChipLogProgress(DeviceLayer, " node[%d] " ChipLogFormatX64, i, ChipLogValueX64(node));
306+
}
307+
}
308+
#if CHIP_DEVICE_CONFIG_ENABLE_BOTH_COMMISSIONER_AND_COMMISSIONEE
309+
else if (strcmp(argv[0], "appobserver") == 0)
310+
{
311+
if (argc < 5)
312+
{
313+
return PrintAllCommands();
314+
}
315+
char * eptr;
316+
317+
uint16_t endpoint = (uint16_t) strtol(argv[1], &eptr, 10);
318+
ContentApp * app = ContentAppPlatform::GetInstance().GetContentApp(endpoint);
319+
if (app == nullptr)
320+
{
321+
ChipLogProgress(DeviceLayer, "app not found");
322+
return CHIP_ERROR_BAD_REQUEST;
323+
}
324+
uint8_t clientNodeIndex = (uint8_t) strtol(argv[2], &eptr, 10);
325+
if (clientNodeIndex >= app->GetClientNodeCount())
326+
{
327+
ChipLogProgress(DeviceLayer, "illegal client node index");
328+
return CHIP_ERROR_BAD_REQUEST;
329+
}
330+
NodeId clientNode = app->GetClientNode(clientNodeIndex);
331+
332+
char * data = argv[3];
333+
char * encodingHint = argv[4];
334+
335+
app->SendAppObserverCommand(GetDeviceCommissioner(), clientNode, data, encodingHint);
336+
337+
ChipLogProgress(DeviceLayer, "sent appobserver command");
338+
339+
return CHIP_NO_ERROR;
340+
}
341+
#endif // CHIP_DEVICE_CONFIG_ENABLE_BOTH_COMMISSIONER_AND_COMMISSIONEE
280342
else if (strcmp(argv[0], "setpin") == 0)
281343
{
282344
if (argc < 3)

examples/tv-app/tv-common/src/AppTv.cpp

+12-6
Original file line numberDiff line numberDiff line change
@@ -549,19 +549,25 @@ std::list<ClusterId> ContentAppFactoryImpl::GetAllowedClusterListForStaticEndpoi
549549
ChipLogProgress(DeviceLayer,
550550
"ContentAppFactoryImpl GetAllowedClusterListForStaticEndpoint priviledged vendor accessible clusters "
551551
"being returned.");
552-
return { chip::app::Clusters::Descriptor::Id, chip::app::Clusters::OnOff::Id,
553-
chip::app::Clusters::WakeOnLan::Id, chip::app::Clusters::MediaPlayback::Id,
554-
chip::app::Clusters::LowPower::Id, chip::app::Clusters::KeypadInput::Id,
555-
chip::app::Clusters::ContentLauncher::Id, chip::app::Clusters::AudioOutput::Id,
556-
chip::app::Clusters::ApplicationLauncher::Id };
552+
return { chip::app::Clusters::Descriptor::Id,
553+
chip::app::Clusters::OnOff::Id,
554+
chip::app::Clusters::WakeOnLan::Id,
555+
chip::app::Clusters::MediaPlayback::Id,
556+
chip::app::Clusters::LowPower::Id,
557+
chip::app::Clusters::KeypadInput::Id,
558+
chip::app::Clusters::ContentLauncher::Id,
559+
chip::app::Clusters::AudioOutput::Id,
560+
chip::app::Clusters::ApplicationLauncher::Id,
561+
chip::app::Clusters::Messages::Id }; // TODO: messages?
557562
}
558563
ChipLogProgress(
559564
DeviceLayer,
560565
"ContentAppFactoryImpl GetAllowedClusterListForStaticEndpoint operator vendor accessible clusters being returned.");
561566
return { chip::app::Clusters::Descriptor::Id, chip::app::Clusters::OnOff::Id,
562567
chip::app::Clusters::WakeOnLan::Id, chip::app::Clusters::MediaPlayback::Id,
563568
chip::app::Clusters::LowPower::Id, chip::app::Clusters::KeypadInput::Id,
564-
chip::app::Clusters::ContentLauncher::Id, chip::app::Clusters::AudioOutput::Id };
569+
chip::app::Clusters::ContentLauncher::Id, chip::app::Clusters::AudioOutput::Id,
570+
chip::app::Clusters::Messages::Id };
565571
}
566572
return {};
567573
}

examples/tv-casting-app/android/App/app/src/main/java/com/chip/casting/app/CertTestFragment.java

+7
Original file line numberDiff line numberDiff line change
@@ -309,6 +309,13 @@ private void runCertTests(Activity activity) {
309309
kContentApp, successCallbackInteger, failureCallback);
310310
});
311311

312+
runAndWait(
313+
"messages_presentMessages",
314+
successFailureCallback,
315+
() -> {
316+
tvCastingApp.messages_presentMessages(kTVApp, "CastingAppTestMessage", callback);
317+
});
318+
312319
runAndWait(
313320
"mediaPlayback_subscribeToCurrentState",
314321
successFailureCallback,

examples/tv-casting-app/android/App/app/src/main/jni/com/chip/casting/TvCastingApp.java

+3
Original file line numberDiff line numberDiff line change
@@ -599,6 +599,9 @@ public native boolean applicationBasic_readApplicationVersion(
599599

600600
public native boolean onOff_toggle(ContentApp contentApp, Object responseHandler);
601601

602+
public native boolean messages_presentMessages(
603+
ContentApp contentApp, String messageText, Object responseHandler);
604+
602605
static {
603606
System.loadLibrary("TvCastingApp");
604607
}

examples/tv-casting-app/android/App/app/src/main/jni/cpp/Constants.h

+1
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ enum MediaCommandName
3737
MediaPlayback_Seek,
3838
MediaPlayback_SkipForward,
3939
MediaPlayback_SkipBackward,
40+
Messages_PresentMessagesRequest,
4041
ApplicationLauncher_LaunchApp,
4142
ApplicationLauncher_StopApp,
4243
ApplicationLauncher_HideApp,

examples/tv-casting-app/android/App/app/src/main/jni/cpp/TvCastingApp-JNI.cpp

+30
Original file line numberDiff line numberDiff line change
@@ -865,6 +865,36 @@ JNI_METHOD(jboolean, onOff_1toggle)
865865
return (err == CHIP_NO_ERROR);
866866
}
867867

868+
JNI_METHOD(jboolean, messages_1presentMessages)
869+
(JNIEnv * env, jobject, jobject contentApp, jstring messageText, jobject jResponseHandler)
870+
{
871+
chip::DeviceLayer::StackLock lock;
872+
873+
ChipLogProgress(AppServer, "JNI_METHOD messages_presentMessages called");
874+
const char * nativeMessageText = env->GetStringUTFChars(messageText, 0);
875+
876+
TargetEndpointInfo endpoint;
877+
CHIP_ERROR err = convertJContentAppToTargetEndpointInfo(contentApp, endpoint);
878+
VerifyOrExit(err == CHIP_NO_ERROR,
879+
ChipLogError(AppServer, "Conversion from jobject contentApp to TargetEndpointInfo * failed: %" CHIP_ERROR_FORMAT,
880+
err.Format()));
881+
882+
err = TvCastingAppJNIMgr().getMediaCommandResponseHandler(Messages_PresentMessagesRequest).SetUp(env, jResponseHandler);
883+
VerifyOrExit(CHIP_NO_ERROR == err,
884+
ChipLogError(AppServer, "MatterCallbackHandlerJNI.SetUp failed %" CHIP_ERROR_FORMAT, err.Format()));
885+
886+
err = CastingServer::GetInstance()->Messages_PresentMessagesRequest(&endpoint, nativeMessageText, [](CHIP_ERROR err) {
887+
TvCastingAppJNIMgr().getMediaCommandResponseHandler(Messages_PresentMessagesRequest).Handle(err);
888+
});
889+
VerifyOrExit(CHIP_NO_ERROR == err,
890+
ChipLogError(AppServer, "CastingServer.Messages_PresentMessagesRequest failed %" CHIP_ERROR_FORMAT, err.Format()));
891+
892+
env->ReleaseStringUTFChars(messageText, nativeMessageText);
893+
894+
exit:
895+
return (err == CHIP_NO_ERROR);
896+
}
897+
868898
JNI_METHOD(jboolean, mediaPlayback_1play)
869899
(JNIEnv * env, jobject, jobject contentApp, jobject jResponseHandler)
870900
{

examples/tv-casting-app/tv-casting-common/BUILD.gn

+2
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,7 @@ chip_data_model("tv-casting-common") {
6868
"include/MediaPlayback.h",
6969
"include/MediaReadBase.h",
7070
"include/MediaSubscriptionBase.h",
71+
"include/Messages.h",
7172
"include/OnOff.h",
7273
"include/PersistenceManager.h",
7374
"include/TargetEndpointInfo.h",
@@ -83,6 +84,7 @@ chip_data_model("tv-casting-common") {
8384
"src/KeypadInput.cpp",
8485
"src/LevelControl.cpp",
8586
"src/MediaPlayback.cpp",
87+
"src/Messages.cpp",
8688
"src/OnOff.cpp",
8789
"src/PersistenceManager.cpp",
8890
"src/TargetEndpointInfo.cpp",

0 commit comments

Comments
 (0)