Author Topic: Dusky Sky Controller  (Read 38819 times)

coley

  • Guru
  • ****
  • Posts: 492
    • View Profile
Dusky Sky Controller
« on: March 31, 2011, 04:58:53 pm »
A quick search of the forums returns quite a few hits on the dusky sky controller.
There seems to be numerous starts at getting it integrated - but I don't see any templates/devices having been completed.

What is done/not done?
What is the best approach for integration?

I'd like to get this PnP and am willing to do the legwork to achieve this.

-Coley.

tschak909

  • LinuxMCE God
  • ****
  • Posts: 5549
  • DOES work for LinuxMCE.
    • View Profile
Re: Dusky Sky Controller
« Reply #1 on: March 31, 2011, 05:27:22 pm »
I do not know of any device templates submitted.

This would have to be done.

But also, any packages required to make it work, would also need to be folded into the build.

Also, can the dusky stuff be detected, a la USB etc?

-Thom

coley

  • Guru
  • ****
  • Posts: 492
    • View Profile
Re: Dusky Sky Controller
« Reply #2 on: March 31, 2011, 05:36:09 pm »
Yep, the little unit can be detected when its plugged in, at least the USB ver is, I don't have the serial one to check.
Code: [Select]
root@moon264:~# lsusb -v -d6666:f100

Bus 004 Device 004: ID 6666:f100 Prototype product Vendor ID
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0         8
  idVendor           0x6666 Prototype product Vendor ID
  idProduct          0xf100
  bcdDevice            9.04
  iManufacturer           1 Dusky Control
  iProduct                2 Sky/Sky+ Digibox Controller
  iSerial                 0
  bNumConfigurations      2
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           41
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          3 Config. 1: HID
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      0 No Subclass
      bInterfaceProtocol      0 None
      iInterface              0
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.00
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      81
         Report Descriptors:
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval              10
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x01  EP 1 OUT
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval              10
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           32
    bNumInterfaces          1
    bConfigurationValue     2
    iConfiguration          4 Config. 2: non-HID
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      0
      bInterfaceProtocol      0
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval              10
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x01  EP 1 OUT
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval              10
Device Status:     0x0001
  Self Powered
-Coley.
« Last Edit: March 31, 2011, 05:46:43 pm by coley »

tschak909

  • LinuxMCE God
  • ****
  • Posts: 5549
  • DOES work for LinuxMCE.
    • View Profile
Re: Dusky Sky Controller
« Reply #3 on: March 31, 2011, 05:51:56 pm »
Okay, then that goes into the pnp section of the device template. Now you need to make a device template, either C++ or GSD that can control the device.

I am a C++ person myself, but... ;)

-Thom

coley

  • Guru
  • ****
  • Posts: 492
    • View Profile
Re: Dusky Sky Controller
« Reply #4 on: March 31, 2011, 06:19:09 pm »
Thom,
Is C++ overkill for this? I'll try either but the device is just one-way comms. Injects remote commands in the rf port of the box.

I tried a GSD device template and the orbiter pops up that its detected.
Now what commands go into the device? as its not so much an end point or device to be controlled but for another device e.g. the sky box, to be "controlled via" this.

thanks
-Coley.

 - spotted edit Ruby codes, I guess I should be looking in there :)
« Last Edit: March 31, 2011, 06:43:53 pm by coley »

tschak909

  • LinuxMCE God
  • ****
  • Posts: 5549
  • DOES work for LinuxMCE.
    • View Profile
Re: Dusky Sky Controller
« Reply #5 on: March 31, 2011, 06:56:29 pm »
this is a "cable box" ... keep in mind, that LinuxMCE needs to have commands for things you need to be able to do.. look at the other cable box templates for ideas.

-Thom

coley

  • Guru
  • ****
  • Posts: 492
    • View Profile
Re: Dusky Sky Controller
« Reply #6 on: April 01, 2011, 03:35:41 pm »
The unit I have just controls one box, but they are available to control multiple sky boxes, would each sky-box then be a child of this device?
Is it not more along the lines of something like a USB-UIRT?

thanks
-Coley.

tschak909

  • LinuxMCE God
  • ****
  • Posts: 5549
  • DOES work for LinuxMCE.
    • View Profile
Re: Dusky Sky Controller
« Reply #7 on: April 01, 2011, 04:23:21 pm »
then each device would be a child of the interface device, and would be dealt with in RecievedCommandForChild.

If you use a UIRT, you could..but you would lose bi-directional control. maybe this is important, maybe it isn't.

But also keep in mind that a UIRT can only deal with one IR zone at a time, so two Sky boxes, unless they can respond to two different sets of IR codes, would not work in this situation.

-Thom

coley

  • Guru
  • ****
  • Posts: 492
    • View Profile
Re: Dusky Sky Controller
« Reply #8 on: April 01, 2011, 04:30:35 pm »
Sorry Thom, maybe I wan't clear enough, I don't have a UIRT, but was thinking of it conceptually as a similar interface.
Md/core  -> Dusky - OP1 -> skybox1
                            - OP2 -> skybox2
                                       .
                                       .
                            - OP(n) -> skybox(n)

-Coley.

tschak909

  • LinuxMCE God
  • ****
  • Posts: 5549
  • DOES work for LinuxMCE.
    • View Profile
Re: Dusky Sky Controller
« Reply #9 on: April 01, 2011, 04:39:52 pm »
Yes. It's set up the same way in the device tree. As I said, you deal with DCE::ReceivedCommandForChild, basically dealing with the commands that come across it like a giant switch statement....

So you have two device templates:

(1) an interface device template
(2) a child device template with all the commands of the box.

And the switch() inside ReceivedCommandForDevices() deals with passing on commands from (1) to (2)

-Thom

coley

  • Guru
  • ****
  • Posts: 492
    • View Profile
Re: Dusky Sky Controller
« Reply #10 on: April 01, 2011, 05:32:18 pm »
Ok, so I'm guessing (1) the interface device template needs to be a DCE device - C++, and then I can reuse the sky plus template that already exists for (2) and add my new interface as a parent, i.e. it can be controlled by either IR interface or this.

thx
-Coley.

tschak909

  • LinuxMCE God
  • ****
  • Posts: 5549
  • DOES work for LinuxMCE.
    • View Profile
Re: Dusky Sky Controller
« Reply #11 on: April 01, 2011, 05:50:58 pm »
unfortunately, since the child device already probably has IR commands in it.. i'm not sure.. you could try...

-Thom

gtsupport

  • Veteran
  • ***
  • Posts: 147
    • View Profile
Re: Dusky Sky Controller
« Reply #12 on: May 19, 2011, 03:43:47 pm »
@ Coley,

How did things go with the template for this device??  I've got one, but as I could never get it working its sitting in a box somewhere.  Is it time to dust the thing off and give it another try?  I don't have the expertise to develop this myself, but am sending you much good will and encouragement on behalf of anybody who has tried to get these working in the past  :)

Matt
LinuxMCE - If it was easy, everybody would be doing it!!

coley

  • Guru
  • ****
  • Posts: 492
    • View Profile
Re: Dusky Sky Controller
« Reply #13 on: May 20, 2011, 11:39:39 am »
Unfortunately my free time is a bit curtailed with a new baby girl at the moment, hopefully I'll get back to this soon.

-Coley.

totallymaxed

  • LinuxMCE God
  • ****
  • Posts: 4660
  • Smart Home Consulting
    • View Profile
    • Dianemo - at home with technology
Re: Dusky Sky Controller
« Reply #14 on: May 21, 2011, 12:24:13 am »
Unfortunately my free time is a bit curtailed with a new baby girl at the moment, hopefully I'll get back to this soon.

-Coley.

What are you even doing in here... Congratulations on becoming a dad :-)

All the best to you and your family

Andrew
Andy Herron,
CHT Ltd

For Dianemo/LinuxMCE consulting advice;
@herron on Twitter, totallymaxed+inquiries@gmail.com via email or PM me here.

Get Dianemo-Rpi2 ARM Licenses http://forum.linuxmce.org/index.php?topic=14026.0

Get RaspSqueeze-CEC or Raspbmc-CEC for Dianemo/LinuxMCE: http://wp.me/P4KgIc-5P

Facebook: https://www.facebook.com/pages/Dianemo-Home-Automation/226019387454465

http://www.dianemo.co.uk