Controlling hardware and robots in Julia

APIs and bindings

  • Instruments.jl : A package for controlling laboratory instruments through Julia over TCPIP/GPIB/USB/Serial, wrapped around the NI-VISA library (which needs to be separately installed) similar to PyVISA and has some starts towards making it easier to write custom instrument drivers.
  • NIDAQ.jl : This package provides an interface to NIDAQmx - National Instruments’ driver for their data acquisition boards.

Computer-assisted design / manufacture (CAD/CAM)

  • Devices.jl : For simplified generation of device CAD files for superconducting device design.
  • LTspice.jl : A Julia interface to LTspice.

Semiconductor and Transistor

  • MOSLab.jl : Semiconductor to Transistor Level Modeling in Julia.

Embedded Systems


  • JuliaBerry.jl : An omnibus package with a high level API for controlling peripherals on the Raspberry Pi computer.
  • LibSerialPort.jl : Julia wrapper for the libserialport C library.
  • PiCraft.jl : Manipulate Minecraft on the Raspberry Pi from Julia.
  • PiGPIO.jl) : Manage external hardware using GPIO pins on the Raspberry Pi.
  • SerialPorts.jl) : SerialPort IO streams in Julia backed by Python’s pySerial. (With Python dependencies)

Robots