Форум обсуждения систем  

Вернуться   Форум обсуждения систем "Умный дом", проектов Ардуино, OpenWRT и других DIY устройств > Форум умного дома > Сделай сам > OpenWRT/LEDE

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 29.12.2014, 03:59   #1
SergeS
Senior Member
 
Регистрация: 21.12.2014
Сообщений: 164
Вес репутации: 0
SergeS is an unknown quantity at this point
По умолчанию Re: GL-iNet - вопросы начинающего

Цитата:
Сообщение от mebitek Посмотреть сообщение
Что значит не решился?
Не получается установить stty, не знаю, можно ли чем то его заменить, соответственно - не получается пообщатся с uart'ом.

Менять прошивку - не знаю на что, на сайте производителя это последняя, да и как то по моему это слишком радикально...

Upd: Заметил, что если я рестартую gl-iNet c за-loop-ленным uart, то есть с закороченными tx-rx, то роутер нормально не стартует, не пингуется ни по одному интенрфейсу и wifi не появляется в списке доступных. Зеленая лампочка постоянно горит. Такое впечатление, что он в каком-то специальном режиме, чего то ждет, может прошивки по tftp. Что-то об этом известно?

Последний раз редактировалось SergeS; 29.12.2014 в 04:12.
SergeS вне форума   Ответить с цитированием
Старый 29.12.2014, 04:31   #2
SergeS
Senior Member
 
Регистрация: 21.12.2014
Сообщений: 164
Вес репутации: 0
SergeS is an unknown quantity at this point
По умолчанию Re: GL-iNet - вопросы начинающего

Цитата:
Сообщение от SergeS Посмотреть сообщение
Не получается установить stty, не знаю, можно ли чем то его заменить, соответственно - не получается пообщатся с uart'ом.

Менять прошивку - не знаю на что, на сайте производителя это последняя, да и как то по моему это слишком радикально...
Удалось установить stty командой opkg install coreutils-stty
несмотря на то, что opkg update -ругалось...
SergeS вне форума   Ответить с цитированием
Старый 29.12.2014, 08:37   #3
SergeS
Senior Member
 
Регистрация: 21.12.2014
Сообщений: 164
Вес репутации: 0
SergeS is an unknown quantity at this point
По умолчанию Re: GL-iNet - вопросы начинающего

Цитата:
Сообщение от SergeS Посмотреть сообщение
Удалось установить stty командой opkg install coreutils-stty
несмотря на то, что opkg update -ругалось...
Ну в общем, если кому интересно, после установки stty удалось подключится через usb-to-serial bridge.

Для ардуино мега ничего дополнительно, кроме stty, устанавливать не пришлось, при подключении через usb сразу же определяется как ttyACM0 и сразу же работает.

Еще у меня на хозяйстве валялся какой-то стандартный хвост usb-to-serial, он при подключении к usb роутера не определялся, подключил его к компу, определился как FTDI com-port, после чего я установил из роутерного стандартного репа kmod-usb-serial-ftdi и этот хвостик заработал и в роутере, определяется как ttyUSB0.

Странно, но именно родной внутренний uart порт, который, насколько я понимаю, виден как ttyATH0, почему-то пока уверенно работать не хочет. В смысле - вроде как-то работает, но когда читаю из порта в роутер, иногда, а после перегрузки первый раз всегда, валит какой то более-менее осмысленный но не читаемый мусор, какие-то обрывки чего-то. Этот uart случайно никак в Openwrt не задействован под системные нужды, никто не знает?
SergeS вне форума   Ответить с цитированием
Старый 29.12.2014, 10:38   #4
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,616
Вес репутации: 9821
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: GL-iNet - вопросы начинающего

Цитата:
Этот uart случайно никак в Openwrt не задействован под системные нужды, никто не знает?
Задействован.
В ядре включено транслирование лога в консоль
Как откючить
Admin вне форума   Ответить с цитированием
Старый 29.12.2014, 15:29   #5
SergeS
Senior Member
 
Регистрация: 21.12.2014
Сообщений: 164
Вес репутации: 0
SergeS is an unknown quantity at this point
По умолчанию Re: GL-iNet - вопросы начинающего

Цитата:
Сообщение от Admin Посмотреть сообщение
Задействован.
В ядре включено транслирование лога в консоль
Как откючить
А-га! Я знал ;-)
Спасибо, попробую.
SergeS вне форума   Ответить с цитированием
Старый 02.01.2015, 21:19   #6
SergeS
Senior Member
 
Регистрация: 21.12.2014
Сообщений: 164
Вес репутации: 0
SergeS is an unknown quantity at this point
По умолчанию Re: GL-iNet - вопросы начинающего

Вроде с GPIO ножками и с компортами (обоими, и через USB, и через родной железный) все вроде более менее ясно.

Теперь не совсем понятно с www-сервером, как сделать какую-нибудь свою страничку, что бы она видна была по http? Я сделал в /www папку /test, в ней сделал простейший файлик index.htm, но при попытке зайти на <ip>:83/test почему то идет сразу перенаправление на вот сюда: screenshot

UPD: переименовал мой файл в index.html, теперь если захожу по прямой ссылке http://<ip>:83/test/index.html - страничка показывается, но если вот так: http://<ip>:83/test - то все равно перенаправление туда же Ж-).

И php и cgi у меня тоже пока никак не получилось запустить...

php, как я понял, - надо устанавливать из репозитария отдельно, конфигурировать в вебсервере, да и памяти оно хочет много, но cgi-скрипты вроде бы сразу должны работать, я прав?

Какой вообще вебсервер используется в gl-iNet mini-router и как его конфигурить? Вот скриншот файловой структуры в /www.
Насколько я понял - это не Аппач, хотя я и с Аппачем не так что бы сильно знаком, ну а с другими - так и вовсе не знаком.

UPD: ага, cgi-sh-script все же запускается, это я что-то торможу с НГ...
Вот такой 111.cgi файл c правами на exec, положенный в /www/cgi-bin/:
----
#!/bin/sh
echo "Content-type: text/html"
echo ""
echo "<h1>test</h1>"
----
прекрасно видится в http://192.168.0.26:83/cgi-bin/111.cgi

Но вопросы про php и про версию веб-сервера все равно пока остаются, но это уже больше теоретические вопросы :-)))

Последний раз редактировалось SergeS; 02.01.2015 в 22:56.
SergeS вне форума   Ответить с цитированием
Старый 07.01.2015, 20:15   #7
SergeS3
Banned
 
Регистрация: 05.01.2015
Сообщений: 18
Вес репутации: 0
SergeS3 is an unknown quantity at this point
По умолчанию Re: GL-iNet - вопросы начинающего

Поигрался еще немного с cgi shell скриптами и html, если кому интересно - ниже код для управления с вебстранички двумя leds на gl-inet, по аналогии легко делается на большее (у gl-inet еще, кроме led, есть пять GPIO на штырьках) или меньшее :-) число пинов. Управление с обратной связью, то есть сначала устанавливается требуемое значение пина, а потом читается реальное его состояния, после чего генерируется страничка с картинками и линками. В начале каждой секции есть четыре переменные, две из которых указывают на картинки, их конечно лучше заменить на желаемые вами картинки, лучше - расположенные локально, прямо на роутере, ну и за дизайн картинок не бейте :-), нарисовал в пейнте за пару минут... Файл называется two-leds.cgi, лежит в /www/cgi-bin/, права на исполнение должны быть дадены.

Если вызвать страничку без параметров: http://<IP>/cgi-bin/two-leds.cgi, то просто показываются состояния светодиодов.
А если с параметрами, то можно сразу светодиодами управлять, например: http://<IP>/cgi-bin/two-leds.cgi?green-led=off&red-led=off выключит оба светодиода, http://<IP>/cgi-bin/two-leds.cgi?red-led=on - включит только красный, не тронув зеленый. Ну и конечно картинки для управления кликабельные. Для удобства форматирования все это завернул в таблицу, если таблица таки не нужна - все "табличные" тэги (table, tr, td) можно удалить, они в работе не участвуют, только оформление.

Ну и сам файл:
PHP код:
#!/bin/sh
echo "Content-type: text/html; charset=utf-8"
echo
echo 
"<html>"
echo "<head> <title>Two LEDs on GL-iNet</title> </head>"
echo "<body>"
echo " <table border="0">"
#--------------------------------------------------
############ first button ##########
# variables
var_Btn_Name='green-led' #IMPORTANT: must be uniq!
var_ONpict='http://sergeskor.no-ip.org/Files/Tech/Green_LED_On.png'
var_OFFpict='http://sergeskor.no-ip.org/Files/Tech/Green_LED_Off.png'
var_TextLabel='Green LED Control'
############ set pin ############
if echo "$QUERY_STRINGegrep -"$var_Btn_Name=on"then
  
echo > /sys/devices/platform/leds-gpio/leds/gl-connect\:green\:lan/brightness
elif 
echo "$QUERY_STRINGegrep -"$var_Btn_Name=off"then
  
echo > /sys/devices/platform/leds-gpio/leds/gl-connect\:green\:lan/brightness
fi
############ end of set pin ############
echo "  <tr>" #start new table row
############ read pin ############
if cat /sys/devices/platform/leds-gpio/leds/gl-connect\:green\:lan/brightness egrep -"1"then
  
echo "   <td> <a href='$SCRIPT_NAME?$var_Btn_Name=off'> <img src='$var_ONpict' alt='$var_TextLabel'> </a> </td>"
else
  echo 
"   <td> <a href='$SCRIPT_NAME?$var_Btn_Name=on'> <img src='$var_OFFpict'  alt='$var_TextLabel'> </a> </td>"
fi
############ end of read pin ############
echo "   <td>$var_TextLabel</td>"
echo "  </tr>" #close table row
#--------------------------------------------------
############ second button ##########
#variables
var_Btn_Name='red-led'  #IMPORTANT: must be uniq!
var_ONpict='http://sergeskor.no-ip.org/Files/Tech/Red_LED_On.png'
var_OFFpict='http://sergeskor.no-ip.org/Files/Tech/Red_LED_Off.png'
var_TextLabel='Red LED Control'
############ set pin ############
if echo "$QUERY_STRINGegrep -"$var_Btn_Name=on"then
  
echo > /sys/devices/platform/leds-gpio/leds/gl-connect\:red\:wlan/brightness
elif 
echo "$QUERY_STRINGegrep -"$var_Btn_Name=off"then
  
echo > /sys/devices/platform/leds-gpio/leds/gl-connect\:red\:wlan/brightness
fi
############ end of set pin ############
echo "  <tr>" #start new table row
############ read pin ############
if cat /sys/devices/platform/leds-gpio/leds/gl-connect\:red\:wlan/brightness egrep -"1"then
  
echo "   <td> <a href='$SCRIPT_NAME?$var_Btn_Name=off'> <img src='$var_ONpict'  alt='$var_TextLabel'> </a> </td>"
else
  echo 
"   <td> <a href='$SCRIPT_NAME?$var_Btn_Name=on'> <img src='$var_OFFpict'  alt='$var_TextLabel'> </a> </td>"
fi
############ end of read pin ############
echo "   <td>$var_TextLabel</td>"
echo "  </tr>" #close table row
#--------------------------------------------------
### close all tags #
echo " </table>"
echo "</body>"
echo "</html>" 
Всем помогшим - спасибо за помощь, было интересно поиграться с роутером и cgi shell скриптами - никогда раньше не пробовал. Теперь буду думать, зачем оно мне надо и куда его всунуть :-)
SergeS3 вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 20:29. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Яндекс.Метрика