Commit Graph

1420 Commits

Author SHA1 Message Date
furrtek
d12cd0d8af "Labels" widget 2017-02-12 07:23:31 +00:00
furrtek
0102a34286 Reverted WFM mode to working state
TXView in ADSB TX
Lockable TXView
POCSAG TX bugfix with Alphanum and Numeric only
Testing Labels widget
2017-02-12 04:05:21 +00:00
furrtek
884d0c4f58 Missing toolchain-arm-cortex-m.cmake file 2017-02-11 23:12:49 +00:00
furrtek
091ec1f8f4 Fixed hackrf.img and terminator.img not being generated 2017-02-11 23:06:01 +00:00
furrtek
3efffca1b7 Save before cleanup 2017-02-11 22:17:02 +00:00
furrtek
21de81bb85 POCSAG TX: Support for numeric only and address only messages 2017-02-08 01:19:29 +00:00
furrtek
c72b490d49 Encoders, Nuoptix DTMF and RDS transmitters now use TransmitterView
Bigger buttons in AlphanumView, 3 pages
Scary yellow stripes around TransmitterView
2017-02-07 22:12:20 +00:00
furrtek
fc8279aa30 POCSAG TX text and bitrate can be changed
Modal view message can be multiline now
2017-02-07 19:54:18 +00:00
furrtek
dc7fcbc6c3 POCSAG TX (with fixed message for testing) 2017-02-07 17:48:17 +00:00
furrtek
b430b1e427 Merge branch 'master' of https://github.com/furrtek/portapack-hackrf 2017-02-06 20:32:45 +00:00
furrtek
24abe4b427 Yet another POCSAG bugfix (multi-batch messages are not cut anymore)
Added BCH ECC functions for checking, error correction and encoding
2017-02-06 20:32:33 +00:00
furrtek
98f89a84bb Improved POCSAG receiver reliability 2017-02-05 20:57:20 +00:00
Giorgio Campiotti
ca7bb0941b Update ui_about.hpp
Year was wrong in "About" screen.
2017-02-05 21:36:00 +01:00
furrtek
46482a110c Frequency manager menu refresh not working, disabled for now... 2017-02-03 16:31:43 +00:00
furrtek
3fca8be317 Frequency save and naming bugfix 2017-02-03 16:22:12 +00:00
furrtek
84be3a363c Added categories for Frequency Manager
Very bad memory leak fix in MenuView
2017-02-03 15:10:27 +00:00
furrtek
f9dd3f5a96 Icons and icon tool update 2017-02-03 08:21:12 +00:00
furrtek
c352458114 Jammer manual set range 2 & 3 bugfix
Menu capture/replay confusion bugfix
2017-02-03 06:26:42 +00:00
furrtek
607e6c5bd4 CTCSS in soundboard. 24 jammer chs instead of 9.
Soundboard random mode now cares about loop option.
Started documenting UI.
2017-02-02 09:29:14 +00:00
furrtek
799e29e5e6 Last soundboard bug was actually 50% fixed... 2017-02-02 00:44:35 +00:00
furrtek
15f66eb74e Soundboard bugfix: shouldn't crash with long file names 2017-02-01 23:31:16 +00:00
furrtek
394331ebd2 POCSAG RX now runs at 3.072MHz, like NFM audio 2017-02-01 11:40:01 +00:00
furrtek
8662ed4024 Close Call should be more accurate
Merged close call and wideband spectrum baseband processors
2017-02-01 08:53:26 +00:00
furrtek
064e097bc3 Symfield widget auto-inits
ADS-B emergency frame
2017-02-01 00:21:13 +00:00
furrtek
688a012443 Transmitter config widget
Frequency manager duplicate alert
Tone sets
2017-01-30 13:10:30 +00:00
furrtek
0642d633c3 Frequency manager empty file bugfix 2017-01-30 01:09:00 +00:00
furrtek
c8e71bcdee Cleaned up jammer UI 2017-01-29 08:29:16 +00:00
furrtek
693a2533b5 Reverted to original CPLD data 2017-01-29 06:50:48 +00:00
furrtek
f0fbc356ad Jammer bugfix: now produces all the right channels 2017-01-17 14:27:37 +00:00
furrtek
7cb38f858e Udpdated jammer baseband code, should work again 2017-01-17 08:42:35 +00:00
furrtek
368f0f7fb0 Digital mode for waveform widget, 2.4GHZ WLAN channels in jammer 2017-01-17 07:00:42 +00:00
furrtek
b10c88e271 POCSAG bitrate selection and logging toggle
Small checkboxes
2017-01-16 13:36:28 +00:00
furrtek
e4abcea9a3 Added bitrate option for POCSAG baseband, PWMRSSI frequency option
Split SD card wiper app
Cleanup for -Weffc++
2017-01-16 08:40:17 +00:00
furrtek
5e40669cbc Merge 'upstream/master' - At least it builds... 2017-01-16 03:45:44 +00:00
furrtek
f39954856e Ignores 2017-01-10 19:52:52 +00:00
furrtek
12aeae3a82 Commit replay stuff before sync 2017-01-10 19:45:40 +00:00
furrtek
3ec725c172 Added SD card wiper tool
Frequency manager now creates FREQMAN.TXT if not found
Moved graphics files
2017-01-10 18:40:33 +00:00
furrtek
a0c248d567 Added waveform widget and a frequency field in encoders tx 2017-01-09 02:45:29 +00:00
furrtek
be3d477352 Fixed encoders TX locking up, more icons 2017-01-08 21:52:54 +00:00
Jared Boone
052fd1c407 Extract loop into static method.
Performance boost as compiler is no longer updating member variable every pass through the loop.
2017-01-06 16:59:57 -08:00
Jared Boone
05eb694c0a Introduce simd32_t type.
Discontinue use of disagreeable __SIMD #define.
2017-01-06 16:57:36 -08:00
Jared Boone
177d49b769 GPIO: Fix for incorrect pin-funciton bit mask.
Caused device to not boot. Oops.
2017-01-06 14:22:27 -08:00
furrtek
1898a37c42 Merge branch 'master' of https://github.com/furrtek/portapack-hackrf 2017-01-06 02:51:24 +01:00
furrtek
9fab42eb7c More pretty icons, BW setting change in BHT TX 2017-01-06 02:51:09 +01:00
Jared Boone
e763592adb Compile firmware as C++14. 2017-01-05 17:15:00 -08:00
Jared Boone
87383d735c C++14: Decommission my own make_unique. 2017-01-05 17:14:07 -08:00
Jared Boone
0d1e48ae9c C++14: Add two-argument delete() implementations.
Just passing to one-argument versions.
2017-01-05 17:13:03 -08:00
Jared Boone
a22dc150bc C++14: make some wrapper classes static.
Also address GCC 6.2 not allowing constexpr from reinterpret_cast<> values.
2017-01-05 17:10:00 -08:00
Jared Boone
0ea2f9650e C++14: const all the methods! 2017-01-05 17:06:44 -08:00
Furrtek
c6bf8cfebd Splash was stuck 2016-12-29 23:20:26 +01:00
furrtek
c0909fa298 Pretty icons 2016-12-26 20:33:38 +01:00
furrtek
a67feb01fd Fixed Nuoptix TX, merged DTMF TX with tones TX 2016-12-26 17:51:30 +01:00
furrtek
1e34a48be9 Fixed proc_tones skipping last tone
Split ui_bht to bht
2016-12-26 16:15:54 +01:00
furrtek
f033782d4b Playdead default sequence and validity check 2016-12-26 13:49:23 +01:00
furrtek
7df5987b3b Added utilities > Frequency manager + load/save 2016-12-26 01:31:38 +01:00
furrtek
ad2a4b6743 Added make_bitmap.py tool 2016-12-24 16:55:06 +01:00
furrtek
9470028308 Fixed messup after last squashed commits 2016-12-24 16:54:44 +01:00
furrtek
6bcb7dc1b1 # This is a combination of 2 commits.
# The first commit's message is:

Updated RDS transmitter: flags, PI and date/time

Merging baseband audio tone generators

Merging DTMF baseband with "tones" baseband

Added stealth transmit mode

App flash section bumped to 512k
RX and TX LEDs are now used
Play dead should work again, added login option
Morse frame gen. for letters and fox hunt codes
Merged EPAR with Xylos
Made EPAR use encoders for frame gen.
Moved OOK encoders data in encoders.hpp
Simplified about screen, ui_about_demo.* files are still there

BHT city DB, keywords removed

BHT cities DB, keywords removed

Update README.md

RDS radiotext and time group generators

# This is the 2nd commit message:

Update README.md
2016-12-24 11:52:11 +01:00
furrtek
75e8a664b0 3D buttons, to make UI clearer 2016-12-23 18:31:03 +01:00
furrtek
843c465c73 RDS radiotext and time group generators 2016-12-23 18:31:02 +01:00
furrtek
28ea2179f4 Re-enabled closecall even if it's still not working well
RDS PSN works again but update issue (UI ?)
Moved CTCSS stuff to dedicated file
2016-12-23 18:31:02 +01:00
furrtek
1db138c27a Wavfile class 2016-12-23 18:31:02 +01:00
furrtek
e56fa0f479 Numbers station works, very basic
Added utilities, whip antenna length calculator
Modal errors/abort
2016-12-23 18:31:02 +01:00
furrtek
d18b6d135d Restoring jammer and RDS functionalities, please wait...
Started work on frequency manager and numbers station simulator
2016-12-23 18:31:01 +01:00
furrtek
ef0feae62b Started work on ADS-B TX baseband processor 2016-12-23 18:31:01 +01:00
Jared Boone
01cd8c7776 GPIO: Fix PinConfig -> uint16_t type conversion signature. 2016-12-21 22:24:07 -08:00
Jared Boone
ad9a63a666 GPIO: Fix apparent dumb bit-logic bug.
Not due to any observable incorrect behavior, but just noticing that the code, as previously written, should not work...
2016-12-21 22:20:28 -08:00
Jared Boone
431aae333a Move additional FR_* error values to file.hpp for public use. 2016-12-06 09:34:45 -08:00
Jared Boone
f2dd6827ea Add Widget::parent_rect() accessor, rename member variable.
Some day I will settle on a convention for naming members... I think that day is near.
2016-12-06 09:28:48 -08:00
furrtek
bb6eefe2be Started ADS-B TX UI and frame encoding 2016-11-30 07:41:55 +01:00
Jared Boone
3f94591083 Remove a lot of static_cast<>s involving UI structs.
Also starting to get religion on using unsigned integers only when I want their wrapping/modulus behavior.
2016-11-29 10:13:56 -08:00
Jared Boone
4c8550bb7d Fix narrowing conversion warnings. 2016-11-28 12:09:02 -08:00
Jared Boone
227719ff1d Fix static_cast warning. 2016-11-28 12:05:24 -08:00
Jared Boone
86d2576d3e Fix types on touch Filter accumulator/value. 2016-11-28 12:00:56 -08:00
Jared Boone
e820bed097 Hide ui::Rect implementation. 2016-11-28 11:25:27 -08:00
Jared Boone
d15ace4676 Hide ui::Size implementation. 2016-11-28 10:55:45 -08:00
Jared Boone
aac2d31548 Hide ui::Point implementation. 2016-11-28 10:39:10 -08:00
Jared Boone
606c1cebac Work around apparent alignment bug in G++ 5.4.1?
Padding struct to be sizeof() % 4 == 0, because it was crashing the baseband... I think.
2016-11-26 16:58:42 -08:00
Jared Boone
ed0d5331ad Fix member initialization order. 2016-11-26 16:53:35 -08:00
Jared Boone
46b3d9d087 Disallow copy constructors/assignments.
For classes containing pointers/state that should not be copied.
2016-11-26 16:52:57 -08:00
Jared Boone
4eb0facacb Add lots of value constructors. 2016-11-26 16:50:44 -08:00
Jared Boone
cd31ae86d7 Add single-arg constructor for vec2_s16. 2016-11-26 16:42:03 -08:00
Jared Boone
229616491c Enable Effective C++ and uninitialized members warnings. 2016-11-26 16:28:11 -08:00
Jared Boone
193bf0b744 Add "BASEBAND" path variable for CMake. 2016-11-05 10:40:58 -07:00
Jared Boone
94528ea572 Allow overriding baseband mcuconf.h M4 clock config. 2016-11-05 10:40:05 -07:00
Jared Boone
a33476259e Create buffer.cpp, reduce #include dependencies and impl leakage. 2016-10-24 11:16:48 -07:00
Jared Boone
5dfb53263a Extract BufferExchange, simplify threading. 2016-10-06 13:38:56 -07:00
Jared Boone
84334ef818 Further generalize StreamOutput -> BufferExchange. 2016-10-04 22:52:12 -07:00
Jared Boone
fadbbcc581 Move buffer reset out of buffer exchange class. 2016-10-04 22:17:57 -07:00
Jared Boone
2433ea30ad Generalize StreamOutput a bit. 2016-10-04 22:17:27 -07:00
Jared Boone
a5793b8b9d Put Reader, Writer inside "stream" namespace. 2016-10-04 17:13:21 -07:00
Jared Boone
01320d9806 Add a Reader interface. 2016-10-04 17:04:49 -07:00
Jared Boone
f3bfd50399 Move IO functions into .cpp files. 2016-10-04 10:12:10 -07:00
Jared Boone
43c4584a32 Move WAV structs outside of writer. 2016-10-04 10:04:38 -07:00
Jared Boone
1a2fd3e127 Prepare WAV structures for extraction. 2016-10-04 09:59:47 -07:00
Jared Boone
1bdca0fd8d Extract (some) Writer classes to separate files.
TODO: PNGWriter could probably reuse this stuff too, but...
2016-10-04 09:57:13 -07:00
Jared Boone
414dd41577 Allow modification of StreamBuffer (data values, size). 2016-10-04 09:15:19 -07:00
Jared Boone
b69a3abcb5 Spectrum: Templatize various window functions. 2016-10-03 12:31:40 -07:00
Jared Boone
4153995944 CPLD: Invert GCK2 to improve ADC sample timing. 2016-10-03 11:58:42 -07:00
Jared Boone
f756ac4eac CMake: Produce linker .map files for application, basebands. 2016-10-03 11:34:59 -07:00
Jared Boone
aed58f2a3f File: Stop copying path when iterating.
TODO: I bet I've made this mistake a billion other places...
2016-10-01 10:47:21 -07:00
Jared Boone
86f672af2b File: Add misc useful API from C++17. 2016-10-01 10:44:11 -07:00
furrtek
8c70ef08f8 Fixed xx2262 remote encoder def
SymField now shows symbol chars
2016-09-27 03:06:14 +02:00
furrtek
8276e5e311 Added CTCSS in Soundboard 2016-09-23 23:08:54 +02:00
Jared Boone
b9e475cbf4 Silence CMakeForceCompiler deprecation warning for >=3.6. 2016-09-23 12:18:42 -07:00
furrtek
55ba0b5e06 Cleanup, random mode in DTMF TX 2016-09-23 20:17:29 +02:00
furrtek
bb29efeda6 Added Nuoptix DTMF sync transmit (Disney parades, light shows...)
Soundboard ignores stereo files
2016-09-23 17:34:50 +02:00
furrtek
d049553750 Removed terminator.img from ignore 2016-09-23 12:26:50 +02:00
furrtek
8c0ff7f9c0 Soundboard uses common lfsr rand() 2016-09-23 12:20:36 +02:00
Jared Boone
b87d1456a2 File: Make path a first-class object, add some methods from C++17. 2016-09-08 12:57:34 -07:00
Jared Boone
f80706cb34 File: Extract function to convert path to string. 2016-09-07 22:20:51 -07:00
Jared Boone
df0fc30fda Rect: Comment about a bad API method.
In retrospect, I don't like Rect + Rect = union -- it doesn't make as much sense and isn't as readable as Rect.union(Rect).
2016-09-07 22:19:30 -07:00
Jared Boone
f722497b01 Rect: operator method to offset by a Point. 2016-09-07 22:18:11 -07:00
Jared Boone
79330015ed File: Clean up directory_iterator construction, preserve pattern.
FatFs requires pattern pointer to be stable during search.
2016-09-07 20:46:45 -07:00
Jared Boone
2740761ed7 RecentEntriesX: Move non-templated bits to .cpp. 2016-09-05 16:49:44 -07:00
Jared Boone
722f9b6886 MenuItem: Misc const and constructor consistency adjustments.
Also moved add_items() body to .cpp file.
2016-09-05 15:30:45 -07:00
Jared Boone
9a01d59822 MenuView: Change add_items arg to initializer_list.
Another code size improvement, and makes maintaining lists of menu items less stupid (you don't need to change the template arg when the item count changes).
2016-09-05 15:20:50 -07:00
Jared Boone
09222f0044 Widget/View: Consolidate dirty code inside Widget. 2016-09-05 15:04:28 -07:00
Jared Boone
8a69b0523e View::add_children: Use std::list_initializer as argument.
Improvement in code size -- 944 bytes.

Some day I will understand C++11 well enough to do the right thing the first time.
2016-09-05 14:53:04 -07:00
Jared Boone
298324d6e4 RecentEntries: Extract Columns model. 2016-09-05 12:34:41 -07:00
Jared Boone
61f0d97c39 RecentEntriesView: Extract header and table widget, package in to top-level View. 2016-09-05 12:09:29 -07:00
Jared Boone
50e2dfa0b9 RecentEntries: Make templated type of std::list. 2016-09-03 22:53:44 -07:00
Jared Boone
bd785d8bf4 RecentEntries: Extract more algorithms. 2016-09-03 18:26:48 -07:00
Jared Boone
c8f7863c83 RecentEntries: Expose container as base class.
Trying to refactor until there's nothing but the base class left.
2016-09-03 18:12:07 -07:00
Jared Boone
b596d0697c RecentEntries: Extract range_around(). 2016-09-03 17:10:08 -07:00
Jared Boone
42d98c3b45 RecentEntries: Remove Packet template arg. 2016-09-03 16:38:44 -07:00
Jared Boone
4d781df76c RecentEntries: Don't reference Entry template arg directly. 2016-09-03 12:58:11 -07:00
Jared Boone
c6f7d7f844 RecentEntriesView: Extract duplicate focus+selection style code. 2016-09-02 22:44:40 -07:00
Jared Boone
1e0d452f57 RecentEntriesView: Generalize draw_header() implementations. 2016-09-02 22:38:05 -07:00
Jared Boone
2396d2d97a CMake: Remove DFU --reset, which fails build if reset fails.
dfu-util will often complain of reset not succeeding (which is apparently fine), then halting the programming phase (which is not fine).
2016-08-31 11:23:42 -07:00
Jared Boone
5d2ad9c1aa SGPIO: Use pin constants when changing output enables. 2016-08-30 21:33:44 -07:00
Jared Boone
00c7cdf027 CPLD: Always clock SGPIO data on external clock rising edge. 2016-08-30 21:30:03 -07:00
Jared Boone
337d5ebaea Add PortaPack-customized HackRF CPLD bitstream. 2016-08-30 21:29:23 -07:00
Jared Boone
42a07bb10c Remove repeated code in RF path Config. 2016-08-30 21:26:55 -07:00
Jared Boone
f0c4b0fc98 AIS: Doesn't use RRC filter -- use rect instead. 2016-08-29 20:47:37 -07:00
furrtek
808f99647e Soundboard: Arbitrary samplerate support for wave files
Screenshots
2016-08-26 09:54:17 +02:00
furrtek
f7e0f36bd9 Added Soundboard
file.cpp: scan_root_files
proc_audiotx.cpp: bandwidth setting
ui_widget.cpp: button on_focus
2016-08-26 08:11:24 +02:00
furrtek
5de6349199 Bitrate and flags for POCSAG packets, trim bugfix 2016-08-25 16:20:19 +02:00
furrtek
04cdafe387 Bugfix: POCSAG alphanum messages not showing
Bugfix: Range limit for afsk config
2016-08-24 14:44:57 +02:00
Jared Boone
e2fe4b65d9 CPLD: Set DECIM1 as input to CPLD.
How did DECIM work before?! Now, decimate is no longer a feature, so this doesn't really matter. But tidying it up anyway.
2016-08-23 10:30:05 -07:00
furrtek
86e3b55a54 Bugfix: forgot bit reversal for POCSAG alphanumeric messages 2016-08-23 17:50:18 +02:00
furrtek
1b9465716f HH:MM in POCSAG RX 2016-08-23 14:35:14 +02:00
furrtek
0a549c8192 Manual frequency input in POCSAG RX
Changed firmware file name
2016-08-23 11:27:10 +02:00
furrtek
02f0271553 Added basic POCSAG receiver
Added Yes/no modal screen (for future tx warnings)
2016-08-23 08:45:33 +02:00
Jared Boone
11a5aa9766 FatFs: Apply patch ff12a_p6.diff. 2016-08-21 23:03:08 -07:00
Jared Boone
60cc9b7faa FatFs: Apply patch ff12a_p5.diff.
Fixed one chunk of this patch in an earlier commit.
2016-08-21 23:02:00 -07:00
Jared Boone
81517b3f4d SD debug: Enlarge stack for long filenames, etc. 2016-08-21 22:16:08 -07:00
Jared Boone
ed791ac5bd File: Widen size/offset types for 64-bit filesystems. 2016-08-21 22:15:19 -07:00
Jared Boone
f7bfde73b6 FatFs: Enable long file name support.
Lots of re-plumbing to make this work, including a bunch of Unicode stuff now in the binary. Bloat City, I'm sure.

TODO: FatFs using unsigned (uint16_t) for UTF16 representation is kinda inconvenient. Lots of reinterpret_cast<>().
2016-08-21 18:06:39 -07:00
Jared Boone
43a11ba048 Rename time files/namespace to not conflict with existing defs. 2016-08-21 17:49:06 -07:00