Empirical Inference Software Workshop Movement Generation and Control Article 2021

The o80 C++ templated toolbox: Designing customized Python APIs for synchronizing realtime processes

Thumb ticker sm 2024 07 15 101437
Empirical Inference, IT Services
  • Research Engineer
Thumb ticker sm maxwithhrp2 scaled
Movement Generation and Control
Postdoctoral Researcher
Thumb ticker sm 20211026 felix widmaier wolfram scheible small
Empirical Inference
  • Research Engineer
Thumb ticker sm 7028ad2b e106 4b00 8e44 482ac9bd2228
Empirical Inference
  • Postdoctoral Researcher
Thumb ticker sm jean claude foto kleiner 0721 final
Software Workshop
Team Leader
Thumb ticker sm dscf0196 2
Empirical Inference
  • Doctoral Researcher
Thumb ticker sm b  chler
Empirical Inference
Research Group Leader
1200px infinite.svg

o80 (pronounced "oh-eighty") is software for synchronizing and organizing message exchange between (realtime) processes via simple customized Python APIs. Its target domain is robotics and machine learning. Our motivation for developing o80 is to ease the setup of robotics experiments (i.e., integration of various hardware and software) by machine learning scientists. Such setup typically requires time and technical effort, especially when realtime processes are involved. Ideally, scientists should have access to a simple Python API that hides the lower level communication details and simply allows the sending of actions and receiving of observations. o80 is a tool box for creating such API.

Author(s): Vincent Berenz and Maximilien Naveau and Felix Widmaier and Manuel Wüthrich and Jean-Claude Passy and Simon Guist and Dieter Büchler
Journal: Journal of Open Source Software
Volume: 6
Number (issue): 66
Year: 2021
Month: October
BibTeX Type: Article (article)
DOI: 10.21105/joss.02752
State: Published
URL: https://joss.theoj.org/papers/10.21105/joss.02752
Article Number: 2752
Digital: True
Electronic Archiving: grant_archive

BibTeX

@article{o80,
  title = {The o80 C++ templated toolbox: Designing customized Python APIs for synchronizing realtime processes},
  journal = {Journal of Open Source Software},
  abstract = {o80 (pronounced "oh-eighty") is software for synchronizing and organizing message exchange between (realtime) processes via simple customized Python APIs. Its target domain is robotics and machine learning. Our motivation for developing o80 is to ease the setup of robotics experiments (i.e., integration of various hardware and software) by machine learning scientists. Such setup typically requires time and technical effort, especially when realtime processes are involved. Ideally, scientists should have access to a simple Python API that hides the lower level communication details and simply allows the sending of actions and receiving of observations. o80 is a tool box for creating such API.},
  volume = {6},
  number = {66},
  month = oct,
  year = {2021},
  author = {Berenz, Vincent and Naveau, Maximilien and Widmaier, Felix and W{\"u}thrich, Manuel and Passy, Jean-Claude and Guist, Simon and B{\"u}chler, Dieter},
  doi = {10.21105/joss.02752},
  url = {https://joss.theoj.org/papers/10.21105/joss.02752},
  month_numeric = {10}
}