Now, I have one question about these: How do I shut them up? Every time my gateway sends a full current data packet, it retransmits the entire history again.
You need to send a properly formatted 0010 reply to the GW after it requests the current time in a 0100 5-byte packet.
The reply must contain your PWS serial number issued by LCX - the 7FFFxxxxxxxxxxxxxx hex number.
It must also contain the correct local time/date (if you want your LCD display to have an accurate clock).
Last, and there is some controversy about this, you probably need to update the "epoch" field in the reply packet to match the value that the GW expects. It is my opinion that if the epoch value is not set correctly, then the GW will interpret this as an internet interruption and start sending historical packets again.
I have this handshake working perfectly in the latest (unreleased) version of SkySpy. The only time I see 210-byte packets is when I stop or pause the SkySpy service long enough for the GW to time out.
I have been pretty busy lately doing other stuff besides software development, but I have been working on the user manual this week. I am up to 30 pages so far
I will need a couple brave souls to test the next version, sometime in the next week or two. It supports both embedded MySQL as well as full-up MySQL. It will autocreate the necessary MySQL schemas. I have changed the original schemas slightly - enough to make them incompatible. It should be relatively easy to migrate old schema data to the new format, but I have not gotten around to that.
Back to your problem:
The long 210-byte packets are a bit of a red herring. I believe they are sent to LCX to catch up with historical sensor readings after a prolonged internet outage. You don't need to deal with them if you are consistently logging/parsing the 197-byte Sensor Data Packets (SDP). The SDP contains a single set of the most recent sensor readings.
If you fail to
properly handshake the 5-byte packet the GW sends out, the GW interprets this as a loss of connectivity. The GW then starts sending historical data over-and-over-and-over until it gets a valid handshake from the "LCX server". In this case the server is the SkySpy (or whatever) server.
Since you are not handshaking properly, most of your traffic will be useless historical data packets.
SkySpy ignores any 210 byte packets that pass by. Typically your GW will sync up with SkySpy after a couple packets and stop sending them. The only time they return is if you stop the SkySpy service long enough for the "internet" indicator to extinguish on the LCD panel. My guess it that it times out after 5-10 minutes, but I have not measured it.