Temat: Cykliczny skrypt obsługujący I/O

Witam
W jakiej technologi na routerze z openwrt (procesor 200-300Mhz) najlepiej zrobić program monitorujący wejścia i w razie czego załączający wyjścia jak i również odsługujący smsy przychodzące i wychodzące
Na początku myślałem o cronie ale ten najszybciej może się wykonać co minutę.
Później wpadł mi pomysł napisania modułu w C/C++. Wadą tego rozwiązania jest to że po każdej zmianie trzeba zrobić kompilację
Co Waszym zdaniem jest najlepsze. Przykłady mile widziane smile

2

Odp: Cykliczny skrypt obsługujący I/O

sms? Jest gotowec w gnokii, on potrafi monitorować smsy.

Od wersją masz input-button, zdarzenia są przez skrypty realizowane.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3

Odp: Cykliczny skrypt obsługujący I/O

Aktualnie bawię się edimaxem br6104kp. Co musiałbym zmienić żeby diody z których niektóre są wylutowane przerobić na  przyciski. Artykuł o GPIO czytałem ale nie mogę swoich diód wyesportować tak żeby zadeklarować je jako wejścia lub wyjścia

root@OpenWrt:/sys/class/leds# ls
lan1_lnkact  lan2_speed   lan4_lnkact  usb1         wan_speed
lan1_speed   lan3_lnkact  lan4_speed   usb2
lan2_lnkact  lan3_speed   power        wan_lnkact
root@OpenWrt:/sys/class/leds#

Z zacytowanego fragmentu z opisu "sterowanie linii gpio"
"Włączenie obsługi GPIO
Aby sterować linią należy je najpierw udostępnić do przestrzeni użytkownika ("wyeksportować"). Robi się to podając odpowiedni numer GPIO do pliku export w w/w katalogu (w tym przykładzie gpio o numerze 2):


    # echo "2" > /sys/class/gpio/export

Powinien pojawić się katalog o nazwie /sys/class/gpio/gpio2. Jeżeli takiego nie ma - najprawdopodobniej GPIO o numerze 2 jest wykorzystywane przez system i nie można z niego skorzystać.
"

Wynika że mam je użyte w systemie. Muszę je wywalić z systemu i ponownie skompilować źródła czy jednak da się jakims poleceniem zwolnić je z systemu ?

Jak już będę miał zwolnione diody do gpio to podanie 3.3V np z pinu od jp2 od rs232 zasymuluje mi stan aktywny na konkretnym GPIO ?

Gdzie mogę dopisać skrypty odpowiadające za pobudzenie jakiegoś gpio ?
Jest jakaś inna metoda na stworzenie większej logiki np. od kliku gpio potraktowanych jako wejścia żeby coś wykonywać

4

Odp: Cykliczny skrypt obsługujący I/O

/etc/hotplug.d/button, o ile w danej architekturze zdefiniujesz sobie nowy przycisk na tym gpio. Po prostu wywal z kodu jakiekolwiek odwołanie do tego gpio jako led, a zrób go przyciskiem.

Jak nie zrobisz to w skryptach export i samodzielnie odpytujesz o stan wejścia.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

5

Odp: Cykliczny skrypt obsługujący I/O

Mam jeszcze pytanie z typu ala blondynka
Żeby zrobić przycisk to wg tego tutoriala

http://eko.one.pl/?p=openwrt-gpio2#odczytprzycisku

Musze od pinu który ma 3,3V pociągnąć rezystor do GPIO (do plusa diody) a pomiedzy + i - dać jakiś styk zwierający ?

Czy wystarczy tylko jednak podać 3.3V na GPIO i pomiędzy GPIO i masą zrobić styk zwierny - typową zworkę jak w edimaxie koło diód sa jakieś rezystory ?

Zna ktoś jakieś gotowe łatwe do zamontowania przyciski ? Mogą być linki np do tme

6

Odp: Cykliczny skrypt obsługujący I/O

To zależy czy to jest goła linia gpio czy już rezystorami. Zwykle powinno być tak jak na rysunku.

Po co chcesz jakiś specjalny przycisk z tme? to zwykły przycisk przecież może być.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

7

Odp: Cykliczny skrypt obsługujący I/O

Myślę o jakimś gotowym bo nie mam aktualnie żadnego pod ręką.
Nie wiem czy na edimaxie są jakieś rezystory koło gpio. Wydaje mi się że chyba jednak sa bo obok diód sa oznaczenai R81, R82 itd...

8

Odp: Cykliczny skrypt obsługujący I/O

ale jeśli wejścia masz wkompilowane w jądro to działają odrazu, np przez uci konfigurujesz które wejście jak ma zadziałać i co wywołać