Squeezebox als Display

Hallo,

ich habe da eine Idee.
Da es „zur Zeit“ keine Displays gibt auf denen ich Homematic Statsusanzeigen ausgeben kann (Temperatur, Status Fenster, …) möchte ich gerne meine Squeezebox dazu benutzen.
Im Forum finde ich leider kein entsprechendes Thema dazu (ich dachte ich hab aber mal etwas darüber gelesen).
Meine Vorstellung:
Anzeige Temperatur (20sec), Anzeige Tem 2 (20sec) usw.; Anzeige Fenster offen (wenn offen) (20sec) und dann das Ganze von vorne.

Könnt Ihr mir weiterhelfen?

Danke und ein schönes Jahr 2012

Jörg

Da muss ich dir aber total widersprechen.
Es reicht eigentlich in der Suche „Squeezebox“ einzugeben und du bekommst ein Reihe von passenden threads dazu. Man muss sich natürlich auch die Mühe machen, die zu lesen;)

P.S. Welche SQB hast du denn? Mit dem Radio wirds nichts Gescheites.

Problem an der Sache ist, dass die neuen Boxen das nicht mehr können. Von daher hab ich das ganze verworfen. Pearl bietet mom ein Display für 2,90 € an. Mal schauen was man damit basteln kann.

Hallo,

ich habe Classic.

Gefunden habe ich:

$TEMP = GetValue(59927 /*[HomeMatic\Aussen\HM Sender Aussentemperatur\TEMPERATURE]*/); //legt Variable TEMP an und übernimmt Wert aus HM
$HUM = GetValue(49724 /*[HomeMatic\Aussen\HM Sender Aussentemperatur\HUMIDITY]*/); //legt Variable HUM an und übernimmt Wert aus HM

slim_text("bd:19:4c:6e:c9:db", "Aussentemperatur", "$TEMP °C", 10);

function slim_text($box , $text1 , $text2 , $time)
{
$TX_BUF = $box." display " .rawurlencode($text1)." ".rawurlencode($text2)." ".$time.chr(13);
//Etwas über den COM Port senden
$result = CSCK_SendText(29235 /*[Client Socket_Squeezeserver]*/, $TX_BUF);
}

Das funktioniert schon mal.
Aber wie Zeige ich nach xxx sec z.B. die Luftfeuchtigkeit an bzw. bei Fenster offen nach xx sec den Status?
Da finde ich nichts.

Jörg

Jep.

Mit der Classic und alle die das grüne Display haben funktioniert es, wobei es mit allen geht, nur die neuen blenden ein extra Fenster ein das immer nach 3 Sekunden wieder weg ist. Sende zwar alle 15 sek. verschiedene Werte aber man muss halt immer auf das Display sehen um nichts zu versäumen also eher weniger tauglich.

Bei der Classic klappt dies hervorragen da auch die Schriftgröße anpassbar ist.

Aber wie Zeige ich nach xxx sec z.B. die Luftfeuchtigkeit an bzw. bei Fenster offen nach xx sec den Status?
Da finde ich nichts.

Da mußt Du mit einem Timer und einer Zählvariable (int) arbeiten. Mal sehen ob ich es finde…

…Gefunden

<?
include "59910.ips.php";      // Squeezefunktions-Sammlung
 
$status    = GetValue(27142 /*[Tools\Squeezebox\Auswertung Squeezeboxen\Musik Badezimmer\Power]*/);
$aussen_temp  = GetValueFormatted(16321 /*[Außen\Terrasse\Wetterstation\Außentemperatur\Temperatur]*/);
$wetter        = GetValue(40636 /*[Tools\Wetter_Yahoo\Vorhersage heute]*/);
$anzeige       = GetValue(56803 /*[Tools\Squeezebox\SqueezeBox Badezimmer\Informationen anzeigen\Anzeige]*/);
 
if($status) {
 if($anzeige == 0) {
  // an die Squeezeboxen senden
  SqueezeShow("Badezimmer", "Außentemperatur: ", $aussen_temp , 10);
  SetValue(56803 /*[Tools\Squeezebox\SqueezeBox Badezimmer\Informationen anzeigen\Anzeige]*/, 1);
 }
 if($anzeige == 1) {
  // an die Squeezeboxen senden
  SqueezeShow("Badezimmer", "Wettervorhersage: ", $wetter , 10);
  SetValue(56803 /*[Tools\Squeezebox\SqueezeBox Badezimmer\Informationen anzeigen\Anzeige]*/, 0);
 }
}

?>

Sind hier nur 2 verschiedene Statis, mußt halt entsprechend ergänzen, statt der if-Anweisung könntest auch case-Anweisungen nutzen.

Anbei noch ein Screenshot der Variable.

Ich benutze Squeezeserver i.V.m. Roku Soundbridge und lasse dort im Standby enfach RSS-Feed mit Statusinfos anzeigen. Geht evtl. an den Squeezeboxen. Skript kann ich bei Bedarf gerne schicken.

Grüße, Axel

Würde ich mir auch gerne mal ansehen.

Ich benutze Squeezeserver i.V.m. Roku Soundbridge und lasse dort im Standby enfach RSS-Feed mit Statusinfos anzeigen. Geht evtl. an den Squeezeboxen. Skript kann ich bei Bedarf gerne schicken.

Hallo.

Das Skript würde mich auch interessieren. Welchen SqueezeServer verwendest Du? Ich dachte die Soundbridges sind da ab Version 5.? aus dem Rennen?

Grüsse.

Die M1000, 1001, 1002 sollen den SB1-kompatibilätsmodus beherrschen.

Laut Forum soll dies vom LMS 7.7.x unterstützt werden.

Squeezebox : Community : Forums - View Single Post - Soundbridge

Ich habe zwei 1001er im Einsatz und habe nur deswegen parallel zum LMS noch Twonky laufen. Zwischen Squeezeserver 5.1(?) und 7.5x ging da mit der Logitech Software gar nichts - oder ich habe da grunsätzlich etwas übersehen. Seit Version 7.7x können die Player zumindest Musik über LMS abspielen wobei die Playlisten ihnen vorenthalten bleiben. Wenn jemand einen Workarround weiss wie ich auf Twonky verzichten kann - nur her damit. Käme mir extrem entgegen.

Nachtrag: Ich habe die Pinnacle M1001 - also die falsche Firmware. :frowning:

Hallo,

@wgreipl:
Vielen Dank für das Script, ich habe aber einige Fragen:
Wozu ist das erste if ($status)?
Wie zeige ich die beiden Werte hintereinander an?
Bei mir wird nur ein Wert angezeigt, wenn ich das Script nochmals starte wird das zweite Script angezeigt.

Danke.

Hallo,

hier mein Script:

$WERTSTATUS = GetValue(58184 /*[HomeMatic\FENSTER_OFFEN]*/);
$ANZEIGE = GetValue(24630 /*[HomeMatic\Zähler Squeezebox]*/);
$status    = GetValue(43886 /*[Squeezebox\Power]*/);

$TEMP = GetValue(59927 /*[HomeMatic\Aussen\HM Sender Aussentemperatur\TEMPERATURE]*/);
$HUM = GetValue(49724 /*[HomeMatic\Aussen\HM Sender Aussentemperatur\HUMIDITY]*/);

$STATUS1 = GetValue(25946 /*[HomeMatic\Schlafzimmer\HM Sender Fenster Balkon alt\STATE]*/);
$STATUS2 = GetValue(25946 /*[HomeMatic\Schlafzimmer\HM Sender Fenster Balkon alt\STATE]*/);

$STATUSSUMME = $STATUS1 + $STATUS2;

if ($status)
	{
if ($ANZEIGE == 0)
	{
	slim_text("bd:19:4c:6e:c9:db", "                          Aussentemperatur", "                                 $TEMP °C", 10);
	SetValue(24630 /*[HomeMatic\Zähler Squeezebox]*/, 1);
	}
if ($ANZEIGE == 1)
	{
	slim_text("bd:19:4c:6e:c9:db", "                          Aussentemperatur2", "                                 $TEMP °C", 10);
	SetValue(24630 /*[HomeMatic\Zähler Squeezebox]*/, 0);
	}
	}

if ($STATUSSUMME != 0)
	{
	slim_text("bd:19:4c:6e:c9:db", "Ein Fenster ist geöffnet", "$WERTSTATUS", 10);
	}

function slim_text($box , $text1 , $text2 , $time)
{
$TX_BUF = $box." display " .rawurlencode($text1)." ".rawurlencode($text2)." ".$time.chr(13);
//Etwas über den COM Port senden
$result = CSCK_SendText(29235 /*[Client Socket_Squeezeserver]*/, $TX_BUF);
}

Der Status ist ob die Squeezebox gerade an ist oder nicht.

Damit das Ding automatisch läuft mußt Du noch einen zyklischen Timer auf das Skript setzen der das Skript startet, also z.B. auf 15 Sekunden

Hallo,

Danke für den Tipp mit dem zykl. Ereigniss;
Kann ich Meldungen auch dauerhaft anzeigen?

Jörg

Am SQ-Radio ist leider eine Beschränkung von 3 Sekunden drin. Wurde im Bugtracker von Slimdevices bereits eingetragen, aber anscheinend interessiert Slimdevices dieses Problem/Feature niemanden :mad:

Dies funktioniert wie weiter oben beschrieben nur mit Geräten mit dem alten grünen Display.

Hallo,

ich habe eine Classic; funktioniert da eine dauerhafte Anzeige?

Am liebsten hätte ich eine dauerhafte Anzeige die nur durch ein bestimmtes Ereigniss (Fesnter geöffnet) geändert wird.

Jörg

Bin mir jetzt nicht sicher ob die Anzeige wiederkommt wenn sie durch den Squeezeserver selber überschrieben wird.

Die Classic würde ich nur zur Temperatur und Statusanzeige der Fensterdrehgriffkontakte nehmen; Musik läuft direkt über meinen Server (Softsqueeze) und diverse SB-Radios in anderen Räumen.

Wie würdest Du eine dauerhafte Anzeige umsetzen?

Jörg

Gute Frage.

Einfach testen wie lange die maximale Anzeigedauer ist und dies durch den Timer nachbilden.

Also wenn max. Anzeigedauer 60 Sekunden dann alle 60 Sekunden vom Timer das Skript starten lassen.

Aber im Ernst…

… ist das die Classic nicht ein wenig überdimensioniert???