46 Commits

Author SHA1 Message Date
Michael Ossmann
bdb6000bb4 h1r9: fix inverted spectrum on TX
Unify and clean up the firmware spectrum inversion handling for all
hardware platforms.
2023-01-06 14:33:56 +00:00
Mike Walters
bfe882a2fa h1r9: add MAX283x abstraction layer 2023-01-06 14:33:53 +00:00
Michael Ossmann
edd0a80812 h1r9: stop writing MAX2837 registers to MAX2839 2023-01-06 14:33:53 +00:00
Michael Ossmann
3d687a20fd increase forceable IF range to 2000-3000 MHz 2022-12-23 06:06:22 -05:00
Michael Ossmann
86c1d8ce6e restrict IF to 2170-2740 MHz 2022-12-09 09:12:37 -05:00
Michael Ossmann
06b9d7bee0 Clean up source code copyright notices. 2022-09-23 14:46:52 -04:00
Martin Ling
c3fdf402d7 Reformat all code to new clang-format standard. 2022-08-03 23:46:44 +01:00
Mike Walters
05b1650a6a Rename hackrf-ui.[ch]
Every other source file uses underscores! :(
2020-01-22 14:20:23 +00:00
Jared Boone
f259c9aad6 PortaPack: Add HackRF One gates for PortaPack JTAG and OperaCake code.
I think these #defines might finally be the right shape...
2019-03-02 20:43:19 -08:00
Jared Boone
8bc8bc13f0 PortaPack: Remove conditional PortaPack code.
TODO: DFU mode returns. I fear HackRF mode in PortaPack/HAVOC will not work.
2019-03-02 14:23:06 -08:00
Jared Boone
c32d57158a PortaPack: Remove weak UI functions, detect and return UI function table.
TODO: Side effect was that now blinky has a lot of unreasonable dependencies.
TODO: rad1o breakage is likely...
2019-03-02 14:23:06 -08:00
Jared Boone
0b46745aed OperaCake code conflicts with PortaPack code, make compile-time conditional. 2018-12-27 15:14:52 -08:00
Dominic Spill
8c7941b0ef Opera glasses: allow user specified ranges for operacake ports
- HackRF switches antenna when tuning
 - ports specified using hackrf_operacake cmdline tool
 hackrf_operacake -f 2350:2800:0 -f 0:400:1 -f 400:700:2 -f 700:6000:3
2017-05-16 17:18:54 -06:00
schneider
5f46bce325 fix(rad1o): Restore hackrf max2837_freq_nominal_hz behaviour 2017-02-03 19:33:25 +01:00
schneider
35ca538c18 Merge remote-tracking branch 'mossmann/master' into rad1o
Just a very rough merge to get off the ground. Major parts are not yet
implemented. The mixer intergration is in a messed up state. Part which
need work have been marked with XXX

Conflicts:
	firmware/common/hackrf_core.c
	firmware/common/hackrf_core.h
	firmware/common/max2837.c
	firmware/common/max2837.h
	firmware/common/rf_path.c
	firmware/common/rffc5071.c
	firmware/common/rffc5071.h
	firmware/common/sgpio.c
	firmware/common/si5351c.c
	firmware/common/tuning.c
	firmware/common/w25q80bv.c
	firmware/common/w25q80bv.h
	firmware/common/xapp058/ports.c
	firmware/hackrf-common.cmake
	firmware/hackrf_usb/hackrf_usb.c
	firmware/hackrf_usb/usb_api_register.c
	firmware/hackrf_usb/usb_api_transceiver.c
	host/hackrf-tools/src/hackrf_transfer.c
2017-01-26 00:21:58 +01:00
Tobias Schneider
d7c162902c fix(hackrf-ui): Make the calls weak 2015-12-09 22:26:16 +01:00
Tobias Schneider
86b424d9d3 feat(hackrf): Callbacks for a possible UI 2015-12-07 00:29:33 +01:00
Tobias Schneider
9a45248829 fix(max2871.c): Switch to a 50 MHz PFD for better performance 2015-11-30 00:23:55 +01:00
Tobias Schneider
5ce0cc853b hack(tuning): Fix IF to 2.35 GHz 2015-08-11 11:03:37 +02:00
Tobias Schneider
c05929fe25 fix(common, hackf_usb): Make it compile for rad10 2015-06-06 18:49:09 +02:00
Jared Boone
5363ec3672 Use new GPIO API to abstract GPIO in various drivers.
Had to do it all at once due to name conflicts with API exposed in libopencm3.
Quite invasive patch! Also precipitated an LED API...
2014-11-15 16:26:59 -08:00
Jared Boone
8ced9415c2 SPI: Remove MAX2837/5864, W25Q80BV driver dependence on target code.
Conflicts:
	firmware/common/tuning.c
2014-11-10 17:05:02 -08:00
Jared Boone
6d57c08e28 MAX2837: Add virtual function for setting device mode. 2014-11-10 17:02:57 -08:00
Jared Boone
58e7ef4171 MAX2837: Refactoring toward abstracted SPI.
Conflicts:
	firmware/common/hackrf_core.c
	firmware/common/hackrf_core.h
	firmware/common/tuning.c
2014-11-10 16:53:27 -08:00
Jared Boone
d55bd529e2 RFFC507x: De-singleton the driver code. 2014-11-10 16:42:08 -08:00
Jared Boone
453f622b74 MAX2837: De-singleton the driver.
Conflicts:
	firmware/common/hackrf_core.c
	firmware/common/hackrf_core.h
2014-11-10 16:37:34 -08:00
Jared Boone
572fe32393 Add #include to address "sgpio_cpld_stream_rx_set_q_invert" warning. 2014-11-10 11:10:18 -08:00
Michael Ossmann
c8742572db high-side injection for tuning below 2150 MHz (known bug: baseband spectrum is inverted on TX) 2014-08-15 07:49:13 -06:00
Jared Boone
2abdebfb2a Add parentheses to silence ambiguous expression warning. 2014-08-11 16:08:08 -07:00
Michael Ossmann
d4a5c2290b replaced set_freq_if() with set_freq_explicit() and implemented explicit tuning option in hackrf_transfer 2014-03-13 16:06:51 -06:00
Michael Ossmann
630a78aabe stale comment 2014-03-12 16:05:53 -06:00
Michael Ossmann
f5be40fe5b fixed tuning bug 2014-03-12 12:40:45 -06:00
Michael Ossmann
d3bba0dc89 reverted to low-side injection until/unless inverted spectrum is resolved 2014-03-03 18:28:23 -07:00
Michael Ossmann
a9592ea87e fixed bug with high-side injection tuning 2014-03-03 18:24:16 -07:00
Michael Ossmann
f74e9e9dc1 divided tuning frequencies above 2750 MHz into three ranges with graduated IF for spur avoidance 2014-03-03 16:30:48 -07:00
Michael Ossmann
768323e28f removed check for too low tuning frequency now that we permit tuning down to 0 Hz 2014-03-03 14:13:56 -07:00
Michael Ossmann
cd9a1c1366 high-side injection and graduated IF for tuning from 0 to 2150 MHz 2014-03-03 14:08:38 -07:00
Michael Ossmann
d051c42e3a increased maximum tuning frequency from 6800 MHz to 7250 MHz 2014-03-03 14:07:48 -07:00
Michael Ossmann
fbe4c481f2 reduced minimum tuning frequency from 5 MHz to 0 Hz 2014-03-03 12:21:28 -07:00
Michael Ossmann
dd6d192e13 increased allowed MAX2837 frequency range from 2300-2700 MHz to 2150-2750 MHz based on experimentation 2014-03-03 12:20:27 -07:00
Jared Boone
84d7263fa4 Widen frequency argument/return paths in RFFC5071 code. 2014-02-19 12:56:24 -08:00
Jared Boone
75e1dcd9cf Don't update MAX2837 freq_cache unless set_freq() is successful. 2014-01-04 10:15:01 -08:00
Jared Boone
fc5ec03353 Adjust tuning API to use a single 64-bit integer for frequency in Hz, since the Cortex-M4F has good support for uint64_t. 2013-12-31 20:12:47 -08:00
Jared Boone
b4f883595f Remove MAX2837_FREQ_NOMINAL_MHZ #define -- it must be updated now that IF is adjustable. So I pushed the calculation directly into the two places it was used. 2013-09-21 20:27:27 -07:00
Jared Boone
04e70483a2 Move RF path configuration to early in the tuning process -- before the MAX2837 is tuned. 2013-09-17 21:59:01 -07:00
Jared Boone
fe2a700f8f Move files that have no application-specific bits (e.g. USB stack, tuning, and RF path APIs) to ../common/. 2013-09-17 15:10:46 -07:00