Browse free open source Robotics software and projects for Mac below. Use the toggles on the left to filter open source Robotics software by OS, license, language, programming language, and project status.

  • MongoDB Atlas runs apps anywhere Icon
    MongoDB Atlas runs apps anywhere

    Deploy in 115+ regions with the modern database for every enterprise.

    MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
    Start Free
  • No-Nonsense Code-to-Cloud Security for Devs | Aikido Icon
    No-Nonsense Code-to-Cloud Security for Devs | Aikido

    Connect your GitHub, GitLab, Bitbucket, or Azure DevOps account to start scanning your repos for free.

    Aikido provides a unified security platform for developers, combining 12 powerful scans like SAST, DAST, and CSPM. AI-driven AutoFix and AutoTriage streamline vulnerability management, while runtime protection blocks attacks.
    Start for Free
  • 1
    GCBASIC
    GCBASIC is an open-source BASIC compiler for 8 bit Microchip PIC, Atmel AVR legacy, AVRDx and LGT microcontrollers. See https://ko-fi.com/post/The-Story-of-GCBASIC-Making-Microcontroller-Progr-D1D319SJ72 for story of GCBASIC. This is a continuous release project. The latest release is always available. This will give you the most complete development toolchain to create and program 8-bit PIC, AVR and LGT microcontrollers. We have added new capabilities that make GCBASIC the easiest tool set available - supporting over 1400 microcontrollers with tools to make this fun and simple. Please see the download section for your options. We have two IDEs, we have just the compiler and we have a minimal install - it is your choice. Please see the homepage here: https://gcbasic.com
    Leader badge
    Downloads: 244 This Week
    Last Update:
    See Project
  • 2
    Arduino libraries

    Arduino libraries

    Arduino libraries and code

    This repository contains several Arduino libraries I have written to be used in applications. Most of them include example code on how the libraries can be used. Furthermore, this repository contains a few stand-alone applications. For bugs in the libraries, please fill in an issue in Github as that makes it far easier to track them. If possible provide a minimal code snippet that exposes the bug. Add information about the platform used and version etc. Also, proposals for solutions are welcome. For improvements and changes, please provide a pull request. I will try to follow up on them asap but it can take quite some time. Please try to be generic in your improvements and try to see "over the needs of your own application".
    Downloads: 8 This Week
    Last Update:
    See Project
  • 3
    TFT_eSPI

    TFT_eSPI

    Arduino and PlatformIO IDE compatible TFT library

    An Arduino IDE compatible graphics and fonts library for 32-bit processors. The library is targeted at 32-bit processors, it has been performance-optimized for STM32, ESP8266 and ESP32 types. The library can be loaded using the Arduino IDE's Library Manager. Direct Memory Access (DMA) can be used with the ESP32, RP2040, and STM32 processors to improve rendering performance. "Four wire" SPI and 8 bit parallel interfaces are supported. Due to the lack of GPIO pins, the 8-bit parallel interface is NOT supported on the ESP8266. 8 bit parallel interface TFTs (e.g. UNO format mcufriend shields) can use with the STM32 Nucleo 64/144 range or the UNO format ESP32. ILI9341 and ST7796 SPI-based displays are recommended as starting points for experimenting with this library. The library supports some TFT displays designed for the Raspberry Pi (RPi) that are based on a ILI9486 or ST7796 driver chip with a 480 x 320-pixel screen.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 4
    ESP32 BLE Keyboard library

    ESP32 BLE Keyboard library

    Bluetooth LE Keyboard library for the ESP32

    This library allows you to make the ESP32 act as a Bluetooth Keyboard and control what it does. Compatible with Android. Compatible with Windows. Compatible with Linux. Compatible with MacOS X (not stable, some people have issues, doesn't work with old devices). Compatible with iOS (not stable, some people have issues, doesn't work with old devices). There is also Bluetooth-specific information that you can set (optional): Instead of BleKeyboard bleKeyboard; you can do BleKeyboard bleKeyboard("Bluetooth Device Name", "Bluetooth Device Manufacturer", 100);. (Max length is 15 characters, anything beyond that will be truncated.) By default the battery level will be set to 100%, the device name will be ESP32 Bluetooth Keyboard and the manufacturer will be Espressif. This feature is meant to compensate for some applications and devices that can't handle fast input and will skip letters if too many keys are sent in a small time frame.
    Downloads: 6 This Week
    Last Update:
    See Project
  • Secure remote access solution to your private network, in the cloud or on-prem. Icon
    Secure remote access solution to your private network, in the cloud or on-prem.

    Deliver secure remote access with OpenVPN.

    OpenVPN is here to bring simple, flexible, and cost-effective secure remote access to companies of all sizes, regardless of where their resources are located.
    Get started — no credit card required.
  • 5
    TinyGSM

    TinyGSM

    A small Arduino library for GSM modules, that just works

    A small Arduino library for GSM modules that just works. This library is easy to integrate with lots of sketches that use Ethernet or WiFi. PubSubClient (MQTT), Blynk, HTTP Client, and File Download examples are provided. Arduino GSM library uses 15868 bytes (49%) of Flash and 1113 bytes (54%) of RAM in a similar scenario. TinyGSM also pulls data gently from the modem (whenever possible), so it can operate on very little RAM. Now, you have more space for your experiments. TCP (HTTP, MQTT, Blynk, ...) All modules support TCP connections. Most modules support multiple simultaneous connections. TCP and SSL connections can usually be mixed up to the total number of possible connections. Many GSM modems, WiFi, and radio modules can be controlled by sending AT commands over Serial. TinyGSM knows which commands to send, and how to handle AT responses, and wraps that into the standard Arduino Client interface.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 6
    Watchy

    Watchy

    An open source E-ink smartwatch

    Watchy, an open-source E-Ink smartwatch. Watchy is an E-Paper watch with open-source hardware and software. It has a barebones design utilizing the PCB as the watch body, allowing it to be worn as-is, or further customized with different 3D printed cases and watch straps. It is a unique timepiece that is also a wearable development platform, allowing users to create their own experience. Ultra-low-power e-paper 1.54″ display with 200 x 200 resolution and wide viewing angle. Wi-Fi & Bluetooth LE connectivity. 3-axis accelerometer with gesture detection. Real-time clock for accurate timekeeping with calendar and alarm functions. Built-in USB-to-serial adapter for programming on the go. Watchy comes with comprehensive documentation and Arduino code examples that demonstrate every hardware feature. New watch faces and examples are regularly added.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 7
    OpenRAVE
    Moved to https://github.com/rdiankov/openrave An open-source, cross-platform, plugin-based robot planning environment for autonomous robotics. Includes services like collision detection, physics, (inverse) kinematics, sensors, robot controls, python bindings, and a network scripting environment.
    Downloads: 8 This Week
    Last Update:
    See Project
  • 8
    CILib is a framework for developing Computational Intelligence software in swarm intelligence, evolutionary computing, neural networks, artificial immune systems, fuzzy logic and robotics.
    Downloads: 10 This Week
    Last Update:
    See Project
  • 9

    Frc Robot Simulator

    A library that allows programs for a NI CRIO to be run on a computer.

    A simulator that allows programs written in Java for a National Instruments CRIO to be run on a local computer by overloading the libraries provided by WPI. Some things we've fixed since 0.1a: Kinect no longer throws an exception upon instantiation, the Watchdog is usable, array elements can now be edited in the gui, and lots of under the hood reimplementation to replace native methods. DISCLAIMER: this is not like the diamond bullet studios simulation, this only simulates how the hardware would act, so that code can be tested. It is not our goal to provide a program that allows simulation for strategy testing, nor will it ever be.
    Downloads: 14 This Week
    Last Update:
    See Project
  • Photo and Video Editing APIs and SDKs Icon
    Photo and Video Editing APIs and SDKs

    Trusted by 150 million+ creators and businesses globally

    Unlock Picsart's full editing suite by embedding our Editor SDK directly into your platform. Offer your users the power of a full design suite without leaving your site.
    Learn More
  • 10
    It's a simpler clone of RoboCode. It's a game which simulates tanks war. The focus is artificial intelligence AI, evolutive algorithms and neural networks. It's implemented in Java.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 11
    Cherokee is a fully extensible and scriptable automation engine for any and all java applets. To make it work for your favorite java applet the most you have to do is write is two classes.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 12

    haikuVM

    A Java VM for ARDUINO and other micros using the leJOS runtime.

    HaikuVM has been started for hobbyists who develop applications for ARDUINO to open the world of JAVA and leJOS. Yes, you can program an ARDUINO with JAVA! HaikuVM is so small that it even runs on an atmega8 (and the ASURO robot). And yes, you can program an ASURO robot with JAVA! And since version 1.4.0 the RCX lego brick.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 13
    Volta is a suite of development tools for distributed, hard real-time systems. It includes Cascade, a control flow analysis tool for Java, and Clepsydra, a worst-case execution time analyzer. Also included is a Clepsydra plug-in for jEdit.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 14
    CamShaft
    Calculation of camshafts - allows to define a camshaft profile on the set trajectory which should provide the given mechanism. The trajectory can be set graphically, co-ordinates or function.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 15
    The Mars Rover Simulator project is based on the evolutionary robotics paradigm where an artificial agent acquires its skills through the process of artificial evolution. This simulator can be useful to evolve neural network controllers for the rover
    Downloads: 1 This Week
    Last Update:
    See Project
  • 16

    PyVision Computer Vision Toolkit

    A Python computer vision library

    PyVision is a object-oriented Computer Vision Toolkit for researchers that contains vision and machine learning algorithms and algorithm analysis and easily interfaces with scipy/numpy, PIL, opencv and other computer and machine learning libraries.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 17
    QVision: Computer Vision Library for Qt

    QVision: Computer Vision Library for Qt

    Computer vision and image processing library for Qt.

    This library contains among other things a set of graphical widgets for video output, performance evaluation and augmented reality. The library also provides classes for several data types usually required by computer vision and image processing applications such as vectors, matrices, quaternions and images. Thanks to a large number of wrapper functions these objects can be used with highly efficient functionality from third party libraries such as OpenCV, GNU Scientific Library, Computational Geometry Algorithms Library, Intel's Math Kernel Library and Integrated Performance Primitives, the Octave library, etc...
    Downloads: 1 This Week
    Last Update:
    See Project
  • 18
    A wrapper around the leJOS NXJ (http://lejos.sourceforge.net/) API that allows easy test-driven development (TDD) of robot code in Java with JUnit.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 19
    clipsmm is a C++ interface to the CLIPS libray, a C library for developing expert systems.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 20
    Gearbox provides a collection of usable peer-reviewed robotics-related libraries. Gearbox is not an integration framework. Rather, it provides a set of implementations, without insisting on a standard API, for use by any number of existing frameworks.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 21
    Arduino DRV8833 Motor Controller Library

    Arduino DRV8833 Motor Controller Library

    A library for the control of motors using the TI DRV8833 IC

    Downloads: 0 This Week
    Last Update:
    See Project
  • 22
    Arduino MIDI Library

    Arduino MIDI Library

    MIDI for Arduino

    This library adds MIDI I/O communications to an Arduino board. MIDI over USB, Bluetooth, IP & AppleMIDI (see Transports). Active Sensing support. Compatible with all Arduino boards (and clones with an AVR processor). Simple and fast way to send and receive every kind of MIDI message (including all System messages, SysEx, Clock, etc..). OMNI input reading (read all channels). Software Thru, with message filtering. Callbacks to handle input messages more easily. Last received message is saved until a new one arrives. Overridable template-based settings. Create more than one MIDI interface for mergers/splitters applications. Use any serial port, hardware or software. All USB-related code has been moved into a separate repository Arduino-USB-MIDI, USB MIDI Device support with MIDI USB, still using this library to do all the MIDI heavy-lifting.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 23
    A scheme (lisp) interpreter written in ARM assembly language (currently: Cortex-M4F,M7, Cortex-A5,A8,A9, Cortex-A53; previously:ARM7TDMI, ARM920T, Cortex-M3) for education, robotics, wearable devices. Tested on Allwinner A64, Amlogic S905, Atmel SAMA5D4, SAME70, SAMV71, NXP LPC4300, RT1050, iMX8M, Samsung S5P6818, ST STM32F4, STM32F7, and TI AM3359, OMAP3530, DM3730, OMAP4430, TM4C1294 chips (previously: NXP LPC-1300,1700,2000, ATMEL AT91SAM7, STM STR711, STR911, STM32, CIRRUS EP9302, LMI LM3S1968, TI OMAP).
    Downloads: 0 This Week
    Last Update:
    See Project
  • 24
    Attitude Estimator

    Attitude Estimator

    A C++ implementation of a nonlinear 3D IMU fusion algorithm.

    Attitude Estimator is a generic platform-independent C++ library that implements an IMU sensor fusion algorithm. Up to 3-axis gyroscope, accelerometer and magnetometer data can be processed into a full 3D quaternion orientation estimate, with the use of a nonlinear Passive Complementary Filter. The library is targeted at robotic applications, but is by no means limited to this. Features of the estimator include gyro bias estimation, transient quick learning, multiple estimation algorithms, tuneable estimator parameters, and near-global stability backed by theoretical analysis. Great emphasis has been placed on having a very efficient, yet totally numerically and algorithmically robust implementation of the filter. The code size has also been kept to a minimum, and has been extremely well-commented. The programmatic interface has also been made as easy as possible. Please refer to the extensive documentation of the library for more information on its capabilities and usage caveats.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 25
    Behaviour Control Framework

    Behaviour Control Framework

    A C++ framework that uses inhibition trees for behaviour control.

    The Behaviour Control Framework is a generic platform-independent C++ framework that implements a control architecture consisting of a hierarchical network of behaviour layers. These layers each contain behaviours that can inhibit one another and interact to achieve control. A full discussion of the structure and ideas behind this framework can be found in the Doxygen documentation that comes with the release. This documentation is well worth a read before you decide if the library is for you! The structure and implementation of this library focuses on the application of the inhibition-based behaviour control architecture to real-time control loops, but can reasonably be adapted for a wide variety of other artificial intelligence applications. Emphasis has been placed on having very low overhead so as not to hurt overall system performance, while still maintaining ease of use. I welcome all feedback, suggestions and bug reports! Email: pallgeuer[at]ais.uni-bonn.de
    Downloads: 0 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • 4
  • Next
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.