Oled , sensores temp-humedad dht 22, Orange Pi Iot 2G
gpio
ORIGINAL RUSO
fuente: https://4pda.ru/forum/index.php?showtopic=813602&st=360#entry72321134может кому пригодится...
устройства для подключения:
- Экран ssd1306
SDA 3
SCK 5
- DHT22
DATA 12
- РЕЛЕ
R1 37
R2 35
R3 33
R4 31
R5 29
- USB камера.
Настройка:
1. записать образ на SD
2. подключить модули (экран обязательно остальное по желанию)
3. подключиться через UART (921600) пользователь root пароль 1
4. настроить сеть MODEM или WIFI как в посте (настрока сети)
для wifi файлы:
- /etc/init.d/S35wifi
- /etc/wpa_supplicant.conf
- /etc/network/interfaces
- /etc/resolv.conf
5. настроить программу через файл (/etc/iot.conf)
[telegram]
enable=true
token=токен бота
[mqtt]
enable=true
host= сервер например m10.cloudmqtt.com
port= порт например 11420
cid=iot-2g
user= пользователь
pass= пароль
6. запустить программу /sbin/iot2, проверить работу
7. сделать чтобы программа запускалась автоматически (по UART будет невозможно выйти для изменения конфигураци, только через WIFI через ssh подключение или подмонтировать Sd и ручками в редакторе)
- /etc/inittab (заменить строку console::respawn:/sbin/getty .... на console::respawn:/sbin/iot2 )
TELEGRAM команды:
cam - фото с камеры
temp - температура с датчика
reboot - перезагрузка железки
relayX=Y - установить для реле X состояние (0-выкл. 1-вкл. 2-инверт. от 30-минуты интервала переключения вкл-выкл-вкл...)
relayZ - вернуть состояние для реле X
relay=Y - установить состояние для всех реле (0-выкл. 1-вкл. 2-инверт. от 30-минуты интервала переключения вкл-выкл-вкл...)
MQTT
cam - запрос фото в ответ image1 - поле содержить png с камеры
relayX=Y - запрос на изменение состояния реле X на Y (0-выкл. 1-вкл. и т.д ...) ответ relayXState=Y состояние реле
tempState - температура
humiState - влажность
Traducido a castellano:
dispositivos para la conexión:
- pantalla ssd1306
SDA 3
SCK 5
- DHT22
DATOS 12
- RELAY
R1 37
R2 35
R3 33
R4 31
R5 29
- Cámara USB.
Configuración:
1. Grabar imagen en SD
2. Conectar los módulos (la pantalla debe ser el resto opcional).
3. conectarse a través de UART (921600) contraseña de usuario root 1
4. Configure el MODEM de red o WIFI como en la publicación (configuración de red)
para archivos wifi:
- /etc/init.d/S35wifi
- /etc/wpa_supplicant.conf
- / etc / network / interfaces
- /etc/resolv.conf
5. configura el programa a través de un archivo (/etc/iot.conf)
[telegram]
enable = true
token = bot token
[mqtt]
enable = true
host = servidor por ejemplo m10.cloudmqtt.com
puerto = puerto, por ejemplo, 11420
cid = iot-2g
usuario = usuario
pass = contraseña
6. ejecute el programa / sbin / iot2, verifique el trabajo
7. haga que el programa se ejecute automáticamente (no será posible salir de UART para cambiar la configuración, solo a través de WIFI a través de la conexión ssh o el montaje de SD y bolígrafos en el editor)
- /etc/inittab (reemplace la línea de console::respawn:/sbin / getty .... a console::respawn:/sbin/iot2)
Comandos de TELEGRAM:
cam - foto de camara
temperatura - temperatura del sensor
reiniciar - reiniciar el hardware
reléX = Y - establezca el estado X para el relé X (0-apagado. 1-encendido. 2-invertido. desde el intervalo de conmutación de 30 minutos encendido-apagado-encendido ...)
relayZ - estado de retorno para el relé X
relé = Y: establezca el estado de todos los relés (0-apagado. 1-encendido. 2-invertido. desde el intervalo de conmutación de 30 minutos encendido-apagado-encendido ...)
MQTT
cam: solicite la foto en la respuesta image1: el campo contiene png de la cámara
relayX = Y: solicitud para cambiar el estado del relé X a Y (0-off. 1-on, etc ...) responde relayXState = Y estado del relé
tempState - temperatura
HumiState - Humedad
Iot-oled imagen SD
He preparado una imagen con ubuntu 16.04.
para configurar la zona horaria:
dpkg-reconfigure tzdata
Para habilitar la utilidad iot2 mqtt en el arranque de linux y tener así
acceso a los puertos gpio: oled sensores, etc..:
/etc/rc.local
OCnfiguracion de WIfi y GSM en la IoT con linuxroot:
я собрал свой образ через buildroot. в принципе вроде оно работает, но пока есть вопросы.
1. как включить spi или как узнать по какому они адресу чтобы прописать их в dts linux
2. тоже самое про gpio
fm приемник работает через модуль ядра rdafmRadio и по идее его можно задействоват через функции ioctl...
ну и на всякий случай как сеть настроить чтобы самому не искать потом)
wifi:
файл /etc/wpa_supplicant.conf
ctrl_interface=/var/run/wpa_supplicant
ap_scan=1
network={
ssid="название сети"
scan_ssid=1
key_mgmt=WPA-PSK
psk="пароль"
}
ap_scan=1
network={
ssid="название сети"
scan_ssid=1
key_mgmt=WPA-PSK
psk="пароль"
}
добавить в файл /etc/network/interfaces
auto wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant.conf
iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant.conf
a) нужно еще загружать модуль если он не знагружается автоматом: modprobe rdawfmac
b) запустит: wpa_supplicant -B -D wext -i wlan0 -c /etc/wpa_supplicant.conf
a) и b) я добавил в загрузку в init скрипт чтобы сеть автоматом подключалась.
GSM для mts:
так как wvdial устарел и выпелен в buildroot то руками)
установить pppd
создать файл: /etc/ppp/peers/mts
connect "/usr/sbin/chat -v -f /etc/ppp/peers/gprs"
/dev/modem0
115200
noipdefault
usepeerdns
defaultroute
persist
noauth
nocrtscts
local
user mts
/dev/modem0
115200
noipdefault
usepeerdns
defaultroute
persist
noauth
nocrtscts
local
user mts
создать файл: /etc/peers/gprs
ABORT BUSY
ABORT VOICE
ABORT "NO CARRIER"
ABORT "NO DIALTONE"
ABORT "NO DIAL TONE"
ABORT "NO ANSWER"
ABORT "DELAYED"
ABORT "ERROR"
ABORT "+CGATT: 0"
"" AT
TIMEOUT 12
OK ATH
OK ATE1
#OK AT+COPS=0
OK AT+CFUN=1
OK AT+CGATT=1
OK AT+CGDCONT=1,"IP","internet.mts.ru","",0,0
OK AT+CGACT=1,1
OK ATD*99***1#
CONNECT ""
ABORT VOICE
ABORT "NO CARRIER"
ABORT "NO DIALTONE"
ABORT "NO DIAL TONE"
ABORT "NO ANSWER"
ABORT "DELAYED"
ABORT "ERROR"
ABORT "+CGATT: 0"
"" AT
TIMEOUT 12
OK ATH
OK ATE1
#OK AT+COPS=0
OK AT+CFUN=1
OK AT+CGATT=1
OK AT+CGDCONT=1,"IP","internet.mts.ru","",0,0
OK AT+CGACT=1,1
OK ATD*99***1#
CONNECT ""
добавить в файл /etc/network/interfaces
auto ppp0
iface ppp0 inet ppp
provider mts
iface ppp0 inet ppp
provider mts
может еще понадобится загрузить модуль ядра если не загружен: modprobe ppp_generic
Comentarios