Февраль 13

(ReSpeaker 6-Mic Circular Array kit for Raspberry Pi + pulseaudio + mdmTerminal2 + snowboy) (Majordomo + mdmPiTerminal )

Итак можно сказать что это свершилось, значить это возможно и это того стоит
Raspberry Pi 3 Model B+ не имеет микрофона но имеет хороший корпус с вентилятором 🙂 который пришлось выкинуть потому что ReSpeaker 6-Mic занял его место, предистория я купил usb микрофон, но на маке он шипел, что в малинку я его даже не ставил. попробовал usb звуковую карту, звук был велеколепен, но микрофона на руках не оказалось.
зная чем череват выбор покупка и как работает нормальный микрофон — цена уходила в облака, тогда я услышал о конструкторах гугла которые делают советника на основе малинки и некой шапки, с массивами микрофонов. цена его была сопоставима с малинкой + микрофоном. и я начал искать нашел несколько вариантов шапок для малинок, но так как использовать образ я не хотел и уверености что это обычная звуковая карта у меня небыло, я полез искать производителя.
как оказалось он уже выпустил ReSpeaker 6-Mic — где то в описаниях писалось, что они опять понизили количество микрофонов потому что благадоря новым технологиям отпала в них нужда, но так как моя плата позиционировала захват от 5 метров в отличии от 3х при 4 микрофонах, и я решил брать «ReSpeaker 6-Mic»
Хождения по муках
запустить примеры получилось где-то на третий день,
но в конечном этоге загорелись диодики указали на микрофон который услышал волшебное слово и даже алекса рассказала что я не купил ничего потому слушать ничего не буду.
последние шаги по инструкции говорили, что нужно использовать pulseaudio (я нарисовал себе картинку, что сервер возмет на себя выбор микрофона и отсеивиание звуков но по логике должно быть как-то так) кроме того, что алса конфликтовала между приложениями Majordomo и MDterminal наглухо подвешивая малинку которую пришлось перезагружать кощунственным способом.

с пульсе все намного сложнее …..
продолжение следует

Январь 24

raspbian error errno 28 no space left on device pipe

тут

хороший человек описал как увеличить размер /tmp которая в случае raspbian использует ram чтоб не мучать диск

Смотрим, сколько места у нас сейчас:

$ df -h /tmp
Filesystem      Size  Used Avail Use% Mounted on
tmpfs          1000M   64K  999M   1% /tmp

Изменяем размер так:

# mount -o remount,size=2G /tmp

Теперь стало получше:

df -h /tmp
Filesystem      Size  Used Avail Use% Mounted on
tmpfs           2.0G   64K  2.0G   1% /tmp

Январь 2

настраиваем цикличную запись на sd-card «Dafang Hacks» Local h264 recording possible Xiaomi Xiaofang 1S (mac:78)

как написано тут
убираем из автозагрузки медиа сервер и запись
и прописываем их в
run.sh
после блока

## Autostart all enabled services:
for i in /system/sdcard/config/autostart/*; do
$i
done

записываем

sleep 10;
/system/sdcard/controlscripts/rtsp-h264

//заметил, что номера процессов увеличиваются если увеличить время значить видеосервер запускает еще процессы потому стоит поиграть со временем

// sleep 2;

sleep 10;
/system/sdcard/controlscripts/recording

файл /system/sdcard/controlscripts/recording

меняем строку выполнения записи блок start
у меня команда выглядит так
/system/sdcard/bin/busybox nohup /system/sdcard/bin/avconv -rtsp_transport tcp -y -i rtsp://0.0.0.0:8554/unicast -vcodec copy -c:a aac -ar 48000 -ab 128k -strict experimental "$RECORDING_PATH" &>/dev/null &

как видно из файла он запускает запись видео навсегда
потому не плохо бы на крон повесить
/system/sdcard/controlscripts/recording stop

sleep 1;


/system/sdcard/controlscripts/recording start

как оказалось баш, не понял команду stop&start  потому просто запускал еще одну запись что в конечном итоге просто подвисало систему я пошел другим путем и вынес блок стоп в файл крона

/system/sdcard/config/cron/periodic/15min/recording

#!/bin/sh
PIDFILE="/run/recording.pid"
DCIM_PATH="/system/sdcard/DCIM"

pid=»$(cat «$PIDFILE» 2>/dev/null)»
if [ «$pid» ]; then
kill «$pid» && rm «$PIDFILE»
echo «Stopped recording»
else
echo «Could not find a running recording to stop.»
fi

/system/sdcard/controlscripts/recording

 

ну и как вы могли доказать час видео то есть 4 файла это гиг потому стоит повесить на каждодневный крон очистку старых файлов хотя в таком случае наверное стоит все файлы писать в 1 дерикторию — ну это потом пока проверяем как пишет

 

настройки для видео bitrate выставил 256 просто где-то в подсознании слышал а вот 5000 или 2000 мне показалось диким и так заработало иначе писало битый файл пару секунд и подвисало

так же обратите внимание что зайдя в настройки — в маем случае даже чтоб сделать снимки и выложить вам запись оборвалась -но после перезагрузки возобновилась,

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

пользуйтесь друзья

 

 

PS как показала практика отключаем все записи по демонам и вставляем в крон 1 минуту команду на запись -59 сек. потому как оказалось выгрузка демона не происходит с первого раза в отличии от окончания записи к сожалению ролики на 5 минут уже не записывает, понятно почему даже у родного софта организованы минутные записи.

ну и желательно бы было собрать l4v без мастера а для записи сразу на диск без трансляции — но это потом

Декабрь 25

miio lumi.gateway.v3

Друзья, что-то совсем с протоколом тяжело.
нашел команду для проверки включения свойства включена ли на шлюзе (lumi.gateway.v3) сигнализация.
m= get_prop
p=["arming"]

варианты ответов
{"result":["off"],"id":1545739388} //выключен
{"result":["on"],"id":1545739388} //включен
{"result":["oning"],"id":1545739388} //включается

печаль, что

m=set_prop

не работает

но

барабанная дробь
m=set_armin
p=["on"]

и соответственно

m=set_armin
p=["off"]

Ноябрь 27

прожиточный минимум с кириллицей в терминале линукс

тут можна почитать более подробно тут ,
а для нас хватит и

Вывести список всех доступных в вашей системе локалей можно с помощью команды locale.

locale -a

сгенерировать любимую
locale-gen ru_RU.UTF-8

sudo nano /etc/default/locale
вставить

LANG="ru_RU.UTF-8"
LC_ALL="ru_RU.UTF-8"

удалить не нужные (оставляем только)

sudo locale-gen --purge ru_RU.UTF-8 en_US.UTF-8

и отправляемся за нормальной работай

sudo reboot