Neutrino auf der Dreambox

Kreuzuebersetzer, Diskussion über Änderungen im Tuxbox-CDK und Tuxbox-CVS
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Beitrag von mb405 »

in welchen verzeichnis muss man deinen patch ausführen ??
im tuxbox-cvs verzeichnis nehme ich mal an.
ich check nochmal aus, und teste nochmal
Schaedelmeister
Neugieriger
Neugieriger
Beiträge: 6
Registriert: Sonntag 10. Juni 2007, 01:17

Beitrag von Schaedelmeister »

In dem Verzeichniss wo der Patch liegt.
Habs mal mit nem Dreambox 7000 Image gebacken, leider kann ich nun keinen Senderscan machen, im Menue stehen lauter "INTERNAL ERROR"s.
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Beitrag von mb405 »

ja. hatte ich am anfang auch. aber beim 2.start ging es komischerweise :(
es fehlen noch ne menge anpassungen. zbsp. muss das mit dem netzwerk konfigurieren mal gehen, dann muss die satellites.xml in den varbereich gelinkt werden, damit man die austauchen kann. auch der netzwerktest zeigt nur ganz kurz eine info an. liegt wohl daran, das da eine zeitsteuerung drin ist, und bei der dream das bedeutend schneller geht als bei der dbox.

wenn es mal nicht mehr soooo warm(hier 31grad in meinen zimmer) ist, dann bau ich mal den creator so, das wir den alla nutzen können, und eine einheitliche basis haben.
jetzt habe ich folgende anpassungen drin, die aber irgendwie noch buggy sind.
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Beitrag von seife »

obi hat geschrieben: Hi,

im CVS log habe ich folgende Änderung gesehen:

Code: Alles auswählen

--- a/apps/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp      29 Mar 2007 15:43:32 -0000      1.237
+++ b/apps/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp      17 May 2007 21:14:47 -0000
@@ -5919,7 +5919,9 @@ int eit_set_update_filter(int *fd)
        dsfp.filter.mask[1] = 0xFF;
        dsfp.filter.mask[2] = 0xFF;
        dsfp.filter.mask[3] = (0x1F << 1) | 0x01;
+#if HAVE_DVB_API >= 3
        dsfp.filter.mode[3] = 0x1F << 1;
+#endif
 //     dsfp.filter.mask[4] = 0xFF;
        dsfp.flags = DMX_CHECK_CRC | DMX_IMMEDIATE_START;
        dsfp.pid = 0x12;
Das kann einfach nicht richtig sein. Deshalb habe ich mir mal den umliegenden Code angeschaut und dabei ist mir etwas aufgefallen:

Code: Alles auswählen

	bzero(&dsfp, sizeof(struct dmx_sct_filter_params));
	dsfp.filter.filter[0] = 0x4e;	/* table_id */
	dsfp.filter.filter[1] = (unsigned char)(messaging_current_servicekey >> 8);
	dsfp.filter.filter[2] = (unsigned char)messaging_current_servicekey;
//	dsfp.filter.filter[3] = (messaging_current_version_number << 1) | 0x01;
//	dsfp.filter.filter[4] = messaging_current_section_number;
	dsfp.filter.mask[0] = 0xFF;
	dsfp.filter.mask[1] = 0xFF;
	dsfp.filter.mask[2] = 0xFF;
	dsfp.filter.mask[3] = (0x1F << 1) | 0x01;
#if HAVE_DVB_API >= 3
	dsfp.filter.mode[3] = 0x1F << 1;
#endif
//	dsfp.filter.mask[4] = 0xFF;
Die einzige Änderung von mir war, das #if...#endif einzubauen, da es sonst nicht mit der alten API der dreambox kompiliert hat.
Ich werde mir das mal genauer anschauen, die auskommentierten filter[3]/filter[4] sind wohl fallout der letzten sectionsd-"Experimente".

Du hast nicht zufällig einen Pointer auf eine kurze README zum Thema? :-)
Durch den Aufruf von bzero wird u.a. filter[3] auf 0 gesetzt. Da das setzen von filter[3] auf einen sinnvollen Wert abgeschaltet ist, führt mask[3] mit dem Wert 0x3F dazu, dass niemals korrekte Daten empfangen werden können. Das hat zwei Ursachen:
im gleichen commit wurde auch dieses Hinzugefügt:

Code: Alles auswählen

@@ -5963,6 +6003,8 @@ static void *eitThread(void *)
        bool sendToSleepNow = false;

        // -- set EIT filter  0x4e-0x6F
+       dmxEIT.addfilter( 0x4e, 0xff );
+       dmxEIT.addfilter( 0x50, 0xff );
        dmxEIT.addfilter( 0x4e, 0xfe );
        dmxEIT.addfilter( 0x50, 0xf0 );
        dmxEIT.addfilter( 0x60, 0xf0 );
evtl. hat das ja was damit zu tun.
Wie man vermutlich merkt, habe ich davon noch keinen Plan :-)

Danke für deinen Hinweis!

seife
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Beitrag von seife »

So, ich habe mal meinen Patch etwas überarbeitet:
  • alle #if HAVE_DVB_API in #if HAVE_DVB_API_VERSION geändert
  • an einigen Stellen #if HAVE_DVB_API_VERSION durch #ifdef HAVE_DREAMBOX_HARDWARE ersetzt, wo es sinnvoller schien (eigentlich wäre ein HAVE_DBOX_HARDWARE sinnvoll, falls ich neutrino mal auf den PC portieren will)
  • nicht im driver/-Verzeichnis rumpatchen. Böse. Stattdessen versuche ich, das im zapit halbwegs hinzubekommen. Falls DVB-T boxen bisher funktioniert haben, könnten sie jetzt kaputt sein...
Das wars schon. Ansonsten sollte der Patch funktional identisch mit dbluelles Version sein. Ich verwende aber lieber das cdk/root von HEAD als den dreambox-branch (das rumgefrickle mit /var_init finde ich eher umständlich und es macht mir Tab-Completion kaputt. Außerdem will ich es möglichst gleich wie auf der dbox haben :-)

Auschecken also mit

Code: Alles auswählen

#!/bin/bash
 cvs -d anoncvs@cvs.tuxbox.org:/cvs/tuxbox -z3 co -f -r dreambox -P .
 cvs -qz3 up -dPA                apps/ cdk/root/
Patchen dann mit

Code: Alles auswählen

zcat patchfile.diff.gz | patch -p1
der Patch liegt in http://wiki.spieleck.de/attach/Neutrino ... 1b.diff.gz
Viel Spaß damit.

Achso: ich habe es nur kompiliert, noch nicht gebootet, das ist mir heute einfach zu spät. Erfolg kann ich also erst nächste Woche um dieselbe Zeit vermelden :-) Wer nicht ganz besonders mutig ist oder mitentwickeln will, sollte diese Version also evtl. lieber nicht benutzen, zumindest nicht, wenn er nicht weiß, wie man ein Backup macht.
Schaedelmeister
Neugieriger
Neugieriger
Beiträge: 6
Registriert: Sonntag 10. Juni 2007, 01:17

Beitrag von Schaedelmeister »

Ich kann hier nix mehr posten. Bekomme ne Fehlermeldung :(
Von wegen SPAM und so....... Was'n das?!
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Beitrag von mb405 »

geht doch dein post. ??
ich werde mal ein dream image bauen. jetzt sind ja die satellites.xml raus aus dem root, und ins var gelegt worden.
ist nur noch das blöde mit dem interfaces(ip abspeichern) wo wird denn gesagt, das es in /etc und nicht in /var/etc leigen muss. ich hab unheimliche probs den link zu setzen.
Schaedelmeister
Neugieriger
Neugieriger
Beiträge: 6
Registriert: Sonntag 10. Juni 2007, 01:17

Beitrag von Schaedelmeister »

Wollte nen code als Fehlermeldung einfügen, das macht er aber ned.
Nun ja egal, habs bei mir im Dreambox Board nochmal gepostet. Bleibt in der enigma.cpp hängen.

Code: Alles auswählen

schaedelmeister@linux:~$ man woman
Kein Manual-Eintrag für woman vorhanden
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Beitrag von mb405 »

häää ??
enigma.cpp brauchen wir ja gar nicht. wir wollen ja neutrino. enigma baut der hier garnicht mit.
Schaedelmeister
Neugieriger
Neugieriger
Beiträge: 6
Registriert: Sonntag 10. Juni 2007, 01:17

Beitrag von Schaedelmeister »

mb405 hat geschrieben:häää ??
enigma.cpp brauchen wir ja gar nicht. wir wollen ja neutrino. enigma baut der hier garnicht mit.
Meine fresse, meinte ich ja auch. Bin schon total enigma verstrahlt :)
DBOX-Freund
Interessierter
Interessierter
Beiträge: 38
Registriert: Samstag 1. Februar 2003, 15:35

Beitrag von DBOX-Freund »

@Seife

Habe heute Vormittag mal das CDK komplett neu ausgecheckt und mit deinen Vorgaben durchgejagt. Leider bleibt er hier hängen.
./../include/util.h:42: warning: built-in function 'log' declared as non-function
powerpc-tuxbox-linux-gnu-gcc -mcpu=405 -msoft-float -mmultiple -mstring -meabi -pipe -Os -ggdb3 -DHAVE_DREAMBOX_HARDWARE -I./../include -D_GNU_SOURCE -DCONFIG_ROOT_CHECK_OFF=1 -DELF_MACHINE_H='"elf_ppc.h"' -DARCH_ppc -c -o modstat.o modstat.c
In file included from modstat.c:33:
./../include/util.h:42: warning: built-in function 'log' declared as non-function
modstat.c: In function `new_get_kernel_info':
modstat.c:203: error: label at end of compound statement
make[2]: *** [modstat.o] Fehler 1
make[2]: Leaving directory `/dreambox/tuxbox-cvs/cdk/modutils-2.4.21/util'
make[1]: *** [all] Fehler 2
Für ein Tipp währe ich sehr Dankbar :)
DBOX-Freund
Interessierter
Interessierter
Beiträge: 38
Registriert: Samstag 1. Februar 2003, 15:35

Beitrag von DBOX-Freund »

2.4er Kernel ist doch bestimmt flasch.

Wird mit "make dreamboximage_root" auch Neutrino gebaut, dass rennt derzeit weiter.

Baue sonst nur meine D-Box2/Neutrino Images :)
DBOX-Freund
Interessierter
Interessierter
Beiträge: 38
Registriert: Samstag 1. Februar 2003, 15:35

Beitrag von DBOX-Freund »

Wer im Makefile lesen kann ist klar im Vorteil mit "make dreamboximage_neutrinoroot" hab ich hoffentlich Glück.
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Beitrag von seife »

Hat der Patch bei euch denn noch applied? Nach den upnp-commits vom 12.6. tut er das bei mir nämlich nicht mehr.

In neutrino.cpp, ca. Zeile 1714 muß das

#if HAVE_DVB_API_VERSION >= 3

manuell gelöscht werden. Dann sollte es bauen.

Achso - vor dem bauen noch mit

chmod +x cdk/customize-flash das customize-flash ausführbar machen, das sorgt nämlich dafür, daß ihr die wichtigen sachen auch in /var liegen habt und in /etc/ die symlinks dazu. Dann funktioniert's auch mit dem Netzwerk :-)

Aber ganz im Ernst: wer nicht bemerkt, daß der Patch nicht applied, oder nicht in der Lage ist, diesen Reject selbst zu beheben, sollte diese Patch-Version lieber nicht testen, bevor ich sie zumindest mal selbst gebootet habe :-)
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Beitrag von seife »

Also.
http://wiki.spieleck.de/attach/Neutrino ... 13.diff.gz baut bei mir.

Code: Alles auswählen

 cvs -d anoncvs@cvs.tuxbox.org:/cvs/tuxbox -z3 co -f -r dreambox -P .
 cvs -qz3 up -dPA                apps/ cdk/root/
 zcat neutrino-dreambox-20070613.diff.gz | patch -p1
 chmod +x cdk/customize-flash
 cd cdk
 ./prepare dm500
 make dreamboximage_neutrinoroot
...
PT-1
Moderator english
Beiträge: 2458
Registriert: Donnerstag 20. Dezember 2001, 00:00

Beitrag von PT-1 »

seife hat geschrieben:Also.
http://wiki.spieleck.de/attach/Neutrino ... 13.diff.gz baut bei mir.

Code: Alles auswählen

 cvs -d anoncvs@cvs.tuxbox.org:/cvs/tuxbox -z3 co -f -r dreambox -P .
 cvs -qz3 up -dPA                apps/ cdk/root/
 zcat neutrino-dreambox-20070613.diff.gz | patch -p1
 chmod +x cdk/customize-flash
 cd cdk
 ./prepare dm500
 make dreamboximage_neutrinoroot
...
Eigentlich wollte NJ2008 Posten aber da er noch weniger als 10 Post's hat ging das nicht.

Er meint das resolve.conf immer noch im /etc liegt und das es daher immer noch zu Problemen mit den Netzwerk Einstellungen kommt.
NJ says hat geschrieben: etc/network/interfaces & etc/resolv.conf need to be writable
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Beitrag von seife »

Ich bin mir ziemlich sicher, daß das funktioniert, wenn alles genau so gemacht wird, wie ich es geschrieben habe:
- auschecken
- patchen
- chmod +x cdk/customize-flash

customize-flash macht das mit den links etc. Im Zweifelsfall muß halt customize-flash angepaßt werden.
Ich habe das extra in customize-flash gemacht, weil es einfacher war, als das im Makefile zu machen. Quick'n'dirty halt :-)
dietmarw
Contributor
Beiträge: 1833
Registriert: Mittwoch 10. April 2002, 15:39

Beitrag von dietmarw »

ergebnisse hier http://tuxbox.trale.de
thx :wink: @seife
TheFlyer
Interessierter
Interessierter
Beiträge: 22
Registriert: Donnerstag 5. Februar 2004, 23:32

Beitrag von TheFlyer »

Hi @all,

kleine Frage: Könnte jemand evtl. auch mal ein Image für die 7020 erstellen? Zum Testen wär ich gern bereit, no Problemo... :-)

Gruß
The Flyer
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Beitrag von mb405 »

7020 und 7025 haben ne ganz andere struktur. und die images heiisen anders.
dbluelle
Contributor
Beiträge: 319
Registriert: Samstag 29. Mai 2004, 18:49

Beitrag von dbluelle »

Ich habe gerade wieder einen Teil der Patches ins CVS eingecheckt.
Damit sind die folgenden Dateien im Patchset überflüssig:

Code: Alles auswählen

apps/dvb/zapit/include/zapit/debug.h
apps/dvb/zapit/include/zapit/video.h
apps/dvb/zapit/include/zapit/zapit.h
apps/dvb/zapit/src/zapsi/pmt.cpp
apps/dvb/zapit/src/pzapit.cpp	
apps/dvb/zapit/src/zapit.cpp
apps/tuxbox/neutrino/daemons/controld/driver/audio.cpp
apps/tuxbox/neutrino/daemons/controld/eventwatchdog.cpp
apps/tuxbox/neutrino/daemons/sectionsd/sectionsd.cpp
apps/tuxbox/neutrino/src/driver/BitrateCalculator.cpp
apps/tuxbox/neutrino/src/driver/BitrateCalculator.h
apps/tuxbox/neutrino/src/driver/framebuffer.cpp
apps/tuxbox/neutrino/src/driver/framebuffer.h
apps/tuxbox/neutrino/src/gui/streaminfo2.cpp
apps/tuxbox/neutrino/src/gui/streaminfo2.h
apps/tuxbox/neutrino/src/neutrino.cpp	
apps/tuxbox/neutrino/src/neutrino.h
Download des angepassten Patchsets unter http://www.blau-weissoedingen.de/dreamb ... 17.diff.gz
Patchen wie gehabt mit

Code: Alles auswählen

zcat neutrino-dreambox7000-20070617.diff.gz|patch -p0
Schaedelmeister hat geschrieben:Habs mal mit nem Dreambox 7000 Image gebacken, leider kann ich nun keinen Senderscan machen, im Menue stehen lauter "INTERNAL ERROR"s.
Das lag an der satellites.xml aus dem Dreambox-Branch.
Die hat 65 Satelliten drin, aber Neutrino kann maximal 64 Satelliten verarbeiten :roll:
(Ich habe das jetzt mal im Patchset auf 100 Satelliten hochgesetzt, damit funktionierts ).

dbluelle
dietmarw
Contributor
Beiträge: 1833
Registriert: Mittwoch 10. April 2002, 15:39

Beitrag von dietmarw »

ergebnisse hier.. http://tuxbox.trale.de
Zuletzt geändert von dietmarw am Montag 18. Juni 2007, 06:48, insgesamt 1-mal geändert.
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Beitrag von seife »

Mein Patch für die dm500, gegen den aktuellen CVS Stand:
http://wiki.spieleck.de/attach/Neutrino ... 17.diff.gz

Das einzige, was sich funktional geändert haben sollte, ist die Änderung auf MAX_SATELLITES=100.

Leider hatte ich dieses Wochenende keine Zeit, das mal in meine Dreambox zu flashen, also immer noch "use at your own risk" :-)

Wie immer bei meinen Patches auch cdk/root auf HEAD bringen und "chmod +x customize-flash", ansonsten ist /var nicht richtig vorbereitet.

Übrigens müßte dbluelle's Patchset auch für die dm500 gehen, denn der einzige Unterschied zu meinem Patch ist das aufsetzen von /var und daß ich halt cdk/root wie bei einer dbox mache.

Viel Spaß :-)
Schaedelmeister
Neugieriger
Neugieriger
Beiträge: 6
Registriert: Sonntag 10. Juni 2007, 01:17

Beitrag von Schaedelmeister »

Vielen Dank Ihr beiden, ich werde es mal testen!
dietmarw
Contributor
Beiträge: 1833
Registriert: Mittwoch 10. April 2002, 15:39

Beitrag von dietmarw »

seife hat geschrieben:Mein Patch für die dm500, gegen den aktuellen CVS Stand:
ergebnisse hier.. http://tuxbox.trale.de