Since my air fryer notification I’ve bought 2 more Esp32 Dev boards from The Greal Mall of China- AliExpress. A couple days later I’d read about MMwave sensors and purchased a couple of those too.

A week later and they land a day after each other. I got home today and found 2 MMwave sensors on the kitchen table.

I had half an hour before I had to pick the kids up so I tried to wire and flash it.

The first problem was the writing. I’m 40 now but always had awesome vision, so shit like this just shows me how much it’s actually deteriorated. I had to get my phone out and zoom in to work out where to plug in my wires.

I managed to plug shit in and flash the basic firmware on the board, and managed to add some basic code I’d found for my board when I searched using it’s full AliExpress name.

I left with a sensor running in HA happy it was that easy. But…

I did some digging, because all I was getting in HA was an occupancy On status, no variance or info.

I found that when I just searched for the sensor without HLK at the beginning or whatever was at the end, there was loads of info. I found a GitHub full of code for my sensor and happily added it to my esp32.

First I had an issue OTA flashing with some password issue, so I flashed it over USB and it worked, I had new sensors in HA! The problem was that they were unresponsive.

I’d positioned it at this point and figured the Dupont wires I used had probably come loose. When I unplugged and replugged it all, success

This thing is awesome. It could see me at my computer and I must have been only just visible to it, I was sat kinda beside it, must have amazing peripheral vision.

Since I’ve got it going it’s detected occupancy throughout. I was watching it pick up my wife just watching TV, unlike my aqara ZigBee one.

My worry is that it’ll take a while fine tuning it to filter out the cats. I’m hoping to use it with my espresence setup to make sofa-sleeping more chill. I don’t want lights popping on and off when I’m snoring and my wife gets up, but I do want the lights off when we’re both in bed.

I need to fine tune the espresence though, or rely on it less. It seems like it’s more like Room Assistant than I thought and I flit around the house in Bluetooth Land. I’ve managed to improve it by moving the sensors and turning my HA beacon to High from Medium and up to Low Latency.

I can set up another MMwave sensor but I’m gonna move my front room aqara to the bedroom and see if I need any.

I might try a pressure sensor for the bed next, or maybe see if I can run a Squeezebox node from it.

  • The Pantser@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    4 months ago

    Best tool I found to help with the setup of mmwave sensors is using these cards.

    But for some reason I can’t find where I got the template, I will share mine.

    
    type: vertical-stack
    title: Lab Motion
    cards:
      - type: horizontal-stack
        cards:
          - type: entities
            entities:
              - entity: switch.lab_motion_engineering_mode
                name: engineering mode
      - type: vertical-stack
        cards:
          - type: entities
            entities:
              - entity: number.lab_motion_timeout
                name: timeout
              - entity: number.lab_motion_max_move_distance_gate
                name: max move distance gate
              - entity: number.lab_motion_max_still_distance_gate
                name: max still distance gate
              - entity: select.lab_motion_light_function
                name: light function
              - entity: number.lab_motion_light_threshold
                name: light threshold
          - type: horizontal-stack
            cards:
              - type: entity
                entity: sensor.lab_motion_detection_distance
                name: distance
              - type: entity
                entity: sensor.lab_motion_moving_distance
                name: move
              - type: entity
                entity: sensor.lab_motion_still_distance
                name: still
      - type: horizontal-stack
        cards:
          - type: entity
            entity: sensor.lab_motion_move_energy
            name: move energy
          - type: entity
            entity: sensor.lab_motion_still_energy
            name: still energy
      - type: horizontal-stack
        cards:
          - type: entity
            entity: binary_sensor.lab_motion_presence
            name: presence
            state_color: true
          - type: entity
            entity: binary_sensor.lab_motion_moving_target
            name: movement
            state_color: true
          - type: entity
            entity: binary_sensor.lab_motion_still_target
            name: still
            state_color: true
      - type: conditional
        conditions:
          - condition: state
            entity: switch.lab_motion_engineering_mode
            state: 'on'
        card:
          type: vertical-stack
          cards:
            - type: horizontal-stack
              cards:
                - type: entity
                  entity: sensor.dining_room_motion_light
                  name: light
                - type: entity
                  entity: binary_sensor.dining_room_motion_out_pin_presence_status
                  name: out pin presence
                  state_color: true
            - type: horizontal-stack
              cards:
                - type: entity
                  entity: sensor.dining_room_motion_g0_move_energy
                  name: g0
                - type: entity
                  entity: number.dining_room_motion_g0_move_threshold
                  name: ' '
                - type: entity
                  entity: sensor.dining_room_motion_g0_still_energy
                  name: ' '
                - type: entity
                  entity: number.dining_room_motion_g0_still_threshold
                  name: ' '
            - type: horizontal-stack
              cards:
                - type: entity
                  entity: sensor.dining_room_motion_g1_move_energy
                  name: g1
                  icon: ' '
                - type: entity
                  entity: number.dining_room_motion_g1_move_threshold
                  name: ' '
                  icon: ' '
                - type: entity
                  entity: sensor.dining_room_motion_g1_still_energy
                  name: ' '
                  icon: ' '
                - type: entity
                  entity: number.dining_room_motion_g1_still_threshold
                  name: ' '
                  icon: ' '
            - type: horizontal-stack
              cards:
                - type: entity
                  entity: sensor.dining_room_motion_g2_move_energy
                  name: g2
                  icon: ' '
                - type: entity
                  entity: number.dining_room_motion_g2_move_threshold
                  name: ' '
                  icon: ' '
                - type: entity
                  entity: sensor.dining_room_motion_g2_still_energy
                  name: ' '
                  icon: ' '
                - type: entity
                  entity: number.dining_room_motion_g2_still_threshold
                  name: ' '
                  icon: ' '
            - type: horizontal-stack
              cards:
                - type: entity
                  entity: sensor.dining_room_motion_g3_move_energy
                  name: g3
                  icon: ' '
                - type: entity
                  entity: number.dining_room_motion_g3_move_threshold
                  name: ' '
                  icon: ' '
                - type: entity
                  entity: sensor.dining_room_motion_g3_still_energy
                  name: ' '
                  icon: ' '
                - type: entity
                  entity: number.dining_room_motion_g3_still_threshold
                  name: ' '
                  icon: ' '
            - type: horizontal-stack
              cards:
                - type: entity
                  entity: sensor.dining_room_motion_g4_move_energy
                  name: g4
                  icon: ' '
                - type: entity
                  entity: number.dining_room_motion_g4_move_threshold
                  name: ' '
                  icon: ' '
                - type: entity
                  entity: sensor.dining_room_motion_g4_still_energy
                  name: ' '
                  icon: ' '
                - type: entity
                  entity: number.dining_room_motion_g4_still_threshold
                  name: ' '
                  icon: ' '
            - type: horizontal-stack
              cards:
                - type: entity
                  entity: sensor.dining_room_motion_g5_move_energy
                  name: g5
                  icon: ' '
                - type: entity
                  entity: number.dining_room_motion_g5_move_threshold
                  name: ' '
                  icon: ' '
                - type: entity
                  entity: sensor.dining_room_motion_g5_still_energy
                  name: ' '
                  icon: ' '
                - type: entity
                  entity: number.dining_room_motion_g5_still_threshold
                  name: ' '
                  icon: ' '
            - type: horizontal-stack
              cards:
                - type: entity
                  entity: sensor.dining_room_motion_g6_move_energy
                  name: g6
                  icon: ' '
                - type: entity
                  entity: number.dining_room_motion_g6_move_threshold
                  name: ' '
                  icon: ' '
                - type: entity
                  entity: sensor.dining_room_motion_g6_still_energy
                  name: ' '
                  icon: ' '
                - type: entity
                  entity: number.dining_room_motion_g6_still_threshold
                  name: ' '
                  icon: ' '
            - type: horizontal-stack
              cards:
                - type: entity
                  entity: sensor.dining_room_motion_g7_move_energy
                  name: g7
                  icon: ' '
                - type: entity
                  entity: number.dining_room_motion_g7_move_threshold
                  name: ' '
                  icon: ' '
                - type: entity
                  entity: sensor.dining_room_motion_g7_still_energy
                  name: ' '
                  icon: ' '
                - type: entity
                  entity: number.dining_room_motion_g7_still_threshold
                  name: ' '
                  icon: ' '
            - type: horizontal-stack
              cards:
                - type: entity
                  entity: sensor.dining_room_motion_g8_move_energy
                  name: g8
                  icon: ' '
                - type: entity
                  entity: number.dining_room_motion_g8_move_threshold
                  name: ' '
                  icon: ' '
                - type: entity
                  entity: sensor.dining_room_motion_g8_still_energy
                  name: ' '
                  icon: ' '
                - type: entity
                  entity: number.dining_room_motion_g8_still_threshold
                  name: ' '
                  icon: ' '