Smarter Coffee / iKettle

I think I managed to work around this using an older version of Alpine for the add-on, because with the latest tag the older (python2) versions of tornado are no longer supported and that caused the error.
So in the Dockerfile of the add-on I’ve changed
FROM $BUILD_FROM
to
FROM alpine:3.9

and I also updated “python” to “python2”.

Now I am able to install and start the addon.

I reworked the addon you can find the source here:

if you have any questions feel free to ask :slight_smile:

I also fixed it for me and created a pull request for the original author so the plug in from

should be working again.

However after some time the connection to the kettle is lost (guess it has nothing to do with the plugin itself but iBrew)
See: https://github.com/Tristan79/iBrew/issues/63

I’ve got the add-on installed now, but can’t get it to work. The logs and the webui both say “No coffee machine or kettle found”. Is there something I need to do to pair or connect the add-on to the kettle.

Edit:
Never mind - turns out I have a v3 kettle. I was sure I had a v2. I might see if I can do some magic with the Google home integration instead.

1 Like

I don’t seem to be able to add any of the three repos mentioned (leinich, ManInSoHo, M4D1NG3R) via HACS 1.6.0 on home assistant 0.116.2 running on Pi4. When I add any of them as a custom repo, I get :

“Repostitory structure for master is not compliant”

I’ve previously had iBrew working on my old Pi with my 1st gen coffee machine.

Grateful for any clues. Thanks

Replying to myself :

You don’t add the repos via HACS you add them via add-on store under supervisor (I’m a bit new to HA and didn’t realise there are 2 places to add custom repos)

All working now.

Hi,
I was wondering if someone could help me, I am a complete noob when it comes to all this stuff but am trying my best to learn. I have got a smarter coffee machine (version 1) and I would really like to be able to control it in home assistant please could someone post upto date step by step instructions for doing this? any advice would be very much appreciated.

Hi
So I have been trying to get this working, I installed the following addon

Straight away this seemed to detect my coffee machine as there were messages in the log stating the coffee machine status, water level no of cups etc.

So no I am trying to figure out how to use it via HA, I used the following in my config

and the rest command failed, I did a bit of playing around and managed to get it to brew with default settings if I use

rest_command:
  make_coffee:
    url: 'http://<ha ip>:2080/api/<coffee ip>/start

Now I would very much appreciate any help people could give me regarding being able to use other commands.
Thanks

So, I’m running iBrew Current version: 0.0.9 Test on iBrews on HASSIO on an RPI4? Is this platform supported? When I install and launch the addon, I get the following error…

[Info] Starting iBrew docker!
[INFO] Startting ibrew Web
2021-01-13 22:34:06,377 [INFO] GUI Started
Exception in thread 9dd13c5f-ibrew:
Traceback (most recent call last):
File “/usr/local/lib/python2.7/threading.py”, line 801, in __bootstrap_inner
self.run()
File “/home/app/iBrew/source/iBrewBonjour.py”, line 49, in run
callBack = self.register_callback)
File “/home/app/iBrew/source/pybonjour.py”, line 1132, in DNSServiceRegister
None)
File “/home/app/iBrew/source/pybonjour.py”, line 286, in _errcheck
raise cls(result)
BonjourError: (-65537, ‘unknown’)
MacOS & Windows only
No coffee machine or kettle found
No coffee machine or kettle found
2021-01-13 22:34:10,561 [INFO] iBrew: Starting Web Interface & REST API on port 2080

Anyone? Please.

I have very limited knowledge, however I am using Rpi4 and hassio with this addon.

1 Like

And it functions properly?

Yes, there are a couple of commands I couldn’t get to work but everything you need to make coffee works :slight_smile:

Hello @ManInSoho, can you please post your configuration for the iKettle 2.0. How is the rest_command and the script for the kettle? Thank-you.

Hello can someone help me? I’ve been trying to integrate my iKettle 2.0 into Home Assistant for 1 week and it doesn’t work. I installed @Tristan79 API and it works. I followed these instructions.

I created 2 files, ibrewcontrol.sh and ibrewstatus.sh and saved them in the /config/scripts/ directory. When I toggle the kettle switch nothing happens. I don’t know what else to do. Please help.

1 Like

I have the coffee machine, not kettle working. Didn’t bother with shell scripts, just these bits in the various files :

configuration.yaml
==================

rest_command: #0.99 is the HA IP, 0.29 is the coffee machine IP
  make_coffee:
    url: 'http://192.168.0.99:2080/api/192.168.0.29/start'

sensors.yaml (don't forget to include it in configuration.yaml)
============

- platform: rest
        resource: http://192.168.0.99:2080/api/192.168.0.29/raw/enoughwater
        name: smarter_coffee_enough_water
        scan_interval: 20

scripts.yaml
============

make_coffee:
  alias: Coffee
  sequence:
  - service: light.turn_on
    data: {}
    entity_id: light.kettle  # Dumb kettle on a zigbee switch
  - condition: state
    entity_id: sensor.smarter_coffee_enough_water
    state: 'True'
  - service: rest_command.make_coffee
    data: {}
  
  - delay: 00:02:00
  - service: notify.mobile_app_s10
    data:
      data:
        group: Coffee Machine
        color: '#F78F8F'
        icon_url: https://img.icons8.com/officel/2x/cafe.png
        importance: high
        timeout: 600
        vibrationPattern: 100, 1000, 100, 1000, 100
      message: Coffee is ready!
      title: Home Assistant
  mode: single
  icon: mdi:coffee

(Whilst the script turns on my kettle (I like Americano style coffee)) it’s just a dumb kettle on the zigbee switch - don’t let that bit confuse you)

1 Like

Thank you very much @brewston, that worked fine. I still have one question: Is it possible to specify a temperature before sending a start command? I would like to be able to start the kettle at 90 ° and at 100 °.

Not sure, I tried to simulate the kettle but couldnt get it working. Try playing around with a rest_command that calls one of these (if you have the ssh extention in HA you can probably run them from the shell instead of sticking them in the yaml files)

Status iKettle 2.0	/status
Start heating default	/start
Stop heating	/stop
Start heating	/heat/(temperature)/(keepwarm)
Start heating in formula mode	/formula/(temperature)/(keepwarm)
1 Like

Thank you very much, but I’ve already tried that. Unfortunately, the kettle always starts at 90 °. Maybe someone will answer you who has a kettle. Thank you @brewston

After wasting some more time getting iBrew to work again on my new virtualized setup I decided to pick up an nodejs project of mine to control the kettle/coffemachine.
I fixed the lib to a point where it works fine with the kettle and packaged it all into a hassio addon.

  • It currently only supports the kettle because I have decommissioned my coffeemaker some time ago.
  • It needs an mqtt server
  • It supports mqtt autodiscovery

Just add this to the repos for hassio addons and install the addon. Dont forget to completely fill the config.

curious if this helps someone else here…

3 Likes