Gå til indhold
← Alle indlæg

Mammotion Flora i Home Assistant: det, der faktisk virker

GPS-klipning uden kantkabel, en tidsplan i HA, der tager højde for vejret, og satellitsensoren, som ingen advarer dig om. Ærlig status efter flere måneder.

10. januar 2025
Mammotion Flora i Home Assistant: det, der faktisk virker

Min Husqvarna 213C kørte i årevis uden at have det mindste med Home Assistant at gøre. Det har en siddeklipper ikke: man sætter sig op, kører, og så er man færdig. Regnede det, aflyste jeg selv. Var jeg væk, ventede plænen.

Der var ikke noget dramatisk ved det. Bare irriterende nok til, at jeg til sidst skiftede.

Jeg skiftede den ud med en Mammotion Luba Mini 2 (jeg kalder den Flora) for cirka et år siden, først og fremmest fordi den har en rigtig HA-integration. Her er, hvad jeg har lært efter et år.

Opsætning

Flora navigerer med GPS og RTK, uden kantkabel. RTK-korrektionerne kommer fra iNav NetRTK over 4G. Jeg droppede den fysiske RTK-basestation i haven og valgte Network RTK, som sender korrektionerne via mobilnettet og Mammotions cloud. Ingen antenne på taget, intet kabel ud i haven. Prisen er, at hvert positionstjek går en tur over internettet, og det betyder mere, end man skulle tro. Mere om det under «Det, der er træls».

Grænsen tegnes én gang i Mammotion-appen, og derefter holder klipperen sig inden for den. Vision-modulet er et lille kamera på klipperen, der opdager forhindringer.

Flora efter en tur i haven

Flora klarer alle 1.000 m² selv. Intet nedgravet kabel og ingen plastikpinde, der markerer forbudte områder. Tegn grænsen én gang i appen, så klarer hun resten ved hver eneste klipning og arbejder sig uden om træer, dammen og hvad der ellers er havnet på plænen.

Installation: HACS, søg efter Mammotion, og log ind med din konto. Derefter dukker disse op:

lawn_mower.flora
sensor.flora_battery
sensor.flora_satellites_robot   — den vigtige, se nedenfor
sensor.flora_wifi_rssi

Sensoren for antal satellitter

sensor.flora_satellites_robot er den mest nyttige entitet, integrationen giver dig. Og det er den, ingen taler om.

Under cirka 10 satellitter begynder GPS-positionen at blive usikker. Klipperen stopper ikke, men den tøver ved grænserne og kommer sommetider lidt for tæt på hækken. Jeg opdagede det, fordi den opførte sig underligt på overskyede morgener, og til sidst kunne jeg koble det til et lavt antal satellitter.

Jeg har sat farvegrænser på chippen med card_mod: grøn over 12, orange fra 8 til 12 og rød under 8. Nu kan jeg med et blik se, om forholdene er gode, før klipperen starter.

En ny tidsplan i stedet for appens

Tidsplanen i Mammotion-appen kan én ting: køre klipperen på faste tidspunkter på faste dage. Den tager ikke højde for vejret.

Jeg erstattede den med hjælpere i HA: én input_boolean pr. ugedag og én input_number til klokkeslættet:

input_boolean.flora_mandag ... flora_sondag
input_number.flora_starttidspunkt   (7-20, step 0.5)

Automationen tjekker hver time:

alias: Flora — Kør efter tidsplan
trigger:
  - platform: time_pattern
    minutes: "0"
condition:
  - condition: template
    value_template: >
      {% set day_map = {
        0: 'mandag', 1: 'tirsdag', 2: 'onsdag',
        3: 'torsdag', 4: 'fredag', 5: 'lordag', 6: 'sondag'
      } %}
      {{ is_state('input_boolean.flora_' ~ day_map[now().weekday()], 'on') }}
  - condition: template
    value_template: >
      {{ now().hour == states('input_number.flora_starttidspunkt') | int(0) }}
  - condition: not
    conditions:
      - condition: state
        entity_id: weather.forecast_home
        state: [rainy, pouring, snowy, lightning-rainy]
action:
  - service: lawn_mower.start_mow
    target:
      entity_id: lawn_mower.flora

Dashboardet er en række kontakter, én pr. dag. Man kan se præcis, hvad tidsplanen er, og ændre den uden at åbne en app. Det alene var skiftet værd.

Dashboard

custom:lawn-mower-card (HACS) viser en tegning af klipperen med batteriniveau og nedenunder Mushroom-chips med måledata:

- type: custom:mushroom-chips-card
  chips:
    - type: entity
      entity: sensor.flora_battery
      icon: mdi:battery
    - type: entity
      entity: sensor.flora_satellites_robot
      icon: mdi:satellite-variant
    - type: entity
      entity: sensor.flora_wifi_rssi
      icon: mdi:wifi

Vision-modulet

Pindsvin. Det er det første, folk spørger om i Danmark, og svaret er ja: Vision-modulet stopper for dem.

Det stopper også for en glemt haveslange, havemøbler og en enkelt gang for skyggen fra en flagstang på et bestemt tidspunkt om eftermiddagen. Den fejl tog mig et stykke tid at gennemskue. Klipperen stoppede kl. 16.30 hver solskinsdag, meldte ingen forhindring og kørte videre efter et minut. Det var skyggens vinkel. Modulet reagerer på kontraster, ikke kun på fysiske ting.

Mammotion har forbedret det i senere firmwareopdateringer. Det er for det meste fint nu.

Der er ingen sensor i HA for hændelser fra Vision-modulet, så jeg kan ikke lave automationer på dem. Det er en reel mangel.

Floras Vision-modul efter hardwarefejlen

I foråret, da jeg tog Flora ud af værkstedet efter hendes første vinter i opbevaring, var Vision-modulet gået i stykker. Det var ikke slidt ned. Der var trængt fugt ind i det ene kameraobjektiv over vinteren, som man kan se på billedet, og det holdt simpelthen op med at se noget.

Jeg kontaktede Mammotions support og ventede den sædvanlige runddans: opret en sag, send billeder, vent, send de samme billeder igen. Sådan gik det ikke. De fandt hurtigt frem til problemet, var professionelle hele vejen og sendte et nyt modul inden for et par dage uden diskussion. Det, der skilte sig ud, var opfølgningen: Da det nye modul var kommet, vendte de tilbage for at høre, om alt kørte, som det skulle. Den slags opfølgning efter købet er sjælden hos hardwareproducenter, og den gjorde en reel forskel.

Modulet kan altså gå i stykker, og vinteropbevaring med fugt er en kombination, man skal have i baghovedet. Men sker det, er du i gode hænder.

Det, der er træls

Integrationen er langsom til at reagere. Kommandoer tager 30 til 60 sekunder om at slå igennem. Længe troede jeg bare, at API'et var langsomt. Efter en hel sæson med Flora på 4G Network RTK tror jeg, at forklaringen ligger dybere: hele Floras navigation går via Mammotions cloud. Hvert RTK-korrektionssignal rejser over 4G til deres servere og tilbage ved hvert eneste positionstjek. Cloud-API'et har altså travlt bare med at holde hende på rette kurs, og HA's statusforespørgsler må vente i køen. Det er ikke en fejl, det er arkitekturen.

Det er stadig irriterende på dashboardet. Min løsning er et lille script, der sender start_mow og tvinger en opdatering af entiteten fem sekunder efter. Det er tid nok til, at kommandoen er registreret, og hurtigt nok til, at dashboardet ikke viser noget forkert:

alias: Flora — Start og opdater
sequence:
  - service: lawn_mower.start_mow
    target:
      entity_id: lawn_mower.flora
  - delay:
      seconds: 5
  - service: homeassistant.update_entity
    target:
      entity_id: lawn_mower.flora

Fejlen «Robot out of task area» kommer stadig af og til, altid ved de forbudte zoner rundt om blomsterbedene. Min første teori var ren multipath, altså GPS-signaler, der reflekteres af de hævede bede. Efter en hel sæson tror jeg, at det er en kombination: multipath giver et øjebliks usikkerhed om positionen, og forsinkelsen på 4G gør, at RTK-korrektionen ikke når frem hurtigt nok til at rette op på det. Når signalet reflekteres af et højbed, har Flora brug for en korrektion med det samme for at bekræfte, at hun er inden for grænsen. Har mobilnettet et kort udfald præcis i det sekund, når korrektionen ikke frem i tide, og hun stopper. To problemer, der rammer samtidig og forstærker hinanden.

Den reelle mangel er, at integrationen ikke har en sensor for fejlkoder. Der kommer ingen besked, når hun har siddet fast i haven i 20 minutter. Jeg skal åbne Mammotion-appen for at opdage, at noget er galt. Indtil den sensor findes, kører jeg denne automation:

alias: Flora — Advarselsbesked ved pause
trigger:
  - platform: state
    entity_id: lawn_mower.flora
    to: "paused"
    for:
      minutes: 10
action:
  - service: notify.mobile_app
    data:
      title: "Flora er stoppet"
      message: "Flora har stået på pause i 10 minutter — tjek haven."

Primitiv, men den virker. Enten sidder hun fast, eller også er hun færdig tidligere end planlagt, og begge dele vil jeg gerne vide.

Første gang skal grænsen tegnes i appen, det er der ingen vej uden om. Når det er gjort, behøver du aldrig appen igen. Men første gang skal du bruge den.

Alt i alt er den det hele værd og mere til. Flora er mere afhængig af internettet end noget andet haveredskab, jeg har haft, og afhængigheden af 4G stikker dybere, end man skulle tro. Men jeg er oprigtigt glad for hende. Hun er en del af det smarte hjem nu, og det er svært at undvære, når man først har prøvet det.

Nye indlæg direkte i din RSS-læser: følg med via RSS I Google-søgning: vælg szimnau.dk som foretrukken kilde