+ Antworten
Ergebnis 1 bis 2 von 2
  1. #1
    Registriert seit
    Aug 2009
    Ort
    Meißen
    Beiträge
    292

    Standard Einbindung Russound CAM6.6 in IPS?

    Hallo,

    hat jemand ein CAM6.6 von Russound in IPS eingebunden und kann dazu ein paar Infos geben? Vielleicht sogar Skripte?

    Ich Frage lieber bevor ich das Rad neu erfinde!

    Danke schon mal im vorraus!

    Gruß Tommy und ein schönes Osterfest!
    Irren ist menschlich. Aber wenn man richtig Mist bauen will, braucht man einen Computer. (Dan Rather, CBS-Fernsehreporter)

  2. #2
    Registriert seit
    Aug 2009
    Ort
    Meißen
    Beiträge
    292

    Standard Für alle die ein Russound haben! V1 vom 21.04.2014

    Hallo,

    für alle (ich bin ja offensichtlich der einzige der einen hat) die ein Russound Controller haben anbei mein erstes Testskript zum spielen! Geht ganz gut.

    Viel Spaß damit
    Tommy

    PHP-Code:
    <?
    // Russound CAM6.6 Steuerung Version 1.0
    // Thomas Unger 21.04.2014
    // unterstützte Geräte und Kommandos:
    // Controller "Audio" -> "Power" (Zone Ein/Aus)
    // Controller "Audio" -> "ZoneSource" (Quelle Zone setzen)
    // Controller "Audio" -> "Volume" (Lautstärke Zone setzen)
    // Controller "Audio" -> "Bass" (Tiefen Zone setzen)
    // Controller "Audio" -> "Treble" (Höhen Zone setzen)
    // Controller "Audio" -> "Balance" (Balance Zone setzen)
    // Controller "Audio" -> "VolumeOn" (Einschaltlautstärke Zone setzen)
    //
    // Controller "Tuner" -> "SeekUp" (Sender Suchen auf)
    // Controller "Tuner" -> "SeekDn" (Sender Suchen ab)
    // Controller "Tuner" -> "TuneUp" (Frequenz auf)
    // Controller "Tuner" -> "TuneDn" (Frequenz ab)
    // Controller "Tuner" -> "Save1" (Sender Speichern Speicher 1)
    // Controller "Tuner" -> "Save2" (Sender Speichern Speicher 2)
    // Controller "Tuner" -> "Save3" (Sender Speichern Speicher 3)
    // Controller "Tuner" -> "Save4" (Sender Speichern Speicher 4)
    // Controller "Tuner" -> "Save5" (Sender Speichern Speicher 5)
    // Controller "Tuner" -> "Save6" (Sender Speichern Speicher 6)
    // Controller "Tuner" -> "PresetUp" (Sender Speicher auf)
    // Controller "Tuner" -> "PresetDn" (Sender Speicher ab)
    // Controller "Tuner" -> "SetAM" (AM setzen)
    // Controller "Tuner" -> "SetFM" (FM setzen)
    // Controller "Tuner" -> "SetMono" (Mono setzen)
    // Controller "Tuner" -> "SetStereo" (Stereo setzen)

    $ComID 42546 /*[Russound Seriell]*/;

    // Definitionen Geräte und Kommandos holen
    $Geraet Getvalue(22708 /*[Audio\RUSSOUND CAM6.6\Geraet]*/);
    $commandaudio Getvalue(15089 /*[Audio\RUSSOUND CAM6.6\CommandAudio]*/);
    $commandtunner Getvalue(56825 /*[Audio\RUSSOUND CAM6.6\CommandTuner]*/);

    // Daten Controller definieren und holen siehe Variablen
    $Start "\xF0"//Startbyte
    $TargetID chr((Getvalue(42513 /*[Audio\RUSSOUND CAM6.6\Controller_ID]*/)-1)&0x0F); //Controller ID -1  1-1=0 entspricht Controller mit ID 1
    $OnOff chr(Getvalue(51490 /*[Audio\RUSSOUND CAM6.6\Power_On_Off]*/)&0x0F);  // Ein= \x01 Aus= \x00
    $Zone chr((Getvalue(57946/*[Audio\RUSSOUND CAM6.6\Zone]*/)-1)&0x0F); // Zone -1
    $Source chr((Getvalue(45990 /*[Audio\RUSSOUND CAM6.6\Source]*/)-1)&0x0F); // Source -1
    if (Getvalue(12813 /*[Audio\RUSSOUND CAM6.6\Volume]*/)<51)
    {
    $Vol chr(Getvalue(12813 /*[Audio\RUSSOUND CAM6.6\Volume]*/));   // Lautstärke Level 0x00 bis 0x32
    }
    else
    {
    $Vol "\x32";
    }
    if (
    Getvalue(26567 /*[Audio\RUSSOUND CAM6.6\Bass]*/)<21)
    {
    $Bass chr(Getvalue(26567 /*[Audio\RUSSOUND CAM6.6\Bass]*/));   // Bass Level 0x00= -10 bis 0x14= +10
    }
    else
    {
    $Bass "\x14";
    }
    if (
    Getvalue(57180 /*[Audio\RUSSOUND CAM6.6\Treble]*/)<21)
    {
    $Treble chr(Getvalue(57180 /*[Audio\RUSSOUND CAM6.6\Treble]*/));   // Treble Level 0x00= -10 bis 0x14= +10
    }
    else
    {
    $Treble "\x14";
    }
    if (
    Getvalue(32986 /*[Audio\RUSSOUND CAM6.6\Balance]*/)<21)
    {
    $Bal chr(Getvalue(32986 /*[Audio\RUSSOUND CAM6.6\Balance]*/));   // Balance Level 0x00= links bis 0x14= rechts
    }
    else
    {
    $Bal "\x14";
    }
    if (
    Getvalue(34334 /*[Audio\RUSSOUND CAM6.6\Volume_On]*/)<51)
    {
    $VolOn chr(Getvalue(34334 /*[Audio\RUSSOUND CAM6.6\Volume_On]*/));   // Lautstärke Level beim einschalten 0x00 bis 0x32
    }
    else
    {
    $VolOn "\x32";
    }

    switch(
    $Geraet)
    {
    Case(
    "Audio"):

    switch(
    $commandaudio)
    {
    Case(
    "Power"):
    // Zone Power Ein/Aus
    $Daten "\x00\x7F\x00\x00\x70\x05\x02\x02\x00\x00\xF1\x23\x00";
    $Daten1 "\x00";
    $Daten2 "\x00\x01";
    $FC =$Start.$TargetID.$Daten.$OnOff.$Daten1.$Zone.$Daten2;
    break;
    Case(
    "ZoneSource"):
    // Zone Source
    $Start "\xF0"//Startbyte
    $Daten "\x00\x7F\x00";
    $Daten1 "\x70\x05\x02\x00\x00\x00\xF1\x3E\x00\x00\x00";
    $Daten2 "\x00\x01";
    $FC =$Start.$TargetID.$Daten.$Zone.$Daten1.$Source.$Daten2;
    break;
    Case(
    "Volume"):
    // Zone Set Volume
    $Daten "\x00\x7F\x00\x00\x70\x05\x02\x02\x00\x00\xF1\x21\x00";
    $Daten1 "\x00";
    $Daten2 "\x00\x01";
    $FC =$Start.$TargetID.$Daten.$Vol.$Daten1.$Zone.$Daten2;
    break;
    Case(
    "Bass"):
    // Zone Set Bass
    $Daten "\x00\x7F\x00\x00\x70\x00\x05\x02\x00";
    $Daten1 "\x00\x00\x00\x00\x00\x01\x00\x01\x00";
    $FC =$Start.$TargetID.$Daten.$Zone.$Daten1.$Bass;
    break;
    Case(
    "Treble"):
    // Zone Set Treble
    $Daten "\x00\x7F\x00\x00\x70\x00\x05\x02\x00";
    $Daten1 "\x00\x01\x00\x00\x00\x01\x00\x01\x00";
    $FC =$Start.$TargetID.$Daten.$Zone.$Daten1.$Treble;
    break;
    Case(
    "Balance"):
    // Zone Set Balance
    $Daten "\x00\x7F\x00\x00\x70\x00\x05\x02\x00";
    $Daten1 "\x00\x03\x00\x00\x00\x01\x00\x01\x00";
    $FC =$Start.$TargetID.$Daten.$Zone.$Daten1.$Bal;
    break;
    Case(
    "VolumeOn"):
    // Zone Set Einschaltlautstärke
    $Daten "\x00\x7F\x00\x00\x70\x00\x05\x02\x00";
    $Daten1 "\x00\x04\x00\x00\x00\x01\x00\x01\x00";
    $FC =$Start.$TargetID.$Daten.$Zone.$Daten1.$VolOn;
    break;
    }
    $CRC GetCRC($FC);
    $CRCstr chr($CRC&0x7F);  // Maskieren mit 0x7F nur ein Byte!!
    $Senddata $FC.$CRCstr."\xF7";
    COMPort_SendText($ComID$Senddata);                               // Datenframe über Comport senden
    break;

    Case(
    "Tuner"):
    switch(
    $commandtuner)
    {
    // Tuner SEEK UP
    Case("SeekUp"):
    $data "\xF0\x00\x7D\x00\x00\x00\x70\x05\x02\x01\x00\x02\x01\x00\x1B\x00\x70\x00\x00\x00\x01\x09\xF7";
    break;
    // Tuner SEEK DN
    Case("SeekDn"):
    $data "\xF0\x00\x7D\x00\x00\x00\x70\x05\x02\x01\x00\x02\x01\x00\x24\x00\x70\x00\x00\x00\x01\x22\xF7";
    break;
    // Tuner Tune UP
    Case("TuneUp"):
    $data "\xF0\x00\x7D\x00\x00\x00\x70\x05\x02\x01\x00\x02\x01\x00\x2F\x00\x70\x00\x00\x00\x01\x1D\xF7";
    break;
    // Tuner Tune DN
    Case("TuneDn"):
    $data "\xF0\x00\x7D\x00\x00\x00\x70\x05\x02\x01\x00\x02\x01\x00\x30\x00\x70\x00\x00\x00\x01\x1E\xF7";
    break;
    // Tuner Save Preset 1
    Case("Save1"):
    $data "\xF0\x00\x7D\x00\x00\x00\x70\x05\x02\x01\x00\x02\x01\x00\x3C\x00\x70\x00\x00\x00\x01\x2A\xF7";
    break;
    // Tuner Save Preset 2
    Case("Save2"):
    $data "\xF0\x00\x7D\x00\x00\x00\x70\x05\x02\x01\x00\x02\x01\x00\x3D\x00\x70\x00\x00\x00\x01\x2B\xF7";
    break;
    // Tuner Save Preset 3
    Case("Save3"):
    $data "\xF0\x00\x7D\x00\x00\x00\x70\x05\x02\x01\x00\x02\x01\x00\x3E\x00\x70\x00\x00\x00\x01\x2C\xF7";
    break;
    // Tuner Save Preset 4
    Case("Save4"):
    $data "\xF0\x00\x7D\x00\x00\x00\x70\x05\x02\x01\x00\x02\x01\x00\x3F\x00\x70\x00\x00\x00\x01\x2D\xF7";
    break;
    // Tuner Save Preset 5
    Case("Save5"):
    $data "\xF0\x00\x7D\x00\x00\x00\x70\x05\x02\x01\x00\x02\x01\x00\x40\x00\x70\x00\x00\x00\x01\x2E\xF7";
    break;
    // Tuner Save Preset 6
    Case("Save6"):
    $data "\xF0\x00\x7D\x00\x00\x00\x70\x05\x02\x01\x00\x02\x01\x00\x41\x00\x70\x00\x00\x00\x01\x2F\xF7";
    break;
    // Tuner Save Preset UP
    Case("PresetUp"):
    $data "\xF0\x00\x7D\x00\x00\x00\x70\x05\x02\x01\x00\x02\x01\x00\x0E\x00\x70\x00\x00\x00\x01\x7C\xF7";
    break;
    // Tuner Save Preset DN
    Case("PresetDn"):
    $data "\xF0\x00\x7D\x00\x00\x00\x70\x05\x02\x01\x00\x02\x01\x00\x0F\x00\x70\x00\x00\x00\x01\x7D\xF7";
    break;
    // Tuner AM
    Case("SetAM"):
    $data "\xF0\x00\x7D\x00\x00\x00\x70\x05\x02\x01\x00\x02\x01\x00\x4A\x00\x70\x00\x00\x00\x01\x38\xF7";
    break;
    // Tuner FM
    Case("SetFM"):
    $data "\xF0\x00\x7D\x00\x00\x00\x70\x05\x02\x01\x00\x02\x01\x00\x49\x00\x70\x00\x00\x00\x01\x37\xF7";
    break;
    // Tuner Mono
    Case("SetMono"):
    $data "\xF0\x00\x7D\x00\x00\x00\x70\x05\x02\x01\x00\x02\x01\x00\x34\x00\x70\x00\x00\x00\x01\x22\xF7";
    break;
    // Tuner Stereo
    Case("SetStereo"):
    $data "\xF0\x00\x7D\x00\x00\x00\x70\x05\x02\x01\x00\x02\x01\x00\x33\x00\x70\x00\x00\x00\x01\x21\xF7";
    break;
    }
    COMPort_SendText($ComID$data);                               // Datenframe über Comport senden
    break;
    }

    function 
    GetCRC($s)
    // CRC für Russound Protokoll
    // Thomas Unger 21.04.2014
    //
    {
     
    $crc 0;             // Startwert

    for ($count=0$count<strlen($s); $count++)
     {
        
    $crc += ord($s[$count]);
     }
     
    $crc $crc+$count;
     return 
    $crc;
    }

    ?>
    Klicken Sie auf die Grafik für eine größere Ansicht 

Name:	Russound_variablen.jpg 
Hits:	123 
Größe:	89.9 KB 
ID:	25560
    Klicken Sie auf die Grafik für eine größere Ansicht 

Name:	Russound_seriell.jpg 
Hits:	122 
Größe:	43.4 KB 
ID:	25561
    Irren ist menschlich. Aber wenn man richtig Mist bauen will, braucht man einen Computer. (Dan Rather, CBS-Fernsehreporter)

Ähnliche Themen

  1. DMX-Einbindung in IPS
    Von JPaeper im Forum Beleuchtung / Lichttechnik
    Antworten: 3
    Letzter Beitrag: 26.12.13, 19:39
  2. Sony AV - Einbindung in IPS
    Von DigiHouse im Forum Audio & Video, TK-Anlagen, ISDN
    Antworten: 10
    Letzter Beitrag: 15.10.12, 20:52
  3. Sammelbestellung Russound Multiroom Verstärker
    Von mredeker im Forum Audio & Video, TK-Anlagen, ISDN
    Antworten: 0
    Letzter Beitrag: 13.11.11, 14:40
  4. Einbindung von Sonos in IPS
    Von xsero1302 im Forum Audio & Video, TK-Anlagen, ISDN
    Antworten: 3
    Letzter Beitrag: 07.11.11, 07:48
  5. Russound Multiroom zu Sonos Bridge
    Von roadsterhh im Forum Audio & Video, TK-Anlagen, ISDN
    Antworten: 0
    Letzter Beitrag: 29.07.10, 08:18