furrtek
b29c1d9749
Finally found what was eating all the RAM :D
...
Re-enabled the tone key selector in Soundboard
Soundboard now uses OutputStream, like Replay
Constexpr'd a bunch of consts which were going to BSS section
Exiting an app now goes back to main menu
Cleaned up Message array
2018-05-15 23:35:30 +01:00
furrtek
8573f760be
Added basic APRS transmit
...
Added goertzel algo
Updated binary
2018-02-23 20:21:24 +00:00
furrtek
7fd987a2b4
Added support for multiple sample rates in IQ record
...
Support for any sample rate <= 500k in IQ replay
Fixed bias-t power not activating in TX
Removed RSSI pitch output option (awful code)
Udated binary
2018-02-22 07:04:19 +00:00
furrtek
57c759627d
Fixed mic tx not working the first time it was entered
...
Fixed SD card FAT wipe (buffer size too big)
Cleared some warnings from ADSB rx
Updated binary
2018-02-01 11:17:51 +00:00
furrtek
b38adf3769
Replay of IQ files ! :D
...
Added icons and colors for commonly used files in Fileman
Fileman can filter by file extension
Bugfix: Fileman doesn't crash anymore on renaming long file names
Updated binary
2017-12-07 00:58:25 +00:00
furrtek
3221992ad1
Added back frequency display for CTCSS
...
Attempted to fix replay, just fixed StreamBuffer read() and added
waterfall display...
Updated binary
2017-12-06 13:20:51 +00:00
furrtek
d77337dd77
Added CTCSS decoder in NFM RX
...
RSSI output is now pitch instead of PWM
Disabled RSSI output in WBFM mode
2017-11-28 08:52:04 +01:00
furrtek
dc82f15ece
Started adding decoders for RS41 radiosondes
...
Hopefully fixed M2K2 radiosonde battery voltage decoding
Updated binary
2017-11-10 02:20:44 +00:00
furrtek
1b93dd53e8
Tone generator class
2017-11-10 00:25:04 +00:00
furrtek
32ae059c44
Added workaround for the CPLD overlay issue in tx mode
...
Set back mic samplerate to 24kHz because 48kHz was poop :(
2017-11-09 22:25:37 +00:00
furrtek
4465cfb905
Added tone keys for some wireless mic brands
...
Renamed CTCSS stuff to Tone key
Changed PTT key in mic TX (was left, now right) to allow easier exit
Mic samplerate bumped to 48kHz
Updated binary
2017-11-09 20:02:34 +00:00
furrtek
196518457f
Fixed freeze in TouchTunes scan
...
Made adsb_map.py compatible with Python 3
2017-11-08 21:08:46 +01:00
furrtek
17b238f3a8
Added "test app" as a draft zone for... stuff
...
Added second signature for M2K2 radiosonde
2017-10-30 02:00:39 +01:00
furrtek
6ff8249a4f
Added logging, serial number and battery voltage display to radiosonde RX
...
Added decimal degrees display to geopos widget
2017-10-28 19:16:06 +02:00
furrtek
d47f292d3a
Radiosonde RX now understands Meteomodem's M10 correctly
...
Updated binary
2017-10-27 18:54:50 +02:00
furrtek
f00125879d
Added a bunch of notes about Radiosonde RX (help !)
2017-10-06 05:35:25 +01:00
furrtek
d3222c27ca
Started working on radiosonde RX
...
Removed some warnings
Better handling of absent map file in GeoMap ?
2017-10-05 05:38:45 +01:00
furrtek
73d47cd77d
Added remaining buttons for TouchTunes remote
...
LCR transmit UI cleanup
CC1101 data whitening function
Uniformized tx progress message handling
2017-09-24 20:05:42 +01:00
furrtek
a6d2b766f4
Fixed EPAR transmit
2017-09-21 09:18:17 +01:00
furrtek
950bc2b1d2
AFSK RX works (only Bell202 for now)
...
AFSK RX always logs to file
Removed frequency and bw settings from modem setup view
Updated binary
Bugfix: Binary display shifted one bit
Bugfix: Frequency manager views freezing if SD card not present
Bugfix: Menuview blinking arrow not showing up at the right position
Bugfix: Freeze if console written to while it's hidden
Broken: LCR TX, needs UI update
2017-09-02 08:28:29 +01:00
furrtek
42439d1885
Started writing (copying...) AFSK RX
...
Encoders: removed bit duration setting (frame duration is more useful)
2017-08-29 09:42:04 +01:00
furrtek
cd6a1a7f3f
Added tabs in OOK encoders app
...
Simplified credits scrolling
2017-08-28 22:17:02 +01:00
furrtek
9d902bc224
ADSB RX now works \o/
...
Added tabs in RDS TX, multiple groups can be sent at once
Bugfix: text not updating on UI after text prompt
2017-08-16 10:02:57 +01:00
furrtek
7f97a090e4
Fixed ADSB TX frame rotation
2017-08-12 09:54:58 +01:00
furrtek
e5fef6bb89
Added tabs to BHT TX and Jammer
...
Updated firmware binary
2017-08-12 00:27:05 +01:00
Jared Boone
b147aee30a
Fix typos committed to furrtek/havoc repo.
...
Thanks, furrtek!
2017-08-09 16:40:08 -07:00
Jared Boone
74ecff13ad
GCC: Fixed __SIMD32 type punning warnings.
...
With help from https://github.com/ARM-software/CMSIS_5/issues/98
Using void* makes me really queasy though!
2017-08-08 10:24:49 -07:00
Jared Boone
2de30b9920
Audio: use ADC right channel for microphone.
...
AK4951 produces mic data only in right channel. WM8731 places mic samples on both channels.
2017-07-26 17:38:34 -07:00
furrtek
5a67a7080a
ADS-B TX works well enough for dump1090 and gr-air-modes
...
Hooked ADS-B RX to baseband instead of debug IQ file, not tested
2017-07-23 12:20:32 +01:00
furrtek
58f113d153
"CW generator" and "Whistle" merged in "Signal generator"
...
Added wave shape selection and tone frequency auto-update
Converted color icons to B&W
2017-07-18 19:31:05 +01:00
furrtek
46515ebb05
Replay buffer size and samplerate adjustment
2017-06-24 18:42:41 +01:00
furrtek
33a2df9d2a
OutputStream (file M0 -> M4 radio) now works
...
Disabled numbers station for now (too buggy, low priority)
2017-06-23 08:40:22 +01:00
furrtek
abd154b3c7
Merge remote-tracking branch 'upstream/master'
...
Base class for text entry
2017-06-21 03:25:27 +01:00
furrtek
61be221432
Frequency manager lists
...
Scanner approximately 6.3% less buggy with wide ranges
2017-06-12 03:55:36 +01:00
furrtek
e2f0a03460
Using new CPLD data (fixes spectrum mirroring)
...
Scanner bugfix for wide ranges
Added squelch parameter for NFM receiver
Adjustment to Vumeter widget rendering
2017-06-11 09:50:29 +01:00
Jared Boone
5cb71d787e
Audio DMA: Fix cut-and-paste error
...
rx_empy_buffer() was returning the peripheral address, not the buffer address.
2017-05-26 16:21:28 -07:00
furrtek
8e99bccd41
Started work on APRS (AX25)
2017-05-25 21:08:33 +01:00
Jared Boone
6ef8b19bf1
Move some GPDMA configuration to application processor.
2017-05-24 15:42:44 -07: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
furrtek
bebec9ccf7
More ADS-B TX experimentation
...
Lots of junk added in Numbers Station regarding voice files
Removed warnings caused by unfinished ADS-B function
2017-05-01 10:42:09 +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
a053c0e234
Reverted to SIMD macros to fix FM RX (again)
2017-04-19 00:49:44 +01:00
furrtek
555201b780
RDS Radiotext should make receiver happier (missing end char)
...
String-ized text entry
2017-04-18 18:12:32 +01:00
furrtek
d59ee08f41
Whistle now works
...
Moved BW widget in txview
String-ized LCR and AFSK message generator
2017-04-18 12:55:49 +01:00
furrtek
b61869f1c0
Started adding coaster pager/EZRadioPro TX
...
BHT XY TX sequencer
2017-04-07 06:20:24 +01:00
furrtek
1e79be5555
Shameful commit. Fixed HackRF mode not working...
...
Sync'd with Sharebrained's repo, no more SIMD warnings
2017-04-07 02:00:05 +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
229ec3ea75
Added microphone TX (very basic for now)
2017-03-12 07:10:51 +00:00
furrtek
2d75722b74
Added microphone TX (very basic for now)
2017-03-12 07:10:09 +00:00
furrtek
44b2fc469c
Added microphone TX (very basic for now)
2017-03-12 07:09:22 +00:00
furrtek
6ac911feb7
CTCSS bugfix, reading of title in wav files
...
Added wav file title (INFO chunk) display in soundboard UI
Added CTCSS frequency next to PL code
Increased CTCSS tone amplitude
Added Family Radio Service channels file FRS.TXT
2017-03-11 00:59:04 +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
aec41cab91
Bugfix: wave file samplerate and size not being written
2017-03-03 16:15:49 +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
0642c57041
Utility: CW generator
2017-02-15 03:05:38 +00:00
furrtek
58718afd50
Morse CW TX and message set button
2017-02-14 17:16:59 +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
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
091ec1f8f4
Fixed hackrf.img and terminator.img not being generated
2017-02-11 23:06:01 +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
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
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
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
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
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
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
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
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
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
furrtek
bb6eefe2be
Started ADS-B TX UI and frame encoding
2016-11-30 07:41:55 +01:00
Jared Boone
4c8550bb7d
Fix narrowing conversion warnings.
2016-11-28 12:09:02 -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
229616491c
Enable Effective C++ and uninitialized members warnings.
2016-11-26 16:28:11 -08: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
b69a3abcb5
Spectrum: Templatize various window functions.
2016-10-03 12:31:40 -07:00
Jared Boone
f756ac4eac
CMake: Produce linker .map files for application, basebands.
2016-10-03 11:34:59 -07:00
furrtek
8276e5e311
Added CTCSS in Soundboard
2016-09-23 23:08:54 +02: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
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
furrtek
02f0271553
Added basic POCSAG receiver
...
Added Yes/no modal screen (for future tx warnings)
2016-08-23 08:45:33 +02:00
furrtek
c2fbc0c8d5
AudioTX, fixed about screen and an LCR address list bug
2016-08-17 04:17:24 +02:00
furrtek
45a754645e
Merge remote-tracking branch 'upstream/master'
...
# Conflicts:
# firmware/application/bitmap.hpp
# firmware/application/receiver_model.cpp
# firmware/application/receiver_model.hpp
# firmware/application/touch.hpp
# firmware/application/ui_setup.cpp
# firmware/baseband/proc_ais.hpp
# firmware/baseband/proc_ert.hpp
# firmware/bootstrap/CMakeLists.txt
# firmware/common/portapack_persistent_memory.cpp
# firmware/common/portapack_persistent_memory.hpp
2016-08-17 02:55:34 +02:00
Jared Boone
2ec1bab5d5
Plumb BasebandThread to accept direction argument.
...
Default is to receive, for compatibility with existing users.
2016-08-10 10:36:03 -07:00
Jared Boone
96da55d83a
wait_for_buffer() now handles TX buffers.
...
Feels a bit awkward to read LLI src/dest to determine if RX or TX. But it works.
2016-08-10 10:34:14 -07:00
furrtek
38e506a108
OOK transmit is mostly working, bit durations are wrong
...
Simplified messages carrying data (uses shared_memory instead)
Added SymField widget (bitfield, symbol field...)
Added some space for baseband code
BMP palette loading bugfix
2016-08-06 08:49:45 +02:00
furrtek
787f656500
Testing OOK TX baseband module
2016-08-03 08:53:50 +02:00
furrtek
e2218a0f32
More AFSK options, scan lists,
2016-08-02 12:44:31 +02:00
furrtek
c58039e557
Fixed LCR scan and alt format, console widget, text input autotrim
2016-07-29 04:52:51 +02:00
furrtek
1d697d2201
Added PWM RSSI output for NBFM and WFM
2016-07-28 05:25:33 +02:00
furrtek
1beac3bdbd
Added repeat setting for AFSK TX, fixed LCR scan, cleaned up LCR
...
Added max setting for progressbars, default = 100
2016-07-28 00:08:05 +02:00
furrtek
e958b4bd7d
Fixed LCR transmit and AFSK baseband module
2016-07-27 21:26:03 +02:00
Jared Boone
8d330784b2
CFlags: Add "-g" compiler option for debug symbols.
2016-07-27 11:46:09 -07:00
furrtek
79f2134d91
Cleaned up Xylos TX, J/N works again
2016-07-27 05:54:55 +02:00
furrtek
739956b42b
Sync with Sharebrained's fw, only Xylos TX works for now
2016-07-27 03:03:40 +02:00
Jared Boone
20bcbf511e
Move thread_base.hpp from baseband/ to common/.
...
I want to use it with M0 code as well.
2016-07-26 10:22:10 -07:00
Jared Boone
729ab9bb8e
TPMS: Increase channel sampling rate, improve hit rate.
2016-07-25 16:13:14 -07:00
Jared Boone
508ce89271
ERT: Add RSSI reporter to processor.
2016-07-25 16:12:13 -07:00
Jared Boone
512539fd8c
AIS: Add RSSI reporting to processor.
2016-07-25 15:45:27 -07:00
furrtek
fdfa7c9776
Merge remote-tracking branch 'upstream/master'
...
Conflicts:
firmware/Makefile
firmware/application/Makefile
firmware/application/event_m0.cpp
firmware/application/ui_setup.cpp
firmware/application/ui_setup.hpp
firmware/baseband/baseband_thread.cpp
firmware/baseband/baseband_thread.hpp
firmware/bootstrap/CMakeLists.txt
firmware/common/message.hpp
firmware/common/portapack_shared_memory.hpp
hardware/.gitignore
2016-07-25 16:35:42 +02:00
Jared Boone
fe1a6c09bb
Clean up baseband processors to each have a main().
2016-07-24 21:42:11 -07:00
Jared Boone
c8ffea0098
baseband: Move all init code into baseband.cpp.
2016-07-24 21:34:38 -07:00
Jared Boone
ea143bd3fc
Move baseband init/shutdown code to before/after main(), not inside.
2016-07-24 21:26:00 -07:00
Jared Boone
8b02e40602
Move touch ADC data collection to M0.
...
...so it continues when M4 is shut down.
It's not as pretty as using DMA, but it's far simpler, even if it involves letting the ADC run continuously and taking the last samples even if not synchronizing to the phase of the sampling of the channels.
2016-07-24 15:31:53 -07:00
Jared Boone
3c46abdb24
Remove redundant #include.
2016-07-19 14:25:56 -07:00
Jared Boone
ff9c911a93
Optional code to disable baseband DMA synchronization.
2016-07-19 11:02:30 -07:00
Jared Boone
42190b9587
CMake: Fix ldscript dependencies.
2016-07-03 18:48:39 -07:00
Jared Boone
b6fe392512
CMake: Improve dependencies, how output files are managed/cleaned.
...
I almost think I understand CMake, now. Almost.
2016-07-03 18:32:50 -07:00
Jared Boone
45ca3cf7e6
CMake: reduce intermediate targets, add script dependencies.
2016-07-03 11:32:21 -07:00
Jared Boone
b2d5e47308
Clear baseband message at end of shutdown().
...
Allow baseband to shut down completely before shutdown message is acknowledged.
2016-07-02 16:02:50 -07:00
Jared Boone
dbd0c17c2f
Clear baseband message for non-shutdown messages.
2016-07-02 16:02:03 -07:00
Jared Boone
f683980052
Generate and append terminator chunk to basebands image.
2016-06-30 19:37:32 -07:00
Jared Boone
c3d81f1496
Add HackRF factory firmware to basebands image.
2016-06-30 19:37:05 -07:00
Jared Boone
01833ccb83
Write all baseband binaries into tagged image file.
2016-06-30 16:45:41 -07:00
Jared Boone
97760a2f9d
Remove GNU Make files, now using CMake to build firmware.
2016-06-30 12:04:10 -07:00
Jared Boone
cf5ac441ae
Add CMake firmware build system.
2016-06-30 12:02:43 -07:00
Jared Boone
500a651bcf
Give Processors a run() function.
...
So main() can call it, start a Processor linked in to the baseband binary.
2016-06-30 11:53:58 -07:00
Jared Boone
1a5f3a4422
Give new Processor to EventDispatcher.
2016-06-25 11:14:28 -07:00
Jared Boone
525e72ac86
Move Baseband/RSSI threads into Processors.
2016-06-25 11:12:22 -07:00
Jared Boone
74c8429f75
Take processor as argument to BasebandThread.
...
Remove lots of dependency on specific processors.
Reduce state by removing processor switching from BasebandThread.
2016-06-25 10:57:16 -07:00
Jared Boone
bb32ef5321
Bracket BasebandThread loop with enable/disable code.
2016-06-25 10:53:16 -07:00
Jared Boone
9188bb9ee9
Remove thread pointer checking.
2016-06-24 15:46:53 -07:00
Jared Boone
f8a473d56b
Change baseband, RSSI threads to be more RAII.
2016-06-24 15:34:49 -07:00
Jared Boone
2b7e763619
Don't check EventDispatcher::thread_event_loop before using.
...
If static methods are getting called, variable is already set.
2016-06-24 15:27:23 -07:00
Jared Boone
9444d21c12
Remove baseband stats tracking code.
...
It was half-baked, and is getting in the way of a major refactoring.
2016-06-24 15:24:26 -07:00
Jared Boone
d41c6ee36a
Simplify app->baseband message handling.
...
No need for a FIFO when all messages are intended to be synchronous.
2016-06-24 14:16:45 -07:00
Jared Boone
61325e4696
Enable M4 interrupt from M0 only when expected.
2016-06-24 13:44:40 -07:00
Jared Boone
1010e6a234
Remove unused DMA Handler types.
2016-06-22 11:22:28 -07:00
Jared Boone
b34512e3d6
Eliminate a buffer_t copy/duplication.
2016-06-21 15:23:51 -07:00
Jared Boone
4734790518
Rework phase detector.
...
Simplify calculation of gate masks.
Use entire symbol period to compute symbol value.
Correct error sign based on symbol value.
2016-06-01 15:22:21 -07:00
Jared Boone
36eefa46e7
Improve OOK phase advance algorithm.
...
Now independent of samples/symbol, adjusts up to 1/8 of a cycle per symbol.
2016-06-01 15:20:23 -07:00
Jared Boone
57767004a2
TPMS: Comments, more descriptive declarations.
2016-05-30 11:28:22 -07:00
furrtek
6a0816ba56
Added carrier wake up in Xylos TX and cute icons
2016-05-27 06:48:04 +02:00
Jared Boone
38b374506e
More TPMS variable/enum renaming.
2016-05-23 18:02:25 -07:00
Jared Boone
249e6ab21e
TPMS: Improve descriptiveness of pipeline component names.
2016-05-23 11:22:09 -07:00
Jared Boone
a4ddf786d4
TPMS: Move only FSK slicer and payload handler into .hpp.
2016-05-23 11:12:06 -07:00
furrtek
7a90eab407
3MHz-wide fast close call works :) >3MHz doesn't work anymore :(
2016-05-17 20:27:51 +02:00
Jared Boone
d81d879aac
Shrink understood TPMS packet payload sizes to minimum required.
2016-05-17 11:26:17 -07:00
Jared Boone
9e3ac94187
A bit more TPMS member variable renaming.
2016-05-17 11:24:33 -07:00
Jared Boone
ad554b28b5
Rename TPMS clock recovery, packet builders for accuracy.
2016-05-17 11:11:30 -07:00
furrtek
9149508c83
Improved close call precision
2016-05-13 01:18:04 +02:00
furrtek
fb21c1332e
Started close call dev
2016-05-11 12:45:03 +02:00
Jared Boone
b82eff51dd
Refactor of capture buffer management between cores.
...
Instead of copying data into and out of FIFO, passing buffer pointers between cores that are sized to match preferred/ideal SD card write size.
2016-05-10 14:12:37 -07:00
Jared Boone
85a6ecd5dc
Missing "using namespace".
2016-05-10 11:02:42 -07:00
furrtek
c8d37e215b
Merge remote-tracking branch 'upstream/master'
...
Conflicts:
firmware/application/audio_thread.cpp
firmware/application/event_m0.cpp
firmware/application/time.cpp
firmware/baseband-tx/clock_recovery.cpp
firmware/baseband/stream_input.hpp
firmware/common/message.hpp
2016-05-09 21:16:24 +02:00
furrtek
569f299f42
Merge
2016-05-09 21:05:11 +02:00
Jared Boone
1789868b8a
Track bytes from baseband and dropped when entering capture FIFO.
2016-04-27 10:40:50 -07:00
Jared Boone
d63136c52e
Remove unused StreamInput::written().
2016-04-27 10:32:29 -07:00
Jared Boone
d2cf129fd5
Retain CaptureConfig pointer in StreamInput.
2016-04-27 10:32:06 -07:00
Jared Boone
3e08318012
Pass CaptureConfig to StreamInput as pointer.
2016-04-27 10:31:37 -07:00
Jared Boone
91ee2dbb67
Move FIFO and write size to CaptureConfig structure.
...
Now configured from baseband, where write size and appropriate FIFO size is known.
2016-04-26 22:26:30 -07:00
Jared Boone
d5e21ce972
Use CaptureConfig to share state between cores.
...
Remove awful FIFO_HACK.
TODO: Lots of repeated code...
TODO: Capture thread is signalled too frequently.
2016-04-23 15:07:44 -07:00
Jared Boone
67eb62ec12
Provide AudioOutput::set_stream().
...
Assign when wanting to capture audio stream.
2016-04-23 14:55:59 -07:00
furrtek
2fcfdba9ea
"At least it builds !"
2016-04-21 22:12:51 +02:00
Jared Boone
051a63a222
Fix and clean up calculation of filter passband in capture mode.
2016-04-21 11:55:03 -07:00
Jared Boone
28ca45326d
Fix capture mode baseband_fs value.
2016-04-21 11:54:39 -07:00
furrtek
1b0da68d65
Merge remote-tracking branch 'upstream/master'
...
Conflicts:
firmware/application/Makefile
firmware/application/core_control.cpp
firmware/application/touch.cpp
firmware/application/ui_debug.cpp
firmware/application/ui_debug.hpp
firmware/application/ui_navigation.cpp
firmware/baseband/baseband_thread.cpp
2016-04-21 20:36:19 +02:00
Jared Boone
ec75c00da2
Add capture mode waterfall.
2016-04-13 11:09:18 -07:00
Jared Boone
60a0d5c469
Capture mode channel stats
2016-04-12 10:51:20 -07:00
Jared Boone
e85503cd81
Nascent support for OOK TPMS transponders.
...
Apparently, Subaru and GMC. No CRC or other validation, no attempt to interpret packet contents yet.
2016-04-11 11:53:17 -07:00
Jared Boone
dc16aa478f
OOK slicer, clock recovery classes.
2016-04-11 11:50:03 -07:00
Jared Boone
5558ca60d7
Enlarge capture buffers -- inter-core FIFO, SDC
2016-04-11 11:00:47 -07:00
Jared Boone
743dc9f542
Rough implementation of capture mode
2016-04-11 10:59:55 -07:00
Jared Boone
9eefd56410
StreamInput: notify other core every fourth of FIFO written.
2016-04-11 10:20:19 -07:00
Jared Boone
a5c2143ca8
Signal M0 when stream FIFO has another "chunk".
2016-04-11 10:20:19 -07:00
Jared Boone
0d8971cd7d
Use size of provided buffer for stream write.
2016-04-11 10:20:19 -07:00
Jared Boone
56e448d355
Track StreamInput bytes written
2016-04-11 10:20:19 -07:00
Jared Boone
f94938db8e
De-template FIFO.
2016-04-11 10:20:19 -07:00
Jared Boone
59f1a32566
Semi-naive audio recording to SD card.
2016-04-11 10:20:19 -07:00
Jared Boone
c01f2d82e1
Move TPMS taps to dsp_fir_taps.hpp.
...
Will soon use in proc_record.cpp.
2016-04-11 10:18:31 -07:00
Jared Boone
4ac2c540c9
Disable SDC "nice waiting" for performance.
...
Quick test indicates 4.5% better average write performance. No change in reads.
2016-04-10 17:24:28 -07:00
Jared Boone
b35a8c4501
Add TPMS signal_type.
2016-04-06 17:04:40 -07:00
Jared Boone
bf348cf30a
Move message handling loops to MessageQueue.
2016-02-27 21:07:11 -08:00
Jared Boone
6101ca36cd
Use unique_ptr for baseband_buffer.
2016-02-23 20:21:32 -08:00
Jared Boone
3493b7d1b7
Hide BasebandThread::baseband_processor.
2016-02-23 19:56:55 -08:00
Jared Boone
a1b9f4aa1b
Simplify, generalize, share int16_t taps copy function.
...
Also prevents compiler loop unrolling in non-critical code, for code size improvement.
2016-02-23 15:04:20 -08:00
Jared Boone
9c11fdf80c
Explicit std::function nullptr checks.
...
Eliminates std::function check which tries to "_ZSt25__throw_bad_function_callv", along with 816 bytes of extra code, including some locale/wlocale/moneypunct nonsense.
2016-02-23 13:30:41 -08:00
Jared Boone
0c29308eb9
Fix FM squelch.
...
Forgot to recalibrate when adjusting normalization of float/audio signal path.
2016-02-16 11:32:38 -08:00
Jared Boone
ef86848139
Change baseband floats to normalize at +/-1.0.
2016-02-14 12:38:50 -08:00
Jared Boone
a5ed3b20b4
Audio compressor makeup gain value was inverted. Oops.
2016-02-14 12:17:04 -08:00
Jared Boone
1cdeb1ca4e
Use audio compressor in AM/SSB receiver mode.
2016-02-13 11:19:32 -08:00
Jared Boone
9f4c8929ac
Audio compressor implementation.
2016-02-13 11:19:07 -08:00
Jared Boone
b0e76191d7
Simplify some silly math.
2016-02-10 11:23:41 -08:00
Jared Boone
d125a5c662
Remove "K" parameter from FIFO template.
2016-02-10 10:41:06 -08:00
Jared Boone
096e961c67
Remove ChibiOS registry, thread names.
...
Only useful for debugging, but even then not very visible or useful. Gained 256 bytes of code RAM.
2016-02-09 11:36:38 -08:00
Jared Boone
ae93d8ee58
Simplify RSSI/BB DMA, extract to ThreadWait class.
...
Also saved 688 bytes of code.
2016-02-09 10:41:19 -08:00
Jared Boone
aae1a953fc
Init matched filter output variable.
2016-02-06 16:24:14 -08:00
Jared Boone
ac2320f0c5
Limit scope of some function variables.
2016-02-06 16:23:55 -08:00
furrtek
ba94ce55ef
Loadmodule emergency fix
2016-02-06 23:19:28 +01:00
Jared Boone
9430c94dec
Move I2S management to application side.
2016-02-05 15:25:08 -08:00
Jared Boone
cefab197da
Add virtual destructor for ThreadBase.
...
Oops!
2016-02-05 10:44:27 -08:00
furrtek
c81ba5be8e
"At least it builds, now"
2016-02-05 17:40:14 +01:00
furrtek
8009a9b543
Merge remote-tracking branch 'upstream/master'
...
Conflicts:
firmware/application/Makefile
firmware/application/analog_audio_app.cpp
firmware/application/analog_audio_app.hpp
firmware/application/event.cpp
firmware/application/irq_ipc.hpp
firmware/application/portapack.hpp
firmware/application/receiver_model.cpp
firmware/application/receiver_model.hpp
firmware/application/recent_entries.cpp
firmware/application/string_format.hpp
firmware/application/ui_debug.cpp
firmware/application/ui_debug.hpp
firmware/application/ui_menu.cpp
firmware/application/ui_navigation.cpp
firmware/application/ui_navigation.hpp
firmware/application/ui_receiver.cpp
firmware/application/ui_receiver.hpp
firmware/application/ui_sd_card_status_view.cpp
firmware/application/ui_sd_card_status_view.hpp
firmware/application/ui_setup.cpp
firmware/application/ui_setup.hpp
firmware/application/ui_spectrum.hpp
firmware/baseband-tx/dsp_fir_taps.cpp
firmware/baseband-tx/dsp_fir_taps.hpp
firmware/baseband-tx/irq_ipc_m4.cpp
firmware/baseband-tx/irq_ipc_m4.hpp
firmware/baseband-tx/proc_audiotx.cpp
firmware/baseband/Makefile
firmware/baseband/audio_output.cpp
firmware/baseband/audio_output.hpp
firmware/baseband/block_decimator.hpp
firmware/baseband/dsp_decimate.cpp
firmware/baseband/dsp_decimate.hpp
firmware/baseband/dsp_demodulate.cpp
firmware/baseband/dsp_demodulate.hpp
firmware/baseband/dsp_fir_taps.cpp
firmware/baseband/irq_ipc_m4.cpp
firmware/baseband/irq_ipc_m4.hpp
firmware/baseband/proc_am_audio.cpp
firmware/baseband/proc_am_audio.hpp
firmware/baseband/proc_nfm_audio.cpp
firmware/baseband/proc_nfm_audio.hpp
firmware/baseband/proc_wfm_audio.cpp
firmware/baseband/proc_wfm_audio.hpp
firmware/baseband/spectrum_collector.hpp
firmware/common/dsp_fir_taps.cpp
firmware/common/dsp_fir_taps.hpp
firmware/common/event.hpp
firmware/common/message.hpp
firmware/common/ui_painter.cpp
firmware/common/ui_painter.hpp
2016-02-04 11:35:55 +01:00
furrtek
6e496e2b26
Merge fixing, commit to catch up on recent files
2016-02-04 10:27:53 +01:00
Jared Boone
20137db8d0
Move code into .cpp for tiny code size improvement.
2016-02-03 22:47:44 -08:00
Jared Boone
af8c9609a8
Little code size tweak using std::move in constructors.
2016-02-03 22:47:22 -08:00
Jared Boone
cff314cbc8
Convince compiler to not inline member constructors.
2016-02-03 19:59:41 -08:00
Jared Boone
ceef8d32d3
Use more accurate arctan for NBFM demodulation.
2016-02-02 16:15:14 -08:00
Jared Boone
ab2c5b256f
Reinstate and slightly tweak NBFM squelch.
2016-02-02 16:08:18 -08:00
furrtek
44638e504b
SYNC
2016-01-31 09:34:24 +01:00
Jared Boone
faf0fd6b91
Remove some spurious comments.
2016-01-30 21:11:59 -08:00
Jared Boone
e778be6472
Selection of AM/SSB from application side.
2016-01-30 18:02:28 -08:00
Jared Boone
f2dff16820
Use complex channel filter taps for AM/SSB.
2016-01-30 17:30:54 -08:00
Jared Boone
ad4d7a2e8a
Add SSB demodulator, switch between AM and SSB.
2016-01-30 17:30:03 -08:00
Jared Boone
1915ff980f
Add AM processor decim_2.
2016-01-30 17:28:11 -08:00
Jared Boone
b029bacd8c
Remove channel decimation from AMConfigureMessage.
2016-01-30 17:21:48 -08:00
Jared Boone
220b7b0a6a
Add SSB demodulator.
2016-01-29 22:27:18 -08:00
Jared Boone
a558565886
Further template BlockDecimator by element type, use for audio buffer.
...
Appropriating for use as a buffer accumulator that will save up enough audio samples to put into an audio DMA buffer.
2016-01-29 19:25:08 -08:00
Jared Boone
aead1d8798
Change NBFM audio fs->24k, AM ->12k.
...
Send channel decimation factor from application to baseband.
2016-01-29 19:23:30 -08:00