1
0
mirror of https://github.com/craigerl/aprsd.git synced 2026-01-20 12:35:33 -05:00

1294 Commits

Author SHA1 Message Date
10f70bd99d update aprslib commit 2026-01-14 18:11:09 -05:00
0320a4aa3c Don't log failed packets as error 2026-01-14 17:03:09 -05:00
c4ccafc507 use custom aprslib
This uses my custom repo for added packet type parsing
Telemetry
raw gps
station capabilities
item objects
2026-01-14 15:47:11 -05:00
274d5af0e9 Refactored RX thread to not parse packets
The Main RX Thread that runs the client.consumer() call used to
parse packets as soon as it got them.  This lead to an iffecient
strategy for listen and acquire packets as fast as possible.
The APRSDRXThread now gets the raw packet from the client and
shoves it on the packet_queue.  The other threads that are looking
for packets on the packet_queue will parse the raw packet with
aprslib.  This allows us to capture packets as quickly as we can,
and then process those packets in the secondary threads.
This prevents a bottleneck capturing packets.
2026-01-14 15:00:14 -05:00
0620e63e72 added more unit tests 2026-01-12 23:26:49 -05:00
6cbd6452d5 kiss consumer update
this patch updates the kiss consumer to call the callback with the frame
as arg[0] just like aprslib does.
2026-01-12 23:25:06 -05:00
a3854033b3 Added counts to dump stats
the dumpstats now shows the counts for each of the tables it outputs.
2026-01-12 23:23:31 -05:00
9a862c05f9 don't do lazy imports 2026-01-09 18:39:49 -05:00
40f8d23db2 Added new StatsLogThread
This thread collects stats and outputs to the log every 60 seconds.
2026-01-09 14:15:00 -05:00
e5644cc49d Remove plugin.run() locking
The plugin doesn't really need locks when processing the packets
as there is really only 1 thread that sends packets through
the plugins processing.
2026-01-09 12:31:46 -05:00
3198f06e2a Allow listen to export stats
This patch adds the ability for the listen command to
export it's running stats to an external aprsd-exporter that
is listening on /stats via http.
2026-01-07 15:24:33 -05:00
34017bedfe Ensure stats are serialized when requested
The seen_list, tracker and aprsdthreadlist wasn't
serializing it's data when requested during stats() time..
2026-01-07 14:57:28 -05:00
3eade4eb8b updated pre-commit 2026-01-07 10:39:16 -05:00
26242f7d43 Added unit tests for log 2026-01-06 18:57:54 -05:00
8a82a62dc9 Fixed building WeatherPacket from json
This patch fixes an issue with rebuilding a
WeatherPacket from json.   The 'weather' key wasn't
in the json that gets generated from the packet.to_json()
because it isn't part of the packet declaration.  The 'weather'
key only exists in the json that comes from aprslib, when decoding
a raw packet string -> json -> WeatherPacket.
2026-01-05 17:04:38 -05:00
1da92e52ef Added unit tests for packets.
Also did some code cleanup.
2026-01-05 17:00:03 -05:00
f9979fa3da remove py310 testing 2025-12-29 20:49:54 -05:00
d58700b9e4 fix pep8 issues 2025-12-29 19:34:09 -05:00
b377eca2a5 update listen command packet stats tracking 2025-12-29 19:26:39 -05:00
352e150a87 create the packet list up front 2025-12-29 19:25:41 -05:00
cc15950f33 update the rx thread and packet trackers
the main rx thread now doesn't do any processing of the incoming packet
other than converting the raw packet string to a packet object.
2025-12-29 19:23:47 -05:00
514df8788d Update listen to collect more stats 2025-12-17 23:46:39 -05:00
81b3cbbff8 updated listen.sh for container 2025-12-14 16:53:57 -05:00
3c23900da1 Use gps extension for sending beacons
This patch updates server to use the gps extension for
sending beacons if it's installed and enabled.
2025-12-13 10:44:34 -05:00
8ab6717b17 Add the run.sh switches to show the loglevel
This adds the command line args for aprsd server to
show the thread, loglevel and location in the logs for
the container build of aprsd
2025-12-13 10:19:44 -05:00
9ac881c56c Update WatchList and NotifySeenPlugin
The watchList was updating the last seen during RX time.
This happens before the NotifySeenPlugin even sees the packet,
so the callsign is never 'old'.  this patch fixes that, so the
watch list works.
2025-12-12 12:39:10 -05:00
a4b13c0c53 Update default options for commands
this adds the new logging options for all commands.
By default now the output doesn't show the thread and the log level.
This makes it easier to read the logs.  You can add them back by
passing in --show-thread --show-level
2025-12-12 10:07:41 -05:00
daaecf5cce Update for 4.3.0 release 2025-12-11 16:29:59 -05:00
26d771915f Try embedded asciinema video in readme 2025-12-11 15:12:53 -05:00
eb0818af65 reworked Documentation
The documenation now has a new theme and updated apidocs.
Also the main index is built from the README.md contents.
2025-12-11 09:55:03 -05:00
61126289df Reworked listen command log output
This patch makes portions of the log format optional,
so the main output of the listen command now is the timestamp
and the packet.
2025-12-11 09:31:11 -05:00
0ef131678f Added Documentation link to pyproject.toml 2025-12-10 23:22:46 -05:00
eaadf9a0ad Added rich cli screenshot to README 2025-12-10 15:26:15 -05:00
5ece2a10ef Reworked README and documentation 2025-12-10 14:57:12 -05:00
23ad059707 upgrade codeql to v4 2025-12-10 09:26:09 -05:00
37f8c62265 remove js from codeql 2025-12-09 17:44:24 -05:00
d0dfaa42e6 Added unit tests 2025-12-09 17:20:23 -05:00
2b2dbb114b ensure join has timeout 2025-12-09 17:06:23 -05:00
ebbde0ccde Ensure should quit returns a value 2025-12-09 17:04:49 -05:00
e821fbf53e fixed some formatting issues with filter.py 2025-12-09 17:03:05 -05:00
9c06957943
Merge pull request #204 from craigerl/serial-kiss
Added SerialKISSDriver
2025-12-08 15:35:50 -05:00
c34a82108b fixed tox failures 2025-11-26 20:28:25 -05:00
50022e1e9e Got the serial KISS driver working 2025-11-26 16:19:37 -05:00
6bd0f50dc0 Move some class vars out of __init__
This ensures that connected doesn't change between calls
to the constructor.
2025-11-26 16:16:08 -05:00
d28ed86f31 Added @trace.no_trace
this adds the new decorator to stop tracing specific methods
when tracing is enabled.  this is useful when debugging.
2025-11-26 16:15:02 -05:00
a8822672d8 Added SerialKISSDriver
This refactors the tcp kiss driver into the base class KISSDdriver
and implements the serial kiss driver.
2025-11-26 13:49:21 -05:00
8f6f8cd406 updated README 2025-10-27 13:16:15 -04:00
909827545c Added new passcode command
Now users can generate an aprs passcode for a callsign

aprsd passcode WB4BOR
2025-10-22 09:46:07 -04:00
cdb2ce910a update for release 4.2.4 2025-10-17 15:42:08 -04:00
be26f31896 remove some debug noise 2025-10-17 15:40:20 -04:00