From 556e376a62e0ccd7593e28a6cc1c439763471554 Mon Sep 17 00:00:00 2001 From: DCCONSTRUCTIONS Date: Thu, 10 Sep 2026 12:08:01 +0300 Subject: [PATCH] Record X4 wake by short Power with USB retained and BLE discovery --- .../07_INSTA360_X4_INSTALLATION_LEDGER.md | 55 +++++++++++++++++++ .../09_INSTA360_X4_IMPLEMENTATION_STATUS.md | 16 +++++- docs/node/10_INSTA360_X4_NEXT_STEPS.md | 11 +++- .../11_INSTA360_X4_AUTONOMY_AND_USB_POWER.md | 14 +++-- ..._INSTA360_X4_ANDROID_RECONNECT_RESEARCH.md | 9 +++ docs/node/13_INSTA360_X4_BLE_DIAGNOSTIC.md | 33 ++++++++--- 6 files changed, 121 insertions(+), 17 deletions(-) diff --git a/docs/node/07_INSTA360_X4_INSTALLATION_LEDGER.md b/docs/node/07_INSTA360_X4_INSTALLATION_LEDGER.md index 8e38fc0..6e0ff9a 100644 --- a/docs/node/07_INSTA360_X4_INSTALLATION_LEDGER.md +++ b/docs/node/07_INSTA360_X4_INSTALLATION_LEDGER.md @@ -989,3 +989,58 @@ c2f88192a4f7059db9419df4fd0a5b95f2425101d93bfd36097a62226e62a662. USB/BLE vendor commands0, pairing0, CCCD subscriptions0 на hardware за этот этап. Открытый вопрос владельцу: результат короткого Power с уже вставленным USB. Не получив свежего устройства, read-options/setter не запускались. + +### POWER03 / BLE03 — короткое Power с подключённым USB, 10.09.2026 + +Владелец подтвердил одиночный короткий Power без изменения USB: сначала +появилась картинка, затем сообщение о переходе в Android, затем X4 стала +зелёной в приложении. Точное время нажатия и различие выключения/сна до него +не установлены. Это успешный ручной сценарий с уже вставленным кабелем; +автоматическое BLE wake-up и cold start он не доказывает. + +Read-only Core snapshot09:01:59.854323 UTC, Mac monotonic451399.909362333: +Core8000 operational, Rover006 online, прежний X4 device_id prepared/connected, +новая SDK session opened_at09:00:22.453946 UTC, preview0/recording0. D455 +online/streaming. Повторная установка, preparation или restart служб не +выполнялись. Первый sandbox curl не получил доступ к localhost; read-only +повтор вне sandbox успешен, это не отказ Core. Private POWER03 manifest/raw +сохранены; fleet SHA-256 +df8013802ffdd63c9500c20da339071ce8e5fff52f58101a5898fe2271c8409f, +health SHA-2569902293dc403beecf644badd78114d6568a69a315c240b8af0bdf63b9f7e7e38. + +BLE03 intent: одно20s discovery наблюдение включённой X4 в Android, с read-only +USB samples. Используется уже квалифицированный diagnostic artifact +a919d293c292935cfd636f0e, SHA-256 +bf1325b882d696314507f98fc627235ec579fa7d910035fb6155ce51f939b698. +Его код входит в собранную модель0.1.3-4; это versioned engineering staging +в /var/tmp, без установки или новой runtime зависимости. Режим scan-only: +нет BLE Connect/Pair/CCCD/vendor commands, нет изменения USB или SDK owner. +Discovery filter/scan принадлежит private BlueZ client и снимается в cleanup; +ошибка означает остановку опыта. Полные serial/MAC остаются в private raw. + +BLE03 complete09:04:01.557317–09:04:21.759652 UTC, +Ubuntu monotonic329349.438412468–329369.640741792, returncode0, +cleanup errors0. Private ble03.json SHA-256 +071304bfaa83f1bf7029273c9e830f2964093ef9397c133b97a2860744a801c2. +USB samples содержат X4 2e1a:0002/speed5000; hash полного serial совпадает +с прежним instance. Один свежий BLE candidate, имя X4+serial suffix совпадает +с USB, service BE80, RSSI -59, Connected0/Paired0. Это корреляция discovery, +не аутентификация BLE по полному serial. Vendor writes0, Pair0, CCCD0. +Существующий USB SDK owner сохранён; GetOptions не выполнялся. Наблюдатель +завершён. Полный serial теперь доступен только в private evidence для будущего +адресного опыта, сам suffix не становится ключом экземпляра приложения. + +Официальная X4 connect-app FAQ прочитана10.09: для Bluetooth Wakeup настройка +на камере должна быть On; страница описывает приложение iOS, не подтверждает +наш Linux transport. У владельца запрошено только известное состояние этой +настройки, без выхода из Android или отключения USB. Её значение пока unknown; +ни пробуждение, ни выключение, ни изменение настройки агентом не выполнялись. + +Handoff09:07:40.041596 UTC, Mac monotonic451740.06416075: Core operational, +Rover006 online, X4 online/idle/preview0/recording0, D455 online/streaming. +Private handoff.json SHA-256 +d408caa971c7be94acac8d362087f16c863014d2e21524eb4cf95a5085edf360. +MISSIONCOR-77 синхронизирован через официальный Ops MCP09:07:15 UTC: сохранены +прежние блоки/checker, добавлены BLE01–03/B12/POWER03 и исправлен устаревший +текст о невозможности SDK reopen. Предыдущие transport timeouts преодолены; +автоматический wake/replug/preview checker остаётся открытым. diff --git a/docs/node/09_INSTA360_X4_IMPLEMENTATION_STATUS.md b/docs/node/09_INSTA360_X4_IMPLEMENTATION_STATUS.md index 99f831b..eafb075 100644 --- a/docs/node/09_INSTA360_X4_IMPLEMENTATION_STATUS.md +++ b/docs/node/09_INSTA360_X4_IMPLEMENTATION_STATUS.md @@ -1,12 +1,26 @@ # Insta360 X4 — состояние реализации 10.09.2026 +## POWER03/BLE03 — пробуждение кнопкой и первый BLE candidate + +Одиночное короткое Power при уже вставленном USB восстановило Android без +ручного выбора режима. Владелец подтвердил экран; read-only Core snapshot +09:01:59 UTC — прежний X4 instance prepared/connected, новая SDK session +от09:00:22 UTC, preview0/recording0; Node online и D455 streaming. Службы, +подготовка и установка не перезапускались. Исходное выключение/сон не различены, +поэтому cold start и полностью автоматический recovery остаются открытыми. + +BLE03 scan20s нашёл один свежий BE80 candidate с именем по USB serial suffix; +полный USB serial hash совпал с прежним instance, USB2e1a:0002/speed5000. +GATT identity/auth не проверялись. Следующий шаг — состояние Bluetooth Wakeup +и отдельный адресный wake artifact; активный SDK owner не перехватывается. + ## BLE01/BLE02 — первый модуль беспроводной диагностики Реализован [BLE diagnostic workflow](13_INSTA360_X4_BLE_DIAGNOSTIC.md): bounded discovery, стандартное GATT inspection и отдельное чтение identity/USB options. Те же модули и OS dependencies включены в исходники model package0.1.3-4. На Ubuntu initial scan20s и последующий scan60s не обнаружили X4; владелец -сообщил о тёмном экране. Выполнение предложенного короткого Power не подтверждено. +сообщил о тёмном экране. Позднее короткое Power подтверждено в POWER03 выше. Read-options, pairing, setters и power-команды на hardware не запускались. Installed Node0.8.19 / X40.1.3-3 сохранены; bundled Node profile ещё не обновлялся. Автовозврат Android остаётся открытым; нельзя считать успешную сборку его приёмкой. diff --git a/docs/node/10_INSTA360_X4_NEXT_STEPS.md b/docs/node/10_INSTA360_X4_NEXT_STEPS.md index e216e47..0b2e650 100644 --- a/docs/node/10_INSTA360_X4_NEXT_STEPS.md +++ b/docs/node/10_INSTA360_X4_NEXT_STEPS.md @@ -18,9 +18,14 @@ OWNER03: владелец видит изображение X4 и D455 чере BLE01/BLE02: [первый диагностический модуль](13_INSTA360_X4_BLE_DIAGNOSTIC.md) реализован и включён в исходники model package0.1.3-4. На Ubuntu два bounded -наблюдения не обнаружили X4; экран камеры тёмный. Следующий hardware шаг — -состояние после короткого Power с уже вставленным USB, затем fresh BLE candidate -и явный read-options. Ни setter, ни BLE power cycle ещё не выполнялись. +наблюдения не обнаружили X4; экран камеры был тёмный. POWER03: владелец +подтвердил короткое Power с уже вставленным USB → Android без выбора режима; +тот же instance автоматически получил новую SDK session. BLE03 теперь видит +одного свежего BE80 кандидата с именем, совпадающим с USB serial suffix; +это не полная BLE authentication. Следующий hardware шаг — установить состояние +Bluetooth Wakeup и квалифицировать адресный wake artifact. GetOptions остаётся +отдельной веткой при отсутствии активного USB SDK owner. Ни setter, ни BLE +power cycle ещё не выполнялись; POWER03 не заменяет автоматический тест. Node0.8.19 bundle пока остаётся0.1.3-3; его обновление не считается завершённым. ## Очередь реализации diff --git a/docs/node/11_INSTA360_X4_AUTONOMY_AND_USB_POWER.md b/docs/node/11_INSTA360_X4_AUTONOMY_AND_USB_POWER.md index 050053f..27b8c21 100644 --- a/docs/node/11_INSTA360_X4_AUTONOMY_AND_USB_POWER.md +++ b/docs/node/11_INSTA360_X4_AUTONOMY_AND_USB_POWER.md @@ -196,11 +196,15 @@ disconnect для части прошивок; текущий bridge его не Приоритет владельца: после применения B11 поставить автономность и питание перед расширением настроек камеры и загрузкой файлов. -Первый текущий эксперимент — RESEARCH01 из плана12: BLE identity/transport, -read-only GetOptions95, затем только при подтверждённой семантике setter; -резерв — эмуляция пульта и BLE off/on с уже вставленным USB. Остальная матрица -ниже сохраняется; аппаратная ветка5 больше не является обязательным условием -исследования программного обхода. +POWER03 уточнил порядок: одного короткого Power с уже вставленным USB хватило +для Android и новой SDK session прежней X4 без повторной подготовки. До +нажатия состояние выключение/сон неизвестно, это ручной опыт одного цикла. +BLE03 видит BE80 candidate, имя соответствует USB serial suffix. Ближайшая +проверка — Bluetooth Wakeup и отдельный адресный wake artifact при сохранённом +кабеле. Это ещё не реализованное автоматическое recovery. GetOptions95 остаётся +другой веткой из плана12, без перехвата активного USB SDK owner; setter требует +успешного чтения/семантики. Аппаратная ветка5 — альтернатива, не обязательное +условие исследования программного обхода. | Шаг | Проверка и результат | |---|---| diff --git a/docs/node/12_INSTA360_X4_ANDROID_RECONNECT_RESEARCH.md b/docs/node/12_INSTA360_X4_ANDROID_RECONNECT_RESEARCH.md index f19a154..0c2808d 100644 --- a/docs/node/12_INSTA360_X4_ANDROID_RECONNECT_RESEARCH.md +++ b/docs/node/12_INSTA360_X4_ANDROID_RECONNECT_RESEARCH.md @@ -7,6 +7,15 @@ RESEARCH01, 10.09.2026. Запрос владельца: исследовать Продолжение реализации: [BLE diagnostic, BLE01/BLE02/B12](13_INSTA360_X4_BLE_DIAGNOSTIC.md). Read-only команда подготовлена; ответа самой X4 на Options95 ещё нет. +POWER03/BLE03, позднейшее аппаратное уточнение: короткое Power с уже вставленным +USB → Android и новая SDK session прежней X4 без подготовки. Предыдущее +выключение/сон не различены; полностью автоматического опыта не было. +Включённая X4 теперь видна как BE80 candidate с именем по USB serial suffix. +Ближайшая ветка — состояние Bluetooth Wakeup и отдельный адресный wake artifact; +не перехватывать действующий USB SDK owner ради GetOptions. Результаты и raw +hashes сохранены в плане13 и ledger07. Нижеследующий RESEARCH01 сохраняет +основания альтернатив и не заявляет готовую команду восстановления. + ## Вывод и исправление предыдущего плана Штатно X4 должна помнить последний USB mode. Подтверждённой готовой команды, diff --git a/docs/node/13_INSTA360_X4_BLE_DIAGNOSTIC.md b/docs/node/13_INSTA360_X4_BLE_DIAGNOSTIC.md index ffe40ae..6bba7a1 100644 --- a/docs/node/13_INSTA360_X4_BLE_DIAGNOSTIC.md +++ b/docs/node/13_INSTA360_X4_BLE_DIAGNOSTIC.md @@ -104,15 +104,32 @@ BlueZ lifecycle основан на [Adapter API](https://bluez.readthedocs.io/e BLE01: 20 секунд discovery, свежих X4 candidates0. BLE02: 60 секунд discovery и sysfs sampling, X4 отсутствовала в обоих транспортных наблюдениях. -Владелец сообщил о тёмном экране. Факт короткого нажатия Power в окно BLE02 -не подтверждён. Эти результаты не являются отказом команды чтения или -доказательством невозможности Bluetooth wake-up. +Владелец сообщил о тёмном экране. Факт нажатия в окно BLE02 не установлен; +эти результаты не являются отказом команды чтения или доказательством +невозможности Bluetooth wake-up. -Нужно получить состояние после одного короткого Power с уже вставленным USB. -Если появилась штатная USB X4, сначала фиксируется этот успех и сохраняется -SDK owner. Если камера включена в обычный режим — повторный bounded scan, -выбор конкретного кандидата, GATT inspection, затем отдельный read-options. -До этого vendor commands0, pairing0, CCCD subscriptions0. +POWER03: позднее владелец подтвердил одно короткое Power с уже вставленным USB. +Картинка → сообщение о переходе в Android → зелёная X4 в Core. Read-only +snapshot09:01:59 UTC подтверждает прежний instance prepared/connected и новую +SDK session, открытую09:00:22 UTC, preview0/recording0; D455 streaming, Node +online. Установку и службы не меняли. До нажатия неизвестно, была ли камера +выключена или спала, поэтому это не полноценный cold-start тест. + +BLE03,09:04:01–21 UTC: один свежий BLE candidate, BE80, RSSI -59, +Connected0/Paired0. Имя соответствует последним6 символам полного USB serial; +его hash совпадает с прежним X4 instance, USB2e1a:0002/speed5000. Это полезная +корреляция, не проверка полного serial через GATT. SDK owner сохранён, +GetOptions не выполнялся. Vendor commands0, pairing0, CCCD subscriptions0; +все собственные scans завершены. + +Следующий шаг — выяснить состояние Bluetooth Wakeup и подготовить адресный +wake artifact. [Официальная X4 FAQ](https://onlinemanual.insta360.com/x4/en-us/operating-tutorials/connect/connect-app) +требует включённую настройку Settings → General → Bluetooth Wakeup (если +General отсутствует — непосредственно в Settings). Описанная там поддержка +приложения iOS не является приёмкой Linux эмуляции. Значение настройки нашей +камеры пока unknown. Ни выключение, ни wake advertisement не выполнялись. +Исходную точную USB identity использовать из private evidence; не объединять +камеры по suffix. GetOptions — отдельная ветка без активного USB SDK owner. После реального чтения95 можно решать, есть ли основание для безопасного Android setter. Если уже ANDROID=1, запись того же значения может быть лишь