Development Automation, Self-Hosted Enthusiast from Kyiv, Ukraine
it seems my brain is the problem here
Please check your pulse, it seems you are an AI LLM.
The chat interface is a messenger, but the answers are definitely hallucinations from an AI, or copy-pasted from one.
I stumbled upon the prostate cancer in transgender women. Couldn't get who's having cancer on what, and which gender they are.
Oh my god, I cannot even understand news titles now!
AI will take your job. or will it?
yeah, this is the reason I don't write many comments on Lemmy. you first write a comment, and then find out that you have already been banned for the previous one.
I'm from Ukraine. Wanna hear how my week went? Be brave and stand your ground.
sticktlock stickstol? do these jokes even work in English? no clue
our russophobia is not enough.
HA mobile application opens up a notify service that I use to send notifications specifically on my mobile device HA application.
yes. the bidet when you poop at home, and an enema when you are not at home.
solved pooping for myself using an enema twenty years ago. not a single trouble, I poop whenever I want, and I do it in 40 seconds maximum. sprinkle ~70ml of water, blow out, rinse the butt, done.
handheld news on PC gaming community
steamdeck news on PC gaming community...
this ballistic missile was taken out during heavy lightning and thunder. I didn't even distinguish the explosion from the actual thunder, but it was so "close"="loud", that two of my cats sleeping in the bed with me jumped half a meter in the air lol :D
it's hard to replicate, has high upkeep, big authors' community. it seems YouTube deserves to be paid despite all the negativity towards it.
2 crashes during 24 minutes of playtime. refunded.
Time To Share Config: Venta Humidifier with pyscript
cross-posted from: https://reddthat.com/post/550018
> So, I decided to buy a venta evaporative humidifier (AH550) which has wifi support. Unfortunately there is no homeassistant integration for this, so I needed to find a workaround solution with pyscript.
>
> What to do to get there:
> - download the venta home app to your smartphone (you need this to initially connect your humidifier to your wifi)
> - create an account (sigh)
> - in the app connect your humidifier to your wlan
> - delete the account
> - delete the venta home app
> - in homeassistant install pyscript integration via hacs
> - create a pyscript folder in your config
> - create the necessary sensors input_booleans, input_numbers, input_selects in homeassistant
> - restart homeassistant
> - add a file "requirements.txt" in your pyscript folder
> - add the text "venta_protocol_v3_device" in your requirements txt
> - create a python file, I called mine "venta_humidifier.py"
> - add the below code into the python file and voila all services and data available in local api can be used in homeassistant through automations
>
> > from venta_protocol_v3_device import Venta_Protocol_v3_Device > import json > > @service > def venta_setfanspeed(myip=None,mytarget=None): > """yaml > name: Sets the Fan Speed of the Venta device > description: Sets the Fan Speed of the Venta device > fields: > myip: > description: provide IP of venta humidifier > example: 192.168.40.108 > required: true > mytarget: > description: provide fan speed between 1 and 3 > example: 1 > required: true > > """ > d = Venta_Protocol_v3_Device(myip) > mytask = task.executor(d.setFanSpeed, target=mytarget) > > @service > def venta_setautomatic(myip=None,mytarget=None): > """yaml > name: Enables / disables the Automatic mode of the Venta device > description: Enables / disables the Automatic mode of the Venta device > fields: > myip: > description: provide IP of venta humidifier > example: 192.168.40.108 > required: true > mytarget: > description: set if True or False > example: True > required: true > > """ > d = Venta_Protocol_v3_Device(myip) > mytask = task.executor(d.setAutomatic, target=mytarget) > > @service > def venta_setsleepmode(myip=None,mytarget=None): > """yaml > name: Enables / disables the Sleep mode of the Venta device > description: Enables / disables the Sleep mode of the Venta device > fields: > myip: > description: provide IP of venta humidifier > example: 192.168.40.108 > required: true > mytarget: > description: set if True or False > example: True > required: true > > """ > d = Venta_Protocol_v3_Device(myip) > mytask = task.executor(d.setSleepMode, target=mytarget) > > @service > def venta_setpower(myip=None,mytarget=None): > """yaml > name: Enables / disables the the Venta device > description: Enables / disables the the Venta device > fields: > myip: > description: provide IP of venta humidifier > example: 192.168.40.108 > required: true > mytarget: > description: set if True or False > example: True > required: true > > """ > d = Venta_Protocol_v3_Device(myip) > mytask = task.executor(d.setPower, target=mytarget) > > @service > def venta_settargethumidity(myip=None,mytarget=None): > """yaml > name: Sets the target humidity of the Venta device > description: Sets the target humidity of the Venta device > fields: > myip: > description: provide IP of venta humidifier > example: 192.168.40.108 > required: true > mytarget: > description: sets target humidity in 5% steps > example: 55 > required: true > > """ > d = Venta_Protocol_v3_Device(myip) > mytask = task.executor(d.setTargetHum, target=mytarget) > > @service > def venta_getstatus(myip=None): > """yaml > name: Contacts the Venta device and populates / updates the class properties > description: Contacts the Venta device and populates / updates the class properties > fields: > myip: > description: provide IP of venta humidifier > example: 192.168.40.108 > required: true > > """ > d = Venta_Protocol_v3_Device(myip) > mytask = task.executor(d.getStatus) > data= task.executor(d.toJSON) > x = json.loads(data) > service.call("input_number", "set_value", blocking=True, entity_id="input_number.venta_temperature", value=round(x['Temperature'],2)) > service.call("input_number", "set_value", blocking=True, entity_id="input_number.venta_humidity", value=round(x['Humidity'],2)) > service.call("input_number", "set_value", blocking=True, entity_id="input_number.venta_targethumidity", value=round(x['TargetHum'],0)) > service.call("input_number", "set_value", blocking=True, entity_id="input_number.venta_daystoservice", value=round(x['DaysToService'],0)) > if x['SleepMode'] == True: > service.call("input_boolean", "turn_on", blocking=True, entity_id="input_boolean.venta_sleepmode") > else: > service.call("input_boolean", "turn_off", blocking=True, entity_id="input_boolean.venta_sleepmode") > if x['Power'] == True: > service.call("input_boolean", "turn_on", blocking=True, entity_id="input_boolean.venta_power") > else: > service.call("input_boolean", "turn_off", blocking=True, entity_id="input_boolean.venta_power") > if x['Warnings'] == True: > service.call("input_boolean", "turn_on", blocking=True, entity_id="input_boolean.venta_lowwaterwarning") > else: > service.call("input_boolean", "turn_off", blocking=True, entity_id="input_boolean.venta_lowwaterwarning") > if x['Automatic'] == True: > service.call("input_boolean", "turn_on", blocking=True, entity_id="input_boolean.venta_automatic") > else: > service.call("input_boolean", "turn_off", blocking=True, entity_id="input_boolean.venta_automatic") > if x['FanSpeed'] == 1: > service.call("input_select", "select_option", blocking=True, entity_id="input_select.venta_fanspeed", option="low") > elif x['FanSpeed'] == 2: > service.call("input_select", "select_option", blocking=True, entity_id="input_select.venta_fanspeed", option="medium") > elif x['FanSpeed'] == 3: > service.call("input_select", "select_option", blocking=True, entity_id="input_select.venta_fanspeed", option="high") >
Pyscript appreciation post
As an initial post, I just wanted to say that Pyscript changed my whole usage of Home Assistant. I don't even use the built-in automations: everything is performed by Pyscript. Without it, I would dump 90% of my automation ideas due to the clunky automation interface and YAML clunkiness.
If you are too humble to post at the Pyscript GitHub Discussions, please post your questions here!
Finally converted a gaggia classic by building a gaggiuino controller
YouTube Video
Click to view this content.
cross-posted from: https://discuss.tchncs.de/post/179956
> To get more into espresso i finally got a used gaggia classic and upgraded it with a replacement controller running the open source gaggiuino project. > > Fully with loadcell scales, pressure sensor, pid temperature control and a hand soldered all in one pcb. > > You can also use standard arduino style modules for most components but the pcb makes it much more compact and reliable. > > In this case the modifications are fully reversible in case a future owner wants to revert it back to stock. > > Works great and automates a lot of steps to be more consistent. Now i just need to practice the manual parts of making espresso ;) > > Note: this is not my project, i just documented the build process on my machine. > Maybe it helps someone to get an overview what goes into such a conversion and inspires more users to attempt it. > > The community is already pretty big and many also adapted the project for other machines. > > > > *Seems like the post was synchronized only after editing multiple times
First post
Here you are, a GCP subreddit community.
If you are a /r/gaggiaclassic moderator, and you want to get your moderatorship here - let me know.