Welcome to Incremental Social! Learn more about this project here!
Check out lemmyverse to find more communities to join from here!

CondorWonder

@CondorWonder@lemmy.ca

This profile is from a federated server and may be incomplete. Browse more on the original instance.

Using HA to start my work laptop

No major question here, just thought you might find this interesting. It's an example of the kind of (off-the-wall) things you can do with HA that aren't immediately obvious. When I was starting out with HA, I enjoyed reading these examples, because it gave me ideas for my own setup. And, I wrote many automations that should...

CondorWonder ,

I do this with my desktop - I work from home so it’s really nice to have my PC ready by the time I get down to it. There’s a workday integration too, set your typical schedule and it’ll be true when it’s a workday - with a motion sensor as the trigger as my start time varies if I have meetings
In the morning.

This is one of the first things I set up with HA for fun but the convenience is really nice.

CondorWonder ,

If it’s logs, there’s a package called log2ram - it’s designed for small form factor systems to reduce writes to SD cards but does apply anywhere you want to log but not hit disk immediately. It syncs logs to disk on a regular basis so you don’t lose much if the system crashes.

CondorWonder ,

WoL packets are usually sent to the ip broadcast address for the network as they’re not ip based. I don’t know if this would ever work well across networks. Can you do send the wol packet from the opnsense router instead? Does it work then?

If you’re sending it to the IP of the server, it likely works soon after your turn the machine off because the ARP entry hasn’t timed out yet, but once it times out it won’t work anymore. The router doesn’t know how to get to the machine. You may be able to add a static arp mapping to get it to work long term.

CondorWonder ,

From a Linux command line it would be the command called arp, you need to add a static arp entry. I don’t know how that works on sense, but on Linux it would be something like
arp -s IP MAC

Maybe there’s a module in opnsense to help. The way I’ve done this before is using a machine connected to the same network at my target to wake up by logging into that machine and issuing the wake command.

CondorWonder ,

Yes, based on my migration from a Raspberry Pi to a mini x86 pc. A full backup contains a complete snapshot of that moment and all your configuration, history, and all add-ons and their data. I think HACS came across too, though I can easily be misremembering.

The restore looked like it tried to do everything but my large database add on (PostgreSQL) gave it grief so I ended up restoring components separately. The backups did work overall though, and after a few reboots everything worked.

CondorWonder ,

The add-on store that’s managed and updated via the supervisor. It does the same thing as your setup, but integrates into HA nicer (automatic connectivity to HA for the containers, when they need it). If you’re happy with how your setup works then there’s no compelling reason to switch.

CondorWonder ,

All that yes. The Wooting One (original that uses IR light) let you use buttons to simulate controller axes, change how hard you need to press to activate, and add second functions to keys. It was an interesting idea but I found the gaming part the original keyboard to be only usable in a limited set of games as it’s not as sensitive as a controller stick, and as a keyboard it wasn’t great either. Hopefully V1 problems, I know they had through another version of the IR keyboard, and then came out with the Hall effect keyboard. I like the idea but never could get used to it, and when the spacebar was loose I retired it after fixing it.

Can you walk me through debouncing please

The other day, @tifriis posted an awesome article about Zigbee network performance and it brought attention to something I was unaware of, which is that my devices aren't supposed to shout all day, everyday about doing mostly nothing. I immediately followed the advice in the article and tried to debounce everything. But then...

CondorWonder ,

I’m curious too. As I understand it (and based on my observations after playing with it), it doesn’t change how often they send data to the controller, but instead changes how often the controller passes the data on. It doesn’t help the network, just the MQTT/Home Assistant side, but it can mean they flood the database less, if they’re tracking a value (like temperature). If they’re following a state (open or close) then I find they would miss the important messages and just not work well.

In my case I’ve found a few Tuya devices that seem like they have bad firmware and flood the zigbee network - human presence sensors and co/voc/climate sensors. I experimented with denouncing them, but I still ended up retiring most of those devices as they degraded my network performance and other devices couldn’t communicate very well. If it actually prevented the devices from flooding the network it would make a lot more sense to use.

I still have database filters to not record the main entities (for the mmWave presence sensors that I’m still using) and instead use a template on them to record their state as I found my database grew in size very quickly otherwise.

CondorWonder ,

First thing - exclude recording of the devices. My method was to use a glob so I name devices/entity IDs specifically and they don't get recorded (in my case I used f_ as in "filtered" so devices become like "F Source Presence"), but you can add specific entities or use your own glob. In configuration.yaml I have this:

recorder:
  exclude:
    entities:
      - sensor.excluded_entity_1
    # AND/OR this (then of course rename entities as needed)
    entity_globs:
      # exclude all sensor entities that start with f_
      - sensor.f_*

Then I created templates for my presence sensors, that just copy the state so I get history (yaml here, but can do through UI now too in the Helpers section, the import part is the template in the state key below):

template:
  - binary_sensor:
      - name: Real presence
        unique_id: my_presence
        state: >-
          {{ states('binary_sensor.f_source_presence}}
        availability: >-
          {{
            not (
              states('binary_sensor.f_source_presence') == 'unknown' or
              states('binary_sensor.f_source_presence') == 'unavailable'
            )
          }}
        device_class: presence

You could also use a statistics sensor to get a moving average for numeric values and get history from them too (and reduce the noise by reducing the precision and having a larger time window). This is also available through the UI - Helpers.

CondorWonder ,

Not according to the integration documentation: https://www.home-assistant.io/integrations/recorder/

The recorder integration only supports: domains, entities, events, and entity globs right now. I think that’s a good idea though, should check or create an enhancement request!

CondorWonder ,

Iirc that’s where they start ERs yes - it’s easier to see, vote, and comment on them there compared to GitHub. It’s also the source for the month of WTF where it seemed like a lot of the easier ERs get addressed.

CondorWonder ,

I'm using project boxes from Amazon, like these: https://a.co/d/4R4Dtv5 before I had a 3d printer to make something bespoke. Some of the boxes have the ESP board glued down, some it’s loose. It works well enough and doesn’t look too bad. I still use them now as it’s easier to throw everything into a box instead of designing something specific to the project.

CondorWonder ,

Zigbee2mqtt should do device auto discovery by default (it did for me and I didn’t have to do anything). Maybe you’ve turned something off? The alternative I can think of is to manually create and maintain device auto discovery records like https://stevessmarthomeguide.com/adding-an-mqtt-device-to-home-assistant/ shows (for example).

CondorWonder ,

Then to link the entities together into a device you need to mimic the auto discovery, or you just have two split entities.

I suppose you could create a template entity with the battery as an attribute to see it in the details view, but you still need the entities with the raw data. I’d be more inclined to create the device with auto discovery, seems like a cleaner way to go.

CondorWonder ,

Turned off or Turned on is the disable or enable action. If it’s changed by something in HA it should show what the trigger was too (like a user or other automation).

https://lemmy.ca/pictrs/image/768d29f7-3dca-4bfe-bf6b-27fabce95297.jpeg

Here’s an example - it shows the automations that enabled our disabled this automation, and their trigger.

To prevent the automation from being changed you can rename it, that should break anything automatic that’s changing it. You can also try to chase down what’s changing it from logs (once renamed you should start seeing errors in your HA log file), or by searching for the entity_id in your yaml configuration files.

CondorWonder ,

Try searching for your automation.entity_id - like in my case it’s something like automation.notify_washer_done (the original entity id of my automation, found via the developer - states tab). Then if I search using that in my YAML I’d see entity_id: automation.notify_washer_done, and add the context to see the full service call:

service: automation.turn_on
target:
  entity_id: automation.notify_washer_done
data: {}

Assuming it’s an automation or script your should find it in the related .yaml file and can scroll up to see the actual automation or script source.

CondorWonder ,

I use an Emporia Vue device, it uses an ESP32 internally and you can find instructions on how to flash it with esphome code onto it. No cloud dependency, just wifi.

You can get various kits for one/two/three phase mains, and monitor up to 16 individual circuits via passive current clamps.

CondorWonder ,

Set the wait to have a timeout and it will work.

Your wait needs to wait for a time, and decide if you want to proceed if you don’t get a response. Right now the wait for a trigger is expecting the event to be ready when it starts (before you’ve even seen the notification), and when it’s not the automation is stopping because continue on timeout is false. A wait for a trigger without a timeout doesn’t wait forever.

CondorWonder ,

If you set the wait to 0, it will not wait at all and will proceed immediately (or stop the automation if continue is not set). It might be counter intuitive, in some systems a 0 wait means wait forever.

CondorWonder ,

I have actionable notifications with notify.notify service working so I’m not sure there - something sounds off.

I don’t think there’s issues with long timeouts, but realize that they won’t persist through restarts of Home Assistant, and depending on your automation settings you can control the number of instances. To disconnect the action from the running automation I often add the event as another trigger to the automation and then add logic to handle the normal trigger and the notification trigger separately. No wait needed in the automation then, just fire the notification and another instance of the automation handles the action.

Need help converting dumb switches; one w/o any lights, one w/ Hue bulbs

I'm looking for a smart home solution use two switches in my living room (EU), in order to make them just smart enough so I can control some devices. The setup isn't very complex in itself, and I'm pretty sure it's doable - I'm just unsure what I'd need in order to use these switches in a 'smart' capacity......

CondorWonder ,

You don’t say if you have any IoT networks yet, like zwave or zigbee, or if you’re looking for wifi. All have advantages / disadvantages, wifi is cheap and doesn’t use a separate dongle, zigbee devices tend to be cheaper, and a good variety available, Zwave is solid and doesn’t conflict with wifi or zigbee networks.

For the Hue bulbs you want a switch that lets you disconnect the relays from the physical switch. I don’t know what devices to suggest for EU, but my preference is to make the switches smart so they continue to do switch-like-things instead of having to retrain people.

CondorWonder ,

I second the packet capture idea. Did you remove the virtual nic in the vm or just disconnect it? I’d you just disconnected it the packets were likely still directed to it as it’s the first network device.

I suspect you’re going to need to use a command line service to do a wol command as the integration doesn’t work let you pick a nic.

CondorWonder ,

This is a great case for templates. Templates are Home Assistant's way of doing dynamic actions or data.

When: whatever triggers you need for the lights - can be multiple triggers or one trigger with every light/switch listed, with a For clause. The list is "OR"ed so do however you want. You could use a group but then all devices would be changed together - which doesn't sound like is what you want.

And if: Whatever conditions you want, time, day of week, etc.

Then do: The action is where it gets interesting
add an action to execute "Generic turn off", select any device (we'll change that in a moment). The reason for the "Generic turn off" is that it works with devices in any domain (light or switch).
Then drop into the YAML view and chcange the entity_id value to this template: '{{ trigger.from_state.entity_id }}'. The trigger is a variable that's available inside the automation and can be used instead of specifying a static value somewhere. https://www.home-assistant.io/docs/automation/trigger/ for details on triggers.

Here's the complete automation, you could create a new empty automation, then copy and paste this in place and just change the trigger and conditions as you want.

alias: Action - Turn off lights 15min after turned on during day
description: ""
trigger:
  - platform: state
    entity_id:
      - switch.porch_light
    for:
      hours: 0
      minutes: 15
      seconds: 0
    enabled: true
    to: "on"
    from: "off"
condition:
  - condition: sun
    after: sunrise
    after_offset: "30"
  - condition: time
    after: "01:00:00"
    before: "23:00:00"
    weekday:
      - sun
      - mon
      - tue
      - wed
      - thu
      - fri
      - sat
action:
  - service: homeassistant.turn_off
    metadata: {}
    data: {}
    target:
      entity_id: "{{ trigger.from_state.entity_id }}"
mode: queued
max: 10

CondorWonder ,

Make sure you’re not using any of the strapping pins for the interface with the AHT22 - take a look at https://esp32.com/viewtopic.php?t=5970 for a read. It basically means leaving GPIOs 12, 0, 2, 4, 15, 5 floating during boot or the esp will not boot correctly.

These pins control the boot process (like going to the boot loader instead of your code).

CondorWonder ,

I made my own that used irrigation valves with a Zooz Zwave dry relay, with Home Assistant to control it. It was a giant pain to find and get everything hooked up right but afterwards it works well.

I’ve since found some zigbee-based irrigation valves in AliExpress that I’ll try out this summer. I think they’re about the same price as what I built per valve (considering all the parts and the time needed). I haven’t had a chance to try them yet as I got them at the end of last summer but they worked well in testing.

CondorWonder ,

Yes. There’s no support (hopefully just yet) for multiple Home Assistant instances with the same account.

My home-assistant_v2.db was gigantic and it was my fault

As a Home Assistant noob, there's some things that I'm just destined not to learn until I experience them and one such thing is that I should disable things I don't use on devices I use. I have a bunch of presence sensors in my house and they were essentially spamming my logs with the motion state, something I never need as I...

CondorWonder ,

For those devices that are very chatty you can specifically exclude them from being stored in the database. I then created template sensors that let me filter the results so I’m not spamming the database, only storing data I want. I do find the mm-wave sensors to be particularly bad, but I’ve also found Tuya-based air quality sensors to spam the logs too.

CondorWonder ,

Recorder integration: https://www.home-assistant.io/integrations/recorder/

The simplest way in configuration.yaml is something like:

recorder:
  exclude:
    entities:
      - sensor.chatty1
      - sensor.chatty2

Seeking assistance with Auto Backup HACS integration

I installed the Auto Backup HACS integration and I have a network storage configured in Home Assistant (FYI, I'm running HAOS). If I use HA's Developer Tools and manually call the "Auto Backup: Backup Full" service, there is a "Location" field where I can select my network storage. The backup successfully completes and saves to...

CondorWonder ,

Create your own automation instead of using the blueprint. The blueprint doesn’t expose the location so it won’t work.

You might be able to look at the full yaml from the trace and copy it into a new automation (replace everything, then update the name). Once you’ve done that you should be able to use the visual editor and make whatever changes you need.

CondorWonder ,

It’s called Badges - edit the dashboard page, then click on the edit button beside the tab.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • random
  • incremental_games
  • meta
  • All magazines