Dynamic GPS Location?

I am a long-time Smartthings user with a pretty complex house. I got the Hubitat for my RV because it can operate locally without an internet connection.

The problem, however, is the Hubitat does not know where it is unless I tell it. The network in the RV has a Peplink BR1-MAX router that provides an internet connection whenever it finds a Google Fi, Verizon or open Wi-Fi signal.

It also supplies a continuous stream of GPS NMEA location sentences available on 192.168.50.1:60660. Does anyone know of a way to update the Hubitat lat & long dynamically? I can imagine the following functionality:

  • The location is not updated unless the NMEA data is stable for a specified period of time.
  • Sunrise and Sunset is updated based on this new location.
  • Very accurate GPS time data is included that could be used to keep the Hubitat updated.

I have a Python example that shows how to set up the socket and decode the stream, but I don't yet know enough about Hubitat to know if this function is an app, driver, or internal function.

Any comments or suggestions? If this should be best posted elsewhere, let me know.

Tagging @srwhite as he has been known to roam around the country in a Hubitat-equipped RV. Perhaps he has some tips?

:smiley:

I have learned more about the connection between my Pepwave router and external devices. The router can send NMEA sentences to a specified IP:port. No handshaking is required.

Has anyone seen an app or driver that will listen on a port and populate the Hubitat location with the received information?

Hubitat listens on port 39501. Incoming traffic is then transferred to a device whose Device Network ID (DNI) matches either the IP Address or MAC Address in HEX with no delimiters. This works for TCP traffic, not UDP traffic.

1 Like