Скучно…

Лежу, кислород булькает в бульбуляторе. По коридору ходят белые человечки. Иногда зеленые — эти увозят трупы. Вчера вот двое померли. Пенсионеры какие-то.

Народу на этаже немного. В коридоре лежит всего несколько человек. Остальные вполне поместились в палатах.

У меня тут дед и два паралитика после инсульта. Один ваще плох. Просто лежит. Второй бодр, но толст как тюлень в 160кг. И ему тоже хреново. А я тут подумал, что если бы не дал по спорту пару лет назад, то тоже пришёл бы к такой туше лет за 10. Ужас какой.

Чувствую, что резко теряю массу. Ноги стали тощие, дистрофанские. Эх где мои рычаги которыми я апхилы стокилометровые давал. Эххх…

Восстанавливаться долго придётся.

Запись опубликована в рубрике Дневник. Добавьте в закладки постоянную ссылку.

16 комментариев: Скучно…

  1. Павел говорит:

    Обязательно наберёшь мышечную массу обратно, это вопрос времени.
    Человек — скотина очень выносливая, можно это всё пережить достойно и восстановиться, инфа сто процентов.
    Выздоравливай, без твоих постов моя RSS-лента осиротеет.

    • DI HALT говорит:

      Да это то само собой. Обидно, что этот велосезон похоже в пролете. Хотя может в сентябре октябре повезёт. С погодой. Еще вкручу.

      • Андрей говорит:

        Привет, не спеши вкручивать, или как-то физически тренироваться, после ковида могут быть последствия, лучше на год забыть, больше будешь гулять и делать легкую зарядку и все будет хорошо, через год начнешь тренироваться.
        Выздоравливай, я через это уже прошел, никому не желаю подобного.

      • Андрик говорит:

        Какой нафиг велосезон? Считай что на временной инвалидности. Легкие о себе еще будут давать знать не один месяц. После больницы используй время для упражнений тиа ушу или подобного, постепенно добавляй нагрузки на разные группы мышц. И вес восстанавливается после короны за 2 месяца, но не в мышцы а в жир. Удачи.

  2. Sergv говорит:

    Держись! Что бы тебе не было там совсем скучно, немного техно подробностей в твою голову, может что-то зайдет.

    Купил пару лет назад стабилизатор для телефона
    https://www.zhiyun-tech.com/ru/product/detail/240?type=website&page=header&source=general_detail&title=SMOOTH%204

    Купил в основном из-за функции съемки панорамы. На выходе все оказалось как обычно, аппликуха на андроиде вроде как в целом норм, но функция не работает. Башкой крутит, но не снимает что нужно. Интернет в целом полон таких историй про этот стаб, но это-то 2 года спустя он полон, а не когда покупал…

    В общем заело желание протокол общения по BLE между апой и штативом снять и свою магическую коробочку запилить для вращения штатива вентилятором. Курилось это все медленно, в основном осиняло раз в пару недель. Сначала пытался снимать логи, но на одном устройстве нет рута, на другом рут есть, но какие-то проблемы с HCI логером. Тыкал веткой разные эмуляторы, но то же особо не преуспел. На выходе из этой серии получил какой-то бинарный набор в логах, который существенно отличался от того что я ожидал увидеть (потом понял, что с этим можно было работать, но это было уже потом).

    Спас btlejuice как MiM. Пока 2 недели бился, что бы его нормально скомпилировать, запустить (Надо 2 брелка BLE на подключенных к разным кернелам/виртуальным хостам. Те машина может быть физически одна, но одно устройство обязательно проброшено в виртуалку) немного стало доезжать как устроен BLE с точки зрения обмена между устройствами. Попутно нашел вменяемое приложение для работы с BLE устройствами на Win10 — BLEConsole от sensboston. Итогом стал чистый лог коммуникации между аппой и стабом для нужного периода времени. Типа такого:
    >>> Connection from remote device to dummy
    WRITE to 0000fee9-0000-1000-8000-00805f9b34fb:d44bc439-abfd-45a2-b575-925416129600 — 24 3c 08 00 18 12 08 01 04 00 00 00 14 19
    NOTIFICATION from 0000fee9-0000-1000-8000-00805f9b34fb:d44bc439-abfd-45a2-b575-925416129601 — 24 3e 08 00 78 12 08 17 04 00 b3 00 2d 16
    WRITE to 0000fee9-0000-1000-8000-00805f9b34fb:d44bc439-abfd-45a2-b575-925416129600 — 24 3c 08 00 18 12 09 01 05 00 00 00 00 2a
    NOTIFICATION from 0000fee9-0000-1000-8000-00805f9b34fb:d44bc439-abfd-45a2-b575-925416129601 — 24 3e 08 00 78 12 09 17 05 00 08 20 ac c3
    WRITE to 0000fee9-0000-1000-8000-00805f9b34fb:d44bc439-abfd-45a2-b575-925416129600 — 24 3c 08 00 18 12 0a 01 7c 00 00 00 e2 55
    NOTIFICATION from 0000fee9-0000-1000-8000-00805f9b34fb:d44bc439-abfd-45a2-b575-925416129601 — 24 3e 08 00 78 12 0a 17 7c 00 39 03 eb 9e
    WRITE to 0000fee9-0000-1000-8000-00805f9b34fb:d44bc439-abfd-45a2-b575-925416129600 — 24 3c 08 00 18 12 0c 01 7d 00 00 00 b7 ae
    NOTIFICATION from 0000fee9-0000-1000-8000-00805f9b34fb:d44bc439-abfd-45a2-b575-925416129601 — 24 3e 08 00 78 12 0c 17 7d 00 01 46 e3 f1
    WRITE to 0000fee9-0000-1000-8000-00805f9b34fb:d44bc439-abfd-45a2-b575-925416129600 — 24 3c 08 00 18 12 0d 01 7e 00 00 00 cb 70
    NOTIFICATION from 0000fee9-0000-1000-8000-00805f9b34fb:d44bc439-abfd-45a2-b575-925416129601 — 24 3e 08 00 78 12 0d 17 7e 00 50 02 51 1a
    WRITE to 0000fee9-0000-1000-8000-00805f9b34fb:d44bc439-abfd-45a2-b575-925416129600 — 24 3c 08 00 18 12 0e 01 7f 00 00 00 9f c8
    NOTIFICATION from 0000fee9-0000-1000-8000-00805f9b34fb:d44bc439-abfd-45a2-b575-925416129601 — 24 3e 08 00 78 12 0e 17 7f 00 0f 07 21 ec
    WRITE to 0000fee9-0000-1000-8000-00805f9b34fb:d44bc439-abfd-45a2-b575-925416129600 — 24 3c 08 00 18 12 10 01 06 00 00 00 ba e3
    NOTIFICATION from 0000fee9-0000-1000-8000-00805f9b34fb:d44bc439-abfd-45a2-b575-925416129601 — 24 3e 08 00 78 12 10 17 06 00 f6 02 f8 3e

    Потестил отправляя те же последовательности через BLE Concole, все вращается. Ну думаю бинго, наконец-то поперло, но не тут-то было.

    Начал разбираться с командами, что-зачем-когда, увидел, что вначале там константа для адресации, что есть байт, который последовательно инкрементируется, последние 2 байта — CRC32. Разбил команды на группы, нашел 2 команды и 2 байта со значениями вертикали и горизонтали, нашел команду запуска вращения. И опять застрял.

    При том, что половина команд была более ли менее понятна, тут режим переключаем что бы фиксировать позицию, тут разрешаем вращаться без задержки, тут координаты итд… все подобрал изучая что произойдет если не послать какую-то команду… все равно оставалась пачка, которая управляла режимами и не вписывалась в какую-то логическую схему. С другой стороны еще был CRC, для которого я никак не мог подобрать правильные параметры, те не мог исследовать комнады с измененными значениями. С CRC в итоге помог rsdn — я просидел несколько ночей мучая https://crccalc.com/, но видимо пропустил нужное значение, на что мне на форуме и указали. Дальше были еще попытки этот алгоритм воспроизвести в excel, что бы калькулятор команд сделать, но это отдельная история на несколько дней. Основной затык оказался в недоидентифицированных командах.

    Еще в самом начале я пытался расковырять аппликуху, но она оказалась запакована каким-то обфускатором. Повозившись с jadx-gui понял, что не мое и оставил на какое-то время. Пришлось опять вернуться. Понятно, что контент самой аппы где-то лежит, нашел самый толстый файл без понятного назначения — 0OO00l111l1l, нагуглил, что это зверек по имени Legu к которому долго не мог найти анпакера, пока не наткнулся на Legu Unpacker (очевидное название какое и еще несколько дней в попытке его собрать), который на актуальных версиях Legu мог только восстановить структуру классов, но не код внутри весь остался заNOPленым. Была идея отмотать несколько версий аппликух назад, в надежде, что там будет более старая версия Legu, но я получил больше.
    На apkpure.com хранится большая история apk многих приложений, в том числе и нужного мне. Качал ВСЕ версии и наткнулся на не запакованую Legu версию, видимо релиз менеджемент где-то слажал.
    Ну а дальше все тот же jadx-gui и бинго, нашел енум с комбинацией трех байт из всех всех команд и текстовые обозначения к ним. Впереди еще будет доразобрать протокол.

    Уже потыкал на ESP32 с BLE отправку команд на стаб, набросок кода есть. Буду еще разбираться как прикинуть ESP32 инпут девайсом, который может в стандартную камеру телефона по BT отправлять кейкод для спуска шутера. Опять же есть примерчик как прикинуться клавиатурой, но надо разбирать и пробовать. Ох опасаюсь, что одновременно как сервер и как клиент это работать не будет, но посмотрим, подключу к ESP32 обычный BT модуль на gpio в самом тяжелом случае.

    Вот такая незаконченная история, которая надеюсь оживит твои будни среди больничных стен.

    • DI HALT говорит:

      Чирканул бы мне статейку в сообщество. Такой материал хоронишь в стол

      • Sergv говорит:

        Надо сначала превратить это в success сторю, а то пока больше наработки на коленке, без рабочего решения в конце. В какой-то момент по твоим заветам буду вероятно осваивать заказ платок у китайцев, что бы в коробочку прилично все убрать и корпус напечатать (медведь 4s — зверь). но до этого момента еще килочасы :)

        Поинт подумать над статьей после завершения забрал. :)

  3. Алексей говорит:

    Тоже после ковидной больнички килограмм 7 слил. Советую потом ещё с месяц поделать ежедневно дыхательную гимнастику для лёгких, чтобы альвеолы разлипались. Это движения грудной клетки (скручивания/наклоны/повороты/махи руками) вкупе с глубокими вдохами и выдохами. Без этого можно просто потерять десятки %% полезной площади легких.

  4. Sergv говорит:

    Поправляйся! Без твох статей техномысль затуманивается бытовыми заботами, а с ними невольно ловишь себя на ощущении, что «Ооо! Да, да! То самое оно! Что бы то же сделать полезного и интересного». :)

  5. Андрик говорит:

    Привет Di! Как идёт процесс выздоровления?

  6. Сергей говорит:

    Держись, парень!
    Попроси жену принести цинк в таблетках — он не дает размножаться вирусу, витаминка — врачам пох.
    Все будет нормально!

  7. Tanur говорит:

    Мы тебя очень ждем!

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.