Avatar

Winslow_Strong

Winslow_Strong

Working on hacking meditation, both professionally (Palo Alto Neuroscience) and as a hobby (will open source some protocols and tools; pushing for a citizien science crowd effort).  

About

Username
Winslow_Strong
Joined
Visits
200
Last Active
Roles
Member

Comments

  • I've written a tutorial on the mods I did and uploaded my code here: https://github.com/WinslowStrong/OpenBCI_Wired_USB Happy to submit this as an official OBCI tutorial for the webpage.  How do I do that?
  • @yj,  I finally got around to testing your suggestion of explicitly changing the sample rate on the daisy in addition to mainboard.  Yes! It does seem necessary to also change the sample rate on the Daisy.  Otherwise channels 9-16 sample at th…
  • Thanks for the info, William.   So to see if I understand: Even though there are 4 Bias pins, they are all connected to each other within the 16 channel OBCI board.  So connecting an electrode from each of 4 subjects to a Bias pin will result in t…
  • @Jorch_Mata The daisy by default can only go at 125Hz due to it needing to send double the EEG data, and the data rate being bottlenecked.  As William says, we've worked around that by implementing a wired USB connection and increasing the sampling …
  • It's curious that only data transmitted TO the OBCI seems to be dropped at 460800, and never data received from it.  I say this based on issuing 'v' commands, and never finding that part of the startup message is received while part is dropped.  I w…
  • Thanks for all the ideas, William! I've been careful to match the port baud rates in Windows Device Manager, the Serial1.begin(baud) initializations, and the terminal connection (putty in my case).  So all 3 of those were changed to match at eac…
  • I'm having some reliability issues with the FT2232H's connection (EDIT: only when the baud is increased from 230400-->460800 (115200 works fine)).  Roughly 25% of commands sent to OBCI don't seem to go through; i.e. they don't produce any output.…
  • Yes, good point. Above, I wasn't trying with the isolator attached.  With it attached, going down to 8ms seems fine, but 4ms gets a few drops.
  • Wow, that was simple.  Thanks a lot, William.  That's another that would have taken me quite awhile to figure out on my own.  This board makes a big difference.  I tested 8 channels @1khz and had no buffer issues at 16ms or 1ms port latency.   Now…
  • Thanks for the education on USB, @wjcroft.  That helps me understand what is going on.   My first attempt at resolution is to get the FT2232H.  I want to see if its 4k buffer can push 16 channels to 500Hz or 1kHz.  I got this breakout from Numato:…
  • @yj, I plan to test the Daisy out very soon.  Will update.   @wjcroft, I'm having trouble avoiding dropped data with 8 channels at 1kHz, so obviouslly 16 channels would be problematic (although an FT2232H is on the way!).  I'd like to better under…
  • From having the wired USB working over Serial1, it just took adjusting the WREG calls to set the sample rate at whatever is desired.  The latency needed on the COM port increases as you increase the sample rate.  I've tested up to 1khz now, and 16ms…
  • Minor update - 4ms COM port latency works fine also.  10 minutes running without an overflow.
  • Hi again, William.  Just seeing your most recent posts now.  The first thing I did is set the latency to 3ms, and that drastically lowered the misses, but there were still a few.  Then I tried 8ms, and that seems to have solved it!  I NEVER would ha…
  • Thanks for the suggestions, William.  My COM port settings are as you describe.  I tried upping the baud to 460800, and everything is the same.  My jumpers from the FT232H to OBCI are about 5 inches.  I tried out 8 inch jumpers, and got a statistica…
  • Great suggestion!  I rewrote the relevant sendChannelData method as:   Serial1.write(0xA0);  // attempt to manually prepend the packet header   Serial1.write(sampleCounter); // 1 byte   ADS_writeChannelData();       // 24 bytes   ... ...  …
  • Wondering if @biomurph knows if circumventing the rfduino by using a USB wired connection over Serial1 should require any code modifications beyond replacing all "Serial0" with "Serial1" in OpenBCI_32bit.ino and the corresponding library files, of w…
  • @wjcroft, thanks for all the tips!  So I'm not sure what I changed, but it's not frozen anymore.  Re: The mapPps calls - Yes they appear to be redundant, and can be dropped.  They weren't causing a problem either though.  Re: the .ino file tha…
  • So I've finally been able to try this out.  Got the FT232H USB connection working as Serial1 after making Joel's mods to the chipkit files suggested here:  http://openbci.com/forum/index.php?p=/discussion/comment/3934/#Comment_3934 and I made m…
  • @yj, thanks for having a look.  Yes, even recording to SD, channels 9-16 are all 0 for all frequencies 250-2k.   I succeeded in creating a USB serial link from OBCI pins D11 and D12 and the UART "Serial1" capability of the board.  It works at 4608…
  • Hi @yj, Thanks so much for posting your code.  I started playing around with it today.  I noticed that my channels 9-16 of my daisy board are flat lines when I stream data with your code.  It's definitely not my hardware, because I get data from t…
  • Ok, thanks for bearing with me So my current understanding is that: * We don't expect a problem in changing the baud rate on FT232H's COM port.  That issue is confined to using the RFduino. * We can use the FT232H's COM port to do all IO, inclu…
  • @wjcroft So I'm still a bit unclear if we anticipate changing the baud from 115200 in this particular setup will cause problems with our USB COM connection running over the Tx/Rx pins.  Has this been successfully done by someone on the forum?  I'm w…
  • Thanks again for the reply, @wjcroft One point I continue to be confused about is the often-referred to serial bottleneck between the uC and RFduino.  I had surmised from earlier posts in this thread that if using the Rx/Tx pins, then that serial …
  • @wjcroft  I'm still waiting on my isolator and FT232H breakout, but want to make sure I understand before I get started.  Sorry if this is really basic, but I have no experience doing anything like this.   If I understand right, the connections sh…
  • @yj @wjcroft I had understood that the two ADSs were synchronized and sampling at 250 Hz.  What's still unclear to me is in YJ's example, whether the t=3 packet contains the avg of the t=1 and t=2 data points.  That runs counter to the literal wordi…
  • @yj Yes, so actually the 125 Hz is really downsampled w/linear interpolation from 250 Hz, which should be slightly better than a mere raw 125 Hz sampling.  However, as I understand it, that averaging procedure results in the ch1-8 vs 9-16 data that …
  • One other issue re:sample rate on the 16-channel system that just came to my attention is that the board is setup to alternate packet transmission between updating channels 1-8 and 9-16.  That info comes from: "we are sending data packet at the sa…
  • @biomurph did you succeed in a fix?  If so, how do we update our 16-channel systems with it?  If not, is it still on the agenda?
  • @yj : interested in gamma around 50 Hz, and possibly higher frequencies. 125 Hz sampling frequency is not really workable for characterizing the amplitude of 1s epochs of 50 Hz content.  We are doing exploratory analysis to characterize meditation s…