a da się w ogóle rozmawiać przez modemy gsm czy tylko internet i sms ?
Nie jesteś zalogowany. Proszę się zalogować lub zarejestrować.
eko.one.pl → Posty przez cyniu88
a da się w ogóle rozmawiać przez modemy gsm czy tylko internet i sms ?
Witam,
wpadłem na pewien pomysł, czy spotkał się z Was ktoś z takim rozwiązaniem żeby do routera podpiąć telefon lub modem GSM z kartą sim , np z abonamentem na nielimitowane rozmowy do wszystkich sieci, i łącząc się zdalnie z routerem przez internet z komputera w dowolnym rejonie świata rozmawiać przez taki zestaw ?? dodam że widziałem kiedyś rozwiązanie z laptopem do którego podpięty był telefon oprogramowanie do rozmów przez telefon z komputera i można się było do niego łączyć przez zdalny pulpit i rozmawiać przez komórkę tylko laptop trochę więcej energii pobiera niż router
już wiem bolało go usuwanie spacji z linku
sed "s/[%20+]/ /g"witam uruchamiam sobie skrypty przez strone www
plik html
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
<title>Polecenie</title>
<form action="cgi-bin/ps.sh" method="get" enctype="text/plain"><div>
<p align="center">Polecenie</p>
<table align="center" bgcolor="silver">
<tr>
<td>
Podaj polecenie: <input type="text" name="polecenie">
</td>
</tr>
</table>
<table align="center" bgcolor="silver">
<tr>
<td>
Podaj has³o: <input type="password" name="pass">
<input type="submit" value="Wy¶lij" />
</td>
</tr>
</table>
</div></form>
</head>i plik ps.sh w cgi-bin
#!/bin/sh
polecenie=`echo "$QUERY_STRING" | sed -n 's/^.*polecenie=\([^&]*\).*$/\1/p' | sed "s/[%20+]/ /g"`
pass=`echo "$QUERY_STRING" | sed -n 's/^.*pass=\([^&]*\).*$/\1/p' | sed "s/%20/ /g"`
echo "Content-type: text/plain"
echo ""
if [ "$pass" != "q" ]; then
echo 'B..dne has.o!'
exit 0
fi
echo " wynik $polecenie"
exit 0pytanie dlaczego jak podam 1 to potem wyświetla się jeden natomiast jak podam 123 to wysetla się 1 3 tj 2 zamienia się na spacje
a co jeżeli dhcp przydziela mi adresy od 192.168.2.100 do 192.168.2.249 ?
niestety
root@Gargoyle:~# ping -c 192.168.2.100/121
ping: invalid number '192.168.2.100/121'a co z tymi ip co nie są przydzielone ?? po prostu nie zwrócą odpowiedzi ?
zdaje sobie z tego sprawę że to tylko teoria ale może się przyda zamiast nie
tak czy siak dzięki w sumie nie wiedziałem że można dawać tak
192.168.1.0/24 i będzie to zakres ip do ping'owania ![]()
losowo i ip z dhcp
chcesz wymusić bo... ?
bo dokładniejszy poziom sygnału do klienta jest wtedy gdy jest ruch między nim a AP
gdy taki ruch jest mały to wartość poziomu sygnału nie jest tak precyzyjna
no ale nie wiem co więcej napisać chodzi mi o to że jak to WiFi w routerze podpiętych jest "n" użytkowników ( laptopy/komórki/tablety/etc) to router każdego z nich non stop ping'uję tak by wymusić sztuczny ruch między n-klientem a routerem
ma ktoś może skrypt albo zna program który będzie ping'ował wszystkich klientów podłączonych do WiFI
no zgoda ale jak wysyłam przez echo odpowiedni bajt powinna zapalić się u mnie lampka a nie robi tego...
ale widzę że to przez to że następuje reset mikroprocesora
źródło
http://techniczny.wordpress.com/2012/04/04/laczenie-arduino-z-openwrt/natomiast przy otwartym strumieniu przychodzącym reset nie następuje
mam jeszcze małe pytanie, mianowicie żeby coś wysłać przez echo na port muszę mieć włączone w innym terminalu
cat /dev/ttyACM0 da się może to jakoś pominąć ?
dziwna sprawa w tym jest taka że po jakimś czasie wysyłania bajtów polecenie odczytu zamyka się samo z siebie i w tedy nici z wysyłania
działa elegancko pod GUI gargoyle ale dalej nie chce mi działać na lighttpd
czy mam ustawić tak jak dla plików php ?
jak skonfigurować lighttpd tak by uruchamiał skrypty sh a nie pobierał ich na dysk ?
ewentualnie czy da się zrobić taką dokładkę do GUI Gargoyle by uruchamiać dowolny skrypt sh z danego katalogu ?
dzięki ![]()
stty -F /dev/ttyACM0 speed 9600dobrze robię ?
ok a jak można zmieniać prędkość transmisji od strony OpenWRT ? na innym routerze po wysłaniu echo -ne "\x01\x02\x03\x04" > /dev/ttyACM0 non stop odbiera jakieś bezsensowne dane myślę że to przez nie dograną prędkość transmisji
ok tylko ze odbierając w Arduino dane do zmiennej "wiadomosc" która jest powiedzmy typu long
przy komendzie echo -ne "\x01\x02\x03\x04" > /dev/ttyACM0
najpierw będzie miała wartość 1 potem zmieni sie na 2 potem na 3 i na końcu a 4 a ja bym chciał żeby miała wartość 1234
da się to jakoś zrobić przesyłaniem czy muszę już o to zadbać po stronie arduino ?
Witam,
mam takie pytanie podłączyłem Arduino pod USB i komunikuje się z nim z poziomu shella przez komendę
echo -ne "\x77" > /dev/ttyACM0 pytanie czy mogę jakoś za jednym zamachem wysyłać wartości większe niż 0xFF?
czy muszę ograniczyć się do tego a po stronie Arduino jakoś "sklejać" je w jedną liczbę ?
ewentualnie czy da się wysłać liczbę jako wartość ?
tj gdy wpisuję
echo -ne "7" > /dev/ttyACM0 otrzymuje 55 co z tabeli kodów ASCII reprezentuję 7
noo i teraz działa ![]()
nadmienię że właśnie przez noc udało mi się poprawnie skompilować SDK nie mnie przed chwilą przy próbie kompilacji paczki helloworld znowu wyskoczyło
make[3]: openwrt-linux-gcc: Command not foundnie twierdze ze to jest poprawne ale na pewno omija kompilacje SDK no i nie potrzeba instalować paczki na routerze tylko wystarczy skopiować plik co ma swoje zalety np nie mając exroot'a , po starcie systemu kopiujemy taki większy plik do /tmp z jakiegoś serwera i możemy go uruchamiać
Podzielę się tym jak to zrobiłem swój pierwszy program na OpenWRT , może komuś się przyda, czekam na wszelkie uwagi
Aby napisać i skompilować własny program który będzie działał na routerze potrzebujemy przygotować kilka rzeczy:
# Skonfigurować komputer lub maszynę wirtualną z Linuxem (najlepiej sprawdza się Debian)
# Używając terminala zainstalować dodatkowe paczki wpisując polecenia ( tu nie jestem pewien czy to jest potrzebne)
apt-get update
apt-get install build-essential bison flex gettext subversion libncurses-dev unzip automake gawk git-core zlib1g-devPobrać odpowiedni dla naszego routera OpenWRT Toolchain ze strony
[url]http://downloads.openwrt.org[/url]/ w przypadku routera TP-Link TL-WDR3600 (procesor ar71xx) z wersją OpenWRT Gargoyle bazującą na attitude_adjustment był to plik
[url]http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/OpenWrt-Toolchain-ar71xx-for-mips_r2-gcc-4.6-linaro_uClibc-0.9.33.2.tar.bz2[/url] rozpakowujemy go do specjalnie przeznaczonego dla niego folderu gdyż będzie nam potrzebna znana i niezmienna lokalizacja ww pliku
==hello world my OpenWRT==
Nasz pierwszy program:
Tworzymy katalog ''moj_program''
w katalogu tworzymy plik ''helloworld.c'' z zawartością
#include <stdio.h>
int main (void)
{
puts ("Hello World!");
puts ("Szanuje Cezarego!");
return 0;
} następnie w tym samym katalogu tworzymy plik Makefile
z zawartością
NAME = helloworld
#nazawa programu
OBJECTS = $(NAME).o
CC = /home/quantum-debian/Pobrane/OpenWrt-Toolchain-ar71xx-for-mips_r2-gcc-4.6-linaro_uClibc-0.9.33.2/toolchain-mips_r2_gcc-4.6-linaro_uClibc-0.9.33.2/bin/mips-openwrt-linux-gcc
# scieżka do kompilatora z toolchain
CFLAGS = -O -g -Wall
LIBS =
#jezeli potrzeba dodatkowych bibliotek, dodajemy je tutaj (np -lm)
PROGRAM = $(NAME)
all: $(PROGRAM)
.c.o:
$(CC) $(CFLAGS) -c $<
$(PROGRAM): $(OBJECTS)
$(CC) -o $(PROGRAM) $(OBJECTS) $(LIBS)
strip: $(PROGRAM)
strip $(PROGRAM)
clean:
rm -f *.o $(PROGRAM)UWAGA! dla pliku Makefile
Ważne by:
#Nazwa była taka sama jak nazwa pliki .c, czasami na końcu nazwy wkrada się spacja i wtedy kompilacja się nie powiedzie
#Wszelkie wcięcia w pliku były robione tabulatorem a nie dużą ilością spacji
#Została podana prawidłowa ścieżka do kompilatora ''mips-openwrt-linux-gcc'' ściągniętego w paczce ''Toolchain''
Gdy jesteśmy pewni że wszystko w jak najlepszym porządku, będąc w katalogu projektu wykonujemy polecenie ''make''
po chwili otrzymujemy plik ''helloworld'' który przesyłamy do naszego routera
będąc w konsoli routera na wszelki wypadek nadajemy uprawnienie wykonywania plikowi
chmod +x helloworld(aczkolwiek ta operacja nie jest raczej wymagana, nie mniej jednak dla pewności tak możemy zrobić )
program uruchamiamy wpisując
./helloworldi cieszymy się z przywitania ![]()
poradziłem sobie w ten sposób że:
pobrałem odpowiedniego Toolchain'a
OpenWrt-Toolchain-ar71xx-for-mips_r2-gcc-4.6-linaro_uClibc-0.9.33.2.tar.bz2w pliku Make Tym przy helloworld.c dodałem ścieżkę do kompilatora
CC = /home/quantum-debian/Pobrane/OpenWrt-Toolchain-ar71xx-for-mips_r2-gcc-4.6-linaro_uClibc-0.9.33.2/toolchain-mips_r2_gcc-4.6-linaro_uClibc-0.9.33.2/bin/mips-openwrt-linux-gcci będąc w folderze komenda make i się udało plik wykonywalny powstał po nadaniu praw router wita się ze światem
eko.one.pl → Posty przez cyniu88
Forum oparte o PunBB, wspierane przez Informer Technologies, Inc