Guest s6s Posted September 28, 2015 Share Posted September 28, 2015 Przed wakacjami próbowalismy razem ;) rozwiązać sprawę zegara systemowego w ADB podczas moderate shutdown który to zegar jak wiemy zwalnia razem z taktowaniem CPU w tych dekoderach (wątek: "Korekcja czasu w ADB5800 przy OC - bez ntpdate") Ale widzę że od paru aktualizacji BSKA mamy WIĘKSZY problem! Otóż w ogóle nie nagrywa zadanych audycji ze stanu "moderate shudown". A raczej: wybudza się ale ZA PÓŹNO! -------------- EDIT: wyrzucam błędną początkową hipotezę co do intencji dev-ów ;) Poza tym: - czas podczas moderate shudown na wyswietlaczu nie chce zostać wyswietlony Quote Link to comment Share on other sites More sharing options...
Guest j00zek Posted September 28, 2015 Share Posted September 28, 2015 nie wiem kto próbował rozwiązać problem spowalniania, ale chyba jednak nie autor moderatestandby. ;) Wspomniany wyżej skrypt jednoznacznie rozwiązuje problem z czasem na tunerze adb5800 a więc i problem z nagrywaniem. Oczywiście siec musi być.Na arivie problem nie występuje bo ten skrypt się nie uruchamia. ;) Quote Link to comment Share on other sites More sharing options...
Guest s6s Posted September 28, 2015 Share Posted September 28, 2015 Więc w Twoim ADB BSKA/BSLA itp. wybudza się na czas? W moim wybudza się "zdrowo" po czasie i wtedy jedyne co robi to zaznacza w timer list że "nagrane" Quote Link to comment Share on other sites More sharing options...
Guest j00zek Posted September 28, 2015 Share Posted September 28, 2015 A kto powiedział, że ja mam adb? ;) Ale i tak synchronizacja ntp gwarantuje, że się wybudzi o czasie. Quote Link to comment Share on other sites More sharing options...
Guest s6s Posted September 28, 2015 Share Posted September 28, 2015 Jeżeli już /etc/cron/minutely/ntpdate to tylko podczas "moderate shutdown" ponieważ wtedy efektywnie "co minutę" oznacza co siedem minut. Po wybudzeniu powinno skasować się to z /etc/cron/minutely bo jednak za często wywołuje ntpdate Czy naprawdę myslisz że co minutę (realną) to OK? (Poza tym, co robi własciwie ntpdate? Ponieważ ten mój skrypt "adjustClock" próbował kompensowac czas, i robi dobrze. Ale jakos to zakłóca wybudzanie się realne. W linuksowym "man" napisano, że nptdate działa na poziomie systemowym tak żeby wsþóldziałać poprawnie z cron - wiesz może jak konkretnie? Ale jednak jakby przeliczać sekundy do kolejnego nagrania przez pomnożenie ich przez wielokrotnosć spowolnienia taktowania CPU to wydaje się to włąsnie najprostszym i najelegantszym rozwiązanie, nie potrzebującym internetu! Przy założeniu, że wyłączymy zegar z wyswietlacza podczas moderate...) Quote Link to comment Share on other sites More sharing options...
Guest j00zek Posted September 28, 2015 Share Posted September 28, 2015 dobre spostrzeżenie, poprawi się. Quote Link to comment Share on other sites More sharing options...
Guest s6s Posted September 28, 2015 Share Posted September 28, 2015 Empirycznie własnie to sprawdzam i... Jednak LIPA! Jak oto wygląda pod htop w "moderate shutdown" kiedy zadane nagranie wypada za około 8 min: /bin/sh /etc/cron/moderatestandby_on/60timerwakeup `- sleep 455 Mechanizm "moderateshutdown" zadaje ilosc sekund dla polecenia "sleep", bez żadnego przeliczenia. Więc czy czas zostanie uaktualniony czy nie - i tak system CZEKA zadaną ilosc sekund "REALNĄ", co w przypadku spowolnionego zegara oznacza że system się obudzi ale za "kilka razy" więcej czasu niż trzeba! Panowie, trzeba to poprawić! Quote Link to comment Share on other sites More sharing options...
Guest j00zek Posted September 28, 2015 Share Posted September 28, 2015 nieprawda! ntp date synchronizuje godzinę!!!! Quote Link to comment Share on other sites More sharing options...
Guest s6s Posted September 28, 2015 Share Posted September 28, 2015 Chyba Szanowny Kolega źle zrozumiał... W taki razie inne pytanie, co pokazuje: GraterliaOS:~# cat /tmp/wakeup Wakeup after 455 seconds ? W pliku /etc/cron/moderatestandby_on/60timerwakeup mamy bowiem cos takiego: WakeupInSec=$(( $WakeupTime - $CurrentTime - 120 )) echo "Wakeup after $WakeupInSec seconds" >/tmp/wakeup doWakeup & A funkcja doWakeup ma w sobie owo "sleep": doWakeup() { sleep $WakeupInSec ...} Więc czeka i czeka! (Jak taktowanie w MHz jest spowolnione iles razy to tyleż razy czeka za długo! Wystarczy $WakeupInSec przemnożyć!) Quote Link to comment Share on other sites More sharing options...
Guest j00zek Posted September 28, 2015 Share Posted September 28, 2015 po aktualizacji, moderate nie będzie spowalniało zegara w przypadku zaplanowanych zadań. Quote Link to comment Share on other sites More sharing options...
mickey Posted September 29, 2015 Share Posted September 29, 2015 Sprawdziłem sobie co pisał @s6s. Ogólnie: zegar zegarem a sleep sleepem. Jeżeli zapodamy sleep 60, to będzie spało przez 60 sekund ... znaczy się 60 jednostek. W tym czasie możemy sobie dowolnie zmieniać ustawienia dany i godziny dowolną metodą a sleep odmierza swoje nic sobie z tego nie robiąc. Quote Link to comment Share on other sites More sharing options...
Guest s6s Posted September 29, 2015 Share Posted September 29, 2015 Jasne, Mickey, własnie mam taki sam wniosek. Więc teraz działa źle: sleep <ilosc_sekund_REALNA> w BSKA/BSLA w stanie "moderate shudown" oznacza, że REALNIE poczeka tę ilosc sekund RAZY około SIEDEM (265/36 = 7.36111111111) Prosta modyfikacja w /etc/cron/moderatestandby_on/60timerwakeup jak następuje: doWakeup() { LILICZAS=$(( $WakeupInSec * 3 / 22 )) ### 36/264=9/66=3/22 sleep $LILICZAS zapewniła że teraz ma BSKA wybudza PRZED zaplanowanym nagraniem! Przy czym lepiej, żeby wybudzało duuużo wczesniej niż za późno ;) Jeżeli wbudzi duużo za wczesnie - to najwyżej zaktualizuje ową ilosc sekund do 'sleep' i przyjmie stan "moderate shutdown" znowu... Ale rzecz jasna, trzeba by jakos PEWNIEJ obliczyc ten wspólczynnik przez który mnożonoby $WakeupInSec, może poprzez odczyt: /proc/cpu_frequ/pll0_ndiv_mdiv /tmp/CurrentSpeed a następnie odpowiednie przetworzenie tychże wartosci? Jakies sugestie? Jakby zrobic to najeleganciej? ;) Wyznam, że nie ogarniam jak dokładnie oblicza się owo CurrentSpeed (wiem, że okresla ona jakos wartosc MHz jeszcze sprzed przyjęcia stanu "moderate shutdown" - ale jak?) Quote Link to comment Share on other sites More sharing options...
Guest j00zek Posted September 29, 2015 Share Posted September 29, 2015 ale oczywiście czytacie co napisałem wcześniej... :P Zacytuję, jakby było za trudno przewinąć: po aktualizacji, moderate nie będzie spowalniało zegara w przypadku zaplanowanych zadań. i ta aktualizacja już nastąpiła Quote Link to comment Share on other sites More sharing options...
Guest s6s Posted September 29, 2015 Share Posted September 29, 2015 W której gałęzi? Poniewaz w moim 'READY' 'opkg list-upgradable' wypluwa zero apdejtów... Quote Link to comment Share on other sites More sharing options...
matzg Posted September 29, 2015 Share Posted September 29, 2015 A kto przetestował poprawkę aby miała trafić do READY? Wszystko co nowe trafia do Test Quote Link to comment Share on other sites More sharing options...
sunfizz Posted September 30, 2015 Share Posted September 30, 2015 Dla posiadaczy ADB i gałęzi test. Przejść do katalogu /etc/cron/moderatestandby_on i nadać odpowiednie uprawnienia dla pliku 30clock, bo aktualnie nie posiada prawa wykonania. chmod 755 30clock Quote Link to comment Share on other sites More sharing options...
tux Posted September 30, 2015 Share Posted September 30, 2015 Za trochę poprawie. Quote Link to comment Share on other sites More sharing options...
Guest s6s Posted November 12, 2015 Share Posted November 12, 2015 Jak widać oficjanym remedium okazało sie jedynie wstrzymanie standby w sytuacji kiedy jest zaplanowane nagranie. A przecież wystarczyło w /etc/cron/moderatestandby_on/60timerwakeup zrobić : doWakeup() { LILICZAS=$(( $WakeupInSec * częstotliwosć_w_standby / częstotliwosć_w_wakeup )) ### 36/265 sleep $LILICZAS Ja tak mam i działa mi IDEALNIE! Wybudza się z moderate_shutdown na parę minut przed zaplanowanym nagraniem! Zachęcam Kolegę dev-a do zaaplikowania tego prostego rozwiązania ;) Poza tym zachęcam do przyjrzenia się temu deamenowi przeze mnie skleconego co koryguje czas bez dostępu do Internetu - działa mi bardzo dobrze już którys miesiąc! :) Wówczas przy nim pewna niedokładnosć rzecz jasna i tak pojawi się - lecz jej wartosć zaczyna mieć znaczenie praktycznie może po 2-3 dniach! (Ale przeciez i to można dostroić adekwatnymi parametrami w pliku sh. Ja zadowalam się tamtymi.) Więc w takiej sytuacji powiedzmy wystarcza ntpdate wrzucić do cron/daily. Quote Link to comment Share on other sites More sharing options...
robert_cz Posted April 17, 2016 Share Posted April 17, 2016 Mam takie małe pytanko. Jak tuner aktualnie nagrywa i chcę wyłączyć tuner (tryb moderate), to mam pytanie, że trwa nagranie i czy na pewno wyłączyć. Moje pytanie jest takie: czy ten komunikat można by zastąpić po prostu przejściem w zwykły tryb czuwania, albo komunikat w stylu: Tuner aktualnie nagrywa, czy na pewno chcesz wyłączyć, czy tylko przejść w stan czuwania? 1) stan czuwania, 2) wyłączenie , z domyślnym stanem czuwania. Quote Link to comment Share on other sites More sharing options...
Guest j00zek Posted April 17, 2016 Share Posted April 17, 2016 nie da się Quote Link to comment Share on other sites More sharing options...
robert_cz Posted April 17, 2016 Share Posted April 17, 2016 nie da się trochę szkoda, bo jak idę spać i mam ustawione nagrywanie to muszę zostawiać tuner włączony i bez sensu się męczy ze strumieniem którego i tak nikt nie ogląda. :-( Quote Link to comment Share on other sites More sharing options...
Guest j00zek Posted April 17, 2016 Share Posted April 17, 2016 to sobie go uśpij po to masz możliwość wyboru z menu, lub użycia long power :P Quote Link to comment Share on other sites More sharing options...
robert_cz Posted April 17, 2016 Share Posted April 17, 2016 tak też robię, tylko rodzinie ciężko wytłumaczyć. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.