Технически - возможно. Практически - руки никак не дойдут.
Добрый день,
подскажите плз - возможно ли использовать кнопку EZSetup (WL500gP) для запуска скрипта например?
Искал на рус и англ части форума, но, к сожалению, кроме подобного открытого вопроса в англ части не нашел ничего.
Можно ли сделать эту фичу в сл версии прошивки? или подскажите "куда копать" ... вообще возможно ли это технически?
Спасибо!
Технически - возможно. Практически - руки никак не дойдут.
Кстати "умный форум" нашел как раз смежную тему:
http://wl500g.info/showthread.php?t=7733
Олег,
могу чем то помочь?
Правда быстро не обещаю - давно я линух не собирал, с прошивкой вашей пока не оч знаком, да и дистрибут+компилятор надо еще слить.
Хотя судя по описанию вашей прошивки - запуск скриптов уже есть откуда закопипастить остается вопрос где ловить кнопку и на сколько то место system critical с т.з. запуска фиг знает чего - м.б. еще с отложенным запуском надо будет помудрить
Единственная вещь которая меня беспокоит - нет ли у вас какого-нить теста для флеша WL500gP?
Т.к. учитывая удаленность от москвы, и соответственно от СЦ Asus, и злобность местных гарантийщиков хотелось бы предварительно проверить качество девайса и поменять его до того как он умрет с нестандартной прошивкой в брюхе а то меня быстро пошлют лесом - уже был опыт
Да, это тот самый единственный пост, который я и находил К сожалению, кроме "бы да кабы" там тоже ничего нет
А что касается много кнопочек - мил человек, собери под сабжевый девайс поддержку HID через USB с маппингом на скрипты - тогда щАстья будет ОГО-ГО , хоть клаву цепляй
может не в тему но всеже, сколько я не мучался так и не пойму почему у меня кнопка reset неработает? может незапаянна???? сколько не держу зажатой ноль реакции =( приходиться питание дергать =(
Спасибо за столь приятное известие - это действительно радует и можно экспериментировать не оглядываюсь
В общем вашу прошивку уже поставил, хотя не без небольшой "пляски с бубном" правда тут скорее мои кривые ручки виноваты ...
VMWare уже есть, по плану достать свежий дистрибут дебиана или юбунту, скачать исходники и медитировать над ними вечерами для поиска "той самой кнопки"
Там никакой медитации - в файле rc/watchdog.c вся обработка.
Привет всем,
в общем сделал запуск скрипта по нажатию кнопки EZ SETUP (красная). К счастью обошлось без пересборки, хотя и немного кривовато - время реакции на нажатие составляет 1-1.5 сек.
Работает на 1.9.2.7-7f, WL500gP. ВНИМАНИЕ! Судя по watchdog.c для других моделей может потребоваться изменить механизм опроса (м.б. другие биты и механизм чтения).
И так, что получилось. Основной скрипт:
watch-ezbtn:
Он запускается при загрузке из post-boot строкойCode:#!/bin/sh EZBTNACTION=/tmp/local/sbin/ezbtn-action if [ -x "$1" ] then EZBTNACTION="$1" fi ezbtnstate=0 ezbtnpresscount=0 while true; do sleep 1 if [ $ezbtnstate -ne `dd if=/dev/gpio/in count=1 2>/dev/null|od -L|awk '{print int($2 / 16) % 2; exit}'` ] then if [ $ezbtnstate -eq 0 ] then ezbtnstate=1;ezbtnpresscount=`expr $ezbtnpresscount + 1`;$EZBTNACTION press $ezbtnpresscount; else ezbtnstate=0;$EZBTNACTION release $ezbtnpresscount; fi fi done
При нажатии и отпускании кнопки вызывает /tmp/local/sbin/ezbtn-action с двумя параметрами:Code:nohup /usr/local/sbin/watch-ezbtn&
1. press или release
2. порядковый номер нажатия - удобно для реализации функции вкл/выкл если нет или сложно опросить тек состояние.
Пример для ezbtn-action м.б. вот такой (включает/выключает Wi-Fi):
Code:#!/bin/sh # it gets $1 as [press|release] [# of pressed] # you can use `expr $2 % 2`to switch between on/off states of something case "$1" in "press") if [ `expr $2 % 2` -eq 1 ] then wl radio off else wl radio on fi;; "release") ;; *) exit;; esac