本レッスンã®å‰ã®ã‚»ã‚¯ã‚·ãƒ§ãƒ³ã§ã¯ã€Matter仕様ãŒã‚½ãƒ•トウェア更新を実行ã™ã‚‹ä½•らã‹ã®æ–¹æ³•ã®ã‚µãƒãƒ¼ãƒˆã‚’è¦æ±‚ã—ã¦ã„ã‚‹ã“ã¨ã«è§¦ã‚Œã¾ã—ãŸãŒã€Matter OTAメカニズムã®ä½¿ç”¨ã¯ä»»æ„ã§ã‚りã€ãƒ‡ãƒã‚¤ã‚¹ã¯ã‚«ã‚¹ã‚¿ãƒ 方法を使用ã™ã‚‹ã“ã¨ãŒè¨±å¯ã•れã¦ã„ã¾ã™ã€‚
nRF Connect SDKã¯ã€Matter OTAã®ä»£æ›¿ã‚½ãƒªãƒ¥ãƒ¼ã‚·ãƒ§ãƒ³ã¨ã—ã¦ã€Bluetooth LE経由ã®Simple Management Protocol(SMP)を使用ã—ãŸDevice Firmware Upgrade(DFU)ã‚’æä¾›ã—ã¦ã„ã¾ã™ã€‚ã“ã®ã‚¢ãƒ—ãƒãƒ¼ãƒã¯ã€Matterデãƒã‚¤ã‚¹ãŒã¾ã コミッショニングã•れã¦ã„ãªã„å ´åˆã‚„ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ãŒåˆ©ç”¨ã§ããªã„å ´åˆãªã©ã€ç‰¹å®šã®ã‚·ãƒŠãƒªã‚ªã«ãŠã„ã¦æœ‰ç›Šã§ã™ã€‚Bluetooth LEサービスã¯Matterãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®çŠ¶æ…‹ã¨ã¯ç‹¬ç«‹ã—ã¦å‹•作ã§ãã‚‹ãŸã‚ã§ã™ã€‚
SMPã¯ã€ã‚¢ãƒ—リケーションイメージ管ç†ã‚’å«ã‚€ãƒ‡ãƒã‚¤ã‚¹ç®¡ç†ç›®çš„ã§ä½¿ç”¨ã•れる基本的ãªè»¢é€ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ã§ã™ã€‚SMPã¯ã€Bluetooth LEã€UDPã€ã‚·ãƒªã‚¢ãƒ«USB/UARTãªã©ã€ã•ã¾ã–ã¾ãªãƒˆãƒ©ãƒ³ã‚¹ãƒãƒ¼ãƒˆã®ä½¿ç”¨ã‚’サãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã™ã€‚
検討ã•れã¦ã„る例ã§ã¯ã€Matterデãƒã‚¤ã‚¹ã¯SMPサーãƒãƒ¼ã‚’実行ã—ã€Bluetooth LEトランスãƒãƒ¼ãƒˆã‚’使用ã—ã¦ã‚¢ãƒ—リケーション更新イメージをダウンãƒãƒ¼ãƒ‰ã—ã¾ã™ã€‚
Bluetooth LEã®æ–‡è„ˆã§ã¯ã€SMPã¨ã„ã†ç•¥èªžã¯èª¤è§£ã‚’æ‹›ãå¯èƒ½æ€§ãŒã‚りã¾ã™ã€‚Bluetooth LEã«ã¯ã€ãƒ‡ãƒã‚¤ã‚¹é–“ã®å®‰å…¨ãªæŽ¥ç¶šã®ç¢ºç«‹ã¨ç®¡ç†ã«ä½¿ç”¨ã•れるSecurity Manager Protocol(SMP)ã¨ã„ã†åˆ¥ã®ãƒ—ãƒãƒˆã‚³ãƒ«ãŒå˜åœ¨ã™ã‚‹ãŸã‚ã§ã™ã€‚ã“れら2ã¤ã®ãƒ—ãƒãƒˆã‚³ãƒ«ã¯ç•°ãªã‚‹ç›®çš„ã‚’æŒã£ã¦ãŠã‚Šã€æ··åŒã—ãªã„よã†ã«ã—ã¦ãã ã•ã„。
SMPã®è©³ç´°ã«ã¤ã„ã¦ã¯ã€æŠ€è¡“文書:SMPプãƒãƒˆã‚³ãƒ«ä»•様をå‚ç…§ã—ã¦ãã ã•ã„。
SMPãŒBluetooth LE経由ã§ä½¿ç”¨ã•ã‚Œã‚‹å ´åˆã€ãã®ãƒ‡ãƒ¼ã‚¿ã¯ãƒ‡ãƒã‚¤ã‚¹ä¸Šã®Generic Attribute Profile(GATT)サービスã¨ã—ã¦å‡¦ç†ã•れã¾ã™ã€‚SMPã¯ã€ä»¥ä¸‹ã®å€¤ã‚’使用ã™ã‚‹ç‰¹å®šã®GATTサービスãŠã‚ˆã³ç‰¹æ€§UUIDを定義ã—ã¦ã„ã¾ã™:
8D53DC1D-1DB7-4CD3-868B-8A527460AA84DA2E7828-FBCE-4E01-AE9E-261174997C48SMPサーãƒãƒ¼ã‚’実行ã—ã¦ã„るデãƒã‚¤ã‚¹(本例ã§ã¯Matterデãƒã‚¤ã‚¹)ã¯ã€Bluetooth LEペリフェラルãƒãƒ¼ãƒ«ã‚’実装ã—ã¾ã™ã€‚ソフトウェアイメージをホストã™ã‚‹SMPクライアントãƒãƒ¼ãƒ«ã¯ã€é€šå¸¸ã€PCツールã¾ãŸã¯nRF Connect Device Managerãªã©ã®ãƒ¢ãƒã‚¤ãƒ«ã‚¢ãƒ—リケーションã§ã‚りã€Bluetooth LEセントラルãƒãƒ¼ãƒ«ã‚’実装ã—ã¾ã™ã€‚
ソフトウェア更新プãƒã‚»ã‚¹ã¯é€šå¸¸ã€æ¬¡ã®ã‚ˆã†ã«ãªã‚Šã¾ã™:
Bluetooth LEトランスãƒãƒ¼ãƒˆçµŒç”±ã§SMPãŒã©ã®ã‚ˆã†ã«å‹•作ã™ã‚‹ã‹ã®è©³ç´°ã«ã¤ã„ã¦ã¯ã€SMPトランスãƒãƒ¼ãƒˆä»•様をå‚ç…§ã—ã¦ãã ã•ã„。
Bluetooth LE経由ã®SMPを使用ã—ãŸDFUã¯ã€ãƒ¢ãƒã‚¤ãƒ«ãŠã‚ˆã³PCå‘ã‘ã®è¤‡æ•°ã®ã‚¢ãƒ—リケーションã§ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ã¾ã™ã€‚Nordic SemiconductorãŒæŽ¨å¥¨ã™ã‚‹ãƒ¢ãƒã‚¤ãƒ«ã‚¢ãƒ—リケーションã¯ã€nRF Connect Device Managerã§ã™ã€‚
PCã®å ´åˆã€æœ€ã‚‚一般的ãªã‚¢ãƒ—リケーションã¯ã€MCUmgrã¨å‘¼ã°ã‚Œã‚‹Linux用ã®ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ãƒ„ールã§ã™ã€‚