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
mndza
99f96d2498
gateware: generic SGPIOInterface and simpler capture management
2025-12-19 17:03:05 +01:00
Antoine van Gelder
a53385af84
firmware: fix smol typo and off-by-one error
2025-12-19 17:40:11 +02:00
Antoine van Gelder
3faf82ede6
firmware: move fpga selftest to a separate file to resolve blinky linker issues
2025-12-19 16:10:15 +02:00
Antoine van Gelder
4e90ee5c51
firmware: add register definitions for standard fpga bitstream
2025-12-19 16:10:15 +02:00
Michael Ossmann
b9f28460d2
Merge pull request #1619 from antoinevg/praline-max2831-rx-hpf
...
Add support for setting the MAX2831 receiver's HPF corner frequency.
2025-12-19 08:35:01 -05:00
Michael Ossmann
0ea91e2fa0
Merge pull request #1620 from greatscottgadgets/pin-shutdown
...
Improve firmware boot process
2025-12-18 13:44:35 -05:00
Michael Ossmann
8e390c3b79
Adjust transceiver loopback self-test thresholds
2025-12-18 00:27:29 -05:00
Diego Hurtado
4ed9169f4e
fix gateware typo and update build, no DC block in loopback test ( #1621 )
2025-12-17 14:33:06 -05:00
Michael Ossmann
2aaa2213c9
Ensure clock generator off before turning on
...
Do not try to activate clock generator if power supply is disabled on
Praline.
2025-12-17 09:54:24 -05:00
Michael Ossmann
d36805da4e
Activate Praline FPGA and RF supplies selectively
...
Do not turn them on if running from RAM
2025-12-16 21:55:37 -05:00
Michael Ossmann
6f862a1349
Add pin_shutdown()
...
Portions of pin_setup() that establish a safe, low-power state are moved
into the new pin_shutdown(). Use pin_shutdown() to prepare for sleep or
reset or prior to calling pin_setup().
2025-12-16 21:52:53 -05:00
Michael Ossmann
44db1674d7
Use gateware default trigger setting on Praline
...
Don't try to talk to gateware before FPGA configuration
2025-12-16 21:31:48 -05:00
Michael Ossmann
22e56a7076
Simplify pin_setup()
2025-12-16 21:30:50 -05:00
Antoine van Gelder
7be3c7fdf1
firmware: add support for setting max2831 rx hpf corner frequency
2025-12-16 09:30:36 +02:00
Michael Ossmann
1925e5908a
Merge pull request #1615 from mndza/xcvr-loopback-extended
...
Extend self-tests
2025-12-13 11:05:12 -05:00
mndza
d8fa93dcda
Add FPGA SPI test
2025-12-11 18:22:17 +01:00
mndza
c7cf262486
Add skipped and timeout states as possible results for self-tests
2025-12-11 12:48:43 +01:00
mndza
86850fa14f
Extend transceiver loopback self-tests
2025-12-05 09:44:42 +01:00
Michael Ossmann
9039eb063f
Merge pull request #1616 from mndza/safe-pin-setup-fpga
...
Add safe defaults for the FPGA configuration pins in `pin_setup()`
2025-12-04 21:05:46 -05:00
mndza
e4c0dd3cee
Add safe defaults for the FPGA configuration pins in pin_setup()
2025-12-04 11:17:41 +01:00
Antoine van Gelder
db73ecbf5b
firmware: fix zlp bug when IN transfer length falls on a packet boundary
2025-12-03 15:50:02 +02:00
Michael Ossmann
90e15ec85f
Merge pull request #1612 from martinling/new-rtc-test
...
New method to test RTC oscillator
2025-11-30 23:12:42 -05:00
Martin Ling
9726cf56e5
Flip Si5351 register bits back again after testing them flipped.
...
Needed since other tests expect this register to have its initial value.
2025-11-27 04:53:05 +00:00
Martin Ling
23d69bf90c
New method to test RTC oscillator.
2025-11-27 04:41:09 +00:00
mndza
24b05d6426
Do not halt when FPGA configuration fails: update report instead.
2025-11-26 20:53:49 +01:00
Michael Ossmann
cde5d754d3
Remove 32 kHz oscillator self-test
...
Reliable oscillator start-up requires several hundred milliseconds which
is longer than we are willing to wait at every boot. We could add an
on-demand test in the future instead of an automatic self-test.
2025-11-25 20:31:44 -05:00
Michael Ossmann
95e7e2a009
Fix readsel for RFFC5072 device ID read
2025-11-25 20:13:01 -05:00
Michael Ossmann
4832619823
Use MAX2831 RSSI mux and ADC for selftest
...
Co-authored-by: Martin Ling <martin-git@earth.li >
2025-11-25 20:12:27 -05:00
Michael Ossmann
29be31bf71
Add hackrf_debug option to read ADC
...
Co-authored-by: Martin Ling <martin-git@earth.li >
2025-11-25 20:08:20 -05:00
Michael Ossmann
785c068f91
Change Praline USB product string to "HackRF Pro"
2025-11-24 21:33:21 -05:00
Michael Ossmann
409acbc3c9
Add support for HackRF Pro (code name: Praline)
...
Co-authored-by: mndza <diego.hdmp@gmail.com >
Co-authored-by: Martin Ling <martin-git@earth.li >
Co-authored-by: Antoine van Gelder <antoine@greatscottgadgets.com >
2025-11-24 20:53:41 -05:00
Martin Ling
2d2b6231fb
Bump CMake minimum version to 3.10.
2025-09-19 01:12:24 +01:00
Martin Ling
5c39452040
Bump CMake minimum version to 3.5.0.
...
This is the minimum now accepted by latest CMake releases.
2025-09-16 19:00:49 +01:00
mndza
cae8060d0d
firmware: disable rffc5071 dithering, tune to nearest 625000 Hz step
2025-08-21 10:04:45 +02:00
mndza
5520f8467c
firmware: round to nearest frequency when tuning
2025-08-19 11:40:09 +02:00
mndza
2e6bb0ab68
firmware: rffc5071 synth configuration accepts Hz instead of MHz
2025-08-19 11:40:09 +02:00
mndza
ac0552a5b9
firmware: optimize and rename rffc5071 synth config function
2025-08-19 11:40:08 +02:00
mndza
d3ee417807
firmware: fix max283x fractional long division
2025-08-19 11:17:04 +02:00
mndza
32870ad486
firmware: no division when calculating n_lo in RFFC5071 synth
2025-08-19 11:17:04 +02:00
Mike Walters
3b5cd8f889
Fix DFU CRC errors
...
Previously we were calculating the dfu-suffix CRC and then modifying the
image, invalidating the check.
This re-orders the operations to apply the boot image header first and
then run dfu-suffix.
2025-05-22 10:04:40 +01:00
gullradriel
9bdf731fc0
added memory clobber to prevent memory reordering
2024-12-18 17:01:18 +01:00
gullradriel
039ab0de46
define replacement for enable and disable irq for m0
2024-12-17 22:00:47 +01:00
Michael Ossmann
cfdfe8a1aa
Merge pull request #1517 from martinling/locking-api
...
Add a shim header to support locking without ldrex/strex
2024-12-17 12:14:03 -05:00
Martin Ling
f3e7d10d07
Add comment about constraints on locking primitives.
2024-12-16 21:19:12 +00:00
Martin Ling
a272e97fda
Include nvic.h via the dispatch headers.
2024-12-16 21:14:16 +00:00
gullradriel
46f43c3a9e
fix compilation warnings ( #1516 )
...
Co-authored-by: gullradriel <gullradriel@no-mail.com >
2024-12-16 19:28:16 +00:00
Martin Ling
b9945de490
Add a shim header to support locking without ldrex/strex.
...
Required to allow the USB queue code to be built for the M0.
2024-12-16 19:15:08 +00:00
Michael Ossmann
db884152dc
Merge pull request #1513 from martinling/sgpio-doc-fix
...
Update SGPIO code documentation
2024-12-05 11:31:16 -05:00
Michael Ossmann
75431531f2
Merge pull request #1510 from martinling/sgpio-deadline-check
...
SGPIO deadline check
2024-12-05 11:30:06 -05:00