avryhof / ambient_aprs

Wrapper for ambient_api to allow sending APRS packets to CWOP
MIT License
10 stars 2 forks source link

Send station ID with APRS SSID #3

Open mstyne opened 5 years ago

mstyne commented 5 years ago

Hello,

Thanks for putting this library together!

I've tried modifying the code slightly to allow for sending a station callsign with an APRS SSID (e.g. K2MTS-1). The changes involve logging in to rotate.aprs.net (instead of cwop.aprs.net) with my callsign only (K2MTS) plus passcode, and using K2MTS-1 in the generated APRS packet. Unfortunately, it doesn't seem to work. Oddly, if I connect to the APRS server directly and paste in the packet that the library generates, it works just fine:

https://aprs.fi/?c=raw&call=K2MTS-1

2019-06-13 22:14:10 CDT: K2MTS-1>APRS,TCPIP*,qAS,K2MTS:@140410z4238.38N/07334.29W_147/...g...t056r...p...P000h84b09847Ambient APRS

I haven't done a ton of troubleshooting, but I thought it might be worth asking in case there's something obviously wrong in my process that I might just not be aware of.

73 Mike

avryhof commented 5 years ago

See if the code in the aprs-passcode branch works for you.

Pull Request #4

mstyne commented 5 years ago

@avryhof It does indeed work!

https://aprs.fi/?c=raw&call=K2MTS-1

No configuration changes were necessary, I am only passing station_id (as K2MTS-1), latitude, and longitude.

Packets do not seem to post reliably; I'm not sure if that's a real issue or perhaps a built-in rate limit on the CWOP endpoint. I will keep an eye on it.

Thanks so much!

avryhof commented 5 years ago

I'm not sure if it's a hard limit, or just a suggestion, but looking at http://www.wxqa.com/servers2use.html

  1. How often should I send a weather data packet?
    • Every 5 minutes or LESS often, i.e. 6 minutes, 7 minutes,.....etc.

So, I would recommend adhering to that as much as possible, just because it's in the docs, and I wouldn't want to run afoul of their server admins, and get banned for that reason.

I do have mine updating every 5 minutes. My script pulls the weather data from the API, dumps it into a Django model (sitting on top of Postgres) then sends it out to CWOP. If I had read that page in more detail previously, I might have set my limit for CWOP data to 10 minutes.