cylon-crazyflie

    0.17.0 • Public • Published

    Cylon.js For Crazyflie

    Cylon.js (http://cylonjs.com) is a JavaScript framework for robotics and physical computing using Node.js

    This module provides an adaptor and drivers for the Crazyflie nanocopter (http://www.bitcraze.se/). It uses the Aerogel node module (https://github.com/ceejbot/aerogel) created by @ceejbot thank you!

    Want to use Ruby on robots? Check out our sister project Artoo (http://artoo.io)

    Want to use the Go programming language to power your robots? Check out our sister project Gobot (http://gobot.io).

    Build Status Code Climate Test Coverage

    How to Install

    Dependencies

    On Linux, you need to install some packages before you can install the NPM module:

    $ sudo apt-get install build-essential pkg-config libusb-1.0-0-dev
    

    And on OS X, you need to have the libusb package to install the module:

    $ brew install libusb
    

    Install the module with:

    $ npm install cylon cylon-crazyflie
    

    You will also need to install the latest beta firmware to the Crazyflie itself to use the 'hover' mode: https://bitbucket.org/bitcraze/crazyflie-firmware/downloads/Crazyflie_2014.01.0.bin.

    How to Use

    This small program causes the Crazyflie to takeoff for 10 seconds.

    var Cylon = require('cylon');
     
    Cylon.robot({
      connections: {
        crazyflie: { adaptor: 'crazyflie', port: 'radio://1/10/250KPS' }
      },
     
      devices: {
        drone: { driver: 'crazyflie' }
      },
     
      work: function(my) {
        my.drone.takeoff();
        after((10).seconds(), function() {
          my.drone.land();
        });
        after((15).seconds(), function() {
          my.drone.stop();
        });
      }
    }).start();

    Hover Mode

      my.drone.setParam('flightmode.althold', true);
    

    How to Connect

    The Crazyflie uses a 2.4 GHz radio to communicate. There is a USB dongle called the Crazyradio that is required to control the Crazyflie quadcopter.

    If you are have a USB 3.0 port, you might run into this issue:

    http://stackoverflow.com/questions/17204253/crazyflie-usb-3-0-incompability.

    Ubuntu

    You need to install some udev-rules to be able to communicate with the crazyflie, it is a good thing that we have a Gort command that does just that:

    $ gort crazyflie set-udev-rules
    

    Documentation

    We're busy adding documentation to our web site at http://cylonjs.com/ please check there as we continue to work on Cylon.js

    Thank you!

    Contributing

    For our contribution guidelines, please go to https://github.com/hybridgroup/cylon/blob/master/CONTRIBUTING.md.

    Release History

    For the release history, please go to https://github.com/hybridgroup/cylon-crazyflie/blob/master/RELEASES.md.

    License

    Copyright (c) 2013-2016 The Hybrid Group. Licensed under the Apache 2.0 license.

    Install

    npm i cylon-crazyflie

    Homepage

    cylonjs.com

    DownloadsWeekly Downloads

    22

    Version

    0.17.0

    License

    Apache-2.0

    Last publish

    Collaborators

    • andrewstewart
    • deadprogram
    • edgarsilva