¿ªÔÆÌåÓý

Date

Re: How many clients can use one DireWolf instance?

 

Excellent. So how about the issue of one client crashing its entire computer (ex.: someone kicked the power cord out), so there is nothing to send "port closed" ICMP errors back to DireWolf on a different computer. Will DireWolf hang when the TCP window buffer for the failed client fills up because it blocks and can't advance to writing to the next client socket, or are these sockets configured non-blocking so a EWOULDBLOCK error would cause that client to be disconnected immediately? Presumably the default TCP window size is large enough compared to the typical AX.25 packet (with either KISS or AGWPE wrapping) that several minutes worth of packets on a saturated 1200-baud RF channel could be written to the kernel on a frozen socket before hitting the window size limit, so hopefully the TCP timeout would kick in before the socket window filled up.

Or should I conduct the experiment myself and find out? :-)

Andrew, KA2DDO

________________________________________
From: [email protected] <[email protected]> on behalf of WB2OSZ <wb2osz@...>
Sent: Tuesday, September 28, 2021 5:55 PM
To: [email protected]
Subject: Re: [direwolf] How many clients can use one DireWolf instance?

The network KISS and AGW interfaces can handle 3 simultaneous client connections each.
In extreme cases, where you need more, the limit can be increased by modifying a header file and rebuilding.

kiss_frame.h: #define MAX_NET_CLIENTS 3

If there is an error writing to a socket, the socket is closed, and becomes available to accept another client connection.


Re: Weewx to Direwolf

 

I noticed the check is not as described exactly:
?? if data['outHumidity'] < 0 or 100 <= data['outHumidity']:
That's < 0 (negative) or >= 100.

What I'd suggest (not a python coder either):
??? if data['outHumidity'] < 0:
????data['outHumidity'] = 0
? if 100 < data['outHumidity']:
????data['outHumidity'] = 99
This would comply with the 2-digit humidity, and removes any negative values. ? If the values were negative, or actually zero, there would not be output because of the if statement before the file write.

Robert Giuliano
KB8RCO



On Tuesday, September 28, 2021, 04:56:51 PM EDT, J K via groups.io <kuhnje@...> wrote:


Greg,

Awesome! ?Thanks, that is something I can Siri with. That makes great sense, no humidity - not a good packet! ?I¡¯ll chew on this and get to work.

Thanks again!

11 Max Pro

On Sep 28, 2021, at 4:39 PM, Greg D <ko6th.greg@...> wrote:

?
Found the cwxn.py code that I hacked...? It's an older version (# $Id: cwxn.py 1280 2015-03-01 17:01:56Z mwall $), but perhaps still relevant.? Both changes - null records and format change - were all in the write_data routine, at the bottom of the source file.? Warning:? this was done before I knew anything about writing in Python, so there will be better / cleaner ways to do this.

Basically, I noticed that all of the bad records had a zero value for humidity in common.? Since a truly zero humidity is effectively impossible, I used that as the key for skipping writing the data.? The formatting issue was that humidity wasn't being handled right as a 2-digit number, so my D74 wasn't decoding it properly.?

I just noticed that a true 100% humidity would get rejected too, as it is represented as zero in the output, so my two fixes are kind of broken when taken together.? {sigh}? We hardly ever get 100% humidity here, so it hasn't exactly been a problem.? Wish it were (we need the rain!).? With those excuses, here's the snippet of code:
?def write_data(self, data):
??????? fields = []
??????? fields.append("%03d" % int(data['windDir']))
??????? fields.append("/%03d" % int(data['windSpeed']))
??????? fields.append("g%03d" % int(data['windGust']))
??????? fields.append("t%03d" % int(data['outTemp']))
??????? fields.append("r%03d" % int(data['hourRain'] * 100))
??????? fields.append("p%03d" % int(data['rain24'] * 100))
??????? fields.append("P%03d" % int(data['dayRain'] * 100))
??????? if data['outHumidity'] < 0 or 100 <= data['outHumidity']:
??????????? data['outHumidity'] = 0
??????? # 2-15-2019 changed humidity format to 2 digits, per spec and for Kenwood D74 compatibility
??????? fields.append("h%02d" % int(data['outHumidity']))
??????? fields.append("b%05d" % int(data['barometer'] * 10))
??????? if data['outHumidity'] > 0:
??? ??? with open(self.filename, 'w') as f:
??????????????? f.write(time.strftime("%b %d %Y %H:%M\n",
??? ??? ??? time.localtime(data['dateTime'])))
??????????????? f.write(''.join(fields))
??????????????? f.write("\n")
Hope this helps, and apologies for the kludge,

Greg? KO6TH


J K via groups.io wrote:
Hello,

Yes, all the logs look clean. ? I looked at all the syslogs, messages, kernel messages, etc, and nothing stands out. Sure, I wouldn¡¯t mind liking at your .py if you have it to see how you blocked the ones that didn¡¯t decode properly. Roughly half of the writes to wxnow aren¡¯t decoding properly, leaving 0¡¯s as values, which is causing a ¡°zigsaw¡± chart pattern. ?I¡¯m using Weewx 4.4, cwxn 0.6, and an Acurite 02064. ?Everything decodes properly for my weewx page, WU, CWOPS, etc, just doesn¡¯t get written correctly as wxnow.txt half the time by cwxn. ?I double and triple checked to make sure it wasn¡¯t from sharing a directory, trying both samba and nfs, but the share is fine, it¡¯s just not writing correctly half the time which I can monitor locally to the actual directory wxnow.txt gets saved to my cwxn. ?Thought for a second maybe it was just the RPi1B that weewx/cwxn is on just isn¡¯t fast enough, but it should be (?). ?The DireWolf and the radio itself is running on a RPi4(8GB), so that obviously fine. ?It¡¯s not being used really for anything else (yet), but one the APRS stuff is fully working, probably will use it as a SDR server too with a RTL-SDR V3, Ham-It-Up upconverter, etc. ?Have another RPi4 (4GB) with 10¡± touchscreen that I mainly use as a portable device to run CubicSDR, Xastir, etc. ?If weewx/cwxn really needs more resources, have a few extra RPi3B+¡¯s nor doing much that could be used. ?I just thought since I had a RPi1B still sitting around (first RPi I got), it¡¯s be an ok fit. ?Have more RPi¡¯s total now than I can remember and count, lll. ?Using them for all sorts of things: Kodi/Retropie for each TV, WX, ADS-B, a few AllStar nodes, SDR, PiHole, Printer server, DNS/email servers, bunch of mmdvm¡¯s, etc, etc. ?

Just at a loft why cwxn isn¡¯t decoding half the time, so sure, if your .py is conveniently by, wouldn¡¯t mind taking a look. ?Maybe cwxn just doesn¡¯t like certain Acurites (?). ?No idea, but weewx is running great. ?I have two receivers/displays for the sensor, one sends to MyAcurite and other is fir weewx.

Thanks!


11 Max Pro

On Sep 27, 2021, at 8:06 PM, Greg D <ko6th.greg@...> wrote:

?With my Acurite station, I had to filter out (not write to wxnow.txt) the bad records. I tested for humidity=0 as the indicator. I also fixed a small formatting bug with something else, where the telemetry wouldn't decode properly on my Kenwood TH-D74. I forget what it was, though. Possibly humidity of 100% or something like that. The field didn't fit.

I can probably find the source file, if needed. Let me know.

Greg KO6TH

On September 27, 2021 12:34:06 PM PDT, Travis Bully <tbully@...> wrote:
How do your Weewx logs (in debug) look?? It's been awhile since I've looked at the code but I think all the plugin does is query the database for the last readings from your weather station.? I'm wondering if you're not getting consistent data from your sensors.



On Mon, Sep 27, 2021 at 3:31 PM J K via <kuhnje=[email protected]> wrote:
I¡¯ve tried everything I could think of and still getting charts that look like a zigsaw.? I¡¯m wondering now if it just isn¡¯t creating the wxnow file fast enough.? Using just my original RPi1B for weewx since I thought it would be an ok fit as didn¡¯t anticipate it really needing a lot of resources.? I have a few RPi3B+¡¯s I guess could switch it to one of them and have a ton of RPi0W¡¯s, but it doesn¡¯t seem like it would need to much resource to just run weewx and cwnx (?).? That¡¯s the only thing I can thing of trying now.





-- This space for rent...


Re: How many clients can use one DireWolf instance?

 

The network KISS and AGW interfaces can handle 3 simultaneous client connections each.
In extreme cases, where you need more, the limit can be increased by modifying a header file and rebuilding.

kiss_frame.h: #define MAX_NET_CLIENTS 3

If there is an error writing to a socket, the socket is closed, and becomes available to accept another client connection.



Re: How many clients can use one DireWolf instance?

 

According to the Direwolf manual (4.3 AGW TCPIP socket interface):
??? Dire Wolf provides a server function with the "AGW TCPIP Socket Interface" on port 8000.
??? Up to 3 different client applications can connect at the same time.

Section 4.5 KISS TNC emulation - network
?? I don't see a number of connections listed in this section.
?? HOWEVER, when I make a connection via KISS over TCP, I get the same kind of message:
????????Attached to KISS TCP client application 0...
????????Ready to accept KISS TCP client application 1 on port 8001 ...

So, it implies it can accept more than 1.

Robert Giuliano
KB8RCO



On Tuesday, September 28, 2021, 04:39:36 PM EDT, Andrew P. <andrewemt@...> wrote:


Greetings.

I was wondering how many different client programs can connect simultaneously to one instance of DireWolf and all get complete copies of the inbound packet traffic. I was thinking of an event Operations Center where each user wants to look at the data their own way, so they need separate client program instances. Also, will it break DireWolf if one of those client computers crashes and doesn't respond to TCP retransmit requests? As in, blocking traffic to all the other clients until the one failed client connection finally times out?

Andrew, KA2DDO
author of YAAC (a candidate client program for the above use case)





Re: Weewx to Direwolf

 

¿ªÔÆÌåÓý

Greg,

Awesome! ?Thanks, that is something I can Siri with. That makes great sense, no humidity - not a good packet! ?I¡¯ll chew on this and get to work.

Thanks again!

11 Max Pro

On Sep 28, 2021, at 4:39 PM, Greg D <ko6th.greg@...> wrote:

? Found the cwxn.py code that I hacked...? It's an older version (# $Id: cwxn.py 1280 2015-03-01 17:01:56Z mwall $), but perhaps still relevant.? Both changes - null records and format change - were all in the write_data routine, at the bottom of the source file.? Warning:? this was done before I knew anything about writing in Python, so there will be better / cleaner ways to do this.

Basically, I noticed that all of the bad records had a zero value for humidity in common.? Since a truly zero humidity is effectively impossible, I used that as the key for skipping writing the data.? The formatting issue was that humidity wasn't being handled right as a 2-digit number, so my D74 wasn't decoding it properly.?

I just noticed that a true 100% humidity would get rejected too, as it is represented as zero in the output, so my two fixes are kind of broken when taken together.? {sigh}? We hardly ever get 100% humidity here, so it hasn't exactly been a problem.? Wish it were (we need the rain!).? With those excuses, here's the snippet of code:
?def write_data(self, data):
??????? fields = []
??????? fields.append("%03d" % int(data['windDir']))
??????? fields.append("/%03d" % int(data['windSpeed']))
??????? fields.append("g%03d" % int(data['windGust']))
??????? fields.append("t%03d" % int(data['outTemp']))
??????? fields.append("r%03d" % int(data['hourRain'] * 100))
??????? fields.append("p%03d" % int(data['rain24'] * 100))
??????? fields.append("P%03d" % int(data['dayRain'] * 100))
??????? if data['outHumidity'] < 0 or 100 <= data['outHumidity']:
??????????? data['outHumidity'] = 0
??????? # 2-15-2019 changed humidity format to 2 digits, per spec and for Kenwood D74 compatibility
??????? fields.append("h%02d" % int(data['outHumidity']))
??????? fields.append("b%05d" % int(data['barometer'] * 10))
??????? if data['outHumidity'] > 0:
??? ??? with open(self.filename, 'w') as f:
??????????????? f.write(time.strftime("%b %d %Y %H:%M\n",
??? ??? ??? time.localtime(data['dateTime'])))
??????????????? f.write(''.join(fields))
??????????????? f.write("\n")
Hope this helps, and apologies for the kludge,

Greg? KO6TH


J K via groups.io wrote:
Hello,

Yes, all the logs look clean. ? I looked at all the syslogs, messages, kernel messages, etc, and nothing stands out. Sure, I wouldn¡¯t mind liking at your .py if you have it to see how you blocked the ones that didn¡¯t decode properly. Roughly half of the writes to wxnow aren¡¯t decoding properly, leaving 0¡¯s as values, which is causing a ¡°zigsaw¡± chart pattern. ?I¡¯m using Weewx 4.4, cwxn 0.6, and an Acurite 02064. ?Everything decodes properly for my weewx page, WU, CWOPS, etc, just doesn¡¯t get written correctly as wxnow.txt half the time by cwxn. ?I double and triple checked to make sure it wasn¡¯t from sharing a directory, trying both samba and nfs, but the share is fine, it¡¯s just not writing correctly half the time which I can monitor locally to the actual directory wxnow.txt gets saved to my cwxn. ?Thought for a second maybe it was just the RPi1B that weewx/cwxn is on just isn¡¯t fast enough, but it should be (?). ?The DireWolf and the radio itself is running on a RPi4(8GB), so that obviously fine. ?It¡¯s not being used really for anything else (yet), but one the APRS stuff is fully working, probably will use it as a SDR server too with a RTL-SDR V3, Ham-It-Up upconverter, etc. ?Have another RPi4 (4GB) with 10¡± touchscreen that I mainly use as a portable device to run CubicSDR, Xastir, etc. ?If weewx/cwxn really needs more resources, have a few extra RPi3B+¡¯s nor doing much that could be used. ?I just thought since I had a RPi1B still sitting around (first RPi I got), it¡¯s be an ok fit. ?Have more RPi¡¯s total now than I can remember and count, lll. ?Using them for all sorts of things: Kodi/Retropie for each TV, WX, ADS-B, a few AllStar nodes, SDR, PiHole, Printer server, DNS/email servers, bunch of mmdvm¡¯s, etc, etc. ?

Just at a loft why cwxn isn¡¯t decoding half the time, so sure, if your .py is conveniently by, wouldn¡¯t mind taking a look. ?Maybe cwxn just doesn¡¯t like certain Acurites (?). ?No idea, but weewx is running great. ?I have two receivers/displays for the sensor, one sends to MyAcurite and other is fir weewx.

Thanks!


11 Max Pro

On Sep 27, 2021, at 8:06 PM, Greg D <ko6th.greg@...> wrote:

?With my Acurite station, I had to filter out (not write to wxnow.txt) the bad records. I tested for humidity=0 as the indicator. I also fixed a small formatting bug with something else, where the telemetry wouldn't decode properly on my Kenwood TH-D74. I forget what it was, though. Possibly humidity of 100% or something like that. The field didn't fit.

I can probably find the source file, if needed. Let me know.

Greg KO6TH

On September 27, 2021 12:34:06 PM PDT, Travis Bully <tbully@...> wrote:
How do your Weewx logs (in debug) look?? It's been awhile since I've looked at the code but I think all the plugin does is query the database for the last readings from your weather station.? I'm wondering if you're not getting consistent data from your sensors.



On Mon, Sep 27, 2021 at 3:31 PM J K via <kuhnje=[email protected]> wrote:
I¡¯ve tried everything I could think of and still getting charts that look like a zigsaw.? I¡¯m wondering now if it just isn¡¯t creating the wxnow file fast enough.? Using just my original RPi1B for weewx since I thought it would be an ok fit as didn¡¯t anticipate it really needing a lot of resources.? I have a few RPi3B+¡¯s I guess could switch it to one of them and have a ton of RPi0W¡¯s, but it doesn¡¯t seem like it would need to much resource to just run weewx and cwnx (?).? That¡¯s the only thing I can thing of trying now.





-- This space for rent...


How many clients can use one DireWolf instance?

 

Greetings.

I was wondering how many different client programs can connect simultaneously to one instance of DireWolf and all get complete copies of the inbound packet traffic. I was thinking of an event Operations Center where each user wants to look at the data their own way, so they need separate client program instances. Also, will it break DireWolf if one of those client computers crashes and doesn't respond to TCP retransmit requests? As in, blocking traffic to all the other clients until the one failed client connection finally times out?

Andrew, KA2DDO
author of YAAC (a candidate client program for the above use case)


Re: Weewx to Direwolf

 

¿ªÔÆÌåÓý

Found the cwxn.py code that I hacked...? It's an older version (# $Id: cwxn.py 1280 2015-03-01 17:01:56Z mwall $), but perhaps still relevant.? Both changes - null records and format change - were all in the write_data routine, at the bottom of the source file.? Warning:? this was done before I knew anything about writing in Python, so there will be better / cleaner ways to do this.

Basically, I noticed that all of the bad records had a zero value for humidity in common.? Since a truly zero humidity is effectively impossible, I used that as the key for skipping writing the data.? The formatting issue was that humidity wasn't being handled right as a 2-digit number, so my D74 wasn't decoding it properly.?

I just noticed that a true 100% humidity would get rejected too, as it is represented as zero in the output, so my two fixes are kind of broken when taken together.? {sigh}? We hardly ever get 100% humidity here, so it hasn't exactly been a problem.? Wish it were (we need the rain!).? With those excuses, here's the snippet of code:
?def write_data(self, data):
??????? fields = []
??????? fields.append("%03d" % int(data['windDir']))
??????? fields.append("/%03d" % int(data['windSpeed']))
??????? fields.append("g%03d" % int(data['windGust']))
??????? fields.append("t%03d" % int(data['outTemp']))
??????? fields.append("r%03d" % int(data['hourRain'] * 100))
??????? fields.append("p%03d" % int(data['rain24'] * 100))
??????? fields.append("P%03d" % int(data['dayRain'] * 100))
??????? if data['outHumidity'] < 0 or 100 <= data['outHumidity']:
??????????? data['outHumidity'] = 0
??????? # 2-15-2019 changed humidity format to 2 digits, per spec and for Kenwood D74 compatibility
??????? fields.append("h%02d" % int(data['outHumidity']))
??????? fields.append("b%05d" % int(data['barometer'] * 10))
??????? if data['outHumidity'] > 0:
??? ??? with open(self.filename, 'w') as f:
??????????????? f.write(time.strftime("%b %d %Y %H:%M\n",
??? ??? ??? time.localtime(data['dateTime'])))
??????????????? f.write(''.join(fields))
??????????????? f.write("\n")
Hope this helps, and apologies for the kludge,

Greg? KO6TH


J K via groups.io wrote:
Hello,

Yes, all the logs look clean. ? I looked at all the syslogs, messages, kernel messages, etc, and nothing stands out. Sure, I wouldn¡¯t mind liking at your .py if you have it to see how you blocked the ones that didn¡¯t decode properly. Roughly half of the writes to wxnow aren¡¯t decoding properly, leaving 0¡¯s as values, which is causing a ¡°zigsaw¡± chart pattern. ?I¡¯m using Weewx 4.4, cwxn 0.6, and an Acurite 02064. ?Everything decodes properly for my weewx page, WU, CWOPS, etc, just doesn¡¯t get written correctly as wxnow.txt half the time by cwxn. ?I double and triple checked to make sure it wasn¡¯t from sharing a directory, trying both samba and nfs, but the share is fine, it¡¯s just not writing correctly half the time which I can monitor locally to the actual directory wxnow.txt gets saved to my cwxn. ?Thought for a second maybe it was just the RPi1B that weewx/cwxn is on just isn¡¯t fast enough, but it should be (?). ?The DireWolf and the radio itself is running on a RPi4(8GB), so that obviously fine. ?It¡¯s not being used really for anything else (yet), but one the APRS stuff is fully working, probably will use it as a SDR server too with a RTL-SDR V3, Ham-It-Up upconverter, etc. ?Have another RPi4 (4GB) with 10¡± touchscreen that I mainly use as a portable device to run CubicSDR, Xastir, etc. ?If weewx/cwxn really needs more resources, have a few extra RPi3B+¡¯s nor doing much that could be used. ?I just thought since I had a RPi1B still sitting around (first RPi I got), it¡¯s be an ok fit. ?Have more RPi¡¯s total now than I can remember and count, lll. ?Using them for all sorts of things: Kodi/Retropie for each TV, WX, ADS-B, a few AllStar nodes, SDR, PiHole, Printer server, DNS/email servers, bunch of mmdvm¡¯s, etc, etc. ?

Just at a loft why cwxn isn¡¯t decoding half the time, so sure, if your .py is conveniently by, wouldn¡¯t mind taking a look. ?Maybe cwxn just doesn¡¯t like certain Acurites (?). ?No idea, but weewx is running great. ?I have two receivers/displays for the sensor, one sends to MyAcurite and other is fir weewx.

Thanks!


11 Max Pro

On Sep 27, 2021, at 8:06 PM, Greg D <ko6th.greg@...> wrote:

?With my Acurite station, I had to filter out (not write to wxnow.txt) the bad records. I tested for humidity=0 as the indicator. I also fixed a small formatting bug with something else, where the telemetry wouldn't decode properly on my Kenwood TH-D74. I forget what it was, though. Possibly humidity of 100% or something like that. The field didn't fit.

I can probably find the source file, if needed. Let me know.

Greg KO6TH

On September 27, 2021 12:34:06 PM PDT, Travis Bully <tbully@...> wrote:
How do your Weewx logs (in debug) look?? It's been awhile since I've looked at the code but I think all the plugin does is query the database for the last readings from your weather station.? I'm wondering if you're not getting consistent data from your sensors.



On Mon, Sep 27, 2021 at 3:31 PM J K via <kuhnje=[email protected]> wrote:
I¡¯ve tried everything I could think of and still getting charts that look like a zigsaw.? I¡¯m wondering now if it just isn¡¯t creating the wxnow file fast enough.? Using just my original RPi1B for weewx since I thought it would be an ok fit as didn¡¯t anticipate it really needing a lot of resources.? I have a few RPi3B+¡¯s I guess could switch it to one of them and have a ton of RPi0W¡¯s, but it doesn¡¯t seem like it would need to much resource to just run weewx and cwnx (?).? That¡¯s the only thing I can thing of trying now.





-- This space for rent...


Re: Weewx to Direwolf

 

¿ªÔÆÌåÓý

Hello,

Yes, all the logs look clean. ? I looked at all the syslogs, messages, kernel messages, etc, and nothing stands out. Sure, I wouldn¡¯t mind liking at your .py if you have it to see how you blocked the ones that didn¡¯t decode properly. Roughly half of the writes to wxnow aren¡¯t decoding properly, leaving 0¡¯s as values, which is causing a ¡°zigsaw¡± chart pattern. ?I¡¯m using Weewx 4.4, cwxn 0.6, and an Acurite 02064. ?Everything decodes properly for my weewx page, WU, CWOPS, etc, just doesn¡¯t get written correctly as wxnow.txt half the time by cwxn. ?I double and triple checked to make sure it wasn¡¯t from sharing a directory, trying both samba and nfs, but the share is fine, it¡¯s just not writing correctly half the time which I can monitor locally to the actual directory wxnow.txt gets saved to my cwxn. ?Thought for a second maybe it was just the RPi1B that weewx/cwxn is on just isn¡¯t fast enough, but it should be (?). ?The DireWolf and the radio itself is running on a RPi4(8GB), so that obviously fine. ?It¡¯s not being used really for anything else (yet), but one the APRS stuff is fully working, probably will use it as a SDR server too with a RTL-SDR V3, Ham-It-Up upconverter, etc. ?Have another RPi4 (4GB) with 10¡± touchscreen that I mainly use as a portable device to run CubicSDR, Xastir, etc. ?If weewx/cwxn really needs more resources, have a few extra RPi3B+¡¯s nor doing much that could be used. ?I just thought since I had a RPi1B still sitting around (first RPi I got), it¡¯s be an ok fit. ?Have more RPi¡¯s total now than I can remember and count, lll. ?Using them for all sorts of things: Kodi/Retropie for each TV, WX, ADS-B, a few AllStar nodes, SDR, PiHole, Printer server, DNS/email servers, bunch of mmdvm¡¯s, etc, etc. ?

Just at a loft why cwxn isn¡¯t decoding half the time, so sure, if your .py is conveniently by, wouldn¡¯t mind taking a look. ?Maybe cwxn just doesn¡¯t like certain Acurites (?). ?No idea, but weewx is running great. ?I have two receivers/displays for the sensor, one sends to MyAcurite and other is fir weewx.

Thanks!


11 Max Pro

On Sep 27, 2021, at 8:06 PM, Greg D <ko6th.greg@...> wrote:

?With my Acurite station, I had to filter out (not write to wxnow.txt) the bad records. I tested for humidity=0 as the indicator. I also fixed a small formatting bug with something else, where the telemetry wouldn't decode properly on my Kenwood TH-D74. I forget what it was, though. Possibly humidity of 100% or something like that. The field didn't fit.

I can probably find the source file, if needed. Let me know.

Greg KO6TH

On September 27, 2021 12:34:06 PM PDT, Travis Bully <tbully@...> wrote:
How do your Weewx logs (in debug) look?? It's been awhile since I've looked at the code but I think all the plugin does is query the database for the last readings from your weather station.? I'm wondering if you're not getting consistent data from your sensors.



On Mon, Sep 27, 2021 at 3:31 PM J K via <kuhnje=[email protected]> wrote:
I¡¯ve tried everything I could think of and still getting charts that look like a zigsaw.? I¡¯m wondering now if it just isn¡¯t creating the wxnow file fast enough.? Using just my original RPi1B for weewx since I thought it would be an ok fit as didn¡¯t anticipate it really needing a lot of resources.? I have a few RPi3B+¡¯s I guess could switch it to one of them and have a ton of RPi0W¡¯s, but it doesn¡¯t seem like it would need to much resource to just run weewx and cwnx (?).? That¡¯s the only thing I can thing of trying now.





--
This space for rent...


Re: Weewx to Direwolf

 

With my Acurite station, I had to filter out (not write to wxnow.txt) the bad records. I tested for humidity=0 as the indicator. I also fixed a small formatting bug with something else, where the telemetry wouldn't decode properly on my Kenwood TH-D74. I forget what it was, though. Possibly humidity of 100% or something like that. The field didn't fit.

I can probably find the source file, if needed. Let me know.

Greg KO6TH


On September 27, 2021 12:34:06 PM PDT, Travis Bully <tbully@...> wrote:
How do your Weewx logs (in debug) look?? It's been awhile since I've looked at the code but I think all the plugin does is query the database for the last readings from your weather station.? I'm wondering if you're not getting consistent data from your sensors.



On Mon, Sep 27, 2021 at 3:31 PM J K via <kuhnje=[email protected]> wrote:
I¡¯ve tried everything I could think of and still getting charts that look like a zigsaw.? I¡¯m wondering now if it just isn¡¯t creating the wxnow file fast enough.? Using just my original RPi1B for weewx since I thought it would be an ok fit as didn¡¯t anticipate it really needing a lot of resources.? I have a few RPi3B+¡¯s I guess could switch it to one of them and have a ton of RPi0W¡¯s, but it doesn¡¯t seem like it would need to much resource to just run weewx and cwnx (?).? That¡¯s the only thing I can thing of trying now.





--
This space for rent...


Re: Weewx to Direwolf

 

Further, are you running the latest 0.4 version of the plugin?

You may want to see this thread and switch your binding to "archive" in your weewx.conf file:


binding = archive





On Mon, Sep 27, 2021 at 3:34 PM Travis Bully via <tbully=[email protected]> wrote:
How do your Weewx logs (in debug) look?? It's been awhile since I've looked at the code but I think all the plugin does is query the database for the last readings from your weather station.? I'm wondering if you're not getting consistent data from your sensors.



On Mon, Sep 27, 2021 at 3:31 PM J K via <kuhnje=[email protected]> wrote:
I¡¯ve tried everything I could think of and still getting charts that look like a zigsaw.? I¡¯m wondering now if it just isn¡¯t creating the wxnow file fast enough.? Using just my original RPi1B for weewx since I thought it would be an ok fit as didn¡¯t anticipate it really needing a lot of resources.? I have a few RPi3B+¡¯s I guess could switch it to one of them and have a ton of RPi0W¡¯s, but it doesn¡¯t seem like it would need to much resource to just run weewx and cwnx (?).? That¡¯s the only thing I can thing of trying now.






Re: Weewx to Direwolf

 

How do your Weewx logs (in debug) look?? It's been awhile since I've looked at the code but I think all the plugin does is query the database for the last readings from your weather station.? I'm wondering if you're not getting consistent data from your sensors.



On Mon, Sep 27, 2021 at 3:31 PM J K via <kuhnje=[email protected]> wrote:
I¡¯ve tried everything I could think of and still getting charts that look like a zigsaw.? I¡¯m wondering now if it just isn¡¯t creating the wxnow file fast enough.? Using just my original RPi1B for weewx since I thought it would be an ok fit as didn¡¯t anticipate it really needing a lot of resources.? I have a few RPi3B+¡¯s I guess could switch it to one of them and have a ton of RPi0W¡¯s, but it doesn¡¯t seem like it would need to much resource to just run weewx and cwnx (?).? That¡¯s the only thing I can thing of trying now.






Re: Weewx to Direwolf

 

I¡¯ve tried everything I could think of and still getting charts that look like a zigsaw. I¡¯m wondering now if it just isn¡¯t creating the wxnow file fast enough. Using just my original RPi1B for weewx since I thought it would be an ok fit as didn¡¯t anticipate it really needing a lot of resources. I have a few RPi3B+¡¯s I guess could switch it to one of them and have a ton of RPi0W¡¯s, but it doesn¡¯t seem like it would need to much resource to just run weewx and cwnx (?). That¡¯s the only thing I can thing of trying now.


Re: Weewx to Direwolf

 

It seems the issue is getting Zeros for readings (maybe sampling too fast).
The script could easily be modified to "not write" to wxnow.txt if certain value(s), which you know should always have valid data (say outside temp), report zero.

Since Direwolf 'always' sends the last line, not saving the zero line should fix your problem.

NOTE: if the "key sensor" is removed, you would have to change the check for zero to a different sensor.

Robert Giuliano
KB8RCO



On Monday, September 27, 2021, 10:40:10 AM EDT, J K via groups.io <kuhnje@...> wrote:


Hi,

Thanks! ?I appreciate it. ?Actually, I think I may know what is going on and might know how to get it stable ¡ª but it stems from another question I have ¡ª however, let me let this run for a while now (perhaps a day) and if it does remain stable, I know how to formulate what I was going to ask. ?I really appreciate the help you gave (and the .py code). ?I¡¯ll update here once I see and know for sure. ?(I don¡¯t think going io need to do the WU thing afterall).


Thanks!


11 Max Pro

On Sep 27, 2021, at 10:23 AM, Travis Bully <tbully@...> wrote:

?
Do you have logging cranked up on Weewx?? To me it's sounding like Weewx may not be getting data from the station and I'm wondering what Weewx's logs?are saying.??

There are fixes out there for cwxn.py because of 0's for rain information.? But not ALL 0's.?

?I've attached my running copy of cwxn.py (found in /user/share/weewx/user/) in case it helps you.

On Mon, Sep 27, 2021 at 10:11 AM J K via <kuhnje=[email protected]> wrote:
Shoot, I spoke too soon.? CWXN isn¡¯t working reliable.? I think it just might not be processing the data correctly.

Thinking ¡ª since I¡¯m uploading to both Wunderground and MyAcurite anyway ¡ª instead of getting the data from weewx, anyone know of a script that can be used to pull the data from Wunderground (or MyAcurite) and proceeds it into a DireWolf packet file?

The shared directory between the Weewx RPi and DireWolf RPi is working fine, it¡¯s just that CWXN isn¡¯t reliably processing the data into a file for DireWolf to send.? It will save a good file, but then about 20 seconds later, the file gets overwritten with all the values set to 0, then might save a good file again that¡¯ll only be there for about 20 seconds until it gets overwritten by a new one with all 0¡¯s fir values, when DireWolf goes to send the WX PBEACON, only if a good file exists will it go out.? This is making my charts look like a zigsaw.?

Instead, trying to find something that will pull the data from WU (or MyAcurite) since it exists there in good form.? They both use API¡¯s, so I¡¯d imagine there likely is something that exists to do this.? I don¡¯t know Python, PERL, Bash, etc, scripting well enough to just write something so hoping something already does.

Thanks!


11 Max Pro

On Sep 26, 2021, at 2:02 PM, J K via <kuhnje=[email protected]> wrote:

?You are awesome.? I have it fully running now and sending WX packets by RF.

Thanks again!
-Jerry?

11 Max Pro

On Sep 26, 2021, at 1:54 PM, Travis Bully <tbully@...> wrote:

?
Great to hear!? Mine has been running like this for about a year.? Fairly solid setup.?

Enjoy.?


On Sun, Sep 26, 2021 at 13:48 J K via <kuhnje=[email protected]> wrote:
Perfect!

Runs fine!? ?Going up do same thing and make one of the directories on RPi running DireWolf a samba share for it yo output to and then get Dire to send it out by RF.

Thanks a lot!? This is exactly what I was going for and perfect!

(Apologies for typos.? Dumb iPhone acting up.)

-Jerry

11 Max Pro

> On Sep 26, 2021, at 1:46 PM, J K via <kuhnje=[email protected]> wrote:
>
> Protect!
>
> Runs fine!? ?Going up do same thing and make one of the directories on RPi running DireWolf a samba share for it yo output to and then get Dire to send it out by RF.
>
> Thanks a lot!? This is exactly what I was going for and perfect!
>
> -Jerry







Re: Weewx to Direwolf

 

¿ªÔÆÌåÓý

Hi,

Thanks! ?I appreciate it. ?Actually, I think I may know what is going on and might know how to get it stable ¡ª but it stems from another question I have ¡ª however, let me let this run for a while now (perhaps a day) and if it does remain stable, I know how to formulate what I was going to ask. ?I really appreciate the help you gave (and the .py code). ?I¡¯ll update here once I see and know for sure. ?(I don¡¯t think going io need to do the WU thing afterall).


Thanks!


11 Max Pro

On Sep 27, 2021, at 10:23 AM, Travis Bully <tbully@...> wrote:

?
Do you have logging cranked up on Weewx?? To me it's sounding like Weewx may not be getting data from the station and I'm wondering what Weewx's logs?are saying.??

There are fixes out there for cwxn.py because of 0's for rain information.? But not ALL 0's.?

?I've attached my running copy of cwxn.py (found in /user/share/weewx/user/) in case it helps you.

On Mon, Sep 27, 2021 at 10:11 AM J K via <kuhnje=[email protected]> wrote:
Shoot, I spoke too soon.? CWXN isn¡¯t working reliable.? I think it just might not be processing the data correctly.

Thinking ¡ª since I¡¯m uploading to both Wunderground and MyAcurite anyway ¡ª instead of getting the data from weewx, anyone know of a script that can be used to pull the data from Wunderground (or MyAcurite) and proceeds it into a DireWolf packet file?

The shared directory between the Weewx RPi and DireWolf RPi is working fine, it¡¯s just that CWXN isn¡¯t reliably processing the data into a file for DireWolf to send.? It will save a good file, but then about 20 seconds later, the file gets overwritten with all the values set to 0, then might save a good file again that¡¯ll only be there for about 20 seconds until it gets overwritten by a new one with all 0¡¯s fir values, when DireWolf goes to send the WX PBEACON, only if a good file exists will it go out.? This is making my charts look like a zigsaw.?

Instead, trying to find something that will pull the data from WU (or MyAcurite) since it exists there in good form.? They both use API¡¯s, so I¡¯d imagine there likely is something that exists to do this.? I don¡¯t know Python, PERL, Bash, etc, scripting well enough to just write something so hoping something already does.

Thanks!


11 Max Pro

On Sep 26, 2021, at 2:02 PM, J K via <kuhnje=[email protected]> wrote:

?You are awesome.? I have it fully running now and sending WX packets by RF.

Thanks again!
-Jerry?

11 Max Pro

On Sep 26, 2021, at 1:54 PM, Travis Bully <tbully@...> wrote:

?
Great to hear!? Mine has been running like this for about a year.? Fairly solid setup.?

Enjoy.?


On Sun, Sep 26, 2021 at 13:48 J K via <kuhnje=[email protected]> wrote:
Perfect!

Runs fine!? ?Going up do same thing and make one of the directories on RPi running DireWolf a samba share for it yo output to and then get Dire to send it out by RF.

Thanks a lot!? This is exactly what I was going for and perfect!

(Apologies for typos.? Dumb iPhone acting up.)

-Jerry

11 Max Pro

> On Sep 26, 2021, at 1:46 PM, J K via <kuhnje=[email protected]> wrote:
>
> Protect!
>
> Runs fine!? ?Going up do same thing and make one of the directories on RPi running DireWolf a samba share for it yo output to and then get Dire to send it out by RF.
>
> Thanks a lot!? This is exactly what I was going for and perfect!
>
> -Jerry







Re: Weewx to Direwolf

 

I suggest you have weewx generate a wxnow.txt file, then have Direwolf send it as a comment in a position beacon, as stated in section 9.9.1 of the users guide.

Patrick (N3TSZ)


On Monday, September 27, 2021, 10:23:15 AM EDT, Travis Bully <tbully@...> wrote:


Do you have logging cranked up on Weewx?? To me it's sounding like Weewx may not be getting data from the station and I'm wondering what Weewx's logs?are saying.??

There are fixes out there for cwxn.py because of 0's for rain information.? But not ALL 0's.?

?I've attached my running copy of cwxn.py (found in /user/share/weewx/user/) in case it helps you.

On Mon, Sep 27, 2021 at 10:11 AM J K via <kuhnje=[email protected]> wrote:
Shoot, I spoke too soon.? CWXN isn¡¯t working reliable.? I think it just might not be processing the data correctly.

Thinking ¡ª since I¡¯m uploading to both Wunderground and MyAcurite anyway ¡ª instead of getting the data from weewx, anyone know of a script that can be used to pull the data from Wunderground (or MyAcurite) and proceeds it into a DireWolf packet file?

The shared directory between the Weewx RPi and DireWolf RPi is working fine, it¡¯s just that CWXN isn¡¯t reliably processing the data into a file for DireWolf to send.? It will save a good file, but then about 20 seconds later, the file gets overwritten with all the values set to 0, then might save a good file again that¡¯ll only be there for about 20 seconds until it gets overwritten by a new one with all 0¡¯s fir values, when DireWolf goes to send the WX PBEACON, only if a good file exists will it go out.? This is making my charts look like a zigsaw.?

Instead, trying to find something that will pull the data from WU (or MyAcurite) since it exists there in good form.? They both use API¡¯s, so I¡¯d imagine there likely is something that exists to do this.? I don¡¯t know Python, PERL, Bash, etc, scripting well enough to just write something so hoping something already does.

Thanks!


11 Max Pro

On Sep 26, 2021, at 2:02 PM, J K via <kuhnje=[email protected]> wrote:

?You are awesome.? I have it fully running now and sending WX packets by RF.

Thanks again!
-Jerry?

11 Max Pro

On Sep 26, 2021, at 1:54 PM, Travis Bully <tbully@...> wrote:

?
Great to hear!? Mine has been running like this for about a year.? Fairly solid setup.?

Enjoy.?


On Sun, Sep 26, 2021 at 13:48 J K via <kuhnje=[email protected]> wrote:
Perfect!

Runs fine!? ?Going up do same thing and make one of the directories on RPi running DireWolf a samba share for it yo output to and then get Dire to send it out by RF.

Thanks a lot!? This is exactly what I was going for and perfect!

(Apologies for typos.? Dumb iPhone acting up.)

-Jerry

11 Max Pro

> On Sep 26, 2021, at 1:46 PM, J K via <kuhnje=[email protected]> wrote:
>
> Protect!
>
> Runs fine!? ?Going up do same thing and make one of the directories on RPi running DireWolf a samba share for it yo output to and then get Dire to send it out by RF.
>
> Thanks a lot!? This is exactly what I was going for and perfect!
>
> -Jerry







Re: Weewx to Direwolf

 

Do you have logging cranked up on Weewx?? To me it's sounding like Weewx may not be getting data from the station and I'm wondering what Weewx's logs?are saying.??

There are fixes out there for cwxn.py because of 0's for rain information.? But not ALL 0's.?

?I've attached my running copy of cwxn.py (found in /user/share/weewx/user/) in case it helps you.

On Mon, Sep 27, 2021 at 10:11 AM J K via <kuhnje=[email protected]> wrote:
Shoot, I spoke too soon.? CWXN isn¡¯t working reliable.? I think it just might not be processing the data correctly.

Thinking ¡ª since I¡¯m uploading to both Wunderground and MyAcurite anyway ¡ª instead of getting the data from weewx, anyone know of a script that can be used to pull the data from Wunderground (or MyAcurite) and proceeds it into a DireWolf packet file?

The shared directory between the Weewx RPi and DireWolf RPi is working fine, it¡¯s just that CWXN isn¡¯t reliably processing the data into a file for DireWolf to send.? It will save a good file, but then about 20 seconds later, the file gets overwritten with all the values set to 0, then might save a good file again that¡¯ll only be there for about 20 seconds until it gets overwritten by a new one with all 0¡¯s fir values, when DireWolf goes to send the WX PBEACON, only if a good file exists will it go out.? This is making my charts look like a zigsaw.?

Instead, trying to find something that will pull the data from WU (or MyAcurite) since it exists there in good form.? They both use API¡¯s, so I¡¯d imagine there likely is something that exists to do this.? I don¡¯t know Python, PERL, Bash, etc, scripting well enough to just write something so hoping something already does.

Thanks!


11 Max Pro

On Sep 26, 2021, at 2:02 PM, J K via <kuhnje=[email protected]> wrote:

?You are awesome.? I have it fully running now and sending WX packets by RF.

Thanks again!
-Jerry?

11 Max Pro

On Sep 26, 2021, at 1:54 PM, Travis Bully <tbully@...> wrote:

?
Great to hear!? Mine has been running like this for about a year.? Fairly solid setup.?

Enjoy.?


On Sun, Sep 26, 2021 at 13:48 J K via <kuhnje=[email protected]> wrote:
Perfect!

Runs fine!? ?Going up do same thing and make one of the directories on RPi running DireWolf a samba share for it yo output to and then get Dire to send it out by RF.

Thanks a lot!? This is exactly what I was going for and perfect!

(Apologies for typos.? Dumb iPhone acting up.)

-Jerry

11 Max Pro

> On Sep 26, 2021, at 1:46 PM, J K via <kuhnje=[email protected]> wrote:
>
> Protect!
>
> Runs fine!? ?Going up do same thing and make one of the directories on RPi running DireWolf a samba share for it yo output to and then get Dire to send it out by RF.
>
> Thanks a lot!? This is exactly what I was going for and perfect!
>
> -Jerry







Re: Weewx to Direwolf

 

¿ªÔÆÌåÓý

Shoot, I spoke too soon. ?CWXN isn¡¯t working reliable. ?I think it just might not be processing the data correctly.

Thinking ¡ª since I¡¯m uploading to both Wunderground and MyAcurite anyway ¡ª instead of getting the data from weewx, anyone know of a script that can be used to pull the data from Wunderground (or MyAcurite) and proceeds it into a DireWolf packet file?

The shared directory between the Weewx RPi and DireWolf RPi is working fine, it¡¯s just that CWXN isn¡¯t reliably processing the data into a file for DireWolf to send. ?It will save a good file, but then about 20 seconds later, the file gets overwritten with all the values set to 0, then might save a good file again that¡¯ll only be there for about 20 seconds until it gets overwritten by a new one with all 0¡¯s fir values, when DireWolf goes to send the WX PBEACON, only if a good file exists will it go out. ?This is making my charts look like a zigsaw.?

Instead, trying to find something that will pull the data from WU (or MyAcurite) since it exists there in good form. ?They both use API¡¯s, so I¡¯d imagine there likely is something that exists to do this. ?I don¡¯t know Python, PERL, Bash, etc, scripting well enough to just write something so hoping something already does.

Thanks!


11 Max Pro

On Sep 26, 2021, at 2:02 PM, J K via groups.io <kuhnje@...> wrote:

?You are awesome. ?I have it fully running now and sending WX packets by RF.

Thanks again!
-Jerry?

11 Max Pro

On Sep 26, 2021, at 1:54 PM, Travis Bully <tbully@...> wrote:

?
Great to hear!? Mine has been running like this for about a year.? Fairly solid setup.?

Enjoy.?


On Sun, Sep 26, 2021 at 13:48 J K via <kuhnje=[email protected]> wrote:
Perfect!

Runs fine!? ?Going up do same thing and make one of the directories on RPi running DireWolf a samba share for it yo output to and then get Dire to send it out by RF.

Thanks a lot!? This is exactly what I was going for and perfect!

(Apologies for typos.? Dumb iPhone acting up.)

-Jerry

11 Max Pro

> On Sep 26, 2021, at 1:46 PM, J K via <kuhnje=[email protected]> wrote:
>
> Protect!
>
> Runs fine!? ?Going up do same thing and make one of the directories on RPi running DireWolf a samba share for it yo output to and then get Dire to send it out by RF.
>
> Thanks a lot!? This is exactly what I was going for and perfect!
>
> -Jerry







Re: Interface documentation for programmers

 

If one is attaching at the kiss layer, then each client must be able to pack and unpack the packets and if the service is a connected services, handle retries.

Since APRS is essentially connectionless, this is not a major?lift.

If, however, one uses a connection based packet approach, then the clients must handle the retries for the packets and this can get complicated. ?

I have encountered?certain clients who do not handle the?retries well causing failure of the client.

Many/most of the low level packet software (AGWPE, Doundcard, Direwolf) do seem to handle the retries well.? Connecting the client over the AGW?layer removes the need for the client to handle the retries and for connected services and removes the need for the retry code at the client layer.

On Sun, Sep 26, 2021 at 11:45 AM Rob Giuliano via <kb8rco=[email protected]> wrote:
Although I see a lot of good in the AGW protocol, it does add an extra layer.
Why not just use KISS over TCP/IP.
Then you are using the standard protocol for hardware TNCs.
There is a lot of code (and even libraries) for the KISS protocol.
The only differnece between getting data from a hardware TNC and a software TNC would be the source (TCP or COMM port).?

Robert Giuliano
KB8RCO



On Sunday, September 26, 2021, 09:57:19 AM EDT, Martin Cooper <kd6yam@...> wrote:


Xastir and other software uses AGWPE to talk to Direwolf. The protocol is fairly well defined. Implementing a client isn't trivial, but it's not super-hard either, as long as you're familiar with writing socket-related code. You also don't need to implement everything, if you don't need it all. (For example, if you only want to listen to APRS traffic, you don't need to implement the connection-based pieces.)

The spec is available in a couple of places. Here's one:



There is some example?code in C++ and Delphi (yes, really), but I didn't find it of much help. Working from the descriptive text, I wrote a full Python client that works against Direwolf, ldsped and AGWPE itself. Depending on what you want to do, you may also need code to work with AX.25 packets.

Direwolf can also talk via KISS, though that's more limited.

Hope that helps.

Martin.
KD6YAM

On Sun, Sep 26, 2021 at 5:43 AM John <wa1kli@...> wrote:
Is there a document detailing how to write programs such as Xasitr that make API calls to direwolf?

John Tarbox WA1KLI



--

73,
AB1PH
Don Rolph


Re: Interface documentation for programmers

 

There is also a pty KISS interface.?



Re: Interface documentation for programmers

 

At the top of this conversation, you said:

"Although I see a lot of good in the AGW protocol, it does add an extra layer."

The point of my previous message was that there is an extra layer involved when using KISS that hadn't been mentioned. As you said yourself?below, you decoded packets received from Direwolf using KISS. What you got from KISS itself was just a blob of data; you had to implement some other specification to understand / interpret those blobs before you could do something meaningful with them. It is KISS plus that extra layer that is the parallel to AGWPE,?not KISS by itself.

I haven't claimed that there is anything you can do with AGWPE that you can't do with KISS plus that extra layer, or vice versa, nor have I claimed that one is better than the other. To each, his or her own. But let's understand that KISS by itself is just a blob transport, and there's more involved.

Martin.
KD6YAM

On Sun, Sep 26, 2021 at 8:08 PM Rob Giuliano via <kb8rco=[email protected]> wrote:
So, with respect to the Direwolf interface, what in the AGW protocol is so much different?
So far, there has been nothing I have done with the Direwolf AGW that I haven't done with Direwolf's KISS over TCP/IP.

?>>> On Sun, Sep 26, 2021 at 07:13 PM, John wrote:
> I would like to be able to write a program on a Raspberry Pi that receives APRS packets from direwolf,
> makes some decisions based upon those packets, and then has direwoldf transmit other packets
> under program control. I also want to use hamlib to do such things as set frequency etc.

Using KISS over TCP/IP, I have received packets from Direwolf, decoded those packets, acted on those packets, and sent packets back to Direwolf for transmitting.? I have even help others use decoded KISS packets from Direwolf to aim satellite antennas at a balloon.




On Sun, Sep 26, 2021 at 22:14, Martin Cooper
<kd6yam@...> wrote:
KISS by itself just provides an envelope and encoding for arbitrary data, and says nothing about what kind of data is inside that envelope. Encoding and decoding the data contained in a KISS packet is by agreement between client and server on what the packets contain. Without a higher level protocol / API that defines the contents, KISS has no concept?of, for example, enabling monitoring or opening a connection. So while KISS will help you get data back and forth, you still need something else on top of it. Even if there's a commonly understood agreement on the format of the contents, that's not part of KISS itself, but another layer. KISS plus that other layer may be equivalent to AGWPE, but not KISS by itself.

Martin.
KD6YAM

<snip>