Smarter SMC10EU Coffee in IPS?

Pro Modul :slight_smile:

Gesendet von iPhone mit Tapatalk

Hallo
Nachdem ich die Class SmarterCoffee probiert hatte , funktioniert.
Wollte ich den Status haben.
Einfach einen ClientSocket auf die IP und den Port.
Ein Script welches die Daten auswertet und
eine Register Variable dazwischen.
Im Script wird „$_IPS[‚VALUE‘]“ auswertet $Path ist meine Kategorie

function GetStatus($Path,$data)
	{
	$status     = ord(substr($data,1,1));
	$waterlevel = ord(substr($data,2,1));
	$strength   = ord(substr($data,4,1));
	$cups       = ord(substr($data,5,1));
	
	for ($x=0;$x<10;$x++)
		{
		if ( $cups > 16 )
			$cups = $cups - 16;
		}
		
	$id = IPS_GetObjectIDByName("Status",$Path);
	SetValue($id,$status);

	$id = IPS_GetObjectIDByName("WaterLevel",$Path);
	SetValue($id,$waterlevel);

	$id = IPS_GetObjectIDByName("Strength",$Path);
	SetValue($id,$strength);

	$id = IPS_GetObjectIDByName("Cups",$Path);
	SetValue($id,$cups);
	}

Am WE mach ich mich ans steuern ueber Alexa :slight_smile:

Hallo 1007,
danke für die Infos. Funktioniert einwandfrei.

Gruß Torsten

Gesendet von iPhone mit Tapatalk

Hallo,
auch mal ein Danke für die Info’s.

Habe mir mal so ein Ding bestellt, gibt es im T-Online Shop für 77EUR inc.Versand, da unsere einfache Maschine auch langsam den Geist aufgibt.

Mahlzeit!

Ich hätte eine Frage. Könnte jemand bei T-Online für mich bestellen? Denn als Österreicher kann ich nicht bestellen!
Aber ich will die Kaffeemaschine in ROT!

Mfg
Maxx

Im Lieferumfang sind Blenden in drei Farben dabei zum wechseln.

@Maxx: Guck mal auf ebay. Da gibts die Maschine aktuell für 5€ mehr. ggf sendet der Verkäufer ja auch nach Österreich.

Also mit dem Status funktioniert jetzt auch super. Klasse!
Finde zwar das Updateintervall alle 2 Sekunden ein bisschen viel, aber naja.

Jetzt wäre es doch Klasse, wenn wir es in ein Modul kippen könnten. Ich habe mir die Modulerstellung mal angesehen, blicke da aber leider voll nicht durch.
Denke mal an der Klasse müssten dann die Funktionsaufrufe noch ein wenig angepasst werden.

Kennt sich einer von euch damit aus und könnte uns helfen, die Skripte, Variablen Erstellung in ein Modul zu überführen?

Gruß
Benjamin

Wenn meine da ist,
werde ich mal ein Modul versuchen, habe ja noch Hilfe im Haus…

Hi Tom,

vielen Dank für die Hilfe :slight_smile:

Gruß
Benjamin

Hallo Leute,

meine ist heute gekommen, jetzt gehts mal an die Bytes.
Werde das :smartercoffee/pollingStatusMessage.py at master · nanab/smartercoffee · GitHub
mal nutzen.

Und der Kaffee ist gar nicht so schlecht…

Hallo,
könntet ich mal das checken ?


WaterLevelMessageType = {
0    '0x0' : "Not enough water",
1    '0x1' : "Low",
2    '0x2' : "Half",
18    '0x12' : "Half",
19    '0x13' : "Full",

Bei mir kommt da noch 0x11 mit…
Firmware der Maschine ist : 22

ps KaiS hat schon ein Modul angefangen zu schreiben, ich suche Daten zusammen…

Hi Thomas,

wann genau kommt bei dir denn 0x11? Bzw. bei welchem physischem Wasserstand/Tassen?
Dann checke ich das mal.

Gruß
Benjamin

Hi Benjamin,

ich versuche gerade Werte zu sammeln, und da kommt mir einiges komisch vor.
Ich zeichne mal verschiedene Dinge(Werte) per IPS auf, um zu sehen was, was bedeuten könnte.
Grundfunktionen gehen schon mal, aber da ist noch einiges unklar von den ganzen Beispielen. Die passen bei mir so noch nicht.

Hi 1007,
bei cups hast du einen Fehler drin, bei 2c Hex kommen 44Tassen raus…
2c Hex muss zerlegt werden, nur die zweite Stelle in dem Beispiel scheint die Tassenzahl zu sein.
Was die 2 bedeutet, weiss ich auch noch nicht, könnte aber mit Filter und Bohnen zusammenhängen.

Hallo
Also bei mir kommt bei „2C“ 12 Tassen raus. Das macht der Programmteil

	$cups = hexdec("2C");
	
	for ($x=0;$x<10;$x++)
		{
		if ( $cups > 16 )
			$cups = $cups - 16;
		}

	echo $cups;

Grundlage ist der Link

https://github.com/nanab/smartercoffee/blob/master/pollingStatusMessage.py
cupsMessageType = { #TODO investigate what the first number does?

Hm,will hier so nicht.
Mache es so :

    $cups       = dechex (ord(substr($data,5,1))); 
	$arr=str_split($cups, 1);
	$cups = hexdec($arr[1]);

Hallo
Was kommt den raus wenn du folgendes machst?

	$cups = dechex (ord(substr($data,5,1))); 
	echo "
" . $cups;
    $arr  = str_split($cups, 1);
    $cups = hexdec($arr[1]);  
	echo "
" . $cups;

Kenne jetzt nur den Code, nicht das Protokoll, aber so sollte es auch gehen, oder?
$cups = (ord($data[5]) & 0x0F)
Michael

PS: Bei dem Preis bin ich auch am überlegen, aktuell ist bei uns seit einem Jahr Handbetrieb :wink:

Also, $cups kommt mal als Hex C2, mal als Hex 22 usw, wobei die 2te Stelle die aktuelle Tassenzahl ist.
Die erste Stelle werde ich mal in ein Byte schreiben und aufzeichnen.
Dann kann man mal schauen, was passiert.

@Michael, die Maschine ist ganz ok, und Kai meint auch, der Kaffee ist gut…
Das einzige was nicht so toll ist, ist die App. Aber die brauchen wir bald nicht mehr…

Hi Tomas,

wow vielen Dank für die Mühen.
Wir finden den Kaffe vom Geschmack auch gar nicht mal so schlecht [emoji6].

Schade, dass der Hersteller seine API nicht veröffentlicht. Wäre bestimmt um einiges einfacherer.

Gruß
Benjamin

Gesendet von iPhone mit Tapatalk