I'm trying to create an enhance coordinator (and router) application where i need control over on-boarding process. For example, only the known device should be allowed to on-board. Coordinator will be aware of device which can be onboarded, only will only allow onboarding of these devices. Any request from other devices should be rejected.
Going through the documentation, i guess there will some callback in coordinator app where i can place this logic. Unfortunately, i tried few callbacks but they only comes into play after device is already onboarded.
If someone can throw a pointer, it will be really helpful
I suggest you can control onboarding by implementing below two processes:
1. Use a private link key on coordinator and end devices. When the devices with different link key will try to join those will be rejected.
2. As further check add a list of allowed devices in your application. Once the device has joined then check against your allowed list and remove if not on the allowed list.
Thanks for your response. I don't want to remove the device after its onboarded. Is there a way to use provided callbacks to check if the device is known.
We have a router with EFR32MG on it. I was thinking of writing and NCP app and an NCP host app. NCP app will run on EFR32MG and where as NCP host app on the host.
What i have figured out that host app only gets a callback when onboarding is completed but NCP app do have callback like emberAfPluginEzspSecurityTrustCenterJoinCallback, which we should be able to override and check if this is know device. Host app will supply list if know devices to NCP app.
Let me if this is right direction.