Commit Graph

3107 Commits

Author SHA1 Message Date
Michael Ossmann
663c99378f Merge pull request #1639 from mndza/generic-sgpio-intf
gateware: generic SGPIOInterface, simpler capture mgmt, fix resampler bugs
2026-01-11 23:22:03 -05:00
mndza
76318321f5 gateware: fix HalfBandInterpolator backpressure issues 2026-01-09 16:24:55 +01:00
mndza
29bfc3b78b gateware: fix occasional IQ swap in half-band decimator
Prevent loosing track of the IQ time-multiplexing state within the FIR
filter.
2026-01-09 16:19:45 +01:00
mndza
4724eb5644 gateware: fix SB_MAC16 versions of the FIR decimator, interpolator
Simplified the filter architecture by using an adder tree for obtaining
the final sum of the subfilters (vs systolic array). Previously, no
backpressure (always_ready=True) worked fine but otherwise we lost
samples.
2026-01-09 16:19:44 +01:00
mndza
70c211d0ff gateware: generic SGPIOInterface and simpler capture management 2026-01-09 12:33:11 +01:00
Michael Ossmann
0e05bda647 Merge pull request #1638 from martinling/fix-rad1o
Fix clock generator initialisation on rad1o.
2026-01-07 14:39:40 -05:00
Martin Ling
46a9a6e881 Fix clock generator initialisation on rad1o.
On the CCC 2015 rad1o badge, the Si5351C clock generator is powered
by the RF section supply (named VDD on the schematic).

So clock_gen_init() must be called after enable_rf_power().

Since the Si5351C is off when the RF power is off, there should be
no need for the shutdown/init calls at startup.
2026-01-06 16:35:12 +00:00
Michael Ossmann
676cfa7b99 Merge pull request #1635 from greatscottgadgets/post-release
Set version to 2026.01.1+
2026-01-05 08:30:38 -05:00
Michael Ossmann
ca209ed928 Set version to 2026.01.1+ 2026-01-04 22:09:40 -05:00
Michael Ossmann
bdae250310 Merge pull request #1634 from greatscottgadgets/release
Set version to 2026.01.1
v2026.01.1
2026-01-04 21:45:01 -05:00
Michael Ossmann
3793493e02 Set version to 2026.01.1 2026-01-04 21:11:34 -05:00
Michael Ossmann
ba7cc54893 Merge pull request #1633 from greatscottgadgets/update-docs
Update docs
2026-01-04 21:03:05 -05:00
Michael Ossmann
203fd9229b Update firmware instructions for HackRF Pro 2026-01-04 20:39:56 -05:00
Michael Ossmann
95911ee6aa Clarify HackRF Pro LED descriptions 2026-01-04 19:57:54 -05:00
Michael Ossmann
25420ef7c3 Add line breaks after block diagrams 2026-01-04 19:52:30 -05:00
Michael Ossmann
ea420002f5 Clarify end plate design location 2026-01-04 19:48:02 -05:00
Michael Ossmann
cb9d1c9472 Merge pull request #1595 from martinling/windows-build-docs
Update documentation on building for Windows.
2026-01-04 12:42:39 -05:00
Michael Ossmann
8d5e05cf3a Merge pull request #1632 from greatscottgadgets/praline
Add support for HackRF Pro (code name: Praline)
2026-01-03 22:59:42 -05:00
Michael Ossmann
cd4eb19a2b Merge pull request #1631 from greatscottgadgets/praline-legacy
Add HackRF Pro legacy radio mode
2026-01-03 22:44:28 -05:00
Michael Ossmann
b225a8a7e3 Fix RFFC5072 GPO bug on Jawbreaker 2026-01-03 19:03:15 -05:00
Michael Ossmann
eb9b1e0ffe Improve tuning tables 2026-01-02 16:27:54 -05:00
Michael Ossmann
9e0e0eb81c Increase maximum self-test buffer size
Closes #1617
2026-01-01 15:58:03 -05:00
Michael Ossmann
9949100982 Don't try to self-test during clockgen shutdown 2026-01-01 15:41:23 -05:00
Michael Ossmann
9400ff2f92 Merge pull request #1484 from martinling/warn-bus-sharing
Report whether other devices are sharing the USB bus
2026-01-01 14:57:51 -05:00
Michael Ossmann
6c25a06d16 Merge pull request #1625 from greatscottgadgets/tx-filters
Praline TX filter bandwidth
2026-01-01 13:46:18 -05:00
Michael Ossmann
7228c6260c Merge pull request #1623 from martinling/platform-docs
Add HackRF Pro documentation
2026-01-01 11:16:24 -05:00
Michael Ossmann
ed2e2ce2d2 Use consistent feedback divider in RFFC5072 2025-12-31 14:05:13 -05:00
Michael Ossmann
636f8bde6e Add special tuning configuration case at 0 Hz 2025-12-30 22:07:30 -05:00
Michael Ossmann
5766678b6f Don't repeat tuning and baseband filter setting 2025-12-30 22:04:07 -05:00
Michael Ossmann
1ad8adb449 Automatically configure Praline baseband LPF
For compatibility with old host software, the analog baseband filter is
automatically selected based on the sample rate and offset tuning
configuration. The bandwidth set by legacy vendor request is ignored.
2025-12-30 21:57:58 -05:00
Michael Ossmann
d8a9d445f5 Rename tuning config tables 2025-12-30 21:42:30 -05:00
Michael Ossmann
fc4b9aca68 Implement automatic offset tuning
Add RX tuning table
2025-12-30 21:42:19 -05:00
Michael Ossmann
7e1c17593d Move tuning config search to radio_set_frequency() 2025-12-30 21:42:01 -05:00
Michael Ossmann
10e8b0d934 Decimate automatically in RX and RX sweep modes 2025-12-30 20:35:25 -05:00
Michael Ossmann
df6543073b Add HackRF Pro to firmware/README 2025-12-30 20:13:04 -05:00
Michael Ossmann
0ab032c4fc Rename hw_sync to trigger
Replace hw_sync_mode_t with bool.
2025-12-30 20:10:10 -05:00
Michael Ossmann
8e14cf6b0c Make tuning_set_frequency() return type consistent 2025-12-30 19:52:05 -05:00
Michael Ossmann
4580824866 Don't commit to table-based tuning for non-praline 2025-12-30 19:42:42 -05:00
Michael Ossmann
c9c5e1bddd Enable DC block by default 2025-12-30 18:21:35 -05:00
Michael Ossmann
d5361ea523 Don't use doubles in firmware
The FPU supports only single-precision floats.
2025-12-30 18:14:28 -05:00
Michael Ossmann
f6c23be2d9 Set default MAX2831 RX HPF to 30 kHz
The 100 Hz setting that is recommended by the data sheet doesn't seem to
work correctly.  The other settings would be appropriate only with the
extended precision RX gateware.

The 600 kHz setting seems like it should be useful with higher sample
rates, but it increases LPF roll-off.
2025-12-30 18:08:13 -05:00
Michael Ossmann
980c87417e Clean up compiler warnings 2025-12-30 18:07:18 -05:00
Michael Ossmann
6f02a4c544 Merge pull request #1630 from greatscottgadgets/revert-1610-generic-sgpio-intf
Revert "gateware: generic SGPIOInterface, simpler capture management, fix SB_MAC16 resamplers"
2025-12-23 19:01:54 -05:00
Michael Ossmann
0a9e24c7bd Revert "gateware: generic SGPIOInterface, simpler capture management, fix SB_MAC16 resamplers" 2025-12-23 18:41:15 -05:00
Michael Ossmann
d1be4dba86 Merge pull request #1626 from mndza/prbs-null-check
Check for null values in PRBS self-test
2025-12-21 11:59:43 -05:00
Michael Ossmann
5d5c88ed1a Merge pull request #1610 from mndza/generic-sgpio-intf
gateware: generic SGPIOInterface, simpler capture management, fix SB_MAC16 resamplers
2025-12-21 11:49:48 -05:00
Martin Ling
4228637fb6 Add HackRF Pro block diagram. 2025-12-20 17:52:27 +00:00
Martin Ling
ed221e65a9 Update hardware documentation to cover HackRF Pro. 2025-12-20 17:52:27 +00:00
mndza
985c18c950 Check for null values in PRBS self-test 2025-12-19 17:12:55 +01:00
mndza
91c005d13e gateware: fix SB_MAC16 versions of the FIR decimator, interpolator
Simplified the filter architecture by using an adder tree for obtaining
the final sum of the subfilters (vs systolic array). Previously, no
backpressure (always_ready=True) worked fine but otherwise we lost
samples.
2025-12-19 17:03:05 +01:00