Software Tools

Online Tools

Open-source Software

Robotics

Communication

  • Lightweight Communications and Marshalling (LCM) - https://lcm-proj.github.io/

    “LCM is a set of libraries and tools for message passing and data marshalling, targeted at real-time systems where high-bandwidth and low latency are critical.”

  • Low Level Skeleton Library for Communication on GNU/Linux platforms - https://github.com/intel-iot-devkit/mraa

    “Libmraa is a C/C++ library with bindings to javascript & python to interface with the IO on Galileo, Edison & other platforms, with a structured and sane API where port names/numbering matches the board that you are on.”

Scientific Computing

  • GNU Octave - https://www.gnu.org/software/octave/

    “GNU Octave is a high-level interpreted language, primarily intended for numerical computations. The Octave language is quite similar to Matlab so that most programs are easily portable.”

  • OpenGL Mathematics - http://glm.g-truc.net/0.9.6/index.html

    “OpenGL Mathematics (GLM) is a header only C++ mathematics library for graphics software based on the OpenGL Shading Language (GLSL) specifications.”

  • GSL - GNU Scientific Library - http://www.gnu.org/software/gsl/

    “The GNU Scientific Library (GSL) is a numerical library for C and C++ programmers. It is free software under the GNU General Public License. The library provides a wide range of mathematical routines such as random number generators, special functions and least-squares fitting. There are over 1000 functions in total with an extensive test suite.”

  • GNU Plot - http://www.gnuplot.info/

    “Gnuplot is a portable command-line driven graphing utility for Linux, OS/2, MS Windows, OSX, VMS, and many other platforms. The source code is copyrighted but freely distributed (i.e., you don’t have to pay for it). It was originally created to allow scientists and students to visualize mathematical functions and data interactively, but has grown to support many non-interactive uses such as web scripting.”

Computer Vision

  • Open source visual servoing platform library (ViSP) - http://visp.inria.fr/

    “ViSP standing for Visual Servoing Platform is a modular cross platform library that allows prototyping and developing applications using visual tracking and visual servoing technics at the heart of the researches done by Inria Lagadic team.”

Operating Systems

  • Xenomai - https://xenomai.org/

    “Xenomai is about making various real-time operating system APIs available to Linux-based platforms. When the target Linux kernel cannot meet the requirements with respect to response time constraints, Xenomai can also supplement it for delivering stringent real-time guarantees.”

Programming

  • Pantheios - http://www.pantheios.org/

    “Pantheios is an Open Source C/C++ Diagnostic Logging API library, offering an optimal combination of 100% type-safety, efficiency, genericity and extensibility.”

  • Valgrind - http://valgrind.org

    “Valgrind is an instrumentation framework for building dynamic analysis tools. There are Valgrind tools that can automatically detect many memory management and threading bugs, and profile your programs in detail. You can also use Valgrind to build new tools.”

Miscellaneous