Neutrino auf der Dreambox

Kreuzuebersetzer, Diskussion über Änderungen im Tuxbox-CDK und Tuxbox-CVS
tomX
Interessierter
Interessierter
Beiträge: 75
Registriert: Sonntag 3. Dezember 2006, 18:01

Beitrag von tomX »

Code: Alles auswählen

/var # ls -la /var
drwxr-xr-x    8 10329    50              0 Dec 25 20:42 .
drwxr-xr-x    1 root     root          129 Dec 26 00:31 ..
-rw-r--r--    1 root     root            0 Jan  1  1970 .neutrino-init
drwxr-xr-x    4 10329    50              0 Dec 27 15:08 etc
lrwxrwxrwx    1 10329    50              4 Jan  1  1970 log -> /tmp
drwxr-xr-x    4 root     root            0 Dec 25 20:49 mnt
-rw-r--r--    1 root     root            0 Dec 25 19:39 null
lrwxrwxrwx    1 10329    50              4 Jan  1  1970 pid -> /tmp
lrwxrwxrwx    1 10329    50              4 Jan  1  1970 run -> /tmp
lrwxrwxrwx    1 10329    50              4 Jan  1  1970 tmp -> /tmp
drwxr-xr-x    3 10329    50              0 Jan  1  1970 tuxbox

Code: Alles auswählen

/var # ls -la /mnt
lrwxrwxrwx    1 root     root            8 Dec 26 00:32 /mnt -> /var/mnt

Code: Alles auswählen

/var # ls -la /var/mnt/
drwxr-xr-x    4 root     root            0 Dec 25 20:49 .
drwxr-xr-x    8 10329    50              0 Dec 25 20:42 ..
drwxr-xr-x    2 root     root            0 Dec 25 20:42 dbox
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Beitrag von seife »

hm, dann weiß ich auch nicht, sieht eigentlich ganz ok aus.
Kann es sein, daß die dreambox auf der serverbox nicht in den exports steht?
prodigy7
Erleuchteter
Erleuchteter
Beiträge: 595
Registriert: Donnerstag 1. Januar 2004, 16:59

Beitrag von prodigy7 »

tomX hat geschrieben:

Code: Alles auswählen

drwxr-xr-x    8 10329    50              0 Dec 25 20:42 .
Liegt es ggf. daran, das hier User und Gruppe irgendwie nicht passen?
tomX
Interessierter
Interessierter
Beiträge: 75
Registriert: Sonntag 3. Dezember 2006, 18:01

Beitrag von tomX »

Also die Exports sollten OK sein. Und das mit UID's und GID's sollte mit der Einstellung auch kein Problem sein:

Code: Alles auswählen

# This file defines the filesystem that will be exported to
# selected clients. If present, the NFS-server will be started.

/hdd *(rw,async,no_root_squash,anonuid=1000,anongid=100)
Kann es auch ein Duplex-/Halfduplex-Problem sein?
Ich habe gehört, dass man auch die DM500 auf Halfduplex im Bios stellen kann, aber wie komme ich an das Bios heran?
prodigy7
Erleuchteter
Erleuchteter
Beiträge: 595
Registriert: Donnerstag 1. Januar 2004, 16:59

Beitrag von prodigy7 »

tomX hat geschrieben:Kann es auch ein Duplex-/Halfduplex-Problem sein?
Ich habe gehört, dass man auch die DM500 auf Halfduplex im Bios stellen kann, aber wie komme ich an das Bios heran?
Also soweit ich weis, haben die "kleinen" Boxen kein BIOS.
Gib doch einfach mal ifconfig ein und guck, wieviele Errors du siehst.
tomX
Interessierter
Interessierter
Beiträge: 75
Registriert: Sonntag 3. Dezember 2006, 18:01

Beitrag von tomX »

ifconfig meldet keine Fehler nach einem Mountversuch. Scheint wohl doch ein reines NFS Problem zu sein.

dmesg gibt folgenden Output

Code: Alles auswählen

lockd_down: no lockd running.
[DENC] set mode to FBAS
[DENC] set WSS 4:3
AUDIO_CLEAR_BUFFER
nfs warning: mount version older than kernel
portmap: server localhost not responding, timed out
RPC: failed to contact portmap (errno -5).
portmap: server localhost not responding, timed out
RPC: failed to contact portmap (errno -5).
portmap: server localhost not responding, timed out
RPC: failed to contact portmap (errno -5).
RPC: call_verify: program 100003, version 3 unsupported by server xxx.xxx.xxx.xxx
RPC: call_verify: program 100003, version 3 unsupported by server xxx.xxx.xxx.xxx
Edit: Folgender Befehl führt zum Erfolg:

mount -o nfsvers=2 xxx.xxx.xxx.xxx:/hdd /mnt/dbox
Zuletzt geändert von tomX am Sonntag 30. Dezember 2007, 01:28, insgesamt 1-mal geändert.
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Beitrag von seife »

mount-parameter nolock.

Code: Alles auswählen

record  -fstype=nfs,rsize=8192,wsize=8192,rw,hard,udp,intr,nolock 192.168.200.1:/space2/capture/dbox
mp3     -fstype=nfs,rsize=8192,wsize=8192,ro,hard,udp,intr,nolock 192.168.200.1:/space2/mp3
tomX
Interessierter
Interessierter
Beiträge: 75
Registriert: Sonntag 3. Dezember 2006, 18:01

Beitrag von tomX »

sorry seife mein Edit hat sich mit deiner Antwort überschnitten.

Hier ist die Lösung:

mount -o nfsvers=2 xxx.xxx.xxx.xxx:/hdd /mnt/dbox

Und es rennt super, sogar ZDF mit hohen Bitraten!
prodigy7
Erleuchteter
Erleuchteter
Beiträge: 595
Registriert: Donnerstag 1. Januar 2004, 16:59

Beitrag von prodigy7 »

Hab mal bei den Russen nachgefragt, ob sie freundlicherweise helfen können, DVB-C zum laufen zu bekommen. Hab hierzu eine vielleicht hilfreiche Antwort bekommen:
maybe that help to you -

latest head.ko(dmm) has not " /dev/dvb/card0/sec0 " any more
Hat vielleicht jemand auf seiner DVB-C DM500 ein aktuelles Image drauf und kann das mal prüfen, ob der Eintrag wirklich weg ist?
Für was genau wird dieses Device genutzt?
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Beitrag von seife »

Das ist das device, über das man DiSEqC steuert und für DVB-T den Strom an der Antenne an- und ausmacht.
Kabelboxen blieben hart stehen, wenn man auf das Device zugegriffen hat, drum habe ich in meinem Patchset einen workaround dafür drin (wenn Kabel => Device nicht öffnen).
Das hat mit deinem Problem mit größter Sicherheit nix zu tun.

Die Russen nehmen eine Scheißalte Version von Zapit aus der Zeit, als auf der dbox auch noch API V1 benutzt wurde. Der Nachteil dieser "Lösung": deine service/bouquet.xml sind dann inkompatibel mit der dbox.
prodigy7
Erleuchteter
Erleuchteter
Beiträge: 595
Registriert: Donnerstag 1. Januar 2004, 16:59

Beitrag von prodigy7 »

Okay - hab mal geguckt, die zapit Version ist wirklich schon recht alt - aus 2003.

Code: Alles auswählen

[frontend.cpp:secSetVoltage:430] SEC_SET_VOLTAGE: Bad file descriptor
$Id: zapit.cpp,v 1.290.2.50 2003/06/13 10:53:15 digi_casi Exp $
[fe] voltage 13
[fe] power 0
[zapit.cpp] diseqc type = 0
[getservices.cpp:LoadServices:307] Loading services..
Settings api: 2
Wenn ich das aber richtig sehe, nutzen die "schon" API v2 wenn ich das "Settings api: 2" richtig deute oder?
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Beitrag von seife »

API 1 oder 2 ist mir nicht ganz klar, das war vor meiner Zeit. Jedenfalls nicht die aktuelle ;-)
Und dieselbe wie wir auch, denn die haben sich wohl kaum eigene Treiber geschrieben.
prodigy7
Erleuchteter
Erleuchteter
Beiträge: 595
Registriert: Donnerstag 1. Januar 2004, 16:59

Beitrag von prodigy7 »

Ich werd mich im neuen Jahr weiter mit dem Quellcode beschäftigen. Wegen $FRAU musste ich mal wieder auf die Box etwas lauffähiges bringen.
Also soweit schonmal einen guten Rutsch und bis ins nächste Jahr ;-)
AudioSlyer
Erleuchteter
Erleuchteter
Beiträge: 450
Registriert: Sonntag 28. Juli 2002, 01:18

Beitrag von AudioSlyer »

gähhn, zu dem sec0 thema hatte ich hier was geschrieben.
mit der aktuellen zapit und kleinen änderung an der frontend.cpp rennt das teil auf der dream. hatte ich aber schon gepostet.
tested on dm600-c
guten rutsch
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Beitrag von seife »

@prodigy7: dieses Zitat von AudioSlyer ist evtl. der Schlüssel zum Erfolg:
Beachten: Der Kabeltuner will die Frequenzen in der cable.xml in Khz haben.
Kopier die zapit mal auf die box (/var/bin) und starte neu, probiers dann nochmal.

Edit: zapit gab's schon, also nimm zapit-prodigy7, nach /var/bin/zapit, ... du weißt schon.

Edit2: und das ist der relevante teil des diffs:

Code: Alles auswählen

Index: apps/dvb/zapit/src/zapost/frontend.cpp
===================================================================
RCS file: /cvs/tuxbox/apps/dvb/zapit/src/zapost/frontend.cpp,v
retrieving revision 1.58
diff -u -p -r1.58 frontend.cpp
--- a/apps/dvb/zapit/src/zapost/frontend.cpp	8 Jul 2007 15:47:44 -0000	1.58
+++ b/apps/dvb/zapit/src/zapost/frontend.cpp	31 Dec 2007 14:16:45 -0000
@@ -51,6 +51,7 @@ CFrontend::CFrontend(int _uncommitted_sw
 	diseqcType = NO_DISEQC;
 	last_inversion = INVERSION_OFF;
 	last_qam = QAM_64;
+	secfd = -1;
 
 	uncommitted_switch_mode = _uncommitted_switch_mode;
 	if ((uncommitted_switch_mode<0) || (uncommitted_switch_mode>2)) uncommitted_switch_mode = 0;
@@ -59,13 +60,23 @@ CFrontend::CFrontend(int _uncommitted_sw
 	if ((fd = open(FRONTEND_DEVICE, O_RDWR|O_NONBLOCK)) < 0)
 		ERROR(FRONTEND_DEVICE);
 
+	fop(ioctl, FE_GET_INFO, &info);
+
 #if HAVE_DVB_API_VERSION < 3
-	if ((secfd = open(SEC_DEVICE, O_RDWR)) < 0)
-		ERROR(SEC_DEVICE);
+	if (info.type != FE_QAM) {
+		printf("[frontend] non-cable box detected\n");
+		/* on cable-dreamboxen, opening the sec-device apparently
+		   kills the box. See:
+		   http://tuxbox-forum.dreambox-fan.de/forum/viewtopic.php?p=340296#340296
+		 */
+		if ((secfd = open(SEC_DEVICE, O_RDWR)) < 0)
+			ERROR(SEC_DEVICE);
+	} else {
+		printf("[frontend] cable box detected\n");
+	}
 #else
 	secfd = fd;
 #endif
-	fop(ioctl, FE_GET_INFO, &info);
 }
 
 CFrontend::~CFrontend(void)
@@ -74,6 +85,10 @@ CFrontend::~CFrontend(void)
 		sendDiseqcStandby();
 
 	close(fd);
+#if HAVE_DVB_API_VERSION < 3
+	if (secfd >= 0)
+		close(secfd);
+#endif
 }
 
 void CFrontend::reset(void)
@@ -120,11 +135,11 @@ fe_modulation_t CFrontend::getModulation
 	case 0x05:
 		return QAM_256;
 	default:
-#if HAVE_DVB_API_VERSION < 3
-		// FIXME!
-		return QAM_256;
-#else
+#if HAVE_DVB_API_VERSION >= 3
 		return QAM_AUTO;
+#else
+		/* peeking at the enigma code suggests that QAM_64 might be correct */
+		return QAM_64;
 #endif
 	}
 }
@@ -207,8 +222,17 @@ void CFrontend::setFrontend(const dvb_fr
 
 	while ((errno == 0) || (errno == EOVERFLOW))
 		quiet_fop(ioctl, FE_GET_EVENT, &event);
-
+#ifdef HAVE_DREAMBOX_HARDWARE
+	dvb_frontend_parameters *feparams2;
+	memcpy(feparams2,feparams,sizeof(dvb_frontend_parameters));
+	if (info.type == FE_QAM) {
+		feparams2->Frequency /= 1000;
+		fprintf(stderr, "[zapit] cable box; setting frequency to %d khz\n", feparams2->Frequency);
+	}
+	fop(ioctl, FE_SET_FRONTEND, feparams2);
+#else
 	fop(ioctl, FE_SET_FRONTEND, feparams);
+#endif
 }
 
 #define TIME_STEP 200
tomX
Interessierter
Interessierter
Beiträge: 75
Registriert: Sonntag 3. Dezember 2006, 18:01

Beitrag von tomX »

Kann es sein, dass Shell-Skripte nicht im Hauptmenü angezeigt werden?

Ich habe den Ordner /var/tuxbox/plugins angelegt und eine eine .sh mit entsprechender .cfg hineingestellt, die Dateien wurden mit chmod 755 ausführbar gemacht.
DrStoned
Tuxboxer
Tuxboxer
Beiträge: 2614
Registriert: Montag 20. Mai 2002, 10:49
Image: JTG-Image [IDE] Version 2.4.4
Image: (7025SS) Merlin

Beitrag von DrStoned »

Um Skripte anzuzeigen. muss die Box neu gestartet werden. Danach sollte unter Dbox-Taste -> Skripte angezeigt werden. Wichtig dabei ist die Endung *.sh und die Angabe

Code: Alles auswählen

type=3
in der *.cfg Datei.

Greetz von DrStoned :lol: :lol: :lol:
Greetz von DrStoned :lol: :lol: :lol:
Tommy
Tuxboxer
Tuxboxer
Beiträge: 4332
Registriert: Dienstag 7. Mai 2002, 17:04

Beitrag von Tommy »

...und - .cfg Dateien müssen i.d.R nicht ausführbar sein :wink:
---------------------------
Alle weiteren Infos findest Du im WIKI
Bitte vor dem posten Boardregeln lesen und verstehen!
Wie erstelle ich ein Bootlog? Wo finde ich die FAQ?
tomX
Interessierter
Interessierter
Beiträge: 75
Registriert: Sonntag 3. Dezember 2006, 18:01

Beitrag von tomX »

Der Eintrag type=3 in der .cfg hat gefehlt, habe ihn wohl beim Copy&Paste "verloren". Danke!
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Beitrag von seife »

tomX hat geschrieben:Der Eintrag type=3 in der .cfg hat gefehlt, habe ihn wohl beim Copy&Paste "verloren". Danke!
Und nun erklär mir mal (nein, laß es lieber, denn das ist ja auch OT), was das mit dem Subject dieses Threads zu tun hat?
azureus
Interessierter
Interessierter
Beiträge: 50
Registriert: Freitag 14. Mai 2004, 17:34
Image: Rudream DM500

dm 600??

Beitrag von azureus »

könnte jemand ein image für die dm 600 sat zur verfügung stellen bei tuxbox.trale.de liegen leider nur images für die 500 und die 7000er
prodigy7
Erleuchteter
Erleuchteter
Beiträge: 595
Registriert: Donnerstag 1. Januar 2004, 16:59

Beitrag von prodigy7 »

seife hat geschrieben:Kopier die zapit mal auf die box (/var/bin) und starte neu, probiers dann nochmal.

Edit: zapit gab's schon, also nimm zapit-prodigy7, nach /var/bin/zapit, ... du weißt schon.
:dash: Das wars! Damit funktioniert der Empfang! Hab zwar jetzt noch nicht alles im Detail durchprobiert, aber beim Scan hat er Sender gefunden und beim Zappen durch die ersten paar ÖR kam auch brav ein Bild mit EPG und allem was dazu gehört.
Einzig das Zappen kam mir gegenüber den Russen etwas lahm vor. Werde morgen mal ausgiebiger testen. Ihr seit meine Helden ;-)
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Beitrag von seife »

Ok, ich räum das die Tage noch ein wenig auf und checke es dann ins CVS ein.
AudioSlyer
Erleuchteter
Erleuchteter
Beiträge: 450
Registriert: Sonntag 28. Juli 2002, 01:18

Beitrag von AudioSlyer »

seife hat geschrieben:@prodigy7: dieses Zitat von AudioSlyer ist evtl. der Schlüssel zum Erfolg:
Beachten: Der Kabeltuner will die Frequenzen in der cable.xml in Khz haben.
... und das hatte ich schon vor soooo langer Zeit geschrieben ;)
@seife: Haste gut umgesetzt... :wink:
prodigy7
Erleuchteter
Erleuchteter
Beiträge: 595
Registriert: Donnerstag 1. Januar 2004, 16:59

Beitrag von prodigy7 »

AudioSlyer hat geschrieben:... und das hatte ich schon vor soooo langer Zeit geschrieben ;)
@seife: Haste gut umgesetzt... :wink:
Haben wir wohl alle in der Masse der Posts übersehen gehabt ;-)