AJ's new Wifi Shield / beta testers signup

wjcroftwjcroft Mount Shasta, CA
edited April 2017 in Wifi Shield
The note below is from AJ Keller @pushtheworld, regarding the beta testing of the new shield. Great work AJ & Joel.

----

There are ten beta boards shipping out next Friday and people can sign up for beta here: https://docs.google.com/forms/d/e/1FAIpQLSfjMzITl3Z_bMxCZlXaUVHxj0vVZ6oXyk3G05epOMYWBOiAFA/viewform

A little about the board:
  • The board was made in partnership with Push The World and OpenBCI. The hardware and firmware were designed and implemented by Push The World and OpenBCI funded and advised the project.
  • The board will eventually work on the ganglion
  • Uses new 3.0.0 OpenBCI Cyton Firmware which allows for programmatic sample rate changing along with a couple other simplifications to the library.
  • The 3.0.0 OpenBCI Cyton code will still be 100% backwards compatible with v1.x.x and v2.x.x, i.e. by default the board will want to use the dongle and a user would never notice that the board could use a wifi shield. I did this to allow the wifi capable code to be flashed to boards when they leave the factory.
  • Push The World will provide and maintain a NodeJS connector/driver.
  • In a later hardware release, we will add an ADS1299 to the board and people can choose to buy the shield with a populated ADS1299. Allowing for a 24 channel configuration.

Comments

  • wjcroftwjcroft Mount Shasta, CA
    In terms of the 24 channel capability, it might make sense to have a single wifi shield with TWO ADS1299 chips. That way no separate daisy board would be needed. The wifi shield could be populated with zero, one or two ADS chips. Yeah, sounds difficult in terms of production and stocking. But may make the interconnect and stability of the board stack more solid.
  • @wjcroft now you have my head going :) if we could fit two ADS1299 on the shield, then.... 32 channels? 
  • wjcroftwjcroft Mount Shasta, CA
    AJ, hi.

    Well, what I was suggesting, is that if you are going to have a full size octagon shield board for Cyton, why not reduce the need for the smaller (somewhat awkwardly stabilized / mounted) current Daisy shield. The wifi shield could have zero, one or two ADS chips to produce (with mainboard 8 channels): 8, 16, or 24 channels total.

    With the full size octagon wifi shield, pc board spacers with through bolts could be used to make a very mechanically solid 2 board unit with all the channels / edge connectors needed for up to 24 channels.

    William


  • 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:

  • What is the maximum sample rate for 16 channels with this board? Is it two-way, so could I also send timing signals for synchronizing ERP experiment´s  stimuli?

    Jussi J

    PhD student in musicology and neuroscience, Uni Helsinki
Sign In or Register to comment.