Author Topic: Russound Driver Updates  (Read 15430 times)

dfleig

  • Jr. Member
  • **
  • Posts: 44
    • View Profile
Russound Driver Updates
« on: April 21, 2010, 05:16:55 pm »
Hello all,

Attached is version 0.4 of the Russound driver.  This version includes:

- XM/Sirius Tuner code tweaks.

Upcoming features/fixes:

- Better XM/Sirius Tuner channel name support:  I'm not reliably getting channel name info from the tuner so I'll like load it from a config file.
- Presets:  The capability to save the current state of one or more zones for later recall.  This would be useful if you want to have an 'Alarm' preset that would set all the zones to a specific source and volume.
- Multiple controller support: Still looking for volunteers with multiple controllers on their system to help. 

Enjoy and please post any feedback or questions.

David

Frunple

  • Hero Member
  • *****
  • Posts: 774
    • View Profile
Re: Russound Driver Updates
« Reply #1 on: April 22, 2010, 04:37:46 am »
Awesome! Glad to have this back.... will report any issues after basking in my tuner glory for a while.  ;D

Frunple

  • Hero Member
  • *****
  • Posts: 774
    • View Profile
Re: Russound Driver Updates
« Reply #2 on: April 22, 2010, 07:41:07 pm »
So far so good!
The only problem I see , other than my missing TS  :-[ , is the second tuner channel name not displaying,
See Here

dfleig

  • Jr. Member
  • **
  • Posts: 44
    • View Profile
Re: Russound Driver Updates
« Reply #3 on: June 29, 2010, 05:04:34 pm »
Attached is version 0.5 of the Russound driver updated to work with the 0.24.x version of the Elve software.  This version also adds the ability to control the power status of the ST2 tuner. 

A caveat to the tuner power status is that there doesn't appear to be any mechanism to poll the power status directly so I have to infer it based on the last command sent.  This means that the driver will always start-up assuming all the tuners are off until you send an power on command. I'm happy to work with an ST2 owner (I don't own one) to figure out a solution if power status monitoring is an issue.

Thanks,
David

John Hughes

  • Administrator
  • Hero Member
  • *****
  • Posts: 2852
    • View Profile
    • Codecore Technologies
Re: Russound Driver Updates
« Reply #4 on: June 29, 2010, 07:30:27 pm »
David, how do users differentiate this driver once installed from the one included in the intallation?
John Hughes
Codecore Technologies

dfleig

  • Jr. Member
  • **
  • Posts: 44
    • View Profile
Re: Russound Driver Updates
« Reply #5 on: July 06, 2010, 06:17:51 pm »
Ah, good point.  To install the driver just unzip it and place it in the Elve server directory.  After restarting the server you'll see a new "Russound Controller 2" device which is the updated driver.  The device labeled "Russound Controller" is the older driver that's packaged with the current build of the Elve server. 

The only two issues I know about at this point are:

1) XM metadata info for the second tuner on an ST2
2) Only supports one controller at this point

As usual, if you have any questions or comments please send them to me. 

David

bpwwer

  • Full Member
  • ***
  • Posts: 220
    • View Profile
Re: Russound Driver Updates
« Reply #6 on: July 16, 2010, 06:58:24 pm »
David,

Thanks for creating this driver! 

Do you want questions, feature requests, bug reports, etc. here or in a separate thread? 

I just tried the driver (version 0.5 posted in this thread) with my Russound CAV 6.6 and have encountered a couple of problems.

1) The device property "Zone source names" is showing a value of "Error: IndexOutOfRangeException" This is with auto populate =1 or =0

2) I pretty consistently get a "An unhandled exception "launch for user") occurred in DriverService.exe" for almost (all?) messages that the CAV sends.

3) In the log, I see a lot of "The Driver 'Russound Controller 2' received an unknown event message: F137" The actual value at the end does vary (F137, E00) The raw data received is "Driver 'Russound Controller 2' received: (0)F0 (1)7E (2)7D (3)03 (4)00 (5)00 (6)7F (7)05 (8)02 (9)01 (10)00 (11)02 (12)01 (13)00 (14)F1 (15)37 (16)00 (17)00 (18)00 (19)28 (20)00 (21)00 (22)5E (23)F7"

4) There doesn't seem to be any way to send button/IR events.  Did I miss something or is this not implemented yet?

If there's anything I can do to help with the driver, let me know. I'm willing to test or even debug since I am a bit familiar with the Elve driver framework.

Bob

dfleig

  • Jr. Member
  • **
  • Posts: 44
    • View Profile
Re: Russound Driver Updates
« Reply #7 on: July 17, 2010, 06:29:50 am »
Bob,

I'm definitely interested in questions, feature requests, bug reports, etc. and you can using this thread works for me.

1 + 2) Not good.  I'll get into the code tonight to see if I broke something.  What version of Elve are you running?
3) I get those on my CAM6.6 as well but I haven't yet figured out what the message means.  I can't find any documentation on it so if you can correlate the message to an something happening on the system I'll dedicate the next version of the driver to you.   :)
4) I haven't implemented the IR events but can if you want them.  I didn't know if anyone used them so I left them out...now I know.  When you say "button" do you mean the keypad buttons or the IR Remote buttons?

I'll take you up on your offer to help because I suspect I'll need some debug messages from you.  Give me a day or so and I'll come back with more details.

Thanks for the help,
David

bpwwer

  • Full Member
  • ***
  • Posts: 220
    • View Profile
Re: Russound Driver Updates
« Reply #8 on: July 17, 2010, 08:39:57 am »
Hi David,

Thanks for the quick response. I'm using the latest version of Elve, I just updated yesterday.


3) I get those on my CAM6.6 as well but I haven't yet figured out what the message means.  I can't find any documentation on it so if you can correlate the message to an something happening on the system I'll dedicate the next version of the driver to you.   :)
Ok, the F1 is the invert character. It means that the next byte must be inverted. So instead of 0x37 the event ID is really 0xC8 and event data is 0x28. But what that really means, I have no idea. The Russound documentation isn't very clear on what all the possible event ID's are.  I'll do some more digging to see if I can figure out what it is.

Quote
4) I haven't implemented the IR events but can if you want them.  I didn't know if anyone used them so I left them out...now I know.  When you say "button" do you mean the keypad buttons or the IR Remote buttons?
Yes, both.  Having the keypad buttons commands allows you to simulate a keypad with a touch screen.  Having the IR buttons allows you to control a connected source through the CAV via a touchscreen (or script).

Bob

dfleig

  • Jr. Member
  • **
  • Posts: 44
    • View Profile
Re: Russound Driver Updates
« Reply #9 on: July 18, 2010, 06:59:45 pm »
Bob,

OK, here's a quick update:

1) Yep, it's broke.  I know what's wrong and how to fix it so give me a few days and I'll have another version for you.
2) I'll need to ask for John's help on this one since I've never seen it before nor can I replicate it.
3) While you're digging try to find an event id of 0x27.  It also appears occasionally and, like 0xF1/0x37, there's nothing in the docs about it.
4) I'll get started this weekend on the implementation.  I'm not using the feature so I'll need to you play tester for me.

Thanks again for the help,
David

John Hughes

  • Administrator
  • Hero Member
  • *****
  • Posts: 2852
    • View Profile
    • Codecore Technologies
Re: Russound Driver Updates
« Reply #10 on: July 18, 2010, 07:57:26 pm »
2) I pretty consistently get a "An unhandled exception "launch for user") occurred in DriverService.exe" for almost (all?) messages that the CAV sends.

Are you using a USB-RS232 serial converter or any other kind of adapter?  Microsoft.Net has some known permissions issues with certain serial adapters.
John Hughes
Codecore Technologies

bpwwer

  • Full Member
  • ***
  • Posts: 220
    • View Profile
Re: Russound Driver Updates
« Reply #11 on: July 18, 2010, 09:02:01 pm »
2) I pretty consistently get a "An unhandled exception "launch for user") occurred in DriverService.exe" for almost (all?) messages that the CAV sends.

Are you using a USB-RS232 serial converter or any other kind of adapter?  Microsoft.Net has some known permissions issues with certain serial adapters.

I'm using a lantronix device that routes serial over IP and implements a virtual serial port.  I've been using this with the Russound and various clients for a couple of years now without any issues. I also played around with the template Russound driver you posted a while back and I get the same messages with that so I suspect it's not something in David's code.    This is running on a WinXP system.

John Hughes

  • Administrator
  • Hero Member
  • *****
  • Posts: 2852
    • View Profile
    • Codecore Technologies
Re: Russound Driver Updates
« Reply #12 on: July 18, 2010, 09:32:36 pm »
Since we have never seen this error with true serial ports I suspect it must have something to so with the virtual serial port and .Net. All the Elve drivers which use a serial port (except 1 that I can think of) use the same SerialCommunication class which uses the Microsoft.Net System.IO.Ports.SerialPort class.

Are you able to see any stack trace or any other information about the error?

Thanks
John Hughes
Codecore Technologies

bpwwer

  • Full Member
  • ***
  • Posts: 220
    • View Profile
Re: Russound Driver Updates
« Reply #13 on: July 19, 2010, 09:23:47 am »

Are you able to see any stack trace or any other information about the error?

Thanks

There isn't much more info in the error box that pops up. I don't think it has an option to go into a debugger. 

Also, I left it running over night and this morning, the driver service hung when trying to stop it. I'll need to reboot the machine tonight.  I'll try to get some more information and see if I can narrow down what's going on at the time of the message.

Bob

bpwwer

  • Full Member
  • ***
  • Posts: 220
    • View Profile
Re: Russound Driver Updates
« Reply #14 on: July 20, 2010, 07:54:51 pm »
Hi David,

I found some information about event id 0xf1/0x37  Looks like it is from a controller targeted at all controllers and is a "update source selection" event.  I don't know if the target/source paths actually mean anything. But in any case, it looks like it could be just ignored.  I haven't noticed the other message but I'll keep looking.

Bob