Getting started with the OpenBCI Wifi Shield - By Push The World

For when you first get your device check out Wifi Getting Started Guide Here

You will need to update your Cyton firmware to 3.x.x on the Pic32  If you are running firmware version 2.x.x on the Pic32 and version 2.0.0 on the RFDuinos, have no fear all you need to do is over the air program the Cyton. If you are running the old Pic32 1.0.0 firmware, you need to update both RFDuinos and you should checkout the upgrade guide for help. If you get nervous or just want to make sure youre doing it right, don’t hesitate to reach directly out to me! I will call, Skype, text or whatever you through any problems you encounter, together there is nothing we can’t fix!

I am beginning to really dive into how the OpenBCI Wifi Shield server works on new doc too, it should help if you want to write your own driver and not use the Node.js

Lastly I added a hardware set of docs, one that goes over the specs, schematics and pcb design and the another that goes over programming the Wifi Shield. Over the air programming should work for the shield… still have not quite gotten it working, if you have experience with OTA and ESP8266, jump to it's issue on GitHub.

I will continue to add more to the server example and please please if you have any ideas on how to reduce the complexity of connections please reach out to us on this issue especially related to device discovery!

I still need to add docs about changing the sample rate, but we are well on our way! 

Some of these links may become outdated as time passes and due to the nature of this forum, i can't update them after an hour :) Give me a shout with a mention (@) and I can post the right link in a reply.

Comments

  • Hey all,

    Sorry for the delay! I have been working so hard on the wifi shield that I have not been on the forum!

    We have 200 OpenBCI Wifi Shields in production right now! We are about two weeks into production so we should have boards back in two weeks. 

    The OpenBCI Wifi shield features will be locked down on June 30th. You can see what I'm working on here: https://github.com/OpenBCI/OpenBCI_WIFI/issues

    I've really been having a lot of fun with this project! Working with marion and cloudbrain to have direct to cloudbrain capability. That's going over the MQTT protocol

    I'm all about these http requests to get information from the OpenBCI board! You can see all the specs for the HTTP REST Api Server that runs on the OpenBCI Wifi Shield https://app.swaggerhub.com/apis/pushtheworld/openbci-wifi-server/1.1.0

    You can GET information like the number of channels (4, 8, 16), connection health status for TCP and MQTT protocols, if you're like me and just want to stream you can now call from any web browser, phone, computer, pretty much anything with an internet connection, to start streaming.

    You can POST information such as board commands like "z011Z" to run impedance tests on channel 1, or POST to establish a new MQTT or TCP (and soon WEBSOCKETS!!) connection and start streaming data.

    We are getting great sample rates with the RAW mode, where the wifi shield sends raw byte stream data over TCP in the same 33byte format as the standard OpenBCI stream protocol for the Cyton. We were able to hook the wifi shield in raw mode up to our node_js driver in about 30 minutes, just by calling the processBytes call from the tcp on data event! It was awesome! In JSON, which is a still work in progress mode we are working through the final implementations and test results will be out soon. In JSON format, we follow LSL stream protocols, for example {"timestamp":12349292929, "data":[992922.3, 392923.0, 29393.0, 233294.0]} it's really fun! For this one we wrote a patch into the Cyton/Ganglion source code to send the channel gains to the Wifi shield right before we started streaming. Using our well-tested protocols for message passing between micro controllers, we were able to start converting the channel data to doubles with the correct scale factors, always. The timestamps come from NTP, or the Network Time Protocol. We are working on more validation but we are optimistic we will be able to get NTP with beyond acceptable precision. 

    The features are really coming together nice! There are a couple more I'll talk about soon! Expect shields soon! Will be on sale for less than $150 for sure! Ok I'm getting back to work! Time to write tests!

    See the code:

Sign In or Register to comment.