Καλησπέρα σας,
Σε dm500 εδώ και αρκετό καιρό σε αρκετά κανάλια το tuner δεν λειτουργεί σωστά και εμφανίζει BER. Η λύση που προτείνουν όλοι είναι να αλλαχθεί το tuner ή ο δέκτης

.
Ωστόσο μέχρι να γίνει αυτό, μπορούμε να τρέχουμε το παρακάτω script για να αλλάξουμε αυτόματα το κανάλι σε ένα που δεν εμφανίζει πρόβλημα με το BER.
Το script όταν βρεί ότι το κανάλι έχει BER μετά από ~10 δευτερόλεπτα θα αλλάξει στο κανάλι 1 και θα δοκιμάσει ξανά να αλλάξει στο κανάλι που είχε BER (πατώντας 0). Στην τέταρτη προσπάθεια θα μείνει στο κανάλι 1 (για να μην κάνει loop) και πρέπει ο χρήστης να αλλάξει το κανάλι μόνος του.
Code:
#!/bin/sh
if tty -s; then
echo Running Interactive $$ > /tmp/fixber.log
else
echo Running Non Interactive $$ > /tmp/fixber.log
fi
e () {
if tty -s; then
echo $*
fi
}
ok=0
err=0
try=0
slp=3
while [ /bin/true ]; do
ber=`wget http://root:[email protected]/satFinder -qO- 2>/dev/null |awk '/<td>BER:<\/td>/,/\*/ { print $0; }' | tr '\n' ' ' |sed -e 's/[^0-9]//g'`
if [ $ber -gt 50 ]; then
e Opps BER is greater that 50 count it as an error
let err=err+1
else
let ok=ok+1
fi
if [ $err -gt 3 ]; then
e Maximum number of error ber occured
e Reset errors and change to Channel 1
wget "http://root:[email protected]/cgi-bin/rc?2,352" -qO/dev/null 2>/dev/null
sleep 6
if [ $try -lt 3 ]; then
wget "http://root:[email protected]/cgi-bin/rc?11" -qO/dev/null 2>/dev/null
wget "http://root:[email protected]/cgi-bin/rc?11" -qO/dev/null 2>/dev/null
wget "http://root:[email protected]/cgi-bin/rc?11" -qO/dev/null 2>/dev/null
fi
err=0
slp=1
let try=try+1
fi
if [ $ok -gt 30 ]; then
e Since we got 30 good ber reset counters
ok=0
err=0
try=0
slp=3
fi
e Sleeping $slp seconds
sleep $slp
done
Το παραπάνω script το σώζουμε στο αρχείο fixber το οποίο το ανεβάζουμε στον φάκελο /var/bin/ με δικαιώματα 744.
Αν θέλουμε να ξεκινάει αυτόματα (σε openpli) προσθέτουμε στον φάκελο /var/etc το αρχείο init το οποίo πρέπει να περιέχει το παρακάτω:
Σε περίπτωση που ήδη έχουμε το αρχείο init, προσθέτουμε απλώς το
fixber &
Μπορούμε να το τρέξουμε και από telnet/ssh γράφωντας
fixber (θα εμφανίζει παραπάνω μηνύματα στην κονσόλα).
Στο κανάλι 1 έχω προσθέσει το Ert World το οποίο δεν παρουσιάζει πρόβλημα με το BER.
Σαν Password έχω αφήσει το default (dreambox), σε περίπτωση που έχετε ειδικούς χαρακτήρες στο password πρέπει να γίνουν escape, αν δεν θέλουμε να κάνουμε χρήση password θα πρέπει να προσθέσουμε το 127.0.0.1 στα trusted host (WebIf -> Box Control -> Configuration -> Settings)
Πληροφορίες για το init αρχείο του openpli :
http://openpli.org/forums/topic/1751...nd-on-startup/
Πληροφορίες για το webif :
http://radiovibrations.com/dreambox/webif.htm
ΥΓ. To script δεν θα διορθώσει το tuner! Απλώς αλλάξει κανάλι 2-3 φορές και συνήθως το BER φεύγει.