Skip to content

Commit

Permalink
Added JOSS paper.
Browse files Browse the repository at this point in the history
  • Loading branch information
glm-ucl committed Dec 20, 2022
1 parent df88717 commit a082158
Show file tree
Hide file tree
Showing 3 changed files with 76 additions and 0 deletions.
23 changes: 23 additions & 0 deletions .github/workflows/draft-pdf.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
on: [push]

jobs:
paper:
runs-on: ubuntu-latest
name: Paper Draft
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Build draft PDF
uses: openjournals/openjournals-draft-action@master
with:
journal: joss
# This should be the path to the paper within your repo.
paper-path: paper.md
- name: Upload
uses: actions/upload-artifact@v1
with:
name: paper
# This is the output path where Pandoc will write the compiled
# PDF. Note, this should be the same directory as the input
# paper.md
path: paper.pdf
19 changes: 19 additions & 0 deletions paper.bib
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
@article{bonsai,
author = {Lopes, Gonçalo and Bonacchi, Niccolò and Frazão, João and Neto, Joana P. and Atallah, Bassam V. and Soares, Sofia and Moreira, Luís and Matias, Sara and Itskov, Pavel M. and Correia, Patrícia A. and Medina, Roberto E. and Calcaterra, Lorenza and Dreosti, Elena and Paton, Joseph J. and Kampff, Adam R.},
title = {Bonsai: an event-based framework for processing and controlling data streams},
journal = {Frontiers in Neuroinformatics},
volume = {9},
year = {2015},
url = {https://www.frontiersin.org/articles/10.3389/fninf.2015.00007},
doi = {10.3389/fninf.2015.00007},
issn = {1662-5196}
}

@misc{harp,
author = {Carvalho, Filipe},
title = {Description of the Harp protocol},
year = {2022},
publisher = {GitHub},
journal = {GitHub repository},
url = {https://github.com/harp-tech/protocol}
}
34 changes: 34 additions & 0 deletions paper.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
---
title: 'Microharp: A Harp protocol and device application framework MicroPython package'
tags:
- MicroPython
- Raspberry Pi Pico
- Harp protocol
- Bonsai
authors:
- name: Gordon L. Mills
corresponding: true
affiliation: 1
affiliations:
- name: Sainsbury Wellcome Centre, UK
index: 1
date: 20 December 2022
bibliography: paper.bib
---

# Summary

Experimental science often requires the acquisition of sensor data and control of stimulus, using various devices. In general, these devices are coordinated using a platform on which the experiment is built. Typically, the platform hardware is a PC and the platform software is a graphical or text-based high-level programming language. Common to all such systems is the requirement to transact data between the platform and one or more, possibly custom hardware devices.


# Statement of need

The ubiquity of single board microcomputers has reduced the hardware development effort required to realise custom devices. However, a significant amount of software development is still required. `Microharp` is a MicroPython package for creating custom devices which implement the Harp data and timing protocols [@harp]. These protocols are designed with the requirements of experimental science in mind and are supported by the Bonsai platform [@bonsai]. `Microharp` targets the Raspberry Pi Pico, a versatile low-cost microcontroller board, which supports the MicroPython programming language. `MicroHarp` has been designed to be used by researchers and students wishing to create devices for their experiments. The package handles all communication with the platform data and synchronisation interfaces. Its class-based framework implements common device features whilst providing an intuitive interface for device customisation. The package has been used to develop a number of custom devices which are currently in experimental neuroscience research use. The combination of low-cost target hardware, use of a programming language familiar to many researchers and students, and the simplicity of device customisation afforded by `Microharp` will continue to accelerate the realisation of custom experimental apparatus.


# Acknowledgements

Thanks to Andre Almeida and Bruno Cruz for creation of Bonsai test workflows and performance benchmarking of the package.


# References

0 comments on commit a082158

Please sign in to comment.