Commit Graph

69 Commits

Author SHA1 Message Date
Nick Foster
94af9fac48 Add back in the SBS1 interface 2013-06-08 16:06:42 -04:00
Nick Foster
51cb2bdf46 Cleanup and remove dead/obsolete code. 2013-06-08 15:42:22 -04:00
Nick Foster
798d5e15c9 Rework options in radio.py for cleaner cmdline interface 2013-06-08 15:25:28 -04:00
Nick Foster
79aee53a52 Subscribe to *all* the servers. 2013-06-05 16:05:14 -04:00
Nick Foster
f62813f039 Add getters/setters in preamble/slicer, bring them out to radio.py via pubsub. 2013-06-05 15:56:09 -04:00
Nick Foster
ba55d24e92 Don't use commit() on each SQL insert, it makes things terrislow. 2013-06-03 09:07:36 -04:00
Nick Foster
b71c978e27 New universal pubsub interface in zmq_socket.py. Needs more work. 2013-06-03 08:38:26 -04:00
Nick Foster
33874893b7 Better exception handling in sql.py 2013-05-30 17:17:15 -04:00
Nick Foster
4216b96262 Threading fixes for ZMQ work. Also moved radio optparse options into radio.py. 2013-05-30 00:58:03 -07:00
Nick Foster
4d569f9112 In progress, temp commit. Have removed pubsub interface in favor of 0MQ sockets -- this gets us free message-passing across network or local host. 2013-05-29 14:18:15 -07:00
Nick Foster
db34eca30e Refactored modes_rx to use a more modular radio interface (radio.py) using a pubsub pattern to formalize the old "outputs" interface I was using. Should make it easier to reuse the radio interface. 2013-05-27 19:50:42 -07:00
Johnathan Corgan
7ad09f5b14 Added option for pulse matched filtering
Pulse matched filtering places a boxcar filter upstream of the
averager and preamble detector.  The filter length is equivalent
to the number of samples in one Mode S chip (0.5us).  This
technique enhances operation when using sample rates > 4Msps.

When using --pmf, the threshold may need to be reduced a dB or
two from what would have been optimal without --pmf.

* rx_path.py now takes 'use_pmf', defaults to False

* modes_rx has new CLI option '-p' or '--pmf' to turn on PMF

* modes_gui has new checkbox on Setup tab
2012-10-29 09:37:18 -07:00
Nick Foster
26f7c779d7 Merge branch 'master' into az_map 2012-10-18 22:00:12 -07:00
Nick Foster
1adbf81950 Added get_dupes.py (not installed with apps). Pipe modes_rx output through get_dupes.py to find number of spurious replies. Intended to evaluate demodulator changes. 2012-10-18 12:22:52 -07:00
Johnathan Corgan
62304ff59e Refactor flowgraph into hierarchical block
This commit creates air_modes.rx_path, which is the common portion
of the flowgraph once the sample source and possible resampler are
created.  It takes baseband I/Q and emits Mode-S packets into the
supplied message queue.
2012-10-15 09:27:22 -07:00
Nick Foster
cadbf0eaaa Merge branch 'cpr' into az_map 2012-10-14 18:01:30 -07:00
Nick Foster
85da74b43a Fix preamble/slicer dB numbers. Was using power ratios for voltages (2.0 instead of 1.414 for 3dB, etc.). No real performance change.
Fix suggested by Denis Gapotchenko.
2012-10-13 20:55:45 -07:00
Nick Foster
6e6150b051 Limit scrollback buffer size. 2012-10-11 23:37:26 -07:00
Nick Foster
387daa1b1e Merge branch 'master' into az_map 2012-10-10 09:01:22 -07:00
Nick Foster
628003fbe6 Better cleanup in on_quit. Still probably needs a revisit. 2012-10-10 09:00:54 -07:00
Nick Foster
cd2cfec730 Azimuth map working. 2012-10-10 08:20:07 -07:00
Nick Foster
24cd839f56 Put deprecate warning in for old executable name. 2012-10-09 23:44:16 -07:00
Nick Foster
67b58d7204 Use a common lock for the KMLgen and SQL threads to keep them from stepping on each other when reading the SQLite db 2012-10-09 23:31:02 -07:00
Nick Foster
d86e568ac2 Decouple data output thread from live data display by using a signal to the main window instead of directly calling append(). 2012-10-08 18:44:52 -07:00
Nick Foster
4b70c5a0b0 Up the sample rate for RTL dongles to 3.2Msps. Seems to enjoy 3.2Msps just fine, and the Mode S RX works *much* better with the extra bandwidth. 2012-08-23 19:24:06 -07:00
Nick Foster
1d2ee71121 Fixes for dumb GUI mistakes 2012-07-18 18:49:13 -07:00
Nick Foster
10f96bf35d Merge branch 'master' into qtapp 2012-07-17 14:31:52 -07:00
Antoine Sirinelli
6b9006c339 Allow specification of source constructor arguments via -D/--args 2012-07-17 14:30:40 -07:00
Nick Foster
b26012f5ad Real-time RSSI update and graceful flowgraph closure on exit. 2012-07-16 22:43:02 -07:00
Nick Foster
3163fca47a Renamed everything in python/ for consistent namespace 2012-07-16 20:59:37 -07:00
Nick Foster
5442cba206 Split out GUI data model and views into modes_gui_model.py 2012-07-16 19:10:23 -07:00
Nick Foster
373a6f04ee New feature: reports per second widget. Lets you know you're actively receiving things. 2012-07-16 18:58:22 -07:00
Nick Foster
dbab4f0142 Don't populate lat/lon by default 2012-07-16 10:49:54 -07:00
Nick Foster
4fbda15afc Merge branch 'parse' into qtapp
Conflicts:
	python/modes_parse.py
2012-07-16 09:40:05 -07:00
Nick Foster
c2129e0eab Default RTL gain of 35 and parser catches negative shifts generated by invalid packets. 2012-07-16 09:36:15 -07:00
Nick Foster
cb4c91aee1 Altitude now taken from types 4, 5, 20 short replies as well, for ADS-B-equipped aircraft. Bearing/heading updated real-time.
TODO: figure out how to filter aircraft list for ADS-B-equipped aircraft only
2012-07-15 12:59:41 -07:00
Nick Foster
923651f69a Heading widget updates correctly. 2012-07-14 22:24:18 -07:00
Nick Foster
86a7bbbb2a Selections are persistent when rows inserted, rows automatically prune when 60s w/o reply 2012-07-14 21:38:06 -07:00
Nick Foster
372e925277 Well, the ICAO lineedit works in hex now, but I don't like the way it went in. 2012-07-14 15:43:09 -07:00
Nick Foster
20dd8457ea Dashboard mostly works. ICAO view now prints ident if available.
TODO:
draw selection in list view delegate
maintain selection on insert rows (emit beginInsertRows/endInsertRows)
fix heading widget so it updates correctly (something in the DataWidgetMapper that you aren't doing)
2012-07-14 14:44:36 -07:00
Nick Foster
70b099a05e Revert SQL changes and use a separate, non-db datamodel for the dashboard display. 2012-07-13 09:43:22 -07:00
Nick Foster
0a1d863f5f SQL parser modified to use flat aircraft table. This breaks KML horribly and eventually you should integrate the flat table into the GUI app and revert to the old method for the KML generator. 2012-07-12 00:02:11 -07:00
Nick Foster
5c0ccaa833 Split out the data model because I'm using a flat SQL table for the dashboard now. Most everything hooked up. 2012-07-11 19:18:40 -07:00
Nick Foster
19b7061247 Other fields entered. 2012-07-11 12:55:30 -07:00
Nick Foster
96db9a9608 today nick learns about the QDataWidgetMapper, which solves all his problems 2012-07-11 09:15:05 -07:00
Nick Foster
855535644f Using a delegate instead for coloring. Text color works but we don't get nice highlighting. Wish we could alter the painter and use the default paint(). 2012-07-10 16:08:24 -07:00
Nick Foster
2eb7426688 Using QtSql instead of sqlite3 to access data -- might change this back but trying to set up a good data model.
Also subclassed QListView so we can eventually implement fading by age in the list view.
2012-07-10 09:17:53 -07:00
Nick Foster
f2f344538a Added in speed/vs fetching. Need to figure out your datamodel. 2012-07-07 11:32:32 -07:00
Nick Foster
8439e0e5f3 Parser and error-handling changes. 2012-07-07 11:04:49 -07:00
Nick Foster
b4cafe0384 Setting up a model-view display for the airframe list. 2012-07-05 23:52:00 -07:00