https://github.com/dineshpinto/timetagger

FPGA programming for nanosecond photon counting

https://github.com/dineshpinto/timetagger

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    1 of 2 committers (50.0%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.1%) to scientific vocabulary

Keywords

c fpga fpga-programming linux photonics picosecond swig-binding verilog
Last synced: 4 months ago · JSON representation

Repository

FPGA programming for nanosecond photon counting

Basic Info
  • Host: GitHub
  • Owner: dineshpinto
  • Language: C
  • Default Branch: master
  • Homepage:
  • Size: 105 MB
Statistics
  • Stars: 4
  • Watchers: 2
  • Forks: 1
  • Open Issues: 0
  • Releases: 0
Topics
c fpga fpga-programming linux photonics picosecond swig-binding verilog
Created almost 9 years ago · Last pushed almost 4 years ago
Metadata Files
Readme

README.md

TimeTagger

Building on Linux with a Windows 32/64 bit system build target.

Dependencies (RPM)

Dependencies (for RPM based systems) are stored in requirements_rpm.txt and can be installed using

shell dnf install $(cat requirements_rpm.txt)

Source-tree

config.mak          - configuration file for the build process
backend             - the TimeTagger backend
    doc         - api documentation
core                - vhdl core of the fpga
examples            - programming examples
doc             - latex manual
timetaggerd         - the timetagger web server daemon
    httpd           - http library
arm-linux           - linux arm build
win32               - windows 32 build
    config.mak      - configuration file for the win32 build process
    build-depends       - files needed for cross compiling
    include         - include files for native windows build 
    lib         - libraries generated by vstudio
    vstudio         - native windows build environment
win64               - windows 64 build
    config.mak      - configuration file for the win32 build process
    build-depends       - files needed for cross compiling
    include         - include files for native windows build 
    lib         - libraries generated by vstudio
setup               - win 32 and win 64 installer.exe

Make targets:

all:            - build backend, timetaggerd and documentation
clean:          - cleanup sourcetree for clean build
dist-clean      - tidy sourcetree for repository check-in (see Issues)
dist:           - collect ditribution files
install:        - install backend (linux only)

Make options

I586_LINUX      set, for linux build. on the root level, this should always be set.

WITH_WIN32      set to use mingw win32 cross compile
WITH_WIN64      set to use mingw win64 cross compile
ARM_LINUX:      set for cross compile for ARM. **not tested** 

WITH_PYTHON     set to build python bindings
WITH_DOXYGEN        set to build documentation files

THREAD_PTHREADS     set to use PTHREAD threading library
THREAD_BOOST        set to use BOOST threading library

WITH_EMBEDDED_DOCS  set to embedd htms/css/image files into the timetaggerd binary

SOURCE_ROOT     location of source tree for cross compiling 

Output

A packaged file in timetagger/dist/TimeTagger.zip. This file should (generally) be placed under <Drive>:\\Program Files (x86)\SwabianInstruments\.

Or optionally, a Windows executable located in timetagger/setup/TimeTagger-x.x.exe. To build a Windows executable: Modify timetagger/setup/timetagger.nsi to correct Python version (default 2.7) Run make all in timetagger/setup

Python bindings

By default Python 2 will be used. However, Python 3.5 bindings are also supported. Uncomment WITH_PYTHON35 in the relevant config.mak files to enable.

Issues

Compilation tends to fail after running dist-clean. This is likely due to the system being unable to rebuild an index for the required build. Currently the recommended solution is to avoid using make dist-clean entirely. Use make clean instead.

Owner

  • Name: Dinesh Pinto
  • Login: dineshpinto
  • Kind: user
  • Location: Switzerland/Germany

quantum info PhD student @ EPFL, pythonista & rustacean

GitHub Events

Total
Last Year

Committers

Last synced: 10 months ago

All Time
  • Total Commits: 10
  • Total Committers: 2
  • Avg Commits per committer: 5.0
  • Development Distribution Score (DDS): 0.2
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
D. Pinto s****2@s****e 8
Dinesh Pinto d****5@g****m 2
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 10 months ago

All Time
  • Total issues: 0
  • Total pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Total issue authors: 0
  • Total pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels

Dependencies

requirements_rpm.txt pypi
  • gcc-c *
  • mingw32-gcc-c *
  • mingw32-nsis *
  • mingw32-winpthreads *
  • mingw32-winpthreads-static *
  • mingw64-gcc-c *
  • mingw64-winpthreads *
  • mingw64-winpthreads-static *
  • python-devel *
  • python-numpy *
  • swig *