• VibeSurgeon@piefed.social
    link
    fedilink
    English
    arrow-up
    1
    ·
    3 days ago

    Valetudo actively blocks the cloud connections.

    Are you sure about that? It’d be a pretty big feature to implement, and surely it would be something that the Valetudo author would mention in the docs for the project.

    • Hypfer@discuss.tchncs.de
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 day ago

      It’d be a pretty big feature to implement, and surely it would be something that the Valetudo author would mention in the docs for the project.

      Dude. What?

      It is literally the only feature of Valetudo.

      Wat.

      What else would Valetudo possibly be doing other than disconnecting from the cloud?

      • VibeSurgeon@piefed.social
        link
        fedilink
        English
        arrow-up
        1
        ·
        23 hours ago

        Given that you are the author of the project, I do consider you the higher authority on what it can and cannot do.

        But to me, there’s a slight distinction to be made here - Valetudo allows you to directly control the robot from a server running locally on the robot, giving you the option to not interact with a cloud service in order to remotely control the robot vacuum.

        This doesn’t immediately imply that the robot is directly prevented from passing information to a cloud service - just that the cloud service does not have to be involved as a command proxy.

        The larger feature I was thinking of was not only serving a local server to allow commands to come in directly, but also actively prevent any outgoing connections from the robot vacuum to its manufacturers cloud.

        Again, you are the author - you know far better what Valetudo does and does not do, so your information weighs heavier here.

        I guess I can also mention that I will be pleasantly surprised if my Chinese robot vacuum has actually been prevented from logging any information back home as a part of me having run Valetudo for the past years.

        • Hypfer@discuss.tchncs.de
          link
          fedilink
          English
          arrow-up
          1
          ·
          22 hours ago

          I wouldn’t recommend “taking my word for it” tbh.

          This is something not decided by authority of a person but authority of the code - and, in turn, authority of a pcap file.

          • VibeSurgeon@piefed.social
            link
            fedilink
            English
            arrow-up
            1
            ·
            22 hours ago

            Fair enough. I searched for pcap files in all the repositories for Hypfer on GitHub but found nothing - do they live somewhere else, or is this just GitHubs search being generally lacking?

    • gopher@programming.dev
      link
      fedilink
      English
      arrow-up
      5
      ·
      3 days ago

      It’s just DNS based, and iirc dont require any major effort other than patching the hosts file. Of course it is possible it is not enough, but I have high confidence in the authors after also having watched various talks at I.e DEFCON, that i would be surprised if they missed the firmware doing other nasty things.

      Patching DNS is specifically possible to enable/disable on the firmware build tool: I.e https://builder.dontvacuum.me/_dreame_r2416.html and the source for that is here https://github.com/dgiese/dustbuilder-script-public/blob/7afed16999711833a8ac0b3b482e935c3ef77219/modifys8image.sh#L169

      • Hypfer@discuss.tchncs.de
        link
        fedilink
        English
        arrow-up
        2
        ·
        edit-2
        1 day ago

        It’s just DNS based, and iirc dont require any major effort other than patching the hosts file.

        Incorrect. That was technically sorta the case back on the S5 (and even there it needed firmware modifications), yes, but if DNS redirection was all it needs, then why even root the bots in the first place. Just do that on a network level and be done with it.

        • gopher@programming.dev
          link
          fedilink
          English
          arrow-up
          1
          ·
          edit-2
          21 hours ago

          Oh okay, I just assumed the main method to redirect the vendor cloud connections to the local valetudo was based on the patch DNS parts in dustbuilder that seems present on most models, but if you say more is required elsewhere to block vendor cloud connections I’m sure that’s true.

          In any case your work is highly appreciated! And i didn’t mean to suggest that it hasn’t taken a massive amount of work overall to make valetudo work as well as it does.

          • Hypfer@discuss.tchncs.de
            link
            fedilink
            English
            arrow-up
            2
            ·
            edit-2
            21 hours ago

            Aaah! Oh. Yes that makes a lot of sense indeed.

            The UX (and architecture, for that matter) of the dustbuilder has been… uh… lacking… due to the lack of refactoring. It evolved over all these years, and things that had a meaning once suddenly gained a different one, but are still named in the old ways.

            Good point, thanks for pointing it out! I’ve been doing some refactoring there, actually, and there, it’s named “disable cloud”, but I just did that for correctness. It did not occur to me that from a user-perspective, this is not just weird but actively misleading. I mean it kinda did, but I did not make the mental connection to this specific misconception. Oh well.

      • VibeSurgeon@piefed.social
        link
        fedilink
        English
        arrow-up
        1
        ·
        3 days ago

        Interesting.

        This seems to be a model-specific quirk and moreso a side effect of getting Valetudo to work rather than an explicit goal - the same option does not appear in DustBuilder for my model (Roborock S5, still going strong after 941 hours of cleaning time).

        I feel like I should check out this DEFCON talk though.

        I learned something new today, thank you for that