Giter Club home page Giter Club logo

legoev3cpp's Introduction

legoev3cpp

This is a light-weight cross-platform C++14 API for remote control of the LEGO EV3. The current platform specific implementation files are only iOS bluetooth. I use this library to remote-control my EV3 from an iOS app. If you find this project useful, please propose any additions/changes.

The following are on the TODO list...

  1. Variable dereferencing in opcodes.
    • There is a sizeof() problem with DirecOpcode and itemized params
    • Optionally pushing consexpr string size limits to params
  2. Finish implementing all direct opcode structures.
  3. Finish implementing all system opcode structures.
    • There is a crash/deadlock with FileUploader
  4. Fetching extended brick info timeouts
  5. Create more platform specific connection classes

This project is dependent on the ev3 sources with the minor header changes made in the dsjove fork (pull request has been made). I have a fork of both ev3 source trees with the changes. You do NOT need to change the firmware on the EV3. The header files are only for desktop compilation.

The "Jove's Landing" sample app demonstrates usage.

  • “AppDelegate.mm" shows how to create the link to the EV3.
  • “RailSwitch.mm" shows how to send a command to EV3.
  • “DirectoryListingViewController.mm” and “FileViewController.mm” shows how to interact with files

legoev3cpp's People

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.