Skip to content

Commit 16d276b

Browse files
author
AJ Keller
authored
Merge pull request #1 from aj-ptw/master
v0.0.2
2 parents 9f85647 + 34dfa90 commit 16d276b

8 files changed

+2273
-1625
lines changed

Diff for: changelog.md

+12
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,15 @@
1+
# 0.0.2
2+
3+
### Breaking Changes
4+
5+
* Renamed `Sample` to `Utilities` in `index.js`
6+
* Renamed openBCIUtilities.js to openBCIUtilities.js
7+
* Renamed openBCIUtilities-test.js to openBCIUtilities-test.js
8+
9+
### New Features
10+
11+
* Added a function in the sample module that parses a raw buffer of OpenBCI data, extracts raw data packets and returns the buffer with just the raw data packets removed. Allowing the user to process other data that is not a raw data.
12+
113
# 0.0.1
214

315
Initial release

Diff for: index.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
module.exports.Constants = require('./openBCIConstants');
22
module.exports.Debug = require('./openBCIDebug');
3-
module.exports.Sample = require('./openBCISample');
3+
module.exports.Utilities = require('./openBCIUtilities');

Diff for: openBCIConstants.js

+29-29
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
*/
66
'use strict';
77
const _ = require('lodash');
8+
const Buffer = require('safe-buffer').Buffer;
89

910
/** Turning channels off */
1011
const obciChannelOff1 = '1';
@@ -556,7 +557,7 @@ module.exports = {
556557
resolve(obciChannelOff16);
557558
break;
558559
default:
559-
reject('Error [commandChannelOff]: Invalid Channel Number');
560+
reject(Error('Error [commandChannelOff]: Invalid Channel Number'));
560561
break;
561562
}
562563
});
@@ -630,7 +631,7 @@ module.exports = {
630631
resolve(obciChannelOn16);
631632
break;
632633
default:
633-
reject('Error [commandChannelOn]: Invalid Channel Number');
634+
reject(Error('Error [commandChannelOn]: Invalid Channel Number'));
634635
break;
635636
}
636637
});
@@ -667,7 +668,7 @@ module.exports = {
667668
resolve(obciChannelDefaultAllSet);
668669
break;
669670
default:
670-
reject('Invalid selection! Check your spelling.');
671+
reject(Error('Invalid selection! Check your spelling.'));
671672
break;
672673
}
673674
});
@@ -806,9 +807,8 @@ module.exports = {
806807
resolve(obciSDLogForSec14);
807808
break;
808809
default:
809-
reject(new Error(TypeError));
810+
reject(Error(TypeError));
810811
break;
811-
812812
}
813813
});
814814
},
@@ -856,7 +856,7 @@ module.exports = {
856856
resolve(new Buffer(obciMiscQueryRegisterSettingsChannel8));
857857
break;
858858
default:
859-
reject('Invalid channel number');
859+
reject(Error('Invalid channel number'));
860860
break;
861861
}
862862
});
@@ -1203,13 +1203,13 @@ function channelSetter (channelNumber, powerDown, gain, inputType, bias, srb2, s
12031203

12041204
return new Promise(function (resolve, reject) {
12051205
// Validate the input
1206-
if (!isNumber(channelNumber)) reject("channelNumber must be of type 'number' ");
1207-
if (!isBoolean(powerDown)) reject("powerDown must be of type 'boolean' ");
1208-
if (!isNumber(gain)) reject("gain must be of type 'number' ");
1209-
if (!isString(inputType)) reject("inputType must be of type 'string' ");
1210-
if (!isBoolean(bias)) reject("bias must be of type 'boolean' ");
1211-
if (!isBoolean(srb2)) reject("srb1 must be of type 'boolean' ");
1212-
if (!isBoolean(srb1)) reject("srb2 must be of type 'boolean' ");
1206+
if (!isNumber(channelNumber)) reject(Error("channelNumber must be of type 'number' "));
1207+
if (!isBoolean(powerDown)) reject(Error("powerDown must be of type 'boolean' "));
1208+
if (!isNumber(gain)) reject(Error("gain must be of type 'number' "));
1209+
if (!isString(inputType)) reject(Error("inputType must be of type 'string' "));
1210+
if (!isBoolean(bias)) reject(Error("bias must be of type 'boolean' "));
1211+
if (!isBoolean(srb2)) reject(Error("srb1 must be of type 'boolean' "));
1212+
if (!isBoolean(srb1)) reject(Error("srb2 must be of type 'boolean' "));
12131213

12141214
// Set Channel Number
12151215
var p1 = commandChannelForCmd(channelNumber)
@@ -1276,9 +1276,9 @@ function impedanceSetter (channelNumber, pInputApplied, nInputApplied) {
12761276
cmdPInputApplied;
12771277
return new Promise((resolve, reject) => {
12781278
// validate inputs
1279-
if (!isNumber(channelNumber)) reject("channelNumber must be of type 'number' ");
1280-
if (!isBoolean(pInputApplied)) reject("pInputApplied must be of type 'boolean' ");
1281-
if (!isBoolean(nInputApplied)) reject("nInputApplied must be of type 'boolean' ");
1279+
if (!isNumber(channelNumber)) reject(Error("channelNumber must be of type 'number' "));
1280+
if (!isBoolean(pInputApplied)) reject(Error("pInputApplied must be of type 'boolean' "));
1281+
if (!isBoolean(nInputApplied)) reject(Error("nInputApplied must be of type 'boolean' "));
12821282

12831283
// Set pInputApplied
12841284
cmdPInputApplied = pInputApplied ? obciChannelImpedanceTestSignalApplied : obciChannelImpedanceTestSignalAppliedNot;
@@ -1310,9 +1310,9 @@ function impedanceSetter (channelNumber, pInputApplied, nInputApplied) {
13101310
function sampleRateSetter (boardType, sampleRate) {
13111311
return new Promise((resolve, reject) => {
13121312
// validate inputs
1313-
if (!isString(boardType)) return reject("board type must be of type 'string' ");
1313+
if (!isString(boardType)) return reject(Error("board type must be of type 'string' "));
13141314

1315-
if (!isNumber(sampleRate)) return reject("sampleRate must be of type 'number' ");
1315+
if (!isNumber(sampleRate)) return reject(Error("sampleRate must be of type 'number' "));
13161316

13171317
sampleRate = Math.floor(sampleRate);
13181318

@@ -1322,7 +1322,7 @@ function sampleRateSetter (boardType, sampleRate) {
13221322
} else if (boardType === obciBoardGanglion) {
13231323
func = commandSampleRateForCmdGanglion;
13241324
} else {
1325-
return reject(`boardType must be either ${obciBoardCyton} or ${obciBoardGanglion}`);
1325+
return reject(Error(`boardType must be either ${obciBoardCyton} or ${obciBoardGanglion}`));
13261326
}
13271327

13281328
// Set Channel Number
@@ -1347,7 +1347,7 @@ function sampleRateSetter (boardType, sampleRate) {
13471347
function boardModeSetter (boardMode) {
13481348
return new Promise((resolve, reject) => {
13491349
// validate inputs
1350-
if (!isString(boardMode)) return reject("board mode must be of type 'string' ");
1350+
if (!isString(boardMode)) return reject(Error("board mode must be of type 'string' "));
13511351
// Set Channel Number
13521352
commandBoardModeForMode(boardMode).then(command => {
13531353
var outputArray = [
@@ -1404,7 +1404,7 @@ function commandForADCString (adcString) {
14041404
resolve(obciChannelCmdADCBiasDRN);
14051405
break;
14061406
default:
1407-
reject('Invalid ADC string');
1407+
reject(Error('Invalid ADC string'));
14081408
break;
14091409
}
14101410
});
@@ -1435,7 +1435,7 @@ function commandForGain (gainSetting) {
14351435
resolve(obciChannelCmdGain24);
14361436
break;
14371437
default:
1438-
reject('Invalid gain setting of ' + gainSetting + ' tisk tisk, gain must be (1,2,4,6,8,12,24)');
1438+
reject(Error('Invalid gain setting of ' + gainSetting + ' tisk tisk, gain must be (1,2,4,6,8,12,24)'));
14391439
break;
14401440
}
14411441
});
@@ -1493,7 +1493,7 @@ function commandChannelForCmd (channelNumber) {
14931493
resolve(obciChannelCmdChannel16);
14941494
break;
14951495
default:
1496-
reject('Invalid channel number');
1496+
reject(Error('Invalid channel number'));
14971497
break;
14981498
}
14991499
});
@@ -1540,7 +1540,7 @@ function commandSampleRateForCmdCyton (sampleRate) {
15401540
resolve(obciSampleRateCmdCyton250);
15411541
break;
15421542
default:
1543-
reject('Invalid sample rate');
1543+
reject(Error('Invalid sample rate'));
15441544
break;
15451545
}
15461546
});
@@ -1579,7 +1579,7 @@ function commandSampleRateForCmdGanglion (sampleRate) {
15791579
resolve(obciSampleRateCmdGang200);
15801580
break;
15811581
default:
1582-
reject('Invalid sample rate');
1582+
reject(Error('Invalid sample rate'));
15831583
break;
15841584
}
15851585
});
@@ -1606,7 +1606,7 @@ function commandBoardModeForMode (boardMode) {
16061606
resolve(obciBoardModeCmdDigital);
16071607
break;
16081608
default:
1609-
reject('Invalid sample rate');
1609+
reject(Error('Invalid sample rate'));
16101610
break;
16111611
}
16121612
});
@@ -1624,7 +1624,7 @@ function getPeripheralLocalNames (pArray) {
16241624
if (list.length > 0) {
16251625
return resolve(list);
16261626
} else {
1627-
return reject(`No peripherals discovered with prefix equal to ${obciGanglionPrefix}`);
1627+
return reject(Error(`No peripherals discovered with prefix equal to ${obciGanglionPrefix}`));
16281628
}
16291629
});
16301630
}
@@ -1636,15 +1636,15 @@ function getPeripheralLocalNames (pArray) {
16361636
*/
16371637
function getPeripheralWithLocalName (pArray, localName) {
16381638
return new Promise((resolve, reject) => {
1639-
if (typeof (pArray) !== 'object') return reject(`pArray must be of type Object`);
1639+
if (typeof (pArray) !== 'object') return reject(Error(`pArray must be of type Object`));
16401640
_.forEach(pArray, (perif) => {
16411641
if (perif.advertisement.hasOwnProperty('localName')) {
16421642
if (perif.advertisement.localName === localName) {
16431643
return resolve(perif);
16441644
}
16451645
}
16461646
});
1647-
return reject(`No peripheral found with localName: ${localName}`);
1647+
return reject(Error(`No peripheral found with localName: ${localName}`));
16481648
});
16491649
}
16501650

Diff for: openBCIDebug.js

+1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
var Buffer = require('safe-buffer').Buffer;
12
module.exports = {
23
debugBytes
34
};

0 commit comments

Comments
 (0)