Neutrino auf der Dreambox

Kreuzuebersetzer, Diskussion über Änderungen im Tuxbox-CDK und Tuxbox-CVS
rockydevil
Beiträge: 1
Registriert: Freitag 18. Mai 2007, 13:53

Beitrag von rockydevil »

Hello to all and thanks for the precious work that it develop I am available to share with everything you my experience and if wanted it also my images, the sources ecc... if remove me to the warning antispam this will be possible; otherwise I will continue to do the tourist. :D

Hi
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 »

@rockydevil,
you need to write 10 postings, until you can post a link. This sanction was nessesary, to protect the forum from spambots.
Writing hxxp instead of http might be a solution. ;)

Greetz from DrStoned :lol: :lol: :lol:
Greetz von DrStoned :lol: :lol: :lol:
AudioSlyer
Erleuchteter
Erleuchteter
Beiträge: 450
Registriert: Sonntag 28. Juli 2002, 01:18

Beitrag von AudioSlyer »

Hi,
also auf der DM600pvr mit Sattuner rennt alles soweit, der Cabletuner suckt aber. Findet beim Senderscan keine Programme und beim Zappen folgt dann natürlich FE_FAILURE_EV
Die "Russen" haben da einen cable fix in der zapit?! Hmmm...
PT-1
Moderator english
Beiträge: 2458
Registriert: Donnerstag 20. Dezember 2001, 00:00

Beitrag von PT-1 »

In England geht der scan im Kabel auch nicht ;-)
AudioSlyer
Erleuchteter
Erleuchteter
Beiträge: 450
Registriert: Sonntag 28. Juli 2002, 01:18

Beitrag von AudioSlyer »

mit der dreambox oder dbox2?
PT-1
Moderator english
Beiträge: 2458
Registriert: Donnerstag 20. Dezember 2001, 00:00

Beitrag von PT-1 »

Dreambox running Neutrino von hier ;-)

Sollen die Jungs mal ein Log oder so machen ?

PS: Hat Nitr8 dich schon wegen deinem UBoot Log Feature kontaktiert ?
AudioSlyer
Erleuchteter
Erleuchteter
Beiträge: 450
Registriert: Sonntag 28. Juli 2002, 01:18

Beitrag von AudioSlyer »

DM500-C oder DM600pvr-C?

Jo, hat mir ne PM geschickt, dass er mein u-boot.diff mag. Sonst nichts ;)
PT-1
Moderator english
Beiträge: 2458
Registriert: Donnerstag 20. Dezember 2001, 00:00

Beitrag von PT-1 »

500-C und Nitr8 wartet noch auf deine Antwort :D :D
AudioSlyer
Erleuchteter
Erleuchteter
Beiträge: 450
Registriert: Sonntag 28. Juli 2002, 01:18

Beitrag von AudioSlyer »

Try to change fec_inner to fec_inner="3" at cables.xml.
Premiere und KD haben 3/4 also 3. Schau mal bei eurem Provider vorbei.
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Beitrag von seife »

@dbluelle: ich habe noch ein paar cleanups. Das sind "robustness fixes", sprich: das Kompilieren bricht gleich ab, anstelle von schwer zu debuggenden Laufzeitfehlern. Außerdem ein paar FIXMEs an den Stellen, wo ich mir wirklich nicht sicher bin, ob das alles so korrekt ist.

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.57
diff -u -p -r1.57 frontend.cpp
--- a/apps/dvb/zapit/src/zapost/frontend.cpp    24 Jun 2007 11:46:04 -0000      1.57
+++ b/apps/dvb/zapit/src/zapost/frontend.cpp    28 Jun 2007 14:11:58 -0000
@@ -124,6 +124,7 @@ fe_modulation_t CFrontend::getModulation
                return QAM_256;
        default:
 #if HAVE_DVB_API_VERSION < 3
+               // FIXME!
                return QAM_256;
 #else
                return QAM_AUTO;
@@ -211,6 +212,7 @@ void CFrontend::setFrontend(const dvb_fr
                quiet_fop(ioctl, FE_GET_EVENT, &event);

 #if HAVE_DVB_API_VERSION < 3
+       // FIXME: is this really needed? -- seife
        fop(ioctl, FE_SET_POWER_STATE, FE_POWER_ON);
 #endif
        fop(ioctl, FE_SET_FRONTEND, feparams);
@@ -340,6 +342,7 @@ void CFrontend::secSetTone(const fe_sec_
        TIMER_START();

 #if HAVE_DVB_API_VERSION < 3
+       // FIXME: is this really needed? -- seife
        if (fop(ioctl, FE_SET_POWER_STATE, FE_POWER_ON) < 0)
                perror("FE_SET_POWR_STATE");
        if (fop_sec(ioctl, FE_SET_TONE, toneMode) == 0) {
@@ -375,7 +378,10 @@ void CFrontend::secResetOverload(void)

 #if HAVE_DVB_API_VERSION >= 3
        fop(ioctl, FE_DISEQC_RESET_OVERLOAD);
+#else
+       printf("CFrontend::secResetOverload() not implemented in old API\n");
 #endif
+
        TIMER_STOP();
 }

@@ -402,6 +408,7 @@ void CFrontend::sendDiseqcCommand(const
        sequence.commands = &command;
        sequence.numCommands = 1;

+       // FIXME: is this really needed? -- seife
        fop(ioctl, FE_SET_POWER_STATE, FE_POWER_ON);
        if (fop_sec(ioctl, SEC_SEND_SEQUENCE, sequence) == 0)
 #endif
@@ -463,6 +470,7 @@ void CFrontend::sendToneBurst(const fe_s
        sequence.commands = &command;
        sequence.numCommands = 0;

+       // FIXME: is this really needed? -- seife
        fop(ioctl, FE_SET_POWER_STATE, FE_POWER_ON);
        if (fop_sec(ioctl, SEC_SEND_SEQUENCE, sequence) == 0)
 #endif
@@ -700,7 +708,7 @@ int CFrontend::setParameters(TP_params *
                 *
                 * TODO: set a flag to indicate a change in the service list
                 */
-               memcpy(&currentTransponder.feparams, &event.u.completionEvent, sizeof(dvb_frontend_parameters));
+               memcpy(&currentTransponder.feparams, &event.u.completionEvent, sizeof(FrontendParameters));
 #endif
 #else
                last_qam = TP->feparams.u.qam.modulation; /* store good value */
Index: apps/tuxbox/neutrino/daemons/controld/controld.cpp
===================================================================
RCS file: /cvs/tuxbox/apps/tuxbox/neutrino/daemons/controld/controld.cpp,v
retrieving revision 1.126
diff -u -p -r1.126 controld.cpp
--- a/apps/tuxbox/neutrino/daemons/controld/controld.cpp        24 Jun 2007 11:51:03 -0000      1.126
+++ b/apps/tuxbox/neutrino/daemons/controld/controld.cpp        28 Jun 2007 14:11:58 -0000
@@ -363,6 +363,8 @@ void setRGBCsync(int val)
                close(fd);
        }
        config->setInt32("csync", settings.csync);
+#else
+       fprintf(stderr, "[controld] SAAIOSCSYNC not implemented in dreambox\n");
 #endif
 }

@@ -381,6 +383,7 @@ char getRGBCsync()
        }
        return val;
 #else
+       fprintf(stderr, "[controld] SAAIOGCSYNC not implemented in dreambox\n");
        return 0;
 #endif
 }
@@ -1296,7 +1299,7 @@ void CControldAspectRatioNotifier::aspec
                        printf("[controld] Unknown aspectRatio: %d", activeAspectRatio);
                }
        }
-#if HAVE_DVB_API < 3
+#if HAVE_DVB_API_VERSION < 3
        else
                setVideoFormat(settings.videoformat, false);
 #endif
Index: apps/tuxbox/neutrino/daemons/controld/driver/audio.cpp
===================================================================
RCS file: /cvs/tuxbox/apps/tuxbox/neutrino/daemons/controld/driver/audio.cpp,v
retrieving revision 1.18
diff -u -p -r1.18 audio.cpp
--- a/apps/tuxbox/neutrino/daemons/controld/driver/audio.cpp    17 Jun 2007 18:33:53 -0000      1.18
+++ b/apps/tuxbox/neutrino/daemons/controld/driver/audio.cpp    28 Jun 2007 14:11:58 -0000
@@ -50,6 +50,8 @@ void audioControl::setVolume(const unsig

                close(fd);
        }
+#else
+       printf("controld: audioControl::setVolume does not work on dreamboxen\n");
 #endif
 }

@@ -69,6 +71,8 @@ void audioControl::setMute(const bool mu

                close(fd);
        }
+#else
+       printf("controld: audioControl::setMute does not work on dreamboxen\n");
 #endif
 }

Index: apps/tuxbox/neutrino/lib/controldclient/controldtypes.h
===================================================================
RCS file: /cvs/tuxbox/apps/tuxbox/neutrino/lib/controldclient/controldtypes.h,v
retrieving revision 1.2
diff -u -p -r1.2 controldtypes.h
--- a/apps/tuxbox/neutrino/lib/controldclient/controldtypes.h   27 May 2006 10:24:35 -0000      1.2
+++ b/apps/tuxbox/neutrino/lib/controldclient/controldtypes.h   28 Jun 2007 14:11:59 -0000
@@ -42,9 +42,11 @@ public:
        enum volume_type
         {
                TYPE_OST=0,
+#ifndef HAVE_DREAMBOX_HARDWARE
                TYPE_AVS=1,
                TYPE_LIRC=2,
-               TYPE_UNKNOWN
+#endif
+               TYPE_UNKNOWN=3
        };

         const static int no_video_formats = 5;
Index: apps/tuxbox/neutrino/src/gui/alphasetup.h
===================================================================
RCS file: /cvs/tuxbox/apps/tuxbox/neutrino/src/gui/alphasetup.h,v
retrieving revision 1.6
diff -u -p -r1.6 alphasetup.h
--- a/apps/tuxbox/neutrino/src/gui/alphasetup.h 23 May 2004 21:48:50 -0000      1.6
+++ b/apps/tuxbox/neutrino/src/gui/alphasetup.h 28 Jun 2007 14:11:59 -0000
@@ -33,6 +33,8 @@
 #ifndef __alphasetup__
 #define __alphasetup__

+// just to make sure we don't include something of this file by accident - seife
+#ifndef HAVE_DREAMBOX_HARDWARE

 #include "widget/menue.h"

@@ -75,4 +77,6 @@ class CAlphaSetup : public CMenuTarget


 #endif
-
+#else
+#error on dreambox, alphasetup.h should not be included
+#endif
Index: apps/tuxbox/neutrino/src/gui/audioplayer.cpp
===================================================================
RCS file: /cvs/tuxbox/apps/tuxbox/neutrino/src/gui/audioplayer.cpp,v
retrieving revision 1.44
diff -u -p -r1.44 audioplayer.cpp
--- a/apps/tuxbox/neutrino/src/gui/audioplayer.cpp      24 Jun 2007 11:51:04 -0000      1.44
+++ b/apps/tuxbox/neutrino/src/gui/audioplayer.cpp      28 Jun 2007 14:11:59 -0000
@@ -225,6 +225,7 @@ int CAudioPlayerGui::exec(CMenuTarget* p
        // set zapit in standby mode
        g_Zapit->setStandby(true);

+#ifndef HAVE_DREAMBOX_HARDWARE
        // If Audiomode is OST then save setting and switch to AVS-Mode
        if(g_settings.audio_avs_Control == CControld::TYPE_OST)
        {
@@ -232,6 +233,7 @@ int CAudioPlayerGui::exec(CMenuTarget* p
                g_settings.audio_avs_Control = CControld::TYPE_AVS;
        }
        else
+#endif
                m_vol_ost = false;

        // tell neutrino we're in audio mode
@@ -269,11 +271,13 @@ int CAudioPlayerGui::exec(CMenuTarget* p
        //t_channel_id channel_id=CNeutrinoApp::getInstance()->channelList->getActiveChannel_ChannelID();
        //g_Zapit->zapTo_serviceID(channel_id);
        g_Zapit->setStandby(false);
+#ifndef HAVE_DREAMBOX_HARDWARE
        if(m_vol_ost)
        {
                g_Controld->setVolume(100, CControld::TYPE_AVS);
                g_settings.audio_avs_Control = CControld::TYPE_OST;
        }
+#endif

        //Send ir
        CIRSend irs2("audioplayeroff");
Ich habe es mal als http://wiki.spieleck.de/attach/Neutrino ... 70628.diff hochgeladen.
AudioSlyer
Erleuchteter
Erleuchteter
Beiträge: 450
Registriert: Sonntag 28. Juli 2002, 01:18

Beitrag von AudioSlyer »

schön wäre es auch, wenn ihr den 2.6.12 statt des 2.6.9 Kernels nehmen würdet ;)
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Beitrag von seife »

AudioSlyer hat geschrieben:schön wäre es auch, wenn ihr den 2.6.12 statt des 2.6.9 Kernels nehmen würdet ;)
vielleicht habe ich ja was verpaßt, aber wo sollen wir die Treiber hernehmen? Der binary-only-Dreck paßt ja nur in den Kernel, für den er released wurde.
Und warum 2.6.12? 2.6.22 ist aktuell!
AudioSlyer
Erleuchteter
Erleuchteter
Beiträge: 450
Registriert: Sonntag 28. Juli 2002, 01:18

Beitrag von AudioSlyer »

Ich bau das für die dm600pvr, daher nehme ich den .12er.
Scheine aber auch der einzige zu sein, also lass es so wie es ist.
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Beitrag von seife »

ich habe es nicht probiert, aber ich gehe davon aus, daß die 600er Treiber nicht auf die 500er passen.
Wären die Treiber nicht binonly-Dreck, würde ich den 2.6.22-rc5 nehmen ;-)
knacki
Neugieriger
Neugieriger
Beiträge: 11
Registriert: Dienstag 23. März 2004, 17:01

Beitrag von knacki »

SoLaLa hat geschrieben:
new.life hat geschrieben:...UFS-910...geben wird.
das ist das "Endziel" 8)
UFS, interne SATA... und dat janze mitn Neutronium :lol:
Das wäre mehr als schön ;)
Neutrino für den Kathrein UFS-910 :)
Cu Knacki
------------------------
Dbox2 (alle Arten)
Kathrein UFS910
dbluelle
Contributor
Beiträge: 319
Registriert: Samstag 29. Mai 2004, 18:49

Beitrag von dbluelle »

seife hat geschrieben: Außerdem ein paar FIXMEs an den Stellen, wo ich mir wirklich nicht sicher bin, ob das alles so korrekt ist.
Ich habe mir mal die Sache mit dem FE_SET_POWER_STATE angesehen.
IMHO sind die ioctl nicht nötig, jedenfalls konnte ich keinen Unterschied im Verhalten feststellen.
Zum Vergleich: In Enigma wird m.E. dieser ioctl nur abgesetzt, wenn das Tunen nicht erfolgreich war. Ich habe das mal so ähnlich bei Neutrino eingebaut:

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.57
diff -U3 -r1.57 frontend.cpp
--- apps/dvb/zapit/src/zapost/frontend.cpp	24 Jun 2007 11:46:04 -0000	1.57
+++ apps/dvb/zapit/src/zapost/frontend.cpp	1 Jul 2007 08:44:12 -0000
@@ -83,7 +83,7 @@
 	if ((fd = open(FRONTEND_DEVICE, O_RDWR|O_NONBLOCK|O_SYNC)) < 0)
 		ERROR(FRONTEND_DEVICE);
 #if HAVE_DVB_API_VERSION < 3
-	fop(ioctl, FE_SET_POWER_STATE, FE_POWER_ON);
+	//fop(ioctl, FE_SET_POWER_STATE, FE_POWER_ON);
 #endif
 }
 
@@ -124,6 +124,7 @@
 		return QAM_256;
 	default:
 #if HAVE_DVB_API_VERSION < 3
+		// FIXME!
 		return QAM_256;
 #else
 		return QAM_AUTO;
@@ -211,7 +212,8 @@
 		quiet_fop(ioctl, FE_GET_EVENT, &event);
 
 #if HAVE_DVB_API_VERSION < 3
-	fop(ioctl, FE_SET_POWER_STATE, FE_POWER_ON);
+	// FIXME: is this really needed? -- seife
+	//fop(ioctl, FE_SET_POWER_STATE, FE_POWER_ON);
 #endif
 	fop(ioctl, FE_SET_FRONTEND, feparams);
 }
@@ -340,8 +342,9 @@
 	TIMER_START();
 
 #if HAVE_DVB_API_VERSION < 3
-	if (fop(ioctl, FE_SET_POWER_STATE, FE_POWER_ON) < 0)
-		perror("FE_SET_POWR_STATE");
+	// FIXME: is this really needed? -- seife
+	//if (fop(ioctl, FE_SET_POWER_STATE, FE_POWER_ON) < 0)
+	//	perror("FE_SET_POWR_STATE");
 	if (fop_sec(ioctl, FE_SET_TONE, toneMode) == 0) {
 #else
 	if (fop(ioctl, FE_SET_TONE, toneMode) == 0) {
@@ -375,6 +378,8 @@
 
 #if HAVE_DVB_API_VERSION >= 3
 	fop(ioctl, FE_DISEQC_RESET_OVERLOAD);
+#else
+	printf("CFrontend::secResetOverload() not implemented in old API\n"); 
 #endif
 	TIMER_STOP();
 }
@@ -402,7 +407,8 @@
 	sequence.commands = &command;
 	sequence.numCommands = 1;
 
-	fop(ioctl, FE_SET_POWER_STATE, FE_POWER_ON);
+	// FIXME: is this really needed? -- seife 
+	//fop(ioctl, FE_SET_POWER_STATE, FE_POWER_ON);
 	if (fop_sec(ioctl, SEC_SEND_SEQUENCE, sequence) == 0)
 #endif
 		usleep(1000 * ms);
@@ -463,7 +469,8 @@
 	sequence.commands = &command;
 	sequence.numCommands = 0;
 
-	fop(ioctl, FE_SET_POWER_STATE, FE_POWER_ON);
+	// FIXME: is this really needed? -- seife 
+	//fop(ioctl, FE_SET_POWER_STATE, FE_POWER_ON);
 	if (fop_sec(ioctl, SEC_SEND_SEQUENCE, sequence) == 0)
 #endif
 		usleep(1000 * ms);
@@ -581,7 +588,10 @@
 	bool can_not_auto_inversion = true;
 	bool do_auto_qam = false;
 	bool do_auto_inversion = false;
+	if (!tuned)
+		fop(ioctl, FE_SET_POWER_STATE, FE_POWER_ON);
 #endif
+	
 
 	if (info.type == FE_QPSK)
 	{
@@ -700,7 +710,7 @@
 		 *
 		 * TODO: set a flag to indicate a change in the service list
 		 */
-		memcpy(&currentTransponder.feparams, &event.u.completionEvent, sizeof(dvb_frontend_parameters));
+		memcpy(&currentTransponder.feparams, &event.u.completionEvent, sizeof(FrontendParameters));
 #endif
 #else
 		last_qam = TP->feparams.u.qam.modulation; /* store good value */
Noch was: In der zapit.cpp funktioniert ja das Starten des TeletextDemux nicht. Ich vermute, der ist bei der DBox für das Durchschleifen des Teletextsignals an den Fernseher zuständig (kann das evtl. einer bestätigen? ). Da die Dreambox das nicht kann, kommt hier natürlich die Fehlermeldung.

@alle
Ich habe gerade noch eine Änderung eingecheckt, sodass jetzt auch der Pictureviewer auf der Dreambox (zumindest auf der 7000er ;)) funktioniert.

dbluelle
jochen_f
Interessierter
Interessierter
Beiträge: 67
Registriert: Montag 29. Januar 2007, 12:25

Beitrag von jochen_f »

seife hat geschrieben:ich habe es nicht probiert, aber ich gehe davon aus, daß die 600er Treiber nicht auf die 500er passen.
Wären die Treiber nicht binonly-Dreck, würde ich den 2.6.22-rc5 nehmen ;-)
OpenWRT ist schon bei 2.6.22-rc6 8). Aber dort ist auch kein binärer Dreck drin. Im Gegenteil, der letzte binäre Dreck wird da gerade operativ entfernt :P
new.life
Erleuchteter
Erleuchteter
Beiträge: 797
Registriert: Sonntag 19. Februar 2006, 01:17

Beitrag von new.life »

<edit>hat sich erledigt</edit>
Zuletzt geändert von new.life am Montag 2. Juli 2007, 10:16, insgesamt 1-mal geändert.
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Beitrag von seife »

dbluelle hat geschrieben:
seife hat geschrieben: Außerdem ein paar FIXMEs an den Stellen, wo ich mir wirklich nicht sicher bin, ob das alles so korrekt ist.
Ich habe mir mal die Sache mit dem FE_SET_POWER_STATE angesehen.
IMHO sind die ioctl nicht nötig, jedenfalls konnte ich keinen Unterschied im Verhalten feststellen.
Zum Vergleich: In Enigma wird m.E. dieser ioctl nur abgesetzt, wenn das Tunen nicht erfolgreich war. Ich habe das mal so ähnlich bei Neutrino eingebaut:
Sehr gut.
Ganz am Anfang hat es bei mir nicht funktioniert, daraufhin habe ich an allen möglichen und unmöglichen Stellen diesen ioctl eingebaut, dann hat es angefangen zu funktionieren.
Daß das nicht sauber war, war mir klar, darum die FIXMEs. Daß du das gleich gefixt hast - umso besser :-)
Noch was: In der zapit.cpp funktioniert ja das Starten des TeletextDemux nicht. Ich vermute, der ist bei der DBox für das Durchschleifen des Teletextsignals an den Fernseher zuständig (kann das evtl. einer bestätigen? ). Da die Dreambox das nicht kann, kommt hier natürlich die Fehlermeldung.
Hm. So hatte ich das noch gar nie betrachtet. In diesem Falle könnte man das mit "#ifndef HAVE_DREAMBOX_HARDWARE" umklammern. Allerdings scheint es nicht zu stören (und ich glaube ich habe eine "teletext demux failed"-Meldung auch im enigma gesehen...)
@alle
Ich habe gerade noch eine Änderung eingecheckt, sodass jetzt auch der Pictureviewer auf der Dreambox (zumindest auf der 7000er ;)) funktioniert.

dbluelle
Sehr schön. Ich habe heute mal endlich wieder etwas Zeit gehabt, mich damit zu beschäftigen, den Picviewer habe ich allerdings noch nicht probiert (den habe ich noch nie benutzt, auch nicht auf der dbox).

Was mir aufgefallen ist: manchmal, scheinbar besonders dann wenn EPG Daten fehlen, hängt die GUI, anscheinend wartet sie auf den sectionsd. Manchmal segfaulted neutrino dann auch und wird vom init skript neu gestartet. Triggern kann ich das mittels "Blaue Taste -> EPG neu laden" oder "Blau -> EPG auslesen aus/ein"

Ist das nur bei mir so (dann würde ich mal meine lokalen Patches durchschauen) oder sehen das noch andere?
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Beitrag von seife »

inzwischen, während ich noch immer an meinen sectionsd / EPG-Problemen rumdoktre, habe ich mal die sich seltsam verhaltende Fernbedienung gefixt.

Da ich nicht prüfen kann, ob es mit einer "alten Nokia" und -DOLD_RC_API auch funktionieren würde, habe ich es in HAVE_DREAMBOX_HARDWARE gekapselt.
Evtl. benutzt aber außer der dream auch keiner mehr OLD_RC_API, dann könnte man da ganz anders aufräumen. Auch ein "richtiger" Treiber, der auf /dev/rawir2 zugreift, sollte nicht allzu schwierig zu machen sein. Allerdings will ich erstmal meine anderen Probleme fixen :-)

Langer Rede kurzer Link: http://ulc.tuxbox-cvs.sourceforge.net// ... tory=Diffs&
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Beitrag von seife »

Und eine verbesserte Version: http://ulc.tuxbox-cvs.sourceforge.net/i ... tory=Diffs&

Achtung: unschöne Hacks. Ich habe das mit Kommentaren zu erklären versucht, aber es gefällt mir nicht wirklich. Funktioniert aber (bei mir).
__Ghost__
Developer
Beiträge: 245
Registriert: Mittwoch 13. März 2002, 21:19

Beitrag von __Ghost__ »

Hi,

es ist bestimmt einfacher in einem bootscript "echo inputdev > /proc/stb/ir/interface" zu machen.. dann funktioniert das input device.. und man es sollte dann auch zwei weitere einträge in /proc/stb/ir/interface geben wo man Wiederholrate und Verzögerung einstellen kann. Zumindest die aktuellen "binary-only-dreck" Treiber aus dem dreambox branch sollten das unterstützen.

Mehr Kommentare verkneif ich mir besser....

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

Beitrag von seife »

Da magst du recht haben (und ich werde das demnächst probieren / implementieren), allerdings ist mir schleierhaft, wie du drauf kommst, daß das offensichtlich jeder so wissen muss. Zumindest habe ich im gesamten Quellbaum sowie in dreamdriver_dm500_20070402.tar.bz2 keinen Hinweis auf diese Funktionalität gefunden.

Edit:
Und daß ich nicht wild in /proc rumstochere mußt du verstehen, da sich die Treiber ja schon hart aufhängen, wenn man bei ioctls falsche Argumente angibt (ist mir bei den ersten Portierungsversuchen dauernd passiert, als ich teilweise noch mit API v3 auf die Devices zugegriffen habe. Daß es nicht funktionieren konnte ist klar, aber den Kernel hart weghängen ist unsportlich.)
;-)
__Ghost__
Developer
Beiträge: 245
Registriert: Mittwoch 13. März 2002, 21:19

Beitrag von __Ghost__ »

Hi,

wenn Du dem Kernel bzw. den Treibern beim ioctl Pointer auf structs der neuen API übergibst (was anderes hast Du da mit deinen Versuchen nunmal nicht gemacht).. diese aber nunmal anders aussehen intern.. weil es eben alte API ist.. dann ist das durchaus normal, dass dann der Kernel oopst.. was soll da anderes bei rauskommen.... da hilft dir auch kein neuer Kernel...

Naja und zur Not könnte es auch helfen einfach mal zu fragen.. wenn man irgendwas nicht weiss...

cu
dbluelle
Contributor
Beiträge: 319
Registriert: Samstag 29. Mai 2004, 18:49

Beitrag von dbluelle »

Äehm, was gibt's denn bei der Fernbedienung noch für Schwierigkeiten?
Bei mir funktioniert die problemlos :gruebel:

Zu dem sectionsd/EPG-Hängern s. http://tuxbox-forum.dreambox-fan.de/for ... &start=100

Es kann sein, dass die EPG-Probleme auch noch mit der fehlerhaften Zeit (2 Stunden zurück) zusammenhängen.
Dafür habe ich auch etwas gefunden:
In Enigma wird die Zeitzone über die Einträge in /share/zoneinfo/ gesetzt. Die gewählte Zeitzone wird dann in die Datei /var/etc/localtime kopiert.
Da Neutrino keine Einstellungsmöglichkeit für die Zeitzone hat, muss man das also von Hand machen.
Also einfach die entsprechende Datei (für Deutschland ist das "CET") nach /var/etc/localtime kopieren und nach einem Neustart stimmt die Zeit ;)
Die ganzen Vorlagen für die Zeitzonen liegen im CDK in /apps/tuxbox/enigma/data/sysconfig/zoneinfo.tar.bz2

dbluelle