pingowanie telefonu a pobór energii

W jednym ze swoich projektów dodałem ostatnio opcję aktywowania kilku czujników w momencie, gdy mój telefon zniknie z sieci lokalnej, wskazując na opuszczenie mieszkania. Daemon odpalony na Raspberry Pi posiada osobny proces, który pinguje telefon, odczytuje tabelę arp i w momencie wykrycia zmiany stanu (pojawiania się lub zniknięcia telefonu) ustawia pewną flagę. Potem idzie spać na 60 sekund.

Zastanawiam się, jak takie postępowanie wpłynie na czas pracy na baterii? Czy konieczność odpowiedzenia na ping co 60 sekund stanowi duże obciążenie dla telefonu na Androidzie? Uniemożliwia mu przejście stan głębszego uśpienia? Może powinienem zmniejszyć częstotliwość zapytań, albo pomyśleć nad innym sposobem wykrywania obecności?

W tej chwili pomijam kwestie związane z bezpieczeństwem, możliwością podszycia się itp. To nie jest system alarmowy, a jedynie prosty, edukacyjny projekt, mający na celu monitorowanie otoczenia.

Reply to
Atlantis
Loading thread data ...

Użytkownik "Atlantis" snipped-for-privacy@wp.pl napisał w wiadomości news:57135f0c$0$640$ snipped-for-privacy@news.neostrada.pl...

Podpowiem tyle, że przez wifi mniej wychlapie baterii, niż przez GSM/CDMA, porównałem słuchając różnych radyjek przez internet. Jako, że mi w bonusie dali 10 giga za frajer, to intensywnie korzystam i wydaje się, że hmm... wifi wydaje mi się o połowę oszczędniejsze energetycznie. Acz i mniej pewne. BT nie próbowałem. Ale jest to subiektywne odczucie. Wydaje mi się, że nie powinno to znacząco obciążyć telefonu, jeśli coś w tle nie będzie żłopało/pchało z/do sieci. Ile może ping potrwać? Chwilamoment i już. Jedno pierdnięcie, cóż więcej? chyba nic. Spróbowałbym na innym telefonie (mam dwa z Andrutem), ale na razie karta pamięci, którą w nim używam, jest zajęta do czego innego, jeśli chcesz, mogę spróbować i porównać, jak się zwolni. A obawiam się bez tej karty, by mi się nastawy nie pochrzaniły na różne programy, które trzymają na niej dane.

Reply to
ACMM-033

Dnia Sun, 17 Apr 2016 12:48:16 +0200, ACMM-033 napisał(a):

Tylko tyle ? Samo wifi powinno brac duzo mniej. Moze to te programy radiowe tak obciazaja system ? A moze tak ja masz cos uszkodzone i wifi faktycznie sporo bierze.

O sam ping bym sie nie bal - ten cholerny Android stale cos transmituje, i to go niewiele obciaza. Nawet jakos sobie musieli poradzic z transmisja po GSM, ze taki "spoczynkowy" transfer duzo nie birze.

J.

Reply to
J.F.

Telefon zostanie uśpiony bez wzgledu na obciążenie ale na podstawie wakelockow jakie pozaklaladaky procesy w systemie. Z reguły o jeśli nie masz zainstalowanego specjalnego softu do blokowania przed uspieniem to telefon zostanie szybko uśpiony i przestanie odpowiadac na pingi. Jeśli chcesz żeby się nie usypial musisz założyć wakelocka, ale wtedy bateria się rozładuje szybko (pojedyncze godziny).

Reply to
Marek

Użytkownik "J.F." <jfox snipped-for-privacy@poczta.onet.pl> napisał w wiadomości news: snipped-for-privacy@40tude.net...

Oszacowałem bardzo pobieżnie. Komórkowość zdecydowanie żłopie.

Stary aparat - MT11i, to trochę gorzej łapie i chyyyba więcej energi papusia, niż mój Szajsung.

No, to widzę, że telefon kilka dni potrafi wytrzymać... ale wiesz, jak piesek na spacerze sika, to ja lubię czegoś posłuchać. Tylko czasem te pier...e reklamy wku...ją, jak Eska-Go, gdzie z tysiąc razy restartuję transfer, bo pewnych 2 reklam (tej z babcią i polskim Biberem, myslałem, że się od niego porzygam) za ch... nie puszczę, serwery zarżnę, łącze położę, baterię wyklepię, BTSa odstrzelę, limit wyłoję, ale te dwie nie przejdą. I kuźwy na przemian te dwie dawali... To puściłem ruskie radio bez reklamy, a co :P :)) Darmo dają, to brać! A jak jest dobrze, to nawet po dzionku muzyki bateria jeszcze coś ma. Dali 10 giga, to łoję, co nie? :)) I rzeczywiście, mam na liście, tem przewalił tyle, ten tyle, a ten znów ileś-tam. I dobrze jest, kończę muzę słuchać, transfer wyłączam :P

Reply to
ACMM-033

On Sun, 17 Apr 2016 13:34:39 +0200, J.F. napisał/a:

[ciach]

Polemizowałbym. Mam tablet nexus 7 II i musiałem włączyć wyłączanie fifrifi kiedy tablet jest uśpiony, inaczej bateria wystarczała na jakieś 1,5 dnia, teraz około 4 dni.

Niestety ma to swoje wady.: PING tablet.lan (192.168.1.109) 56(84) bytes of data. From biurko.lan (192.168.1.101) icmp_seq=1 Destination Host Unreachable From biurko.lan (192.168.1.101) icmp_seq=2 Destination Host Unreachable From biurko.lan (192.168.1.101) icmp_seq=3 Destination Host Unreachable

Reply to
Bo(o)t manager

W dniu 17.04.2016 o 12:01, Atlantis pisze:

W smartfonach z Win10 do takich celów służy rozgłaszanie przez BLE (można je włączyć w tle). W praktyce taka funkcja nie wpływa na czas pracy baterii. W nowszych wersjach systemu Android rozgłaszanie BLE teoretycznie też powinno działać ale ponoć nie wszyscy producenci to implementują.

Paweł

Reply to
Pawel

W dniu 2016-04-17 o 16:06, Marek pisze:

To dziwne... U mnie telefon zawsze odpowiada na pingi, zupełnie jakby połączenie WiFi było cały czas aktywne, niezależnie od stanu, w jakim znajduje się telefon. Generalnie ma to sens - w końcu urządzenie musi cały czas utrzymywać łączność ze światem, a koszt energetyczny jest mniejszy w przypadku komunikacji z routerem za ścianą, niż z BTS-em oddalonym o kilka km.

Reply to
Atlantis

Dnia Sun, 17 Apr 2016 17:48:14 +0200, Bo(o)t manager napisał(a):

IMO - 1.5 dnia to sporo i swiadczy, ze wifi malo obciaza :-)

Pytanie ile w tym poborze winy samego wifi, a ile aplikacji, ktore moga sobie transmitowac do woli i obciazac procesor stala praca :-)

J.

Reply to
J.F.

To jakiś Samsung? Nie usypia wifi i nie wchodzi przez to w deep sleep. W ustawieniach wifi możesz mieć opcję czy usypiać wifi gdy ekran wyłączony. Niektóre telefony tak mają ale to nie jest reguła i nie można na tym polegać.

Reply to
Marek

W dniu 2016-04-17 o 23:33, Marek pisze:

Tak.

Nie widzę takiej opcji. Zresztą nie widzę wielkiego sensu, żeby ją stosować. Od tego jest domowe WiFi, żeby telefon z niego korzystał. A co do polegania... To prywatny projekt, wiec wystarczy tylko, że znam zachowanie swojego telefonu. ;)

Reply to
Atlantis

Ja mam taką opcję. Czy ona jest czy nie zależy od implementacji Androida przez danego pruducenta. Opcja bardzo oszczędza baterię. Nie każdy sobie życzy żeby tel. był podłączony jak ma być wygaszony ekran. Jedyny jej minus to to, że trzeba po wybudzeniu czekać

3-4.sekundy na ponowne podłączenie do wifi. Jeśli chodzi o organizację deep sleep z wifi to procesy, które są w trakcie przesyłania zakładają wakelocki (żeby deepsleep nie przerwał komunikacji w trakcie) a te które planują wymiane danych w przeszłości ustawiają wake alarm.

Błąd. Zmienisz z jakiegoś powodu telefon na zachowujący się inaczej i będziesz musiał pod nowa implementować swoje funkcjonalności.

Reply to
Marek

W dniu 2016-04-18 o 15:28, Marek pisze:

Jeśli nowy telefon będzie posiadał taką opcję, to ją zwyczajnie wyłączę. Zależy mi na tym, by cała komunikacja szła przez domowe WiFi, gdy telefon jest w jego zasięgu. Poza tym to rozwiązanie można uznać za tymczasowe. Poszukam lepszej alternatywy, np. czegoś opartego o BLE - wykrywanie smartfona albo Pebble'a. Ale to dopiero po zakupie Raspberry Pi 3. ;)

Reply to
Atlantis

Ale po co komunikować się z telefonem gdy on leży ze zgaszonym ekranem? Przesyłasz jakieś zdarzenia po wifi wymagające natychmiastowego komunikowania o tym użytkownika?

Reply to
Marek

Użytkownik "Marek" napisał w wiadomości grup dyskusyjnych: snipped-for-privacy@news.neostrada.pl... On Mon, 18 Apr 2016 16:04:21 +0200, Atlantis snipped-for-privacy@wp.pl

Aktualizacje chocby sciagam - mam stukac w ekran, zeby sie nie wylaczyl ?

Komunikatory rozne, allegro, bank - no, w zasadzie to moga sprawdzac cyklicznie i sobie budzik ustawiac ...

J.

Reply to
J.F.

sprawdzac

Nie o taki model działania pytałem, to jest oczywiste i to są działania inicjowane przez telefon. Z opisiu Atlantisa wynikało, że on oczekuje gotowości od tel. na połączenie inicjowane z zewnątrz i telefon ma być zawsze gotowy na nie zareagować (najprostrzym przykładem działania w takim modelu jest ping). No więc ponawiam pytanie jaka funkcjonalnosc u niego wymaga takiej gotowości.

Reply to
Marek

Użytkownik "Marek" napisał w wiadomości grup dyskusyjnych: snipped-for-privacy@news.neostrada.pl... On Mon, 18 Apr 2016 19:49:53 +0200, "J.F."

No, komunikator niekoniecznie - ktos cos napisze na czacie, czy kliknie "lubie cie" i trzeba zareagowac. Allegro podobnie - twoja oferta zostala przebita. No dobra - mozna sprawdzac co minute.

On chce sprawdzac czy telefon jest w zasiegu, czy sobie poszedl. Moze np chce automatycznie swiatlo w domu gasic.

IMO - odpowiedz na pinga raz na minute nie powinna bardzo obciazac systemu. Samo wlaczone wifi w niewielkiej odleglosci tez nie.

J.

Reply to
J.F.

J.F. pisze:

[..]

To można w drugą stronę, apkę co minutę wysyłającą pinga że jeszcze jest, ale to chyba jednak więcej roboty niż skrypt na linuxie.

Reply to
AlexY

Użytkownik "J.F."

...

On chce sprawdzac czy telefon jest w zasiegu, czy sobie poszedl. Moze np chce automatycznie swiatlo w domu gasic.

Reply to
re

Użytkownik "re" napisał w wiadomości Użytkownik "J.F."

A nie mam tam jakiegos automatycznego doboru poziomu mocy ?

Nawet jak nie ma, to retransmisje z powodu bledow pewnie obciaza :-)

J.

Reply to
J.F.

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.