Подключение Arduino

Какой самый простой способ подключить Arduino к WB напрямую?
USB, uart как-то еще?
И как считать данные из порта arduino?

думаю проще всего через UART.

Порт, выведенный на UEXT2 - это /dev/ttyNSC0 в линуксе. Дальше - зависит от того, на чём будете писать. Гуглить по “linux serial <ваш любимый язык>”.

Подключил к uext2 rx в tx и tx в rx.

root@wirenboard:~# stty 9600 -F /dev/ttyNSC0
root@wirenboard:~# cat /dev/ttyNSC0

Тишина.
Что еще надо настроить в WB чтобы увидеть данные?

прошу прощения, в WB SH порт /dev/ttyNSC1

Все работает.
Для меня подключение датчиков через ардуино единственный выход, т.к. осилить подключение напрямую к WB не получилось, за исключением 1-wire ds1820 и oregon.
Вот простой скрипт, который выводит полученное от Arduino в Mosquitto.


#!/bin/sh
while [ true ]
do
while read line
do

var1=$(echo $line | cut -f1 -d&#039;:&#039; )
var2=$(echo $line | cut -f2 -d&#039;:&#039; )

 if [ -n &quot;$var2&quot; ]
  then
    mosquitto_pub -h localhost -t &quot;/arduino/$var1&quot; -m &quot;$var2&quot;
  fi

done &lt; /dev/ttyNSC1
/bin/sleep 10
done 

В ардуине надо посылать в порт в таком виде (разделитель в скрипте двоеточие):
Serial.println("TemperatureOut_C: " + String(TemperatureOut_C) );

Данные этого скрипта видно на веб страничке HomA:

#!/bin/sh
mosquitto_pub -h localhost -t &quot;/devices/arduino/meta/name&quot; -m &quot;Arduino on ttyNSC1&quot;
mosquitto_pub -h localhost -t &quot;/devices/arduino/controls/temperature/meta/type&quot; -m &quot;temperature&quot;
mosquitto_pub -h localhost -t &quot;/devices/arduino/controls/pressure/meta/type&quot; -m &quot;pressure&quot;
mosquitto_pub -h localhost -t &quot;/devices/arduino/controls/humidity/meta/type&quot; -m &quot;rel_humidity&quot;
mosquitto_pub -h localhost -t &quot;/devices/arduino/controls/pressure_mm/meta/type&quot; -m &quot;pressure&quot;

while [ true ]
do

while read line

do

var1=$(echo $line | cut -f1 -d&#039;:&#039; )
var2=$(echo $line | cut -f2 -d&#039;:&#039; )
#temp_out_c=$(echo $line | cut -f1 -d&#039;TemperatureOut_C:&#039;  )
#hum_out=$(echo $line | cut -f1 -d&#039;HumidityOut_%:&#039;  )
#press_mm=$(echo $line | cut -f1 -d&#039;Pressure_Mm:&#039;  )
#press_pa=$(echo $line | cut -f1 -d&#039;Pressure_Pa:&#039;  )

 if [ &quot;$var1&quot; = &quot;TemperatureOut_C&quot; ]
  then
    mosquitto_pub -h localhost -t &quot;/devices/arduino/controls/temperature&quot; -m &quot;$var2&quot;
 fi
 if [ &quot;$var1&quot; = &quot;HumidityOut_%&quot; ]
  then
    mosquitto_pub -h localhost -t &quot;/devices/arduino/controls/humidity&quot; -m &quot;$var2&quot;
 fi
 if [ &quot;$var1&quot; = &quot;Pressure_Mm&quot; ]
  then
    mosquitto_pub -h localhost -t &quot;/devices/arduino/controls/pressure_mm&quot; -m &quot;$var2&quot;
 fi
 if [ &quot;$var1&quot; = &quot;Pressure_Pa&quot; ]
  then
    mosquitto_pub -h localhost -t &quot;/devices/arduino/controls/pressure&quot; -m &quot;$var2&quot;
 fi

done &lt; /dev/ttyNSC1

/bin/sleep 10
done

как перезагрузить уарт (инициализировать), что-то после обновления linux-latest через час перестает отвечать уарт.

Скиньте пожалуйста лог (dmesg) на support@contactless.ru и версию (uname -a, dpkg -l linux-latest). У нас велись работы по драйверу UART. С другой стороне, на испытательном стенде аптайм сейчас неделя с постоянной работой по rs-485 и там этот новый драйвер стоит. В общем надо смотреть лог.

отправил

Запуск minicom оживляет порт.
Пока решение не нашлось хочу в cron добавить инициализацию порта раз в час - подскажите строку инициализации.

посмотрите в сторону stty