Commit Graph

3055 Commits

Author SHA1 Message Date
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
Michael Ossmann
c011b78f40 Merge pull request #1614 from antoinevg/praline-fpga-regs-def
Add register definitions for the standard FPGA bitstream.
2025-12-19 11:01:20 -05: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
444f4311ec Merge pull request #1622 from greatscottgadgets/loopback-thresholds
Adjust transceiver loopback self-test thresholds
2025-12-18 13:44:07 -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
Martin Ling
5ba4886ded Merge pull request #1613 from antoinevg/fix-zlp-bug
Fix zlp bug when request response length falls on a packet boundary.
2025-12-04 16:14:52 +00: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
4fdd656d46 Add -o / --rtc-osc option to hackrf_debug usage message. 2025-11-30 14:58:05 +00: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
Michael Ossmann
00467d0506 Merge pull request #1611 from mndza/fpga-self-test
Do not halt when FPGA configuration fails: update report instead.
2025-11-26 19:19:11 -05:00
mndza
24b05d6426 Do not halt when FPGA configuration fails: update report instead. 2025-11-26 20:53:49 +01:00
Michael Ossmann
f5e5ed5ba2 Merge pull request #1608 from greatscottgadgets/fix-selftests
Fix self-tests
2025-11-25 21:03:58 -05: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
Martin Ling
692da36d76 Use _stricmp instead of strcasecmp on MSVC. 2025-11-25 10:16:48 +00: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
Michael Ossmann
390837715b Merge pull request #1602 from martinling/mb-unit
Correct units in hackrf_transfer output from MiB to MB
2025-11-06 11:07:05 -05:00
Jacob Graves
9e6f1a24f3 Add hackrf_test.py (#1587)
hackrf_test.py uses one HackRF to test another.

Co-authored-by: Michael Ossmann <mike@ossmann.com>
2025-10-31 13:51:09 -04:00
Martin Ling
5dad4961e6 Correct units in hackrf_transfer output from MiB to MB. 2025-10-27 10:04:48 +00:00
Michael Ossmann
d56d652764 Merge pull request #1596 from martinling/libhackrf-version
Set libhackrf version to 0.9.1
2025-10-13 12:53:35 -04:00
Martin Ling
a0f359c394 Merge pull request #1597 from martinling/ci-msys
CI: Add builds on Windows using MSYS2
2025-10-08 13:23:37 +01:00
Martin Ling
69e8f476c5 CI: Remove separate steps for creating directories. 2025-10-05 09:07:08 +01:00
Martin Ling
f03020296b CI: Add host builds using MSYS. 2025-10-05 08:53:56 +01:00
Martin Ling
4a664b68c2 CI: Avoid writing '-latest' everywhere in OS matrix. 2025-10-05 06:16:26 +01:00
Martin Ling
59e145439a CI: Add firmware build on Windows using MSYS2. 2025-10-05 05:22:01 +01:00
Martin Ling
384e8f270b Set libhackrf version to 0.9.1. 2025-10-04 18:27:55 +01:00
Martin Ling
19b20123cd Merge pull request #1594 from martinling/pkg-config-windows
CMake: support use of pkgconf to find libraries on Windows
2025-10-04 03:52:53 +01:00