New: the AI firewall watches the whole platform and explains each incident in plain words. See how it works

David Patel

davidp11

@david-patel · Joined March 2025

Newcomer

Facility manager · hospitality · new to IoT

Topics
8
Replies
62
Points
0
Newcomer10 points to Member

Forum Replies Created

Viewing 15 posts – 1 through 15 (of 62 total)

Had exactly this at one of our properties after the ISP turned IPv6 on. The Pi gets an IPv6 address, tries it first, the route is broken and it waits for the timeout before falling back to IPv4. Your curl test shows that.

I didn’t want to switch IPv6 off for everything, so I told the Pi to prefer IPv4. Uncomment this line in /etc/gai.conf:

precedence ::ffff:0:0/96  100

No reboot needed for new processes, just restart your script. If you only want it for the script, you can force it in Python before importing requests:

import socket
import urllib3.util.connection as conn
conn.allowed_gai_family = lambda: socket.AF_INET

And Owen’s idea is still a good one for later. Put the hotel’s public IPv4 in the key’s IP allowlist so a stolen key is useless elsewhere.

Accepted solution♥ 6

I’m new to IoT but we had exactly this with a Pi in a steel box in our hotel’s pool plant room. Our IT guy talked me out of soldering. A closed steel box is close to a Faraday cage, so the onboard chip antenna inside it will always struggle, and the Pi 3 is not designed for an external one.

What we did instead, cost about 20 dollars:

  1. A USB Wi-Fi adapter with an RP-SMA connector.
  2. A short RP-SMA extension cable through a cable gland in the box, antenna mounted outside on top.
  3. Onboard Wi-Fi switched off so the dongle is the only wlan0. Add dtoverlay=disable-wifi to config.txt and reboot. Then put your Wi-Fi settings on the dongle as usual.

Our signal went from about -84 to -58 dBm.

On the Hermetry side I also lengthened the offline alarm. The docs suggest an Open after time longer than a normal reconnect for devices that can drop briefly, we use 600 s, so a 30 second Wi-Fi dip no longer wakes anyone. Keepalive is 60 s in our script.

Accepted solution♥ 2

Probably the least qualified person in this thread, but our electrician sorted almost the same thing in our boiler room, and Emily’s point is why yours sits at 9 V. Your 10k pull-up and 10k pulldown make the gate about 12 V, minus the threshold gives the source a bit under 10 V. The MOSFET is half on, so it gets warm.

His fix was to throw the MOSFET out. A PLC input like that only draws a few milliamps (ours was about 5 mA at 24 V, the manual says), and a PC817 transistor can switch that by itself:

Pi side:   GPIO17 -- 330R -- PC817 anode (pin 1),  cathode (pin 2) -- Pi GND
24 V side: +24 V -- PC817 collector (pin 4)
           PC817 emitter (pin 3) -- PLC input I0.5
           PLC input common -- 0 V

Opto on, the input sees close to 24 V. Opto off, nothing. Isolation stays. If you want something with a DIN rail clip and a label on it, a ready-made 24 V opto or relay module does the same.

On the Hermetry side he set the hold command as High impact so whoever sends it has to confirm. A board control won’t send a high-impact command though, so it goes from the device’s Commands tab. For a hold request that stops a line, we found that was fine.

Accepted solution♥ 1

I’m a facilities guy, not an EE, but I chased this exact idea for a lobby display last year and burned an afternoon on it. The Pi doesn’t implement HEC. On HDMI that’s pins 14 and 19, and the Pi has no Ethernet PHY behind them, so there’s nothing to switch on in software. No overlay will fix it.

What I ended up with, and what I’d try in your order:

  1. A micro-USB to Ethernet adapter on the Zero’s USB port (not the PWR one). ASIX AX88772 based ones work out of the box, eth0 just appears. Mine was about ten dollars.
  2. USB gadget mode: the Zero pretends to be a network card to a laptop over the USB cable. Add dtoverlay=dwc2 to config.txt and modules-load=dwc2,g_ether after rootwait in cmdline.txt. Then the laptop has to share its connection.
  3. Swap for a Zero 2 W if Wi-Fi ever becomes allowed.

Once eth0 is up the MQTT side is the same as any other Pi, TLS on 8883 with the device token.

Accepted solution♥ 4
Viewing 15 posts – 1 through 15 (of 62 total)