Commit Graph

487 Commits

Author SHA1 Message Date
Jared Boone
600dcb734e AK4951: Initial commit. 2017-05-31 11:45:54 -07:00
Jared Boone
bec626e29f WM8731: Add Codec abstraction. 2017-05-31 11:42:12 -07:00
Jared Boone
37c058354e WM8731: Add method to detect codec is present.
Used to determine PortaPack hardware version.
2017-05-31 11:34:16 -07:00
Jared Boone
8f5555b052 WM8731: Store headphone volume for mute() function.
So when unmuted, previous volume can be restored.
2017-05-31 11:32:32 -07:00
Jared Boone
f6e1e78e8a WM8731: Return bool from reset() and low-level write()s. 2017-05-31 11:28:00 -07:00
Jared Boone
b3ee884f16 I2S RX: Set RX SDA pin to correct SCUMUX mode.
It's left in GPIO mode ordinarily, because of CPLD programming earlier in boot-up.
2017-05-26 16:50:34 -07:00
Jared Boone
556085b3e3 I2S: Enable TX_WS output pin's input buffer.
This permits receipt of TX_WS as RX_WS for the receive side of the I2S peripheral, and was why I got no RX samples when testing microphone input.
2017-05-22 14:20:49 -07:00
furrtek
a35d9ee8a9 Missing image files 2017-05-18 21:56:55 +01:00
furrtek
38e14b1e30 Scanner: Added last locked frequencies list
Added back squelch to NFM receiver
Scanner: cleanup
Widgets: VU-meter cleanup
2017-05-18 11:06:11 +01:00
Jared Boone
dd0048db8d Remove broken simd32_t type. 2017-05-03 09:58:07 +01:00
Jared Boone
19e42196db Fn for control of audio codec reset signal. 2017-05-01 10:37:49 +01:00
Jared Boone
b12f90ef08 Adjust initial CPLD io_reg value for new CPLD code. 2017-05-01 10:34:33 +01:00
furrtek
8c680ff893 Simplified LCR code a bit
Split modem into modem and serializer
Frequency string formatter
2017-04-24 18:15:57 +01:00
furrtek
90feadd9f5 POCSAG RX saves ignored address
Made AFSK code more generic (not tied to LCR)
Added modem presets and more options in AFSK setup
String-ized and simplified LCR UI code
Simplified AFSK baseband code, made to always work on 16bit words
2017-04-21 06:22:31 +01:00
furrtek
eff96276c3 Made back button always focusable with left key 2017-04-21 00:31:21 +01:00
furrtek
40b49e2072 POCSAG address filter now ignores alpha messages
Experimenting with FIFOs for replay...
2017-04-19 22:05:16 +01:00
furrtek
3a1e5b8772 Added address filter in POCSAG RX
Changed POCSAG log format
Console widget knows red, green and blue now
2017-04-18 21:29:55 +01:00
furrtek
fbc054ca75 Coaster pager address scan
Merged tone setups
2017-04-11 08:42:31 +01:00
furrtek
685e4c6e4b Added more SSTV modes
A bit more work done on Replay (still not enabled)
2017-03-23 21:28:21 +00:00
furrtek
6a0bcb9cca SSTV transmit beta (320x256 24bpp Scottie 2 only) 2017-03-23 04:29:58 +00:00
furrtek
5b74b83458 Bitmap preview in SSTV TX 2017-03-22 18:21:31 +00:00
furrtek
089eeeafe4 Tones bugfix, numbers station voice files search 2017-03-22 03:21:06 +00:00
furrtek
16acb9db28 Added roger beep option in mic TX 2017-03-14 08:20:13 +00:00
furrtek
37cfcd392d Added DCS parity table and generator tool 2017-03-14 07:24:04 +00:00
furrtek
69b0ef9a40 Microphone tx is mostly working, Voice activation, PTT, CTCSS...
Transmit bandwidth bugfix
TX LED is now only lit when using rf amp
VU-meter widget
Added gain parameter for baseband audio TX
2017-03-13 04:09:21 +00:00
furrtek
2d75722b74 Added microphone TX (very basic for now) 2017-03-12 07:10:09 +00:00
furrtek
446efa8fc0 Reduced audio tx FIFO refill size
Last received POCSAG address is auto loaded in POCSAG tx
2017-03-05 15:37:56 +00:00
furrtek
2022fe137c Morse TX bugfix: bad CW symbols, FM not stopping
Corrected fox hunt transmitter #s
Moved widgets a bit
Setting up proc_tones with 0 message length stops it
2017-03-03 08:06:11 +00:00
furrtek
0ba05fea5e Morse special chars and tx duration indication 2017-02-15 04:27:51 +00:00
furrtek
0642c57041 Utility: CW generator 2017-02-15 03:05:38 +00:00
furrtek
6c86ad1b72 Morse TX foxhunt codes are working 2017-02-13 23:24:42 +00:00
furrtek
4e8980e5d8 Finished jammer modes
Shaved off a few kBs by using the Labels widget
2017-02-13 05:35:13 +00:00
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
21de81bb85 POCSAG TX: Support for numeric only and address only messages 2017-02-08 01:19:29 +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
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
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
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
0642d633c3 Frequency manager empty file bugfix 2017-01-30 01:09:00 +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
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
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
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
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
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
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
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
227719ff1d Fix static_cast warning. 2016-11-28 12:05:24 -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
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
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
414dd41577 Allow modification of StreamBuffer (data values, size). 2016-10-04 09:15:19 -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
furrtek
bb29efeda6 Added Nuoptix DTMF sync transmit (Disney parades, light shows...)
Soundboard ignores stereo files
2016-09-23 17:34:50 +02: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
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
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
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
02f0271553 Added basic POCSAG receiver
Added Yes/no modal screen (for future tx warnings)
2016-08-23 08:45:33 +02: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
77016b9a40 Rename CPLD "Q_INVERT" to signal to "INVERT".
Don't expose detail in name about how the task is accomplished.
2016-08-21 11:35:40 -07:00