Michael Ossmann
b095c5326a
eliminated minor glitch caused by enabling a GPIO output before setting its value
2018-01-28 16:16:35 -07:00
Dominic Spill
5f560d6ad3
Merge branch 'mossmann-master' into flash-investigation
2017-12-05 16:18:19 -07:00
Dominic Spill
3f569a8ad4
hackrf_clock: Allow CLKOUT to be enabled / disabled
...
hackrf_clock -o 1 / hackrf_clock -o 0
2017-11-07 11:23:48 -07:00
Dominic Spill
c416fa1294
SPI Flash: add function to clear SPI flash status register
2017-11-06 10:42:19 -07:00
Dominic Spill
8f544ee60d
Add flash status read
2017-09-12 17:52:07 -06:00
Dominic Spill
46945205f2
Add USB product string for rad1o badge
2017-08-10 16:12:40 +01:00
schneider
1acd7ccf7c
fix(rad1o): TX_RX_N is on GPIO1_11
2017-08-05 06:05:31 +02:00
schneider
4b0bb0ea55
refact(rad1o): Disable the CPU clock outputs in pin_setup()
2017-08-05 06:04:08 +02:00
schneider
03e472e458
fix(rad1o): Disable the VCO if the mixer is not in use
2017-08-05 06:01:53 +02:00
Dominic Spill
90d3f7f293
Remove unused ARRAY_SIZE definition
2017-07-11 18:27:24 -06:00
Dominic Spill
72a03cffa8
Merge pull request #382 from dominicgs/operaglasses
...
Opera glasses: allow user specified ranges for operacake ports
2017-06-02 10:23:24 -06: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
Marco Bartolucci
a773b463cb
cleanup
2017-05-16 15:37:27 +02:00
Marco Bartolucci
533f9ee332
Hardware (CPLD-based) synchronisation
...
=======================================
This commit allows to synchronise multiple HackRFs with a synchronisation error **below 1 sampling period**
> WARNING: Use this at your own risk. If you don't know what you are doing you may damage your HackRF.
> The author takes no responsability for potential damages
Usage example: synchronise two HackRFs
======================================
1. Chose the master HackRF which will send the synchronisation pulse (HackRF0). HackRF1 will represent the slave hackrf.
2. Retreive the serial number of both HackRFs using `hackrf_info`
3. Use a wire to connect `SYNC_CMD` of HackRF0 to `SYNC_IN` of HackRF0 and HackRF1
4. Run `hackrf_transfer` with the argument `-H 1` to enable hardware synchronisation:
```
$ hackrf_tranfer ... -r rec1.bin -d HackRF1_serial -H 1 | hackrf_transfer ... -r rec0.bin -d HackRF0_serial -H 1
```
rec0.bin and rec1.bin will have a time offset below 1 sampling period.
The 1PPS output of GNSS receivers can be used to synchronise HackRFs even if they are far from each other.
>DON'T APPLY INCOMPATIBLE VOLTAGE LEVELS TO THE CPLD PINS
Signal | Header |Pin | Description
-------|--------|----|------------
`SYNC_IN` | P28 | 16 | Synchronisation pulse input
`SYNC_CMD` | P28 | 15 | Synchronisation pulse output
Note:
=====
I had to remove CPLD-based decimation to use a GPIO for enabling hardware.
More info:
==========
[M. Bartolucci, J. A. Del Peral-Rosado, R. Estatuet-Castillo, J. A. Garcia-Molina, M. Crisci and G. E. Corazza, "Synchronisation of low-cost open source SDRs for navigation applications," 2016 8th ESA Workshop on Satellite Navigation Technologies and European Workshop on GNSS Signals and Signal Processing (NAVITEC), Noordwijk, 2016, pp. 1-7.](http://ieeexplore.ieee.org/document/7849328/ )
[Alternative link](http://spcomnav.uab.es/docs/conferences/Bartolucci_NAVITEC_2016.pdf )
2017-05-16 11:39:44 +02:00
Marco Bartolucci
747d8e2278
Removed decimation in CPLD
2017-05-15 12:56:51 +02:00
Marco Bartolucci
d47dece3ba
Fixed indentation
2017-05-15 11:49:23 +02:00
Marco Bartolucci
808fd9410e
Bump to latest version
...
Merge remote-tracking branch 'upstream/master'
2017-05-05 11:58:43 +02:00
Dominic Spill
8b853266ef
Power down CLK3 (CLKOUT) at boot, don't reset it when clocks are reset
2017-02-28 15:26:43 -07:00
Dominic Spill
00b6099bb3
Make comments more informative (possibly)
2017-02-28 15:25:27 -07:00
Dominic Spill
e7f890e0c2
Merge branch 'mossmann-master' into firmware_cleanup
2017-02-22 12:10:42 -07:00
Dominic Spill
0a48dccd66
CLOKOUT off by default
2017-02-21 18:38:50 -07:00
Dominic Spill
acaf0d192c
Change RFFC5071 clock from 40MHz to 50MHz and invert it
...
Now the MAX2837 and RFFC5071 clocks are out of phase with each other
Hopefully this reduces some noise
2017-02-21 17:56:37 -07:00
Dominic Spill
15ea074bdb
Clean up Si5351c initialisation code
2017-02-21 17:43:19 -07:00
Dominic Spill
3eb00ed0df
Disable CLK7 and power down CLK6/7 to reduce emissions
2017-02-20 12:34:35 -07:00
schneider
d4c69890b5
fix(rad1o): Restore old clock behaviour for now.
2017-02-19 01:39:51 +01:00
Dominic Spill
ef695a36e0
Reinstate LPC4330 linker script
2017-02-17 07:49:16 -07:00
Marco Bartolucci
9d6f2a7e9c
Fixed sgpio_if readme
2017-02-17 14:05:33 +01:00
Marco Bartolucci
fa6bde951c
Added CPLD-based synchronization
...
This is a proof of concept and it's still very crude
For more info read (http://spcomnav.uab.es/docs/conferences/Bartolucci_NAVITEC_2016.pdf )
2017-02-17 13:58:55 +01:00
Dominic Spill
a4036eab76
Remove last mentions of Jellybean
2017-02-16 18:03:32 -07:00
Michael Ossmann
79f95abdb3
correct discrepancy between number of samples and number of bytes in blocks of samples
...
related to #346
2017-02-16 12:46:17 -07:00
Dominic Spill
09eb15cb53
Remove unused development firmware from build
2017-02-14 21:34:44 -07:00
Dominic Spill
9e3b69a9b7
Remove source for development firmwares
2017-02-14 21:34:28 -07:00
Dominic Spill
c6be7dea3e
Fix build warnings for unused GPIO pins
2017-02-14 21:34:20 -07:00
Dominic Spill
49257e60e3
Remove Jellybean support from firmware
...
- nobody has a jellybean board
2017-02-14 21:33:52 -07:00
Michael Ossmann
6e3544ddec
Merge pull request #329 from schneider42/rad1o
...
rad1o support
2017-02-14 21:30:48 -07:00
Michael Ossmann
0335f1a317
Reverted 31a37bd841b99154fce7217d2b3d78a24f8aacd9 Output RFFC5072 LOCK status
...
This enabled a debug signal used during sweep mode development on HackRF One, but it broke Jawbreaker.
2017-02-11 12:24:22 -07:00
schneider42
4117cd3903
Merge branch 'master' into rad1o
2017-02-11 18:02:51 +01:00
Michael Ossmann
bb24ef5494
Merge pull request #337 from dominicgs/clock_experiments
...
turn off unused clocks in the microcontroller
2017-02-10 17:18:12 -07:00
Dominic Spill
c0396ea2fb
Reenable some clocks so that HackRF boots
2017-02-10 10:29:54 -07:00
Michael Ossmann
2936ff3cef
clarified some things in firmware/README
2017-02-09 22:16:26 -07:00
Dominic Spill
2163ebac9c
Power down or disable all clocks that we aren't using
2017-02-09 21:23:58 -07:00
Dominic Spill
3de6d2d360
Disable EMC clock
2017-02-09 16:34:57 -07:00
Michael Ossmann
5b881e1d54
fixed bug that caused tuning glitches in interleaved sweep mode
2017-02-08 10:44:16 -07:00
Michael Ossmann
00d5b1c575
don't send first buffer to host in sweep mode until it is full
2017-02-07 17:52:09 -07:00
Michael Ossmann
e9d1c71646
fixed firmware bug with sweep ranges that start at high frequencies
2017-02-07 16:00:20 -07:00
Michael Ossmann
4b6de820ef
support multiple frequency ranges in hackrf_sweep
2017-02-07 15:37:26 -07:00
Michael Ossmann
e1b1dbd647
Moved sweep mode frequency computation into firmware.
...
Changed from long list of tuning frequencies to short list of ranges.
2017-02-07 13:57:49 -07:00
schneider
6668448856
fix(mixertx): Use mixer_setup instead of rffc5071_setup
2017-02-03 20:09:40 +01:00
schneider
5f46bce325
fix(rad1o): Restore hackrf max2837_freq_nominal_hz behaviour
2017-02-03 19:33:25 +01:00
schneider
c0c0fab368
chore(rad1o): White space fixes and cleanup
2017-02-03 19:27:19 +01:00