+ Antworten
Seite 1 von 11 1 2 3 ... LetzteLetzte
Ergebnis 1 bis 10 von 108
  1. #1
    Registriert seit
    May 2010
    Beiträge
    185

    Standard Smarter SMC10EU Coffee in IPS?

    Hi,

    da unsere Kaffee Maschine so langsam den Geist aufgibt, sind wir auf der Suche nach einer Neuen. Für mich wäre es wichtig, dass ich diese auch irgendwie in IPS einbinden kann. Wichtig hierbei wäre, dass ich den Brühvorgang über IPS starten kann.


    Dabei bin ich auf folgenden gestoßen: Smarter SMC10EU Coffee

    Die Suche nach der API ergab dann folgendes:

    GitHub - matthanley/smarter-coffee-api: PHP Smarter Coffee API, inspired by https://github.com/AdenForshaw/smarter-coffee-api

    https://github.com/AdenForshaw/smarter-coffee-api

    Hat jemand diese zufällig bereits im Einstaz oder sogar schon in IPS integriert?

    Gruß
    Benjamin

  2. #2
    Registriert seit
    May 2010
    Beiträge
    185

    Hi,

    habe mir jetzt die oben genannte Smarter Coffee Maschine mal bestellt.
    Kann mir jemand einen Tipp geben, wie ich die Klasse und die Funktionen in IPS einbauen muss?

    Soweit ich mich erinnere, muss ich die .php irgendwo ablegen und dann per include einbinden.

    Ist das richtig?

    Gruß
    Benjamin

  3. #3
    Registriert seit
    May 2010
    Beiträge
    185

    Hi,

    habe jetzt hinbekommen die Smarter Coffee in IPS zu starten. Falls es jemand noch gebrauchen kann, hier die Steps:

    1. Smarter Coffee Klasse anlegen und umbenennt zu SmarterCoffee.php

    PHP-Code:
    <?
    class SmarterCoffee
    {
        protected 
    $address;
        protected 
    $port;
        protected 
    $cups;
        protected 
    $strength;
        protected 
    $grind// true for grind, false for filter
        
    protected $carafe;
        const 
    ACTION_BREW "7";
        const 
    ACTION_RESET "\x10";
        const 
    ACTION_TOGGLE_GRIND "\x3c\x7e";
        const 
    ACTION_SET_STRENGTH "\x35%s\x7e";
        const 
    ACTION_SET_CUPS "\x36%s\x7e";
        const 
    BUFFER_LENGTH 10;
        const 
    RESULT_SUCCESS 1;
        const 
    RESULT_NOOP 2;
        const 
    RESULT_CARAFE_NOT_PRESENT 4;
        const 
    RESULT_NO_WATER 8;
        const 
    RESULT_BREW_IN_PROGRESS 16;
        const 
    RESULT_UNKNOWN 32;
        public function 
    __construct($address$port 2081) {
            
    $this->address $address;
            
    $this->port $port;
            return 
    $this;
        }
        public function 
    brew() {
            return 
    $this->send(self::ACTION_BREW);
        }
        public function 
    reset() {
            return 
    $this->send(self::ACTION_RESET);
        }
        public function 
    setCups($cups) {
            if (!
    is_null($this->cups) && $this->cups == $cups) {
                return 
    self::RESULT_NOOP;
            }
            
    $cups max(1$cups);
            
    $cups min(12$cups);
            return 
    $this->send(
                
    sprintf(self::ACTION_SET_CUPSchr($cups))
            );
        }
        public function 
    setStrength($strength) {
            if (!
    is_null($this->strength) && $this->strength == $strength) {
                return 
    self::RESULT_NOOP;
            }
            
    $strength max(0$strength);
            
    $strength min(2$strength);
            return 
    $this->send(
                
    sprintf(self::ACTION_SET_STRENGTHchr($strength))
            );
        }
        public function 
    setGrind($grind) {
            if (
    is_null($this->grind)) {
                
    $this->toggleGrind();
            }
            if (
    $this->grind != $grind) {
                return 
    $this->toggleGrind();
            }
            return 
    self::RESULT_SUCCESS;
        }
        protected function 
    toggleGrind() {
            return 
    $this->send(self::ACTION_TOGGLE_GRIND);
        }
        protected function 
    send($command) {
            try {
                
    $sc fsockopen($this->address$this->port);
                
    fwrite($sc$command);
                
    $message $this->parse(fgets($scself::BUFFER_LENGTH));
            }
            finally {
                @
    fclose($sc);
            }
            return 
    $message;
        }
        protected function 
    parse($output) {
            
    // [0] to [2] are the response code from the last command
            // [3] to [9] are the status codes for the machine
            
    $output bin2hex($output);
            
    $result substr($output06);
            
    $status substr($output6);
            
    $this->parseStatus($status);
            return 
    $this->parseResult($result);
        }
        protected function 
    parseResult($result) {
            switch (
    $result) {
                case 
    "03007e":
                    return 
    self::RESULT_SUCCESS;
                case 
    "03017e":
                    return 
    self::RESULT_BREW_IN_PROGRESS;
                case 
    "03057e":
                    return 
    self::RESULT_CARAFE_NOT_PRESENT;
                case 
    "03067e":
                    return 
    self::RESULT_NO_WATER;
                default:
                    return 
    self::RESULT_UNKNOWN;
            }
        }
        protected function 
    parseStatus($status) {
            
    $status str_split($status2);
            
    $status array_map(function($elem) {
                return 
    hexdec($elem);
            }, 
    $status);
            
    $this->carafe = (bool)($status[1] & 1);
            
    $this->grind = (bool)($status[1] & 2);
            
    $this->strength $status[4];
            
    $this->cups $status[5] - 64;
            
    // $status[2] is water level
        
    }
    }
    ?>
    2. Aufruf mit Übergabe von festen Parametern:

    PHP-Code:
    <?
    include 'SmarterCoffee.php';

    $coffeeMaker = new SmarterCoffee('192.168.100.124');
    $coffeeMaker->reset();
    $coffeeMaker->setCups(1);
    $coffeeMaker->setStrength(1);
    $coffeeMaker->setGrind(true);
    $coffeeMaker->brew();



    ?>
    Nicht schimpfen, ich weiß dass man das jetzt noch eleganter mit Variablen für Anzahl der Kaffeetassen, Stärker, Mahlgrad machen kann. Das mache ich dann im nächsten Schritt.

    Aber das wichtige ist: Diese Kaffeemaschine kann komplett in IPS integriert werden. Somit wird jetzt automatisch mein Kaffee gekocht, wenn mein IPS Wecker mich aufweckt

  4. #4
    Registriert seit
    May 2010
    Beiträge
    185

    Es wird

    Name:  screenshot.png
Hits: 672
Größe:  22.8 KB

  5. #5
    Registriert seit
    Oct 2010
    Beiträge
    604

    komisch, wenig Reaktionen hier... wahrscheinlich ist dein Projekt noch zu Smart für diese Zeit.
    Wobei es ja bei den Alexa Verrückten einen Schritt weiter in Richtung Frauenersatz gehen könnte...
    ALEXA, MACHE KAFFEE!

    Cooles Projekt, bin kein Kaffeetrinker aber gut zu wissen dass sowas funktioniert
    Im Moment im Einsatz: IPS-Professional V4.1 auf RPi3, YAHM mit HM LAN-Adapter
    Komponenten: FWS20 Wetterstation, >35x DS18B20, HM-SCI-3-FM, HM-LC-Sw2-FM, HM-LC-Sw1-FM, HM-Sec-RHS, HM-Sec-SC-2,
    mehrere Pokeys, einige Philips Hue, 4x SDM630M

  6. #6
    Registriert seit
    May 2010
    Beiträge
    185

    Hi BeLo,

    ich denke mal die meisten besitzen gar nicht diese Kaffeemaschine. Sieht man sich die Amazon Bewertungen an, wird diese ja auch sehr kritisiert.
    Meistens ist es aber die App, welche jetzt nicht besonders toll ist.

    Naja mir war es wichtig, dass es irgendwie in IPS integrierbar ist, was ja jetzt auch ist

    Mit Alexa steuern klappt natürlich super. Man muss halt nur ein Skript mit festen Parameter erstellen. Da kann man dann auch z.B. ein Skript pro Benutzer und vorlieben machen, z.B.:

    "Alexa, 4 Tassen Kaffee"
    Alexa, Benjamin Kaffee"

    Leider ist ja bekanntermaßen der Smarthome Skill sehr begrenzt. Hier müsste man ggf ein Custom Skill verwenden, damit Alexa auch nachfragt, wie stark der Kaffee werden soll

    Nächster Schritt für mich ist es, das alles irgendwie in ein Modul zu kippen. Leider kenne ich mich so gar nicht mit der Modulerstellung aus.... Naja dann dauert das halt ein wenig länger

    Gruß
    Benjamin

  7. #7
    Registriert seit
    Jul 2010
    Ort
    Südwestpfalz
    Beiträge
    6,827

    Ich beschäftige mich ja nun schon seit vielen Jahren mit Kaffeevollautomaten aber diese Idee halte ich für völlig überflüssig. Grins
    Bekloppte Welt.


    Gesendet von iPad mit Tapatalk
    Gruß Boui . . . IPS-unlim. auf Tinker Board S und pivccu

    Die gefährlichste Form der Zensur ist die Schere im eigenen Kopf.(Curzio Malaparte)

  8. #8
    Registriert seit
    May 2010
    Beiträge
    185

    Gut, dass wir alle ein bisschen bekloppt sind

  9. #9
    Registriert seit
    Apr 2011
    Beiträge
    2,098

    Die Frage nach einer Einbindung einer smarten Kaffeemaschine hatten wir schon mehrere male, immer mit dem Ergebnis das da irgendwo der Nutzen der Automatisierung endet... wobei ich hier sogar mehr nutzen sehe als bei der Automatisierung eines Kaffee-Vollautomaten. Leider mag ich keine Filter-Kaffee, also doch nix für mich....

  10. #10
    Registriert seit
    May 2010
    Beiträge
    185

    Hi,

    klar den Nutzen muss jeder selber beurteilen. Mich persönlich hat es halt tierisch genervt morgens warten zu müssen, bis die Kaffee Maschine vorgeheizt war (hatten vorher eine Senseo) und bis unsere 2-3 Tassen Kaffee fertig waren.

    Nun gehts automatisch und ich gehe in die Küche und kann einfach den Kaffee mitnehmen. Ich persönlich freue mich jedesmal über den Kaffeeduft im Haus früh morgens.

    Vorteil dieser Kaffee Maschine für mich war auch, dass sie eine Kanne Kaffee kocht, statt nur ein/zwei Tassen auf einmal.
    Die SmarterCoffee erkennt sogar, falls die Kanne fehlt, zuwenig Wasser vorhanden, Bohnen leer sind und startet somit den Brühvorgang erst gar nicht. Das verhindert natürlich bei der Automatisierung, dass es zu einer Sauerei kommt.

    Wie gesagt, für mich persönlich ist es genau die Maschine, die wir suchten.

    Ggf gibt es ja hier noch jemanden mit der gleichen Anforderung und kann die Skripte gebrauchen

    Gruß
    Benjamin

Ähnliche Themen

  1. Daily Deal --- Smarter 1,8 l iKettle (Wasserkocker)
    Von honk0504 im Forum Sonstige Funkkomponenten / Wetterstationen
    Antworten: 26
    Letzter Beitrag: 15.12.15, 21:08