Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
9675741
Add mcu clock enable for revision R9 boards
fabriziop Feb 21, 2025
ce1b400
Parameterize clock source and multiplier for clock max speed
fabriziop Feb 21, 2025
9509f0e
Parameterize clock source and multiplier for cpu clock init
fabriziop Feb 21, 2025
965573c
Adapt MCU input clock routing to board revision
fabriziop Feb 21, 2025
e16b85e
Enable MCU timer3 peripheral
fabriziop Feb 21, 2025
3e9798d
Configure sampling trigger output
fabriziop Feb 21, 2025
52ad3fb
Configure PPS output
fabriziop Feb 21, 2025
1a87915
Add time timer init and isr
fabriziop Feb 21, 2025
5d95831
Add ticks per second divisor setting
fabriziop Feb 21, 2025
a828c8b
Add sampling trigger delay setting
fabriziop Feb 21, 2025
eda4ebf
Add seconds counter get/set
fabriziop Feb 21, 2025
dd45892
Add ticks counter get/set
fabriziop Feb 21, 2025
0007cf3
Add si5351c support for synchronized clock
fabriziop Feb 21, 2025
ccaf314
Add synchronized clock enabling
fabriziop Feb 21, 2025
96ae883
Promote required USB API version to 1.09
fabriziop Feb 21, 2025
8a7338c
Add hackrf time tool
fabriziop Feb 21, 2025
f705b2f
Rebasing, add HTime extension to compilation files
fabriziop Oct 14, 2025
9e90c12
Add HTime's documentation
fabriziop Feb 24, 2025
9e2adb5
Add watchdog on USB communication
fabriziop Apr 16, 2025
e8599df
Remove watchdog on USB communication: missing setting of
fabriziop May 12, 2025
1625b6f
Fix swapped order of SCU defs of PPS1 and TRIGGER
fabriziop Jun 15, 2025
afaece3
Generate trailing edges of 1PPS and trigger by counter
fabriziop Jun 16, 2025
03b3092
Fix the sampling hang with the external clock
fabriziop Jul 29, 2025
a6a00e7
Align documentation version to current 0.3.1
fabriziop Jul 30, 2025
cb18f35
Fix not R9 boards text description of clock jumper
fabriziop Oct 14, 2025
a34d15e
Improved clang-format version extraction in reformat script
fabriziop Oct 14, 2025
14aabd6
Formatted with hackrf clang 14 style
fabriziop Oct 14, 2025
e46ae96
Remove old bool typedef no more supported
fabriziop Dec 6, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .readthedocs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ build:

# Build documentation in the "docs/" directory with Sphinx
sphinx:
configuration: docs/source/conf.py
configuration: docs_htime/source/conf.py

# Build PDF for docs
formats:
Expand Down
48 changes: 20 additions & 28 deletions Readme.md
Original file line number Diff line number Diff line change
@@ -1,38 +1,30 @@
# HackRF
# HTime

This repository contains hardware designs and software for HackRF,
a low cost, open source Software Defined Radio platform.
HTime is a firmware extension for the HackRF One, the open-hardware/open-source
SDR by [Great Scott Gadgets](https://www.greatscottgadgets.com/hackrf/one/).
HTime provides the HackRF SDR with the
capability to perform timed commands and a precise phase synchronization
of internal clocks (sampling, MCU, output) for the best timing performance.

![HackRF One](https://raw.github.com/mossmann/hackrf/master/docs/images/HackRF-One-fd0-0009.jpeg)
## Features

(photo by fd0 from https://github.com/fd0/hackrf-one-pictures)
* Unix-like time scale, with a resolution of 5 ns
* RX/TX sampling synchronized with the time scale
* Fine time scale/frequency adjust for synchronization with remote reference radio signals with a resolution of about 0.25 Hz @ 10 MHz
* No external hardware required
* Host time tool for access to time extension API

principal author: Michael Ossmann <mike@ossmann.com>
## Documentation

Information on HackRF and purchasing HackRF: https://greatscottgadgets.com/hackrf/
HTime documentation HTML pages are on
[Read the Docs](https://htime.readthedocs.io/en/latest).

--------------------
All other documentation about the HackRF can be found
[here](https://hackrf.readthedocs.io/en/latest/).

# Documentation
## License

Documentation for HackRF can be viewed on [Read the Docs](https://hackrf.readthedocs.io/en/latest/). The raw documentation files for HackRF are in the [docs folder](https://github.com/mossmann/hackrf/tree/master/docs) in this repository and can be built locally by installing [Sphinx Docs](https://www.sphinx-doc.org/en/master/usage/installation.html) and running `make html`. Documentation changes can be submitted through pull request and suggestions can be made as GitHub issues.
HTime © 2025 documentation by Fabrizio Pollastri is licensed under CC BY-SA 4.0

To create a PDF of the HackRF documentation from the HackRF repository while on Ubuntu:
* run `sudo apt install latexmk texlive-latex-extra`
* navigate to hackrf/docs on command line
* run the command `make latex`
* run the command `make latexpdf`
HTime © 2025 software by Fabrizio Pollastri is licensed under GNU GPL v2.0

--------------------

# Getting Help

Before asking for help with HackRF, check to see if your question is listed in the [FAQ](https://hackrf.readthedocs.io/en/latest/faq.html).

For assistance with HackRF general use or development, please look at the [issues on the GitHub project](https://github.com/greatscottgadgets/hackrf/issues). This is the preferred place to ask questions so that others may locate the answer to your question in the future.

We invite you to join our community discussions on [Discord](https://discord.gg/rsfMw3rsU8). Note that while technical support requests are welcome here, we do not have support staff on duty at all times. Be sure to also submit an issue on GitHub if you've found a bug or if you want to ensure that your request will be tracked and not overlooked.

If you wish to see past discussions and questions about HackRF, you may also view the [mailing list archives](https://pairlist9.pair.net/pipermail/hackrf-dev/).

GitHub issues on this repository that are labelled "technical support" by Great Scott Gadgets employees can expect a response time of two weeks. We currently do not have expected response times for other GitHub issues or pull requests for this repository.
24 changes: 24 additions & 0 deletions docs_htime/.readthedocs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# .readthedocs.yaml
# Read the Docs configuration file
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details

# Required
version: 2

# Set the OS, Python version and other tools
build:
os: ubuntu-22.04
tools:
python: "3.12"

# Build documentation in the "docs/" directory with Sphinx
sphinx:
configuration: docs_htime/source/conf.py

# Build PDF for docs
formats:
- pdf

python:
install:
- requirements: docs/requirements.txt
19 changes: 19 additions & 0 deletions docs_htime/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Minimal makefile for Sphinx documentation
#

# You can set these variables from the command line.
SPHINXOPTS =
SPHINXBUILD = sphinx-build
SOURCEDIR = source
BUILDDIR = build

# Put it first so that "make" without argument is like "make help".
help:
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)

.PHONY: help Makefile

# Catch-all target: route all unknown targets to Sphinx using the new
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
%: Makefile
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
Loading