dream-cheeky-windows-driver
Version:
Windows Driver for Dream Cheeky Thunder Missile Launcher
166 lines (101 loc) • 3.39 kB
Markdown
dream-cheeky-windows-driver
===========================
Nodejs API for controller dream cheeky missile launcher that works on windows.
This is a reinforcement of [guillaumedelre's *dream-cheeky-thunder-driver* library](https://github.com/guillaumedelre/dream-cheeky-thunder-driver), with adjustments to run on windows and improvements on `led` and `execute commands` features.
It *should* work on linux as well, since the kernel check is not necessary for the device.
____________________
Installation
==============
1. `npm install dream-cheeky-windows-driver`
2. In your js file, add `var DCDriver = require('dream-cheeky-windows-driver');`
____________________
API
==============
### DCDriver
#### DCDriver.DEVICE_CONSTANTS
**Description:**
A JS object containing constants for Dream Cheeky Thunder Launcher.
#### DCDriver.turnOnDebugMode()
**Description:**
Turn on debug mode (level 4) of USB.
#### DCDriver.turnOffDebugMode()
**Description:**
Turn off USB debug mode (ie. debug level 0).
#### DCDriver.moveUp(`durationMS`[, `callback`])
**Description:**
Move up for a period of time.
**Parameters:**
##### `durationMS`
Type: Number
Duration of moving time in ms.
##### `callback`
Type: Function()
A function to execute when the movement is done.
#### DCDriver.moveDown(`durationMS`[, `callback`])
**Description:**
Move down for a period of time.
**Parameters:**
##### `durationMS`
Type: Number
Duration of moving time in ms.
##### `callback`
Type: Function()
A function to execute when the movement is done.
#### DCDriver.moveLeft(`durationMS`[, `callback`])
**Description:**
Move left for a period of time.
**Parameters:**
##### `durationMS`
Type: Number
Duration of moving time in ms.
##### `callback`
Type: Function()
A function to execute when the movement is done.
#### DCDriver.moveRight(`durationMS`[, `callback`])
**Description:**
Move right for a period of time.
**Parameters:**
##### `durationMS`
Type: Number
Duration of moving time in ms.
##### `callback`
Type: Function()
A function to execute when the movement is done.
#### DCDriver.stop([`callback`])
Stop movement immediately.
**Parameters:**
##### `callback`
Type: Function()
A function to execute when the movement is stopped.
#### DCDriver.fire(`numberOfShot`[, `callback`])
Shoot for `numberOfShot` times consecutively.
**Parameters:**
##### `numberOfShot`
Type: Number
Number of shots
##### `callback`
Type: Function()
A function to execute when all the shooting is done (and when the target is utterly destroyed!).
#### DCDriver.park([`callback`])
Go back to a fixed default location (leftmost and bottommost position).
**Parameters:**
##### `callback`
Type: Function()
A function to execute when all the movement is done.
#### DCDriver.execute(`commands`[, `callback`])
**NOT STABLE** yet, will be improved.
Convenient method to specify a chain of commands
**Parameters:**
##### `commands`
Type: String
##### `callback`
Type: Function()
A function to execute when the chain of commands is done.
#### DCDriver.led(`commands`[, `callback`])
Activate the led on th device
**Parameters:**
##### `commands`
Type: String
##### `callback`
Type: Function()
A function to execute when done.