Skip to contentSkip to conversation

Add a new usb id for Elgato EyeTV DTT

PATCH In review Daniel 2 participants 6 messages Apr 14, 2012 – Apr 16, 2012 Media (V4L/DVB)

lore
Share & tools
lore

Daniel

author
#0 lore raw

Hi,

I've got an Elgato EyeTV for Mac and PC (http://www.linuxtv.org/wiki/index.php/Elgato_EyeTV_DTT). It is given as compatible since Linux 2.6.31, but the usb id can be not only 0fd9:0021, but 0fd9:003f too. This id is currently not recognized...

Some pages explain how to change the id (see http://ubuntuforums.org/archive/index.php/t-1510188.html, http://ubuntuforums.org/archive/index.php/t-1756828.html and https://sites.google.com/site/slackwarestuff/home/elgato-eyetv).

Why this id is not included by default? When will it be included in the code?

Sincerely,

Signature · 1 line
Daniel
#1 lore raw

Il 14/04/2012 08:55, Daniel ha scritto:

Quoted 12 lines

Hi,

I've got an Elgato EyeTV for Mac and PC
(http://www.linuxtv.org/wiki/index.php/Elgato_EyeTV_DTT). It is given as compatible since Linux 2.6.31, but the usb id can be not only 0fd9:0021, but 0fd9:003f too. This id is currently not recognized...

Some pages explain how to change the id (see
http://ubuntuforums.org/archive/index.php/t-1510188.html,
http://ubuntuforums.org/archive/index.php/t-1756828.html and
https://sites.google.com/site/slackwarestuff/home/elgato-eyetv).

Quoted 5 lines

Why this id is not included by default? When will it be included in the code?

Sincerely,

Hi Daniel,
new USB PIDs are added when someone reports on this list that they are working.
That's exactly what you did, so now it's possible to add it. If you know how to do it, you can create a patch to add the new ID. Of course you have to define a new PID, as you cannot overwrite an existing PID like they suggest on the Ubuntu forums.
If you don't know hot to do a patch, I can do it for you, as long as you are willing to test it.

It would be nice to know the exact name of the new product. I see people reporting it as a new revision of the Elgato EyeTV DTT and others as the Elgato EyeTV Deluxe. Which one do you have exactly?

Regards,
Gianluca

author
#2 lore raw
Quoted 28 lines · Gianluca Gennari

Il 14/04/2012 08:55, Daniel ha scritto:

Quoted 12 lines

Hi,

I've got an Elgato EyeTV for Mac and PC
(http://www.linuxtv.org/wiki/index.php/Elgato_EyeTV_DTT). It is given as compatible since Linux 2.6.31, but the usb id can be not only 0fd9:0021, but 0fd9:003f too. This id is currently not recognized...

Some pages explain how to change the id (see
http://ubuntuforums.org/archive/index.php/t-1510188.html,
http://ubuntuforums.org/archive/index.php/t-1756828.html and
https://sites.google.com/site/slackwarestuff/home/elgato-eyetv).

Quoted 5 lines

Why this id is not included by default? When will it be included in the code?

Sincerely,

Hi Daniel,
new USB PIDs are added when someone reports on this list that they are working.
That's exactly what you did, so now it's possible to add it. If you know how to do it, you can create a patch to add the new ID. Of course you have to define a new PID, as you cannot overwrite an existing PID like they suggest on the Ubuntu forums.
If you don't know hot to do a patch, I can do it for you, as long as you are willing to test it.

Quoted 6 lines

It would be nice to know the exact name of the new product. I see people reporting it as a new revision of the Elgato EyeTV DTT and others as the Elgato EyeTV Deluxe. Which one do you have exactly?

Regards,
Gianluca

Hi,

The exact name of the product is Elgato EyeTV DTT seen on LinuxTv.org (http://www.linuxtv.org/wiki/index.php/Elgato_EyeTV_DTT) and Elgato site (http://www.elgato.com/elgato/int/mainmenu/products/tuner/DTT08/product1.en.html).

With dmesg, it's:
usb 1-1: new high-speed USB device number 11 using ehci_hcd usb 1-1: New USB device found, idVendor=0fd9, idProduct=003f usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 usb 1-1: Product: EyeTV DTT
usb 1-1: Manufacturer: Elgato
usb 1-1: SerialNumber: 005

With lsusb, it's:
Bus 001 Device 011: ID 0fd9:003f Elgato Systems GmbH Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00

  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0        64
  idVendor           0x0fd9 Elgato Systems GmbH
  idProduct          0x003f
  bcdDevice            1.00
  iManufacturer           1 Elgato
  iProduct                2 EyeTV DTT
  iSerial                 3 005
  bNumConfigurations      1

Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 46
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xa0
(Bus Powered)
Remote Wakeup
MaxPower 500mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 4
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x01 EP 1 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 1
Device Qualifier (for other device speed):
bLength 10
bDescriptorType 6
bcdUSB 2.00

  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0

bMaxPacketSize0 64
bNumConfigurations 1
Device Status: 0x0000
(Bus Powered)

I use Debian Sid and Linux kernel 3.2 and 3.3 (64 bits).

Could you send me your package so I can check it?

Sincerely,

Daniel

#3 lore raw

PATCH 1/1 dib0700: add new USB PID for the Elgato EyeTV DTT stick

In reply to Daniel

Reported working here:
http://ubuntuforums.org/archive/index.php/t-1510188.html
http://ubuntuforums.org/archive/index.php/t-1756828.html
https://sites.google.com/site/slackwarestuff/home/elgato-eyetv

---
 drivers/media/dvb/dvb-usb/dib0700_devices.c |    7 ++++++-
 drivers/media/dvb/dvb-usb/dvb-usb-ids.h     |    1 +
 2 files changed, 7 insertions(+), 1 deletions(-)
drivers/media/dvb/dvb-usb/dib0700_devices.c +6 -1
index f9e966a..510001d 100644
@@ -3569,6 +3569,7 @@ struct usb_device_id dib0700_usb_id_table[] = {
 	{ USB_DEVICE(USB_VID_DIBCOM,    USB_PID_DIBCOM_TFE7090E) },
 	{ USB_DEVICE(USB_VID_DIBCOM,    USB_PID_DIBCOM_TFE7790E) },
 /* 80 */{ USB_DEVICE(USB_VID_DIBCOM,    USB_PID_DIBCOM_TFE8096P) },
+	{ USB_DEVICE(USB_VID_ELGATO,	USB_PID_ELGATO_EYETV_DTT_2) },
 	{ 0 }		/* Terminating entry */
 };
 MODULE_DEVICE_TABLE(usb, dib0700_usb_id_table);
@@ -3832,7 +3833,7 @@ struct dvb_usb_device_properties dib0700_devices[] = {
 			},
 		},
 
-		.num_device_descs = 11,
+		.num_device_descs = 12,
 		.devices = {
 			{   "DiBcom STK7070P reference design",
 				{ &dib0700_usb_id_table[15], NULL },
@@ -3878,6 +3879,10 @@ struct dvb_usb_device_properties dib0700_devices[] = {
 				{ &dib0700_usb_id_table[50], NULL },
 				{ NULL },
 			},
+			{   "Elgato EyeTV DTT rev. 2",
+				{ &dib0700_usb_id_table[81], NULL },
+				{ NULL },
+			},
 		},
 
 		.rc.core = {
drivers/media/dvb/dvb-usb/dvb-usb-ids.h +1 -0
index 94d3f8a..2418e41 100644
@@ -335,6 +335,7 @@
 #define USB_PID_MYGICA_D689				0xd811
 #define USB_PID_ELGATO_EYETV_DIVERSITY			0x0011
 #define USB_PID_ELGATO_EYETV_DTT			0x0021
+#define USB_PID_ELGATO_EYETV_DTT_2			0x003f
 #define USB_PID_ELGATO_EYETV_DTT_Dlx			0x0020
 #define USB_PID_ELGATO_EYETV_SAT			0x002a
 #define USB_PID_DVB_T_USB_STICK_HIGH_SPEED_COLD		0x5000
Signature · 1 line
1.7.5.4
author
#4 lore raw

Re: [PATCH] dib0700: add new USB PID for the Elgato EyeTV DTT stick

Hi,

This patch works fine, but the IR sensor doesn't seem to be enabled. It's not a problem, because the stick isn't sold with a remote control.

Sincerely,

Daniel

Quoted 55 lines · Gianluca Gennari

Reported working here:
http://ubuntuforums.org/archive/index.php/t-1510188.html
http://ubuntuforums.org/archive/index.php/t-1756828.html
https://sites.google.com/site/slackwarestuff/home/elgato-eyetv

---
  drivers/media/dvb/dvb-usb/dib0700_devices.c |    7 ++++++-
  drivers/media/dvb/dvb-usb/dvb-usb-ids.h     |    1 +
  2 files changed, 7 insertions(+), 1 deletions(-)
drivers/media/dvb/dvb-usb/dib0700_devices.c +6 -1
index f9e966a..510001d 100644
@@ -3569,6 +3569,7 @@ struct usb_device_id dib0700_usb_id_table[] = {
  	{ USB_DEVICE(USB_VID_DIBCOM,    USB_PID_DIBCOM_TFE7090E) },
  	{ USB_DEVICE(USB_VID_DIBCOM,    USB_PID_DIBCOM_TFE7790E) },
  /* 80 */{ USB_DEVICE(USB_VID_DIBCOM,    USB_PID_DIBCOM_TFE8096P) },
+	{ USB_DEVICE(USB_VID_ELGATO,	USB_PID_ELGATO_EYETV_DTT_2) },
  	{ 0 }		/* Terminating entry */
  };
  MODULE_DEVICE_TABLE(usb, dib0700_usb_id_table);
@@ -3832,7 +3833,7 @@ struct dvb_usb_device_properties dib0700_devices[] = {
  			},
  		},
 
-		.num_device_descs = 11,
+		.num_device_descs = 12,
  		.devices = {
  			{   "DiBcom STK7070P reference design",
  				{&dib0700_usb_id_table[15], NULL },
@@ -3878,6 +3879,10 @@ struct dvb_usb_device_properties dib0700_devices[] = {
  				{&dib0700_usb_id_table[50], NULL },
  				{ NULL },
  			},
+			{   "Elgato EyeTV DTT rev. 2",
+				{&dib0700_usb_id_table[81], NULL },
+				{ NULL },
+			},
  		},
 
  		.rc.core = {
drivers/media/dvb/dvb-usb/dvb-usb-ids.h +1 -0
index 94d3f8a..2418e41 100644
@@ -335,6 +335,7 @@
  #define USB_PID_MYGICA_D689				0xd811
  #define USB_PID_ELGATO_EYETV_DIVERSITY			0x0011
  #define USB_PID_ELGATO_EYETV_DTT			0x0021
+#define USB_PID_ELGATO_EYETV_DTT_2			0x003f
  #define USB_PID_ELGATO_EYETV_DTT_Dlx			0x0020
  #define USB_PID_ELGATO_EYETV_SAT			0x002a
  #define USB_PID_DVB_T_USB_STICK_HIGH_SPEED_COLD		0x5000
#5 lore raw

Re: [PATCH] dib0700: add new USB PID for the Elgato EyeTV DTT stick

Il 16/04/2012 08:51, Daniel ha scritto:

Quoted 9 lines

Hi,

This patch works fine, but the IR sensor doesn't seem to be enabled. It's not a problem, because the stick isn't sold with a remote control.

Sincerely,

Daniel

Hi Daniel,
thanks for testing the patch.
Regarding the remote, the driver apparently supports RC5, RC6 and NEC protocols, but defaults to RC5 for almost all devices (including the Elgato ones). Maybe you are trying to use a remote with a different protocol?
I think you can switch protocols using something like:
ir-keytable --protocol=nec --sysdev=rc0
but I've never used it.

Regards,
Gianluca

Quoted 62 lines · Gianluca Gennari
Quoted 59 lines

Reported working here:
http://ubuntuforums.org/archive/index.php/t-1510188.html
http://ubuntuforums.org/archive/index.php/t-1756828.html
https://sites.google.com/site/slackwarestuff/home/elgato-eyetv

---
  drivers/media/dvb/dvb-usb/dib0700_devices.c |    7 ++++++-
  drivers/media/dvb/dvb-usb/dvb-usb-ids.h     |    1 +
  2 files changed, 7 insertions(+), 1 deletions(-)
drivers/media/dvb/dvb-usb/dib0700_devices.c +2 -1
index f9e966a..510001d 100644
@@ -3569,6 +3569,7 @@ struct usb_device_id dib0700_usb_id_table[] = {
      { USB_DEVICE(USB_VID_DIBCOM,    USB_PID_DIBCOM_TFE7090E) },
      { USB_DEVICE(USB_VID_DIBCOM,    USB_PID_DIBCOM_TFE7790E) },
  /* 80 */{ USB_DEVICE(USB_VID_DIBCOM,    USB_PID_DIBCOM_TFE8096P) },
+    { USB_DEVICE(USB_VID_ELGATO,    USB_PID_ELGATO_EYETV_DTT_2) },
      { 0 }        /* Terminating entry */
  };
  MODULE_DEVICE_TABLE(usb, dib0700_usb_id_table);
@@ -3832,7 +3833,7 @@ struct dvb_usb_device_properties
 dib0700_devices[] = {
              },
          },
 
-        .num_device_descs = 11,
+        .num_device_descs = 12,
          .devices = {
              {   "DiBcom STK7070P reference design",
                  {&dib0700_usb_id_table[15], NULL },
drivers/media/dvb/dvb-usb/dib0700_devices.c +4 -0
@@ -3878,6 +3879,10 @@ struct dvb_usb_device_properties
 dib0700_devices[] = {
                  {&dib0700_usb_id_table[50], NULL },
                  { NULL },
              },
+            {   "Elgato EyeTV DTT rev. 2",
+                {&dib0700_usb_id_table[81], NULL },
+                { NULL },
+            },
          },
 
          .rc.core = {
drivers/media/dvb/dvb-usb/dvb-usb-ids.h +1 -0
index 94d3f8a..2418e41 100644
@@ -335,6 +335,7 @@
  #define USB_PID_MYGICA_D689                0xd811
  #define USB_PID_ELGATO_EYETV_DIVERSITY            0x0011
  #define USB_PID_ELGATO_EYETV_DTT            0x0021
+#define USB_PID_ELGATO_EYETV_DTT_2            0x003f
  #define USB_PID_ELGATO_EYETV_DTT_Dlx            0x0020
  #define USB_PID_ELGATO_EYETV_SAT            0x002a
  #define USB_PID_DVB_T_USB_STICK_HIGH_SPEED_COLD        0x5000