## c't-Projekte - Mailinglisten

[Voriger (Datum)] [Nächster (Datum)] [Voriger (Thread)] [Nächster (Thread)]
[Nach Datum][Nach Thread]

### Re: [ct-bot] patch RC5 Codes Vivanco UR89 alle Tasten TV Code 089

Absender: Ulrich Scheffler
Datum: Sa, 15.04.2006 16:22:25
In-reply-to: <4440D92B.4070700@xxxxxxxx>
References: <443FBF61.3040109@xxxxxx> <443FD30D.7010403@xxxxxxxx> <4440D26E.5070308@xxxxxx> <4440D92B.4070700@xxxxxxxx>

    hej benjamin benz,
    ich habe die code alle noch mal geprüft. ich denke ich habe es richtig
    ermittelt. dennoch habe ich noch einen (zwei) fehler in meinem patch
    gefunden. weiterhin habe ich in der neuen beigelegten version noch den
    schon angemerkten fehler für die vivanco ur89 im vcr default modus sowie
    einige umlautfehler und einrückungen in der gesammten datei rc5-codes.h
    korigiert.

    anmerkung: die ur89 emuliert eine fernbedienung. der code 089 ist (unter
    anderen) für einem philips fernseher. möglicherweise tritt also genau
    deshalb der unwahrscheinliche fall auf.

    uli

    Benjamin Benz schrieb:
    > Hallo,
    >
    > meist weisen Codes, solche Codes
    >
    > RC5_CODE_0        (0x1000 & RC5_MASK)
    > darauf hin, dass die Adress-Bits ausmaskiert waren. In obigem Code sind
    > nämlich alle Adressbits = 0. Das ist zwar theoretisch möglich, aber nur
    > bei genau einem einzigen Fernbedienungstyp und daher sehr unwahrscheinlich.
    >
    > Etwas mehr Info zum Aufbau der RC5-Codes steht hier:
    > http://www.heise.de/ct/05/23/222/
    >
    > MfG Benjamin Benz
    >
    > Ulrich Scheffler wrote:
    >> hej benjamin benz,
    >> ich verstehe nicht was du mir sagen willst. die faq habe ich beachtet
    >> und dementsprechend  #define RC5_MASK (RC5_COMMAND|RC5_ADDRESS)
    >> angewendet bevor ich die codes ermittelt habe.
    >> und bei mir funktioniert es so natürlich
    >>
    >> woran würde man das denn an dem patch erkennen? ich bin interessiert!
    >> vielleicht mache ich ja was falsch nur die faq hat mich dann nicht auf
    >> den richtigen weg gebracht.
    >>
    >> by the way: im bisherigen code für die vivanco ur89 fernbedienung im vcr
    >> mode ist der programm code in der zeile
    >> #define    RC5_CODE_UP (0x1140 & RC5_MASK)    /*!< Taste
    >> Hoch            */
    >> falsch
    >> richtig wäre hier der code 0x1160
    >>
    >> uli
    >>
    >> Benjamin Benz schrieb:
    >>
    >>> Hallo,
    >>>
    >>> kann es sein, dass Sie das hier nicht gelesen haben?
    >>> http://www.heise.de/ct/ftp/projekte/ct-bot/faq/pb.shtml#pb03
    >>>
    >>> Zumindest sieht der Patch stark danach aus.
    >>>
    >>> MfG Benjamin Benz
    >>>
    >>> P.S. Patches, die fertig zum Aufnehmen ins CVS sind bitte nicht nur an
    >>> diese Liste mailen, sondern auch an ct-bot@xxxxxxxx oder ct-sim@xxxxxxxx
    >>>
    >>> Dort bleiben dann auch alle attachments vollständig. Diese Liste nimmt
    >>> ja nur .txt
    >>>
    >>> Ulrich Scheffler wrote:
    >>>
    >>>> Hej Entwickler,
    >>>> Beigefügt ein Patch für die Fernbedienung Vivanco UR89 mit allen
    >>>> Tasten.
    >>>> Für die Benutzung ist die Fernbedienung im TV Mode auf den Code 089 zu
    >>>> programmieren.
    >>>>
    >>>> Uli
    >>>>
    >>>>
    >>>> ------------------------------------------------------------------------
    >>>>
    >>>>
    >>>> Index: rc5-codes.h
    >>>> ===================================================================
    >>>> RCS file: /ctbot/ct-Bot/include/rc5-codes.h,v
    >>>> retrieving revision 1.13
    >>>> diff -u -r1.13 rc5-codes.h
    >>>> --- rc5-codes.h    4 Apr 2006 15:18:36 -0000    1.13
    >>>> +++ rc5-codes.h    14 Apr 2006 16:40:09 -0000
    >>>> @@ -70,7 +70,7 @@
    >>>>  //#define RC_HAVE_HAUPPAUGE_MediaMPV
    >>>>  //#define RC_HAVE_CONRAD_PROMO8
    >>>>  //#define RC_HAVE_VIVANCO_UR89
    >>>> -
    >>>> +//#define RC_HAVE_VIVANCO_UR89_TV_CODE_089
    >>>>  #endif
    >>>>
    >>>>  /*!
    >>>> @@ -242,6 +242,65 @@
    >>>>      #define RC5_CODE_YELLOW    (0x1175 & RC5_MASK)        /*!< gelbe
    >>>> Taste           */
    >>>>      #define RC5_CODE_BLUE    (0x1174 & RC5_MASK)        /*!< blaue
    >>>> Taste           */
    >>>>  #endif /* RC_HAVE_VIVANCO_UR89 */
    >>>> +
    >>>> +/*!
    >>>> + * Fernbedienung VIVANCO UR89, TV Modus (Alle Tasten funktionieren)
    >>>> + * vor Verwendung für TV den Code 089 auf der Fernbedienung
    >>>> programmieren
    >>>> + * @author Ulrich Scheffler
    >>>> + */
    >>>> +#ifdef RC_HAVE_VIVANCO_UR89_TV_CODE_089
    >>>> +    #define RC_HAVE_CODES                            /*!< Definiert
    >>>> Codes */
    >>>> +    #undef JOG_DIAL                                    /*!< Hat
    >>>> keinen Jog Dial */
    >>>> +
    >>>> +    #define RC5_NOT_AVAIL    (0xFFFF)                /*!< Code fuer
    >>>> Taste nicht vorhanden */
    >>>> +
    >>>> +    #define    RC5_CODE_PWR    (0x100C & RC5_MASK)        /*!< Taste
    >>>> An, Aus (rot)*/
    >>>> +    #define RC5_CODE_MUTE    (0x100D & RC5_MASK)        /*!< Taste
    >>>> Mute (gruen)*/
    >>>> +    #define    RC5_CODE_UP        (0x1020 & RC5_MASK)        /*!<
    >>>> Taste CH + */
    >>>> +    #define    RC5_CODE_DOWN    (0x1021 & RC5_MASK)        /*!< Taste
    >>>> CH - */
    >>>> +    #define    RC5_CODE_LEFT    (0x1011 & RC5_MASK)        /*!< Taste
    >>>> VOL - */
    >>>> +    #define    RC5_CODE_RIGHT    (0x1012 & RC5_MASK)        /*!<
    >>>> Taste VOL + */
    >>>> +
    >>>> +    #define    RC5_CODE_EXT_1    (0x0017 & RC5_MASK)        /*!<
    >>>> Taste Quadrat mit Punkt*/
    >>>> +    #define    RC5_CODE_VIEW    (0x1038 & RC5_MASK)        /*!< Taste
    >>>> TV/VCR & Taste A.B */ /* _EXT_2 */
    >>>> +
    >>>> +    #define    RC5_CODE_0        (0x1000 & RC5_MASK)        /*!<
    >>>> Taste 0    */
    >>>> +    #define    RC5_CODE_1        (0x1001 & RC5_MASK)        /*!<
    >>>> Taste 1    */
    >>>> +    #define    RC5_CODE_2        (0x1002 & RC5_MASK)        /*!<
    >>>> Taste 2    */
    >>>> +    #define    RC5_CODE_3        (0x1003 & RC5_MASK)        /*!<
    >>>> Taste 3    */
    >>>> +    #define    RC5_CODE_4        (0x1004 & RC5_MASK)        /*!<
    >>>> Taste 4    */
    >>>> +    #define    RC5_CODE_5        (0x1005 & RC5_MASK)        /*!<
    >>>> Taste 5    */
    >>>> +    #define    RC5_CODE_6        (0x1006 & RC5_MASK)        /*!<
    >>>> Taste 6    */
    >>>> +    #define    RC5_CODE_7        (0x1007 & RC5_MASK)        /*!<
    >>>> Taste 7    */
    >>>> +    #define    RC5_CODE_8        (0x1008 & RC5_MASK)        /*!<
    >>>> Taste 8    */
    >>>> +    #define    RC5_CODE_9        (0x1009 & RC5_MASK)        /*!<
    >>>> Taste 9    */
    >>>> +
    >>>> +    #define RC5_CODE_SELECT    (0x1022 & RC5_MASK)      /*!< Taste
    >>>> Return & Taste EXIT */ /* _EXT_3 */
    >>>> +    // #define RC5_CODE_EXT_4    (0x1038 & RC5_MASK)      /*!< Taste
    >>>> A.B & Taste TV/VCR */
    >>>> +   +    #define RC5_CODE_WAIT    (0x002F & RC5_MASK)        /*!< Taste
    >>>> Pause */
    >>>> +    #define RC5_CODE_GREEN    (0x002C & RC5_MASK)        /*!< Taste
    >>>> Gruen & Stop */
    >>>> +    #define RC5_CODE_RECORD    (0x102E & RC5_MASK)        /*!< Taste
    >>>> Aufnahme */
    >>>> +    #define RC5_CODE_EXT_5    (0x103F & RC5_MASK)        /*!< Taste
    >>>> Quadrat */
    >>>> +
    >>>> +    #define RC5_CODE_RED    (0x002B & RC5_MASK)        /*!< Taste Rot
    >>>> & << */
    >>>> +    #define RC5_CODE_YELLOW    (0x002D & RC5_MASK)        /*!< Taste
    >>>> Gelb & > */
    >>>> +    #define RC5_CODE_BLUE    (0x002E & RC5_MASK)        /*!< Taste
    >>>> Blau & >> */
    >>>> +    #define RC5_CODE_EXT_6    (0x103C & RC5_MASK)        /*!< Taste
    >>>> Quadrat mit 3 gleichlangen Linien */
    >>>> +
    >>>> +    #define    RC5_CODE_UWD    (0x0010 & RC5_MASK)        /*!< Taste
    >>>> hoch (gruen) */
    >>>> +    #define    RC5_CODE_BWD    (0x0015 & RC5_MASK)        /*!< Taste
    >>>> links (gruen) */
    >>>> +    #define    RC5_CODE_FWD    (0x0016 & RC5_MASK)        /*!< Taste
    >>>> rechts (gruen) */
    >>>> +    #define    RC5_CODE_DWD    (0x0011 & RC5_MASK)        /*!< Taste
    >>>> runter (gruen) */
    >>>> +
    >>>> +    #define RC5_CODE_EXT_7    (0x1029 & RC5_MASK)        /*!< Taste
    >>>> Quadrat mit innerem Rechteck und Pfeilen */
    >>>> +    #define RC5_CODE_EXT_8    (0x102E & RC5_MASK)        /*!< Taste
    >>>> Quadrat mit 3 ungleichlangen Linien */
    >>>> +
    >>>> +    #define RC5_CODE_OK        (0x1023 & RC5_MASK)        /*!< Taste
    >>>> OK */
    >>>> +    #define RC5_CODE_MENU    (0x0012 & RC5_MASK)        /*!< Taste
    >>>> MENU */
    >>>> +    // #define RC5_CODE_BACK    (0x1022 & RC5_MASK)        /*!< Taste
    >>>> EXIT & Taste Return */
    >>>> +
    >>>> +#endif /* RC_HAVE_VIVANCO_UR89_TV_CODE_089 */
    >>>>
    >>>>
    >>>>  /*!
    >>>>
    >>>> ------------------------------------------------------------------------
    >>>>
    >>>>
    >>>> _______________________________________________
    >>>> ct-bot-entwickler Mailingliste
    >>>> ct-bot-entwickler@xxxxxxxxxxxxxxxxx
    >>>> http://www.heise.de/bin/newsletter/listinfo/ct-bot-entwickler
    >>>>
    >>> _______________________________________________
    >>> ct-bot-entwickler Mailingliste
    >>> ct-bot-entwickler@xxxxxxxxxxxxxxxxx
    >>> http://www.heise.de/bin/newsletter/listinfo/ct-bot-entwickler
    >>>
    >>>
    >>
    >>
    >>
    >> _______________________________________________
    >> ct-bot-entwickler Mailingliste
    >> ct-bot-entwickler@xxxxxxxxxxxxxxxxx
    >> http://www.heise.de/bin/newsletter/listinfo/ct-bot-entwickler
    >>
    >>
    >
    >
    > _______________________________________________
    > ct-bot-entwickler Mailingliste
    > ct-bot-entwickler@xxxxxxxxxxxxxxxxx
    > http://www.heise.de/bin/newsletter/listinfo/ct-bot-entwickler
    >

    Index: rc5-codes.h
    ===================================================================
    RCS file: /ctbot/ct-Bot/include/rc5-codes.h,v
    retrieving revision 1.14
    diff -u -r1.14 rc5-codes.h
    --- rc5-codes.h	14 Apr 2006 19:23:24 -0000	1.14
    +++ rc5-codes.h	15 Apr 2006 15:26:56 -0000
    @@ -22,7 +22,7 @@
      * @author 	Andreas Merkle (mail@xxxxxxxxxxxx)
      * @date 	15.02.06
      * Wer diese Datei angepasst hat, kann Sie durch einen .cvsignore Eintrag schÃ¼tzen.
    - * Dann Ã¼berschreibt Eclipse Sie nicht mehr automatisch
    + * Dann Ueberschreibt Eclipse Sie nicht mehr automatisch
     */

     #ifndef RC5CODE_H_
    @@ -65,6 +65,7 @@
     //#define RC_HAVE_HAUPPAUGE_MediaMPV
     //#define RC_HAVE_CONRAD_PROMO8
     //#define RC_HAVE_VIVANCO_UR89
    +//#define RC_HAVE_VIVANCO_UR89_TV_CODE_089

     /*!
      * Fernbedienung Hauppauge (simple WinTV-Karten Fernbedienung)
    @@ -223,7 +224,7 @@
     	#define	RC5_CODE_VIEW	RC5_NOT_AVAIL			/*!< Taste nicht vorhanden */
     	#define	RC5_CODE_SELECT	RC5_NOT_AVAIL			/*!< Taste nicht vorhanden */

    -	#define	RC5_CODE_UP		(0x1140 & RC5_MASK)		/*!< Taste Hoch            */
    +	#define	RC5_CODE_UP		(0x1160 & RC5_MASK)		/*!< Taste Hoch            */
     	#define	RC5_CODE_DOWN	(0x1161 & RC5_MASK)		/*!< Taste Runter          */
     	#define	RC5_CODE_LEFT	(0x0171 & RC5_MASK)		/*!< Taste Links           */
     	#define	RC5_CODE_RIGHT	(0x0170 & RC5_MASK)		/*!< Taste Rechts          */
    @@ -238,6 +239,66 @@

     /*!
    + * Fernbedienung VIVANCO UR89, TV Modus (Alle Tasten funktionieren)
    + * vor Verwendung für TV den Code 089 auf der Fernbedienung programmieren
    + * @author Ulrich Scheffler
    + */
    +#ifdef RC_HAVE_VIVANCO_UR89_TV_CODE_089
    +	#define RC_HAVE_CODES							/*!< Definiert Codes */
    +	#undef JOG_DIAL									/*!< Hat keinen Jog Dial */
    +
    +	#define RC5_NOT_AVAIL	(0xFFFF)				/*!< Code fuer Taste nicht vorhanden */
    +
    +	#define	RC5_CODE_PWR	(0x100C & RC5_MASK)		/*!< Taste An, Aus (rot)*/
    +	#define RC5_CODE_MUTE	(0x100D & RC5_MASK)		/*!< Taste Mute (gruen) */
    +	#define	RC5_CODE_UP		(0x1020 & RC5_MASK)		/*!< Taste CH +  */
    +	#define	RC5_CODE_DOWN	(0x1021 & RC5_MASK)		/*!< Taste CH -  */
    +	#define	RC5_CODE_LEFT	(0x1011 & RC5_MASK)		/*!< Taste VOL - */
    +	#define	RC5_CODE_RIGHT	(0x1010 & RC5_MASK)		/*!< Taste VOL + */
    +
    +	#define	RC5_CODE_EXT_1	(0x0017 & RC5_MASK)		/*!< Taste Quadrat mit Punkt*/
    +	#define	RC5_CODE_VIEW	(0x1038 & RC5_MASK)		/*!< Taste TV/VCR & Taste A.B */ /* _EXT_2*/
    +
    +	#define	RC5_CODE_0		(0x1000 & RC5_MASK)		/*!< Taste 0    */
    +	#define	RC5_CODE_1		(0x1001 & RC5_MASK)		/*!< Taste 1    */
    +	#define	RC5_CODE_2		(0x1002 & RC5_MASK)		/*!< Taste 2    */
    +	#define	RC5_CODE_3		(0x1003 & RC5_MASK)		/*!< Taste 3    */
    +	#define	RC5_CODE_4		(0x1004 & RC5_MASK)		/*!< Taste 4    */
    +	#define	RC5_CODE_5		(0x1005 & RC5_MASK)		/*!< Taste 5    */
    +	#define	RC5_CODE_6		(0x1006 & RC5_MASK)		/*!< Taste 6    */
    +	#define	RC5_CODE_7		(0x1007 & RC5_MASK)		/*!< Taste 7    */
    +	#define	RC5_CODE_8		(0x1008 & RC5_MASK)		/*!< Taste 8    */
    +	#define	RC5_CODE_9		(0x1009 & RC5_MASK)		/*!< Taste 9    */
    +
    +	#define RC5_CODE_SELECT	(0x1022 & RC5_MASK)  	/*!< Taste Return & Taste EXIT */ /* _EXT_3 */
    +	// #define RC5_CODE_EXT_4	(0x1038 & RC5_MASK)  	/*!< Taste A.B & Taste TV/VCR */
    +
    +	#define RC5_CODE_WAIT	(0x002F & RC5_MASK)		/*!< Taste Pause */
    +	#define RC5_CODE_GREEN	(0x002C & RC5_MASK)		/*!< Taste Gruen & Stop */
    +	#define RC5_CODE_RECORD	(0x102E & RC5_MASK)		/*!< Taste Aufnahme */
    +	#define RC5_CODE_EXT_5	(0x103F & RC5_MASK)		/*!< Taste Quadrat */
    +
    +	#define RC5_CODE_RED	(0x002B & RC5_MASK)		/*!< Taste Rot  & << */
    +	#define RC5_CODE_YELLOW	(0x002D & RC5_MASK)		/*!< Taste Gelb & >  */
    +	#define RC5_CODE_BLUE	(0x002E & RC5_MASK)		/*!< Taste Blau & >> */
    +	#define RC5_CODE_EXT_6	(0x103C & RC5_MASK)		/*!< Taste Quadrat mit 3 gleichlangen Linien */
    +
    +	#define	RC5_CODE_UWD	(0x0010 & RC5_MASK)		/*!< Taste hoch   (gruen) */
    +	#define	RC5_CODE_BWD	(0x0015 & RC5_MASK)		/*!< Taste links  (gruen) */
    +	#define	RC5_CODE_FWD	(0x0016 & RC5_MASK)		/*!< Taste rechts (gruen) */
    +	#define	RC5_CODE_DWD	(0x0011 & RC5_MASK)		/*!< Taste runter (gruen) */
    +
    +	#define RC5_CODE_EXT_7	(0x1029 & RC5_MASK)		/*!< Taste Quadrat mit innerem Rechteck und Pfeilen */
    +	#define RC5_CODE_EXT_8	(0x102E & RC5_MASK)		/*!< Taste Quadrat mit 3 ungleichlangen Linien */
    +
    +	#define RC5_CODE_OK		(0x1023 & RC5_MASK)		/*!< Taste OK   */
    +	#define RC5_CODE_MENU	(0x0012 & RC5_MASK)		/*!< Taste MENU */
    +	// #define RC5_CODE_BACK	(0x1022 & RC5_MASK)		/*!< Taste EXIT & Taste Return */
    +
    +#endif /* RC_HAVE_VIVANCO_UR89_TV_CODE_089 */
    +
    +
    +/*!
      * Fernbedienung mit Jog-Dial-Rad,
      * Achtung: Die Adress-Bits muessen auf die Fernbedienung angepasst werden!
      * Siehe hierzu rc5.c @see RC5_ADDRESS
    @@ -259,7 +320,7 @@
     	#define RC5_CODE_8	(0x3948 & RC5_MASK)		/*!< Taste 8 */
     	#define RC5_CODE_9	(0x3949 & RC5_MASK)		/*!< Taste 9 */

    -	#define RC5_CODE_UP	(0x2950 & RC5_MASK)	/*!< Taste Hoch */
    +	#define RC5_CODE_UP	(0x2950 & RC5_MASK)		/*!< Taste Hoch */
     	#define RC5_CODE_DOWN	(0x2951 & RC5_MASK)	/*!< Taste Runter */
     	#define RC5_CODE_LEFT	(0x2955 & RC5_MASK)	/*!< Taste Links */
     	#define RC5_CODE_RIGHT	(0x2956 & RC5_MASK)	/*!< Taste Rechts */
    @@ -267,8 +328,8 @@
     	#define RC5_CODE_PWR	(0x394C & RC5_MASK)	/*!< Taste An/Aus */

     	#define RC5_CODE_RED		(0x100B & RC5_MASK)	/*!< Rote Taste */
    -	#define RC5_CODE_GREEN		(0x102E & RC5_MASK)	/*!< GrÃ¼ne Taste */
    -	#define RC5_CODE_YELLOW	(0x1038 & RC5_MASK)	/*!< Gelbe Taste */
    +	#define RC5_CODE_GREEN		(0x102E & RC5_MASK)	/*!< Gruene Taste */
    +	#define RC5_CODE_YELLOW		(0x1038 & RC5_MASK)	/*!< Gelbe Taste */
     	#define RC5_CODE_BLUE		(0x1029 & RC5_MASK)	/*!< Blaue Taste */
     	#define RC5_CODE_VIEW		(0x000F & RC5_MASK)	/*!< Instant View Taste */

- Antworten:
  - Re: [ct-bot] patch RC5 Codes Vivanco UR89 alle Tasten TV Code 089
    - From: Benjamin Benz

- Referenzen:
  - [ct-bot] patch RC5 Codes Vivanco UR89 alle Tasten TV Code 089
    - From: Ulrich Scheffler
  - Re: [ct-bot] patch RC5 Codes Vivanco UR89 alle Tasten TV Code 089
    - From: Benjamin Benz
  - Re: [ct-bot] patch RC5 Codes Vivanco UR89 alle Tasten TV Code 089
    - From: Ulrich Scheffler
  - Re: [ct-bot] patch RC5 Codes Vivanco UR89 alle Tasten TV Code 089
    - From: Benjamin Benz

- Voriger (Datum): Re: [ct-bot] patch RC5 Codes Vivanco UR89 alle Tasten TV Code 089, Benjamin Benz
- Nächster (Datum): Re: [ct-bot] patch RC5 Codes Vivanco UR89 alle Tasten TV Code 089, Benjamin Benz
- Voriger (Thread): Re: [ct-bot] patch RC5 Codes Vivanco UR89 alle Tasten TV Code 089, Benjamin Benz
- Nächster (Thread): Re: [ct-bot] patch RC5 Codes Vivanco UR89 alle Tasten TV Code 089, Benjamin Benz
- Indizes:
  - Datum
  - Thread