Can this support the liquid gas tank level sensor for the iGrill v3?
@macleodit The docker-compose I put together just wholesale packages up Bendikwaās solution to try and make it take a little easier to install/run. I looked through Bendikwaās issues/requests in GitHub and it sounds like someone else recently made a similar request: https://github.com/bendikwa/igrill/issues/12
Obviously, itās tough to know how much time anyone has to work on projects like this, but you could try adding a note to that issue and see if Bendikwa can add in the feature.
The ever-existing alternative, if you are wanting to get down and dirty, is to fork the repo and hack whatever functionality is needed into the new fork. Thatās currently beyond my skillset to be able to help with, though.
Good luck!
Thank you.
I have had the hardest time getting the bluetooth to reliably connect. I even tried the docker you made and it has the same issue.
Raspberry Pi 4 & iGrill 3. Whatās your experience been like with pairing to it?
I didnāt have to fight much with the bluetooth. I did a proof of concept to make sure that the Pi4 could talk to the iGrill2. I use Raspbian- in the upper right of the Raspbian UI there is a Bluetooth icon you can click on to try and get the Pi to see if it can see the iGrill. I tried to find some documentation for that UI- this looks close: https://pimylifeup.com/raspberry-pi-bluetooth/
Iād advise to make sure that before trying to get a script to connect to the iGrill, you can at least manually see it from the OS of the Pi. Some other ideas: 1) make sure your phone isnāt auto-connecting to it every time you turn the iGrill on and 2) if you already tried the troubleshooting at the bottom of Bendikwaās guide (https://github.com/bendikwa/igrill#troubleshooting), then you may need to revert that for your testing to get the regular Pi talking to the iGrill.
I think that will get you somewhere. If you can confirm that the Pi can at least see the iGrill, then you know the problem is in the script. If the Pi canāt see the iGrill, then there is a problem with the Bluetooth in some form or fashion.
@war1000, I followed your instructions to the tee and everything was working great. Then for some reason, Iām having bluetooth disconnects.
Iāve commented out the line in the udev section as advised, and still doing the same thing.
pi@raspberrypi:~ $ bluetoothctl
Agent registered
[CHG] Device 70:91:8F:11:FF:F5 Connected: yes
[CHG] Device 70:91:8F:11:FF:F5 Connected: no
[CHG] Device 70:91:8F:11:FF:F5 Connected: yes
[CHG] Device 70:91:8F:11:FF:F5 Connected: no
[CHG] Device 70:91:8F:11:FF:F5 Connected: yes
[CHG] Device 70:91:8F:11:FF:F5 Connected: no
[CHG] Device 70:91:8F:11:FF:F5 Connected: yes
[CHG] Device 70:91:8F:11:FF:F5 Connected: no
[CHG] Device 70:91:8F:11:FF:F5 Connected: yes
[CHG] Device 70:91:8F:11:FF:F5 Connected: no
[CHG] Device 70:91:8F:11:FF:F5 Connected: yes
[CHG] Device 70:91:8F:11:FF:F5 Connected: no
[CHG] Device 70:91:8F:11:FF:F5 Connected: yes
[CHG] Device 70:91:8F:11:FF:F5 Connected: no
[CHG] Device 70:91:8F:11:FF:F5 Connected: yes
[CHG] Device 70:91:8F:11:FF:F5 Connected: no
[CHG] Device 70:91:8F:11:FF:F5 Connected: yes
[CHG] Device 70:91:8F:11:FF:F5 Connected: no
[CHG] Device 70:91:8F:11:FF:F5 Connected: yes
[CHG] Device 70:91:8F:11:FF:F5 Connected: no
[CHG] Device 70:91:8F:11:FF:F5 Connected: yes
[CHG] Device 70:91:8F:11:FF:F5 Connected: no
[CHG] Device 70:91:8F:11:FF:F5 Connected: yes
[CHG] Device 70:91:8F:11:FF:F5 Connected: no
[CHG] Device 70:91:8F:11:FF:F5 Connected: yes
[CHG] Device 70:91:8F:11:FF:F5 Connected: no
[bluetooth]#
Any suggestions?
For those (NOOBS) like me wanting to get this to work, Iāve just installed this (2hrs later ) on my Pi Plantgateway that is being used to measure to xiaomi plant sensors. It took a bit of figuring out as there are inconsistencies in the various versions of the examples files but here is what I did to get it work under Python3.
- Created a folder on my Pi called
/home/pi/igrill
- Copied all the files from the latest version on the releases page into the
igrill
folder using WinSCP (DO NOT CREATE A CONFIG FOLDER) - Inside
/home/pi/igrill/
, I copied the two example files that were in the zip I downloaded - As Iām running Python3, I ran
sudo pip3 list
to check all of the packages met the requirements list - For any that need to be installed, run
sudo pip3 install <packagename>
. - Using
hcitool scan
, scan for the MAC address of your iGrill - Edit the
device.yaml
in your/igrill
folder and add the newly discovered MAC address (and append your MQTT topic path if you want to) - Finally, follow the instructions for editing the
igrill.service
file and I used the following to match the paths I created above. - Once you created the
igrill.service
file, youāll need to switch over to root withsudo -i
and runsystemctl daemon-reload && systemctl enable igrill && systemctl start igrill
- Reboot
- You can test if the igrill service is running with
systemctl status igrill
. Keep refreshing this for a few seconds to check that the service is not crashing.
[Unit]
Description=igrill MQTT service
After=network.target
[Service]
Type=simple
Restart=always
RestartSec=2
ExecStart=/usr/bin/python3 /home/pi/igrill/monitor.py -c /home/pi/igrill/
[Install]
WantedBy=multi-user.target
For my MQTT file, I wanted to use my Synology hosted broker and this took a bit to get that sorted. Here is the config:
#MQTT All values default to paho.mqtt.client defaults
mqtt:
host: '10.0.1.100' # Optional default 'localhost'
port: 1883 # Optional default '1883'
keepalive: 60
Note there are no quotes around the port
or keepalive
.
Let me know if Iāve left anything out.
FYI, I did also follow the troubleshooting guide and commented out the line in question during my 2hr debugging marathon.
Sorry @El_Duderino, I have no idea. I am just glad it worked for me. I hope it is not a faulty device for you.
It connects immediately to my phone/app, but issues with the pi. The strange thing is that it worked for sereral hours without fail while I was setting up all the MQTT and home assistant stuff, so not sure what could have happened. Maybe I should try a different pi? I canāt seem to find anything online that would point me in the right direction.
Should I be able to pop the existing SD card into another pi and it work without issue or is that overly ambitious?
yes, that is what I did too. I had two piās. the 3b+ is what i am using now. also i do notice there will be disconnects once in a while thoughout the cooking and i have a trigger in node red to restart the pi if it doesnāt get an update over 15 mins. but make sure if you do this, you have a check for cooking or not cooking. btw, how ofter are you getting the disconnects?
It literally connects and disconnects every few seconds
Yeah that is not good. when i was first trying to do this. I created a disk image after i installed the plugin and before configuring it so i could keep trying (due to my lack on knoweldge of python). maybe try and rebuild one more time?
Anyone got the igrill.service
working on a Raspberry Pi with stretch? If you could share your config, that would be appreciated. My service is alternating between activating
and active
all the time so something not right.
pi@raspberrypi-ble:~ $ systemctl is-active igrill
activating
pi@raspberrypi-ble:~ $ systemctl is-active igrill
active
pi@raspberrypi-ble:~ $ systemctl is-active igrill
active
pi@raspberrypi-ble:~ $ systemctl is-active igrill
activating
pi@raspberrypi-ble:~ $ systemctl is-active igrill
active
This is my current execution path in the service file
ExecStart=/usr/bin/python3 /home/igrill/monitor.py -c /home/igrill/config
However, this works if I run it manually
python3 /home/igrill/monitor.py -c /home/igrill/config
@war1000 has it sorted here Weber iGrill 2 integration with Lovelace UI. The device
and mqtt.yaml
files just need to be in the same folder as all the other files. Following the guide and creating a /config folder does not seem to work. Working flawlessly now. Iāve amended my post above.
Anyone know how to create a sensor that triggers when the set temperature is within a certain percentage of the chosen target? Want to notify the wife when the temp is close like the app does.
Do you have a sensor for current twmp and target temp?
Should be easily doable qith a value template and some math.
I reinstalled (twice) and seem to have bluetooth working. Iām not sure how stable it is though.
Iām not getting any mqtt messages now. That was working flawlessly the other day and populating my Lovelace dashboard perfectly.
This is growing increasingly frustrating!
Thanks. I ended up doing this which was easier. I only have one probe (iGrill mini) so this works a treat.
- platform: template
sensors:
igrill_pretarget_temp_probe_1:
value_template: "{{ states('input_number.igrill_probe_1_target') | int - 5 }}"
friendly_name: Probe 1 Pre Target Temp
unit_of_measurement: 'Ā°C'
- platform: template
sensors:
igrill_pretarget_alert_temp_probe_1:
value_template:
'{% if (states.sensor.igrill_thermometer.state | int) >= (states.igrill_pretarget_temp_probe_1.state | int) %}
PreAlert
{% else %}
Normal
{% endif %}'
friendly_name: Probe 1 Pre Target Alert
Why did you create 2 sensors? Do you need the first sensor for other things as well? If not, you can combine it into one sensor.
I created two as my coding is very limited. Took me 2hrs just to work that out!
First, you should avoid using this notation states.sensor.xxxx
but instead use this notation states('sensor.xxx')
, see here for more information. You used it in the second sensor at the end.
Combining your sensors is pretty simple, just replace the right part of the equation in the value_template of the second sensor with the value_template from the first sensor.
Something like this (untested and posted from my phone):
- platform: template
sensors:
igrill_pretarget_alert_temp_probe_1:
value_template: >
{% if (states('sensor.igrill_thermometer') | int) >= (states('input_number.igrill_probe_1_target') | int - 5) %}
PreAlert
{% else %}
Normal
{% endif %}
friendly_name: Probe 1 Pre Target Alert