Data mismatch between GUI and Python (.1 uV board)

edited December 2015 in Software
Hi,
I have the faulty 32-bit HW that reportedly outputs smaller than 0.1 uV values on all channels, waiting for the replacement to arrive.
In the meantime, I set up all the software: GUI, Python, LSL, Matlab on Win 10 x64 and all seems to work fine.

I indeed can see that the GUI outputs <0.1 uV values on all channels.
But with Python, both with the print and LSL plugins, I get values different from <0.1 uV.
For example, from print plugin I get:
---------------------------------
ID: 111.000000
14.014543773477529, -25.391581701228823, -2.726912823547462, -2.3692849122625486, -4.269183190963649, -146.33687094889535, 89.92106794370031, -89.31757084340703
0.096, -0.006, 1.002
---------------------------------
---------------------------------
ID: 112.000000
14.215709473575291, -25.436285190139436, -3.3304099238407523, -1.5199186229608803, -2.7045610790921546, -146.2698157155294, 89.92106794370031, -89.33992258786233
0.0, 0.0, 0.0
---------------------------------
I think that these are indeed uV values, since in user.py the board object is created with scaled_output=True.

Please advise.

Thx,
David

Comments

  • BTW, here's how the data looks like when board is created with scaled_output=False:
    ---------------------------------
    ID: 143.000000
    638, -1142, -170, -6, -39, -6561, 4069, -4002
    0, 0, 0
    ---------------------------------
    This indeed looks like samples, but note that they are significantly different from 0.

    David

  • Something funky is going on with Python i/f. I tried using the test signals to connect the pins internally to known signals. There's an effect, but the values read are meaningless. For example, here's what I got with /test0 (all pins to GND):
    ---------------------------------
    ID: 198.000000
    20377.437219314244, 11817.00966560956, 14053.525215807584, 14152.744609444691, 17746.502786457873, 13260.686488233387, 9804.838574509451, 12867.385192797803
    0.0, 0.0, 0.0
    ---------------------------------
    And here's /test1 (all pins to Vcc):
    ---------------------------------
    ID: 170.000000
    11.064113505376996, -25.34687821231821, -11.064113505376996, -2.592802356815619, -2.905726779189918, -152.34949020737295, 88.40114932073944, -97.69947501414717
    0.0, 0.0, 0.0
    ---------------------------------

    Any ideas?
  • Using modified test_log.py script, here're the RAW hex values read from the serial for GND and DC test configurations.
    GND:
    a0|07|.0d.f2.1a.08.15.b4.09.9c.3c.09.b0.6a.0c.27.d0.09.0f.aa.06.b4.cd.08.d0.e3|.00.00.00.00.00.00|.c0|VAL

    DC:
    a0|0d|.00.01.e5.ff.fb.91.ff.fd.f3.ff.ff.89.ff.ff.75.ff.e4.c7.00.0f.79.ff.ee.b5|.04.30.fd.b0.1f.20|.c0|VAL

    Per SDK, every three bytes are a channel, with the 1st (left-most) byte being the MSB.
    Doesn't make too much sense to me.
    Ideas?
  • biomurphbiomurph Brooklyn, NY
    Is this the data you are getting with the faulty board? Or are you working with the replacement?
Sign In or Register to comment.