v3.0.0
New Features
- Add wifi shield support.
- Simply add OpenBCI_Wifi_Master to your
DefaultBoard.inoand addwifi.loop()to your loop function. If you want to read from it checkout theDefaultBoard.inofor it's simple interface. - Send channel gains to wifi shield at start of stream
- takes ~4 seconds for the wifi shield to be reachable
- Simply add OpenBCI_Wifi_Master to your
- Add ability to turn external serial port
Serial1on through commands. - Change board types on the fly! No longer do you have to upload new code to the Cyton's Pic32 just to do an analog read. You can now read from analog or digital pins with the press send of a code!
/now sets the board mode, where:- BOARD_MODE_DEFAULT is
0 - BOARD_MODE_DEBUG is
1 - BOARD_MODE_ANALOG is
2 - BOARD_MODE_DIGITAL is
3
- BOARD_MODE_DEFAULT is
- Add loop function for internal timing operations related to power on reset for wifi shield, remove
loopto free up pins and such and remove wifi capability. - Add function to turn time stamps on
useTimeStamp(true), time stamps are disabled by default. Note the Wifi shield will use NTP time stamps. - Add wifi commands:
- OpenBCI Wifi Attach -
{ - OpenBCI Wifi Remove -
} - OpenBCI Wifi Status -
: - OpenBCI Wifi Reset -
;
- OpenBCI Wifi Attach -
- Variable sample rate in the format of ~(COMMAND). This works similar to the Channel Settings commands, however, there is no latching character. Changing the sample rate requires sending a
vor soft-reset to ensure all systems are correct. Power cycling the OpenBCI board will cause the sample rate to reset back to default of 250Hz. IMPORTANT! The Cyton cannot and will not stream data over 250SPS. Plug in the wifi shield to get speeds over 250SPS streaming. You may still write to an SD card though, the firmware will not send EEG data over the Bluetooth radios. Check out the new commands:- 0 = 16000 Hz
- 1 = 8000 Hz
- 2 = 4000 Hz
- 3 = 2000 Hz
- 4 = 1000 Hz
- 5 = 500 Hz
- 6 = 250 Hz
- ~ = Get current sample rate
- EXAMPLE
- First, user sends ~~
- returns
Sample rate is 250Hz$$$ - Then, user sends ~5
- returns Sample rate set to 500Hz$$$
Enhancements
hasDataSerial0andhasDataSerial1use new propertiesSerialInfoto determine if data should be received. Now safe to call every loop.
Breaking Changes
- Removed boolean
useAccelin support of new mode paradigm. To use the accel, do nothing, it's enabled by default, to not use the accel simply calluseAccel(false)and this library will automatically send the contents ofauxDataarray each packet. - Removed
OPENBCI_EOP_STND_ACCEL,OPENBCI_EOP_STND_RAW_AUX,OPENBCI_EOP_USER_DEFINED,OPENBCI_EOP_ACCEL_TIME_SET,OPENBCI_EOP_ACCEL_TIME_SYNCED,OPENBCI_EOP_RAW_AUX_TIME_SET, andOPENBCI_EOP_RAW_AUX_TIME_SYNCEDin place ofenumsupport replacement:PACKET_TYPE_ACCEL,PACKET_TYPE_RAW_AUX,PACKET_TYPE_USER_DEFINED,PACKET_TYPE_ACCEL_TIME_SET,PACKET_TYPE_ACCEL_TIME_SYNC,PACKET_TYPE_RAW_AUX_TIME_SET, andPACKET_TYPE_RAW_AUX_TIME_SYNC. - Removed
sniffModein place forcurBoardMode == OPENBCI_BOARD_MODE_DEBUG - Removed public
waitForNewChannelData() - Removed public
timeSyncedand privatesendTimeSyncUpPacket - Setting internal test signal now, when not streaming, returns a success message, with EOT
$$$
Beta5-6
New Features
- Send gains after connecting to Wifi shield
Breaking Changes
- Don't send streaming data over bluetooth when wifi is present and attached
Beta4
The overall goal was to clean the wifi code out of the library so it would not be needed when you are building a bare board.
Bug Fixes
- Fixed the
BoardWithAnalogSensor.ino,BoardWithDigitalRead.inoandBoardWithCustomData.inoexamples. - Board did not send serial data with allowed sample rates over bluetooth.
Breaking Changes
- Removed all wifi code and put into new library that must be included! The new library is a called OpenBCI_Wifi_Master_Library. It is simply included when wifi is wanted.
- Removed
.loop()function from library.
Files
- Add
BoardWithWifi.inoexample that shows a bare board with just wifi. No SD or ACCEL for example.
Beta3
Bug Fixes
- Fixes erroneous print out on seeking wifi overall
Serial0.
Beta2
Breaking Changes
- Setting internal test signal now, when not streaming, returns a success message, with EOT $$$
Beta1
- Initial Release
Downloads
v3.0.0
New Features
- Add wifi shield support
- Send channel gains to wifi shield at start of stream
- takes ~4 seconds for the wifi shield to be reachable
- Add ability to turn external serial port
Serial1on through commands. - Add ability to use ESP8266 through SPI port.
- Change board types on the fly! No longer do you have to upload new code to the Cyton's Pic32 just to do an analog read. You can now read from analog or digital pins with the press send of a code!
/now sets the board mode, where:- BOARD_MODE_DEFAULT is
0 - BOARD_MODE_DEBUG is
1 - BOARD_MODE_ANALOG is
2 - BOARD_MODE_DIGITAL is
3
- BOARD_MODE_DEFAULT is
- Add loop function for internal timing operations related to power on reset for wifi shield, remove
loopto free up pins and such and remove wifi capability. - Add function to turn time stamps on
useTimeStamp(true), time stamps are disabled by default. Note the Wifi shield will use NTP time stamps. - Add wifi commands:
- OpenBCI Wifi Attach -
{ - OpenBCI Wifi Remove -
} - OpenBCI Wifi Status -
:
- OpenBCI Wifi Attach -
- Variable sample rate in the format of ~(COMMAND). This works similar to the Channel Settings commands, however, there is no latching character. Changing the sample rate requires sending a
vor soft-reset to ensure all systems are correct. Power cycling the OpenBCI board will cause the sample rate to reset back to default of 250Hz. IMPORTANT! The Cyton cannot and will not stream data over 250SPS. Plug in the wifi shield to get speeds over 250SPS streaming. You may still write to an SD card though, the firmware will not send EEG data over the Bluetooth radios. Check out the new commands:- 0 = 16000 Hz
- 1 = 8000 Hz
- 2 = 4000 Hz
- 3 = 2000 Hz
- 4 = 1000 Hz
- 5 = 500 Hz
- 6 = 250 Hz
- ~ = Get current sample rate
- EXAMPLE
- First, user sends ~~
- returns
Sample rate is 250Hz$$$ - Then, user sends ~5
- returns Sample rate set to 500Hz$$$
Enhancements
hasDataSerial0andhasDataSerial1use new propertiesSerialInfoto determine if data should be received. Now safe to call every loop.
Breaking Changes
- Removed boolean
useAccelin support of new mode paradigm. To use the accel, do nothing, it's enabled by default, to not use the accel simply calluseAccel(false)and this library will automatically send the contents ofauxDataarray each packet. - Removed
OPENBCI_EOP_STND_ACCEL,OPENBCI_EOP_STND_RAW_AUX,OPENBCI_EOP_USER_DEFINED,OPENBCI_EOP_ACCEL_TIME_SET,OPENBCI_EOP_ACCEL_TIME_SYNCED,OPENBCI_EOP_RAW_AUX_TIME_SET, andOPENBCI_EOP_RAW_AUX_TIME_SYNCEDin place ofenumsupport replacement:PACKET_TYPE_ACCEL,PACKET_TYPE_RAW_AUX,PACKET_TYPE_USER_DEFINED,PACKET_TYPE_ACCEL_TIME_SET,PACKET_TYPE_ACCEL_TIME_SYNC,PACKET_TYPE_RAW_AUX_TIME_SET, andPACKET_TYPE_RAW_AUX_TIME_SYNC. - Removed
sniffModein place forcurBoardMode == OPENBCI_BOARD_MODE_DEBUG - Removed public
waitForNewChannelData() - Removed public
timeSyncedand privatesendTimeSyncUpPacket - Setting internal test signal now, when not streaming, returns a success message, with EOT
$$$
Downloads
v3.0.0
New Features
- Add wifi shield support
- Send channel gains to wifi shield at start of stream
- takes ~4 seconds for the wifi shield to be reachable
- Add ability to turn external serial port
Serial1on through commands. - Add ability to use ESP8266 through SPI port.
- Change board types on the fly! No longer do you have to upload new code to the Cyton's Pic32 just to do an analog read. You can now read from analog or digital pins with the press send of a code!
/now sets the board mode, where:- BOARD_MODE_DEFAULT is
0 - BOARD_MODE_DEBUG is
1 - BOARD_MODE_ANALOG is
2 - BOARD_MODE_DIGITAL is
3
- BOARD_MODE_DEFAULT is
- Add loop function for internal timing operations related to power on reset for wifi shield, remove
loopto free up pins and such and remove wifi capability. - Add function to turn time stamps on
useTimeStamp(true), time stamps are disabled by default. Note the Wifi shield will use NTP time stamps. - Add wifi commands:
- OpenBCI Wifi Attach -
{ - OpenBCI Wifi Remove -
} - OpenBCI Wifi Status -
:
- OpenBCI Wifi Attach -
Enhancements
hasDataSerial0andhasDataSerial1use new propertiesSerialInfoto determine if data should be received. Now safe to call every loop.
Breaking Changes
- Removed boolean
useAccelin support of new mode paradigm. To use the accel, do nothing, it's enabled by default, to not use the accel simply calluseAccel(false)and this library will automatically send the contents ofauxDataarray each packet. - Removed
OPENBCI_EOP_STND_ACCEL,OPENBCI_EOP_STND_RAW_AUX,OPENBCI_EOP_USER_DEFINED,OPENBCI_EOP_ACCEL_TIME_SET,OPENBCI_EOP_ACCEL_TIME_SYNCED,OPENBCI_EOP_RAW_AUX_TIME_SET, andOPENBCI_EOP_RAW_AUX_TIME_SYNCEDin place ofenumsupport replacement:PACKET_TYPE_ACCEL,PACKET_TYPE_RAW_AUX,PACKET_TYPE_USER_DEFINED,PACKET_TYPE_ACCEL_TIME_SET,PACKET_TYPE_ACCEL_TIME_SYNC,PACKET_TYPE_RAW_AUX_TIME_SET, andPACKET_TYPE_RAW_AUX_TIME_SYNC. - Removed
sniffModein place forcurBoardMode == OPENBCI_BOARD_MODE_DEBUG - Removed public
waitForNewChannelData() - Removed public
timeSyncedand privatesendTimeSyncUpPacket
Downloads
v3.0.0
New Features
- Add wifi shield support.
- Simply add OpenBCI_Wifi_Master to your
DefaultBoard.inoand addwifi.loop()to your loop function. If you want to read from it checkout theDefaultBoard.inofor it's simple interface. - Send channel gains to wifi shield at start of stream
- takes ~4 seconds for the wifi shield to be reachable
- Simply add OpenBCI_Wifi_Master to your
- Add ability to turn external serial port
Serial1on through commands. - Change board types on the fly! No longer do you have to upload new code to the Cyton's Pic32 just to do an analog read. You can now read from analog or digital pins with the press send of a code!
/now sets the board mode, where:- BOARD_MODE_DEFAULT is
0 - BOARD_MODE_DEBUG is
1 - BOARD_MODE_ANALOG is
2 - BOARD_MODE_DIGITAL is
3
- BOARD_MODE_DEFAULT is
- Add loop function for internal timing operations related to power on reset for wifi shield, remove
loopto free up pins and such and remove wifi capability. - Add function to turn time stamps on
useTimeStamp(true), time stamps are disabled by default. Note the Wifi shield will use NTP time stamps. - Add wifi commands:
- OpenBCI Wifi Attach -
{ - OpenBCI Wifi Remove -
} - OpenBCI Wifi Status -
: - OpenBCI Wifi Reset -
;
- OpenBCI Wifi Attach -
- Variable sample rate in the format of ~(COMMAND). This works similar to the Channel Settings commands, however, there is no latching character. Changing the sample rate requires sending a
vor soft-reset to ensure all systems are correct. Power cycling the OpenBCI board will cause the sample rate to reset back to default of 250Hz. IMPORTANT! The Cyton cannot and will not stream data over 250SPS. Plug in the wifi shield to get speeds over 250SPS streaming. You may still write to an SD card though, the firmware will not send EEG data over the Bluetooth radios. Check out the new commands:- 0 = 16000 Hz
- 1 = 8000 Hz
- 2 = 4000 Hz
- 3 = 2000 Hz
- 4 = 1000 Hz
- 5 = 500 Hz
- 6 = 250 Hz
- ~ = Get current sample rate
- EXAMPLE
- First, user sends ~~
- returns
Sample rate is 250Hz$$$ - Then, user sends ~5
- returns Sample rate set to 500Hz$$$
Enhancements
hasDataSerial0andhasDataSerial1use new propertiesSerialInfoto determine if data should be received. Now safe to call every loop.
Breaking Changes
- Removed boolean
useAccelin support of new mode paradigm. To use the accel, do nothing, it's enabled by default, to not use the accel simply calluseAccel(false)and this library will automatically send the contents ofauxDataarray each packet. - Removed
OPENBCI_EOP_STND_ACCEL,OPENBCI_EOP_STND_RAW_AUX,OPENBCI_EOP_USER_DEFINED,OPENBCI_EOP_ACCEL_TIME_SET,OPENBCI_EOP_ACCEL_TIME_SYNCED,OPENBCI_EOP_RAW_AUX_TIME_SET, andOPENBCI_EOP_RAW_AUX_TIME_SYNCEDin place ofenumsupport replacement:PACKET_TYPE_ACCEL,PACKET_TYPE_RAW_AUX,PACKET_TYPE_USER_DEFINED,PACKET_TYPE_ACCEL_TIME_SET,PACKET_TYPE_ACCEL_TIME_SYNC,PACKET_TYPE_RAW_AUX_TIME_SET, andPACKET_TYPE_RAW_AUX_TIME_SYNC. - Removed
sniffModein place forcurBoardMode == OPENBCI_BOARD_MODE_DEBUG - Removed public
waitForNewChannelData() - Removed public
timeSyncedand privatesendTimeSyncUpPacket - Setting internal test signal now, when not streaming, returns a success message, with EOT
$$$
Beta4
The overall goal was to clean the wifi code out of the library so it would not be needed when you are building a bare board.
Bug Fixes
- Fixed the
BoardWithAnalogSensor.ino,BoardWithDigitalRead.inoandBoardWithCustomData.inoexamples. - Board did not send serial data with allowed sample rates over bluetooth.
Breaking Changes
- Removed all wifi code and put into new library that must be included! The new library is a called OpenBCI_Wifi_Master_Library. It is simply included when wifi is wanted.
- Removed
.loop()function from library.
Files
- Add
BoardWithWifi.inoexample that shows a bare board with just wifi. No SD or ACCEL for example.
Beta3
Bug Fixes
- Fixes erroneous print out on seeking wifi overall
Serial0.
Beta2
Breaking Changes
- Setting internal test signal now, when not streaming, returns a success message, with EOT $$$
Beta1
- Initial Release
Downloads
v3.0.0
New Features
- Add wifi shield support
- Send channel gains to wifi shield at start of stream
- takes ~4 seconds for the wifi shield to be reachable
- Add ability to turn external serial port
Serial1on through commands. - Add ability to use ESP8266 through SPI port.
- Change board types on the fly! No longer do you have to upload new code to the Cyton's Pic32 just to do an analog read. You can now read from analog or digital pins with the press send of a code!
/now sets the board mode, where:- BOARD_MODE_DEFAULT is
0 - BOARD_MODE_DEBUG is
1 - BOARD_MODE_ANALOG is
2 - BOARD_MODE_DIGITAL is
3
- BOARD_MODE_DEFAULT is
- Add loop function for internal timing operations related to power on reset for wifi shield, remove
loopto free up pins and such and remove wifi capability. - Add function to turn time stamps on
useTimeStamp(true), time stamps are disabled by default. Note the Wifi shield will use NTP time stamps. - Add wifi commands:
- OpenBCI Wifi Attach -
{ - OpenBCI Wifi Remove -
} - OpenBCI Wifi Status -
: - OpenBCI Wifi Reset -
;
- OpenBCI Wifi Attach -
- Variable sample rate in the format of ~(COMMAND). This works similar to the Channel Settings commands, however, there is no latching character. Changing the sample rate requires sending a
vor soft-reset to ensure all systems are correct. Power cycling the OpenBCI board will cause the sample rate to reset back to default of 250Hz. IMPORTANT! The Cyton cannot and will not stream data over 250SPS. Plug in the wifi shield to get speeds over 250SPS streaming. You may still write to an SD card though, the firmware will not send EEG data over the Bluetooth radios. Check out the new commands:- 0 = 16000 Hz
- 1 = 8000 Hz
- 2 = 4000 Hz
- 3 = 2000 Hz
- 4 = 1000 Hz
- 5 = 500 Hz
- 6 = 250 Hz
- ~ = Get current sample rate
- EXAMPLE
- First, user sends ~~
- returns
Sample rate is 250Hz$$$ - Then, user sends ~5
- returns Sample rate set to 500Hz$$$
Enhancements
hasDataSerial0andhasDataSerial1use new propertiesSerialInfoto determine if data should be received. Now safe to call every loop.
Breaking Changes
- Removed boolean
useAccelin support of new mode paradigm. To use the accel, do nothing, it's enabled by default, to not use the accel simply calluseAccel(false)and this library will automatically send the contents ofauxDataarray each packet. - Removed
OPENBCI_EOP_STND_ACCEL,OPENBCI_EOP_STND_RAW_AUX,OPENBCI_EOP_USER_DEFINED,OPENBCI_EOP_ACCEL_TIME_SET,OPENBCI_EOP_ACCEL_TIME_SYNCED,OPENBCI_EOP_RAW_AUX_TIME_SET, andOPENBCI_EOP_RAW_AUX_TIME_SYNCEDin place ofenumsupport replacement:PACKET_TYPE_ACCEL,PACKET_TYPE_RAW_AUX,PACKET_TYPE_USER_DEFINED,PACKET_TYPE_ACCEL_TIME_SET,PACKET_TYPE_ACCEL_TIME_SYNC,PACKET_TYPE_RAW_AUX_TIME_SET, andPACKET_TYPE_RAW_AUX_TIME_SYNC. - Removed
sniffModein place forcurBoardMode == OPENBCI_BOARD_MODE_DEBUG - Removed public
waitForNewChannelData() - Removed public
timeSyncedand privatesendTimeSyncUpPacket - Setting internal test signal now, when not streaming, returns a success message, with EOT
$$$
Beta3
- Fixes erroneous print out on seeking wifi overall
Serial0
Downloads
v2.0.1
Bug Fixes
- Bug where softReset message could be scrambled on daisy board.
Downloads
Please read about the full release and breaking changes in the upgrade guide
Downloads
The original firmware for the OpenBCI 32bit 8 and 16 channel boards up till mid 2016.