Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Русский
    3. аппаратные средства
    4. Железо
    5. Камера Xiaomi Dafang 1080P

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Камера Xiaomi Dafang 1080P

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      Maryan last edited by

      Коль уж сам возился, опишу для последующих как хакнуть новую камеру от Xiaomi, серия Dafang 1080P, вот такая https://www.ixbt.com/live/kvazis/obzor- … 1080p.html.

      Итак, для того чтобы камеру можно было использовать вне приложения Xiaomi MiHome ее необходимо "хакнуть". Благо, мир не без добрых людей, и на GitHub уже выложены способы. Читаем здесь https://github.com/EliasKotlyar/Xiaomi- ... all_cfw.md.

      Этапы:

      1. Берем SD карту (она в дальнейшем останется в камере, поэтому запаситесь запасной с объемом 16-32 или более Гига)

      2. Формат в FAT

      3. Качаем последнюю версию CFW отсуда https://github.com/EliasKotlyar/Xiaomi- ... /hacks/cfw (сейчас это 1.2)

      4. Пишем в корень отформатированной карты файл и переименовываем в его demo.bin. Других файлов на карте быть не должно!

      5. Вставляем в выключенную камеру, зажимаем кнопку Setup и подаем питание. Держим 5-6 секунд, отпускаем, питание не отключаем.

      6. Как только начнет крутить основой - выключаем, вынимаем карту, включаем, если через 5 секунд камера моргнет синим диодом и после этого начинает крутить основу - идем дальше, если нет, повторяем процедуру в п.5

      7. Качаем каталог https://github.com/EliasKotlyar/Xiaomi- ... rmware_mod

      8. Удаляем с SD карты demo.bin и пишем на нее содержимое каталога firmware_mod (в корне карты должны быть каталоги bin, config, driver, script, www и run.sh

      9. Открываем файл wpa_supplicant.conf из папки config

      10. Правим SSID и PW, указывая параметры вашей домашней Wi-Fi сети

      11. Вставляем карту в выключенную камеру, подаем питание.

      12. Если все ОК, через 5 секунд короткий блинк синим диодом и светящийся желтый, если нет - идем в п.9

      13. Сканером сети узнайте IP адрес, присвоенный камере (рекомендую привязать его по MAC адресу)

      14. В браузере http://IP_камеры/cgi-bin/status.cgi. Здесь можете поменять часовую зону, hostname камеры.

      15. Для проверки "управляемости" камерой нажимите на кнопки движения камеры (влево, вправо), тест звука - камера должны на вас реагировать.

      16. Включаем протокол доступа к потоку, нажимаем Start MJPEG RTSP - Start

      17. После всего проделанного по адресу

      http://IP_камеры/cgi-bin/currentpic.cgi?width=1920&height=1080 картинка с камеры

      rtsp://IP_камеры:8554/unicast видеопоток с камеры

      Вот и все, теперь зная как получить картинку и поток, используем это в скриптах. Удачи!

      D 1 Reply Last reply Reply Quote 0
      • M
        Maryan last edited by

        Продолжу наполнять эту тему описывая свершения, победы и поражения с этим девайсом в связке с брокером.

        Итак, есть хакнутая камера, есть ссылки для получения фото видео. Далее будем реализовывать передачу потока в яшку. Так как у меня серверная часть крутиться на малине (Raspberry Pi3), а в ее базовой инсталляции нет пакета ffmpeg, эту досаду необходимо устранить. Сразу оговорюсь, ничего нового тут не пишу, все взято с сайта Raspberry Pi и iobroker с одним отличием - все пропущено через себя.

        Итак, этап 2 - установка ffmpeg на RP3

        wget https://github.com/legotheboss/YouTube-files/raw/master/ffmpeg_3.1.4-1_armhf.deb
        sudo dpkg -i ffmpeg_3.1.4-1_armhf.deb
        

        За данный вариант большое спасибо Кирову Илье. До его варианта я перебрал 2 других, которые ставились без замечаний, но с кодеками была засада. Так что, не ищите других способов и не изобретайте велосипед.

        Этап 3 - захват видеопотока с камеры.

        Для начала проверим наличие видеопотока. Для этого в консоли (у меня малина) пишем

        ffmpeg -y -i rtsp://IP_камеры:8554/unicast -t 10 -f mp4 -vcodec h264_omx -pix_fmt yuv420p -vf scale=w=640:h=480:force_original_aspect_ratio=decrease -r 25 /home/pi/out.mp4
        

        На выходе должны получить 10 секундный видеофайл out.mp4 в каталоге /home/pi/ с неким объемом в Мб. Если файл пустой или его вовсе нет … ужас, что-то пошло не так. Вчитываемся в много букв на экране. Возможно ffmpeg не может найти видеопоток с камеры на указанном IP, возможно кодек неверно стал (можете попытаться заменить h264_omx на libx264).

        Проверить наличие установленных кодеков

        ffmpeg -codecs | grep 264
        

        в конце должно быть нечто подобное:

        DEV.LS h264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (encoders: libx264 libx264rgb h264_omx )

        Если файл образовался и через ftp/samba (или иными протоколами доступа) вы можете его просмотреть - поздравляю! камера вся ваша и можете беспощадно ее эксплуатировать

        Что можно сделать. Например, отдать поток в HomeKit (как это с ходу сделал я).

        Этап 4 - настройка вещания видеопотока через HomeKit на iOS

        Для этого:

        1. На закладке драйвера установите "Homekit yahka adapter" нажав на + в крайнем правом столбце. Рекомендую ставить версии не ниже 0.6.0 (на момент тестирования находится в редакции beta 3). Чтобы установить бету включите режим эксперта (верхняя строка, иконка с безымянным портретом), в последнем столбце строки с "Homekit yahka adapter" появиться стрелка вниз (за кнопкой с мусорной корзиной), нажимаем и выбираем нужную версию. После установки нажать кнопку с стрелкой вниз (за кнопкой с "?") - обновить файлы в базе данных.

        2. Переходим на закладку "настройки драйверов"

        3. Ищем в ней "Homekit yahka adapter" и нажимаем кнопку "настроить"

        4. Далее не важно для камеры в целом, но важно для дальнейшей настройки остальных устройств. В настройках, в левой части панели видим корневой элемент, в нем указано как приложение iOS "Дом" будет видеть название вашего "умного дома". Название произвольное. Ключевое в настройках этого элемента это пин-код. Именно по нему вы будете объявлены хозяином для приложения iOS. Предлагаю его в одночасье сменить. Готово.

        5. Нажимаем "+ Add Camera ".

        5.1. Слайдер "Basic Properties" по аналогии с п.4, но работает на конкретную камеру (название камеры, пин-код для сопряжения с iOS)

        5.2. Слайдер "Stream Properties", самое важное, но не самое страшное после теста в консоле командой ffmpeg.

        • Source указать ссылку на видеопоток или фото, например rtsp://IP_камеры:8554/unicast (смотрим на ранее описанную команду ffmpeg). Для "вещания" статического фото указываем http://IP_камеры/cgi-bin/currentpic.cgi?width=640&height=480

        • Codec указать h264_omx или libx264 (для малины гуру рекомендуют первый)

        • max.Width ширина картинки

        • max.Height высота картинки

        • max.FPS максимальное количество кадров в секунду

        В последних 3 пунктах советую начинать с малого (например, 640х480х10) и постепенно увеличивать до требуемого на уровне возможного для вашей камеры. Также, советую запустить поток в том же VLC, и проверить его работоспособность (вещание), и посмотреть информацию о потоке (ширина и высота картинки). Больше, чем показывает при вещании в VLC, ставить нецелесообразно.

        5.3. Слайдер "Advanced Settings" описывать не буду. Кто понимает, то будет руками править, иначе … лучше не надо.

        Нажимаем "Сохранить и выйти", драйвер перезапускается и индикатор его активности должен стать зеленым. И снова поздравляю! Доставайте iPhone, iPad, AppleTV (приложение "Дом" появилось с 10 версии и на AppleTV 4 поколения), запускайте его, создавайте "My sweet HOME", вводите код ... дальше вне темы данного поста.

        И для анонса следующего опуса начинающего брокера, публикую небольшой скрипт реализованный в Blockly. За его создание и назидания благодарность Alex )). В нем заложена следующая логика, применимая для описанной выше камеры.

        1. Скрипт анализирует состояние объекта пинг IP камеры. Нет пинга - нет питания.

        2. Если у камеры пропало питание (например, украли ...) брокер шлет сообщение в телеграмм

        3. Когда питание восстановилось (вор вернул )), нет банально рубильником подали на район напряжение), брокер отправит в камеру команду на старт вещания потока и отправит в телеграмм радостное сообщение.

        На этом все. Удачи!

        Рекомендуемые ссылки других авторов (для закрепления материала):

        https://github.com/kirovilya/ioBroker.y ... era_rus.md

        http://forum.iobroker.net/viewtopic.php?f=26&t=10399
        5177_blocly_camera_telegramm.jpeg

        1 Reply Last reply Reply Quote 0
        • F
          fsocik last edited by

          Хак работает для любой версии прошивки камеры или есть ограничения?

          1 Reply Last reply Reply Quote 0
          • Vitolds
            Vitolds last edited by

            Zdrastvui Maryan,

            izveni shto ja pishu tebe ni ruskimi bukvami no nadeus shto mozhno prochitat i ponjat. Moi ruskii jazik tozhe ne ludshii, delo v tom chto ja prochital v Forume tvoju zametku na schot Kameri Xiaomi Dafang 1080P. Ja tozhe reshil peredelatj etu officialnuju programmu na tvoju predlozhenuju.

            No u menja malinkaja problemka , v punkte 10. ti pishesh chto nado izmenitj SSID i PW i ukazatj parameri moei Wi-Fi seti, no shtoto ne poluchaetsja.

            Mozhet mozhesh napisatj chto konkretno mne nado tam delatj…? Jesli jestj u tebja vreme pozhaluist napishi paru strok.

            S privetom iz Bremen (DE) Vito

            1 Reply Last reply Reply Quote 0
            • D
              diy.ua @Maryan last edited by

              @Maryan
              Здравствуйте, посоветуйте, плз, как бьі проделать тоже самое с Xiaomi Mi Smart Camera PTZ Version Pro MJSXJ06CM
              Буду благодарен за любую помощь/совет

              1 Reply Last reply Reply Quote 0
              • First post
                Last post

              Support us

              ioBroker
              Community Adapters
              Donate

              899
              Online

              31.9k
              Users

              80.2k
              Topics

              1.3m
              Posts

              4
              5
              4940
              Loading More Posts
              • Oldest to Newest
              • Newest to Oldest
              • Most Votes
              Reply
              • Reply as topic
              Log in to reply
              Community
              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
              The ioBroker Community 2014-2023
              logo