I’m sorry if this isn’t the place to ask this, I also asked over at !raspberrypi@lemmy.ml.

So what I want to do is this: Two RasPis are at different locations. They’re on different networks but have internet access. Pressing a button on one of the Pis turns on an LED over at the other Pi via GPIO. How can I make the communication work? My first thought was Telegram bots as I’m familiar with those for notifications but you can’t have Telegram bots communicate with each other, sadly. Is there a good (and secure) solution to this? Preferably using Python code and without continuous costs like server hosting, etc?

Thanks!

  • Disregard3145@lemmy.ml
    link
    fedilink
    arrow-up
    3
    ·
    8 months ago

    For a simple one way communucation where latency is unimportant, you might leverage any number of free services with apis you can abuse. You could send a tweer, or nastodon message, You could have one just update a file with a timestamp as a github gist or on pastebin or something.

    There are also free mqtt broker services.

    Or you could put one on the public internet with ddns name and talk directly to it.

    Or you could set up a VPN between them - is logmein still a thing? - and then talk to each other directly via that interface

  • knfrmity@lemmygrad.ml
    link
    fedilink
    arrow-up
    2
    ·
    8 months ago

    VPN server on one, client on another.

    A matrix bot on each end would work too but seems unnecessarily complicated.

    • Luis Norambuena@programming.devM
      link
      fedilink
      English
      arrow-up
      1
      ·
      8 months ago

      A VPN would be my first choice. ZeroTier works like a charm on the RPis. I’ve shared even SQLite databases over Samba over Zerotier among a bunch of RPis daily for a couple of years without a hitch.

  • Daniel Quinn@lemmy.ca
    link
    fedilink
    English
    arrow-up
    2
    ·
    8 months ago

    The easiest & cheapest option would be to expose one of the devices to the internet on a known port and connect from the other device to that one with SSH.

    Once you’ve got a connection, you can do pretty much anything you want, including writing to a pipe or even a file and polling it.

    If you don’t want to expose either, then you need a third party to facilitate the connection that is on the Open internet, though that server can be yours too. Even a €4/mo box at Hetzner would do it.

    If these options sound good, let me know and I can be more detailed.

  • xurxia@mander.xyz
    link
    fedilink
    arrow-up
    1
    ·
    8 months ago

    There are free IoT cloud solutions to send and receive data and that work with MQTT protocol for this purpose.