Commit graph

265 commits

Author SHA1 Message Date
Oliver Jowett 38845c2447 Rearrange main loop so that --net-only isn't quite such a special case. 2015-02-17 21:44:30 +00:00
Oliver Jowett 0a055c34d0 Log timestamped messages on startup/shutdown. 2015-02-17 21:43:17 +00:00
Oliver Jowett dcdfd2acab Catch SIGTERM, log on signals.
Fixes #22.
2015-02-17 21:41:40 +00:00
Oliver Jowett 342eafd438 Include timestamps on USB connect/disconnect logging.
Fixes #21.
2015-02-17 21:40:26 +00:00
Oliver Jowett 03e096475c Wait for at most 100ms for more data from the rx thread, so that we do not starve background tasks if the rx thread blocks (e.g on USB disconnect).
Fixes #20.
2015-02-17 21:07:36 +00:00
Oliver Jowett 7849e1019d Init start/end on all stats so the json output looks sensible for the first minute. 2015-02-11 01:14:21 +00:00
Oliver Jowett f9ed7e4a97 More time_t -> milliseconds conversions.
This lets us support fractional net flush times among other things, which is handy.
2015-02-10 22:24:22 +00:00
Oliver Jowett 7053ad02da Make aircraft tracking use milliseconds everywhere. 2015-02-10 21:49:37 +00:00
Oliver Jowett bdefa42956 Merge pull request #11 from jburgess777/add-oversample-to-help
Add --oversample option to help text
2015-02-08 18:07:23 +00:00
Oliver Jowett 4e177c2d64 Store computed reception time in the message struct so we don't rely on
the message being emitted immediately.

Fix computation of reception time so it's more sensible (the block timestamp
is some time after reception of the _end_ of the block, not the start) - this
means that message-emission times are always later than message-reception
times in SBS output, which is a bit more sensible.

Use clock_gettime in preference to ftime.
2015-02-08 17:46:01 +00:00
Oliver Jowett 899c51ce85 Only emit network messages once we have seen two of them
(except in --net-verbatim mode, where we emit them all)

Move aircraft tracking into track.[ch].

Clean up references to "interactive mode" when tracking
aircraft - we always track aircraft, even in non-interactive
mode.
2015-02-08 14:27:03 +00:00
Jon Burgess e1e5acbdbc Add --oversample option to help text 2015-02-07 23:15:12 +00:00
Oliver Jowett 5b40377b98 Measure CPU for demodulator, read thread, and background tasks individually. 2015-01-23 01:22:22 +00:00
Oliver Jowett 9deac8d894 Continuing to try to work around libusb/librtlsdr problems. 2015-01-23 01:20:22 +00:00
Oliver Jowett 008ae926e7 Add --net-verbatim, which forwards the original uncorrected message to net clients,
not the corrected version. Then the client can make its own policy decisions about
whether to accept and correct the damaged messages.
2015-01-22 19:56:38 +00:00
Oliver Jowett 7c64f27c22 Remove unused user latitude/longitude defines. 2015-01-21 11:53:45 +00:00
Oliver Jowett 0433ed3f5d icao_filter.[ch] from the experimental branch. 2015-01-20 23:53:26 +00:00
Oliver Jowett 270a22e06a CRC reimplementation to be byte-at-a-time table-driven.
Also be smarter about error correction, avoiding ambiguous cases
when --aggressive is specified.
2015-01-20 23:04:05 +00:00
Oliver Jowett b9b76da02d Stats rearrangement, based on experimental branch changes. 2015-01-20 17:16:35 +00:00
Oliver Jowett e02a2cdd44 GPL. 2015-01-20 16:49:01 +00:00
Oliver Jowett f753c2d9fe Separate 2.4MHz demodulator into its own file. 2015-01-19 23:50:25 +00:00
Oliver Jowett a6542b505b Separate out 2MHz demodulator + support functions to a separate file. 2015-01-19 23:47:51 +00:00
Oliver Jowett 971e5754ff Try to work around a libusb crash on exit after SIGINT. 2015-01-17 19:23:57 +00:00
Oliver Jowett e68949bdb3 Write an accurate value for the history count, so the progress bar is correct.
(cherry picked from commit 0919700293e34f5a93a4407d33e1e56c0ae0d13c)
2015-01-16 20:33:40 +00:00
Oliver Jowett 1db63ebc65 Add generation of history JSON.
Add support for URL handlers that match a path prefix.

(cherry picked from commit 38faa510cb881cbf9d2a0a85bbde61130b5259e7)
2015-01-16 20:31:59 +00:00
Oliver Jowett b1bfb4d520 Rationalization of JSON output. Pass actual URL path to URL handler.
(cherry picked from commit becce8d69a6e6cee38d4fdb78b5a4e25d570baea)
2015-01-16 20:30:41 +00:00
Oliver Jowett 10c372f528 Display stats on exit in --net-only mode.
(cherry picked from commit ec252d77deb2b345a8561cba13965d5ef8ab0a83)
2015-01-16 20:27:48 +00:00
Oliver Jowett e701f883b3 Do tuner gain setting properly.
(cherry picked from commit c06a537c8143af8e363fde677043053cefff1612)
2015-01-16 20:25:45 +00:00
Oliver Jowett 62ec7796d0 Require that the JSON refresh interval is at least 1, as it is used
to control the webmap refresh rate even if JSON files are not being written.
2015-01-14 01:15:54 +00:00
Oliver Jowett 72bfc31458 Display message rate (30 sec average) on the webmap.
(cherry picked from commit 848af78be685c6e2a26d0b30e9f385696201a2c4)
2015-01-13 22:01:53 +00:00
Oliver Jowett fefce7b4bd Add --max-range parameter. Use it for relative position limits, and to discard bad position results.
(cherry picked from commit 0d725508f78cb2fd7759efbb66b45b867d6f7722)
2015-01-13 21:53:12 +00:00
Oliver Jowett 165f98a567 Fix hanging exit on control-C.
(cherry picked from commit e6f8283946cc3150bcba2d8b3cbab11f5d509308)
2015-01-13 21:37:45 +00:00
Oliver Jowett f72fc3dbee Fix a couple of problems found by valgrind. 2015-01-12 00:56:51 +00:00
Oliver Jowett 43ec58c78e Remove dead tracking code related to the removed PlanePlotter feed. 2015-01-04 20:09:38 +00:00
Oliver Jowett 76474f58ab Fix warnings. Add -Werror so they break the build in future. 2015-01-04 20:08:33 +00:00
Oliver Jowett 85eee61358 Oops, one unsaved file. 2015-01-02 22:34:35 +00:00
Oliver Jowett 07bc762055 Notice if we lose the RTLSDR device and reconnect.
Fix some of the more glaring pthread bugs.
2015-01-02 22:29:29 +00:00
Oliver Jowett 2db9d62c1c Warn if --modeac is used together with --oversample. 2014-12-27 21:25:32 +00:00
Oliver Jowett 727a59e8eb Oversampling is now less scary. 2014-12-27 21:22:43 +00:00
Oliver Jowett 58dfbdcb6b Add support for controlling the accuracy of the receiver location
written in the JSON metadata used by the webmap.
2014-12-27 20:52:56 +00:00
Oliver Jowett fc45eded0b Removing COAA/PlanePlotter stuff (+ binary-only object file) that I can't support or test. 2014-12-27 20:16:56 +00:00
Oliver Jowett 48986c48cc Remove half-implemented --no-decode option. 2014-12-27 20:11:10 +00:00
Oliver Jowett 9fa09e0e92 receiver.json support, internal webserver cleanup.
Add data/receiver.json (generated once) and support for it in script.js.

Internal webserver rearrangement to support multiple json files.
2014-12-10 17:05:22 +00:00
Oliver Jowett f707f2cdce More version reporting tweaks. 2014-12-10 12:44:00 +00:00
Oliver Jowett c6077b1e6c Use the package version as the version number compiled into the binary. 2014-12-10 12:25:43 +00:00
Oliver Jowett 2dcc8e3524 Add direct support for FATSV-format output.
This is adapted from the FlightAware fork, with some cleanup and
modifications needed to work with the net-cleanup changes.

Inclusion of "verbatim" TSV data read from an AVR-format input
connection is not supported.
2014-12-08 19:56:45 +00:00
Oliver Jowett 9e72eb64be Merge branch 'write-json-files' into oversampling 2014-11-23 17:22:58 +00:00
Oliver Jowett 2abc386895 Off-by-one error in the json interval calculation. 2014-11-23 17:22:34 +00:00
Oliver Jowett e0bc89e542 Merge branch 'write-json-files' into oversampling 2014-11-23 16:34:18 +00:00
Oliver Jowett d0174994cb Fix path buffer size 2014-11-23 16:32:22 +00:00