Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

analog sensor read crashes spark core #23

Closed
michaeldewayneharris opened this issue Jun 10, 2014 · 68 comments
Closed

analog sensor read crashes spark core #23

michaeldewayneharris opened this issue Jun 10, 2014 · 68 comments

Comments

@michaeldewayneharris
Copy link

I discovered a bug that is related to voodoospark when using cylonjs. I believe this is a problem with voodoospark and not cylonjs.

if you build this circuit http://docs.spark.io/assets/images/breadboard-temp-sensor.jpg and run this code http://pastebin.com/9acm0AjY.

The default tinker firmware will run the application fine.

if you update to voodoospark firmware the sparkcore will not return proper values for the temperature reading, and shortly red light the core and it will crash the hardware and restart ending the application.

@rwaldron
Copy link
Collaborator

Thanks for the report, I will build this circuit and try to repro :)

@rwaldron
Copy link
Collaborator

This was a massive bug. You deserve an ice-cream or a beer for this report.

@voodootikigod
Copy link
Owner

Will buy the beer!

Chris Williams

@voodootikigod http://twitter.com/voodootikigod | GitHub
http://github.com/voodootikigod

The things I make that you should check out:
SaferAging http://www.saferaging.com/ | JSConf http://jsconf.com/ |
RobotsConf http://robotsconf.com/ | RobotsWeekly
http://robotsweekly.com/

Help me end the negativity on the internet, share this
http://jsconf.eu/2011/an_end_to_negativity.html.

On Tue, Jun 10, 2014 at 3:56 PM, Rick Waldron [email protected]
wrote:

This was a massive bug. You deserve an ice-cream or a beer for this report.


Reply to this email directly or view it on GitHub
#23 (comment)
.

@rwaldron
Copy link
Collaborator

@michaeldewayneharris
Copy link
Author

No problem happy to help. I'll look forward to that beer at the next jsconf :)

@Resseguie
Copy link
Collaborator

@rwaldron Working on it now.

I'm new to Cylon.js. What is the reference to require("./connection") in that sample code? Can I just set up the connection as in their example here?
http://cylonjs.com/documentation/examples/spark/js/voodooblink/

@Resseguie
Copy link
Collaborator

I loaded the voodoospark version from your buffer-cache branch.

Here's what I tested with:
https://gist.github.com/Resseguie/1a834419d26d8545e7ea

And I get:

I, [2014-06-11T02:06:44.152Z]  INFO -- : Initializing connections...
I, [2014-06-11T02:06:44.162Z]  INFO -- : Initializing connection 'voodoospark'...
D, [2014-06-11T02:06:44.163Z] DEBUG -- : Loading adaptor 'voodoospark'
D, [2014-06-11T02:06:44.328Z] DEBUG -- : Registering Spark adaptor for Robot 67322
D, [2014-06-11T02:06:44.328Z] DEBUG -- : Registering GPIO AnalogSensor driver for Robot 67322
D, [2014-06-11T02:06:44.333Z] DEBUG -- : Registering GPIO Button driver for Robot 67322
D, [2014-06-11T02:06:44.333Z] DEBUG -- : Registering GPIO ContinuousServo driver for Robot 67322
D, [2014-06-11T02:06:44.333Z] DEBUG -- : Registering GPIO LED driver for Robot 67322
D, [2014-06-11T02:06:44.333Z] DEBUG -- : Registering GPIO MakeyButton driver for Robot 67322
D, [2014-06-11T02:06:44.333Z] DEBUG -- : Registering GPIO Maxbotix driver for Robot 67322
D, [2014-06-11T02:06:44.333Z] DEBUG -- : Registering GPIO Motor driver for Robot 67322
D, [2014-06-11T02:06:44.333Z] DEBUG -- : Registering GPIO Servo driver for Robot 67322
D, [2014-06-11T02:06:44.333Z] DEBUG -- : Registering GPIO IR Range Sensor driver for Robot 67322
D, [2014-06-11T02:06:44.333Z] DEBUG -- : Registering GPIO DirectPin Driver for Robot 67322
I, [2014-06-11T02:06:44.333Z]  INFO -- : Initializing devices...
I, [2014-06-11T02:06:44.333Z]  INFO -- : Initializing device 'led'...
D, [2014-06-11T02:06:44.333Z] DEBUG -- : Loading driver 'led'
I, [2014-06-11T02:06:44.334Z]  INFO -- : Initializing device 'sensor'...
D, [2014-06-11T02:06:44.334Z] DEBUG -- : Loading driver 'analogSensor'
I, [2014-06-11T02:06:44.334Z]  INFO -- : Starting connections...
I, [2014-06-11T02:06:44.334Z]  INFO -- : Connecting to voodoospark
I, [2014-06-11T02:06:44.807Z]  INFO -- : Starting devices...
I, [2014-06-11T02:06:44.808Z]  INFO -- : Starting device led on pin D7
I, [2014-06-11T02:06:44.808Z]  INFO -- : Driver led started
I, [2014-06-11T02:06:44.808Z]  INFO -- : Starting device sensor on pin A7
I, [2014-06-11T02:06:44.809Z]  INFO -- : Driver analogSensor started
I, [2014-06-11T02:06:44.809Z]  INFO -- : Working...
-32 celsius or -26 fahrenheit
-32 celsius or -26 fahrenheit
...
-32 celsius or -26 fahrenheit
-32 celsius or -26 fahrenheit
-32 celsius or -26 fahrenheit
-32 celsius or -26 fahrenheit

events.js:72
        throw er; // Unhandled 'error' event
              ^
Error: read ECONNRESET
    at errnoException (net.js:904:11)
    at TCP.onread (net.js:558:19)

Behaves just as described by @m4strmind. Invalid temp readings, then after a while the Spark crashes and reboots.

@voodootikigod
Copy link
Owner

When it crashes does the LED turn red flashing?

Chris Williams

@voodootikigod http://twitter.com/voodootikigod | GitHub
http://github.com/voodootikigod

The things I make that you should check out:
SaferAging http://www.saferaging.com/ | JSConf http://jsconf.com/ |
RobotsConf http://robotsconf.com/ | RobotsWeekly
http://robotsweekly.com/

Help me end the negativity on the internet, share this
http://jsconf.eu/2011/an_end_to_negativity.html.

On Tue, Jun 10, 2014 at 10:13 PM, David Resseguie [email protected]
wrote:

I loaded the voodoospark version from your buffer-cache branch.

Here's what I tested with:
https://gist.github.com/Resseguie/1a834419d26d8545e7ea

And I get:

I, [2014-06-11T02:06:44.152Z] INFO -- : Initializing connections...
I, [2014-06-11T02:06:44.162Z] INFO -- : Initializing connection 'voodoospark'...
D, [2014-06-11T02:06:44.163Z] DEBUG -- : Loading adaptor 'voodoospark'
D, [2014-06-11T02:06:44.328Z] DEBUG -- : Registering Spark adaptor for Robot 67322
D, [2014-06-11T02:06:44.328Z] DEBUG -- : Registering GPIO AnalogSensor driver for Robot 67322
D, [2014-06-11T02:06:44.333Z] DEBUG -- : Registering GPIO Button driver for Robot 67322
D, [2014-06-11T02:06:44.333Z] DEBUG -- : Registering GPIO ContinuousServo driver for Robot 67322
D, [2014-06-11T02:06:44.333Z] DEBUG -- : Registering GPIO LED driver for Robot 67322
D, [2014-06-11T02:06:44.333Z] DEBUG -- : Registering GPIO MakeyButton driver for Robot 67322
D, [2014-06-11T02:06:44.333Z] DEBUG -- : Registering GPIO Maxbotix driver for Robot 67322
D, [2014-06-11T02:06:44.333Z] DEBUG -- : Registering GPIO Motor driver for Robot 67322
D, [2014-06-11T02:06:44.333Z] DEBUG -- : Registering GPIO Servo driver for Robot 67322
D, [2014-06-11T02:06:44.333Z] DEBUG -- : Registering GPIO IR Range Sensor driver for Robot 67322
D, [2014-06-11T02:06:44.333Z] DEBUG -- : Registering GPIO DirectPin Driver for Robot 67322
I, [2014-06-11T02:06:44.333Z] INFO -- : Initializing devices...
I, [2014-06-11T02:06:44.333Z] INFO -- : Initializing device 'led'...
D, [2014-06-11T02:06:44.333Z] DEBUG -- : Loading driver 'led'
I, [2014-06-11T02:06:44.334Z] INFO -- : Initializing device 'sensor'...
D, [2014-06-11T02:06:44.334Z] DEBUG -- : Loading driver 'analogSensor'
I, [2014-06-11T02:06:44.334Z] INFO -- : Starting connections...
I, [2014-06-11T02:06:44.334Z] INFO -- : Connecting to voodoospark
I, [2014-06-11T02:06:44.807Z] INFO -- : Starting devices...
I, [2014-06-11T02:06:44.808Z] INFO -- : Starting device led on pin D7
I, [2014-06-11T02:06:44.808Z] INFO -- : Driver led started
I, [2014-06-11T02:06:44.808Z] INFO -- : Starting device sensor on pin A7
I, [2014-06-11T02:06:44.809Z] INFO -- : Driver analogSensor started
I, [2014-06-11T02:06:44.809Z] INFO -- : Working...
-32 celsius or -26 fahrenheit
-32 celsius or -26 fahrenheit
...
-32 celsius or -26 fahrenheit
-32 celsius or -26 fahrenheit
-32 celsius or -26 fahrenheit
-32 celsius or -26 fahrenheit

events.js:72
throw er; // Unhandled 'error' event
^
Error: read ECONNRESET
at errnoException (net.js:904:11)
at TCP.onread (net.js:558:19)

Behaves just as described by @m4strmind https://github.com/m4strmind.
Invalid temp readings, then after a while the Spark crashes and reboots.


Reply to this email directly or view it on GitHub
#23 (comment)
.

@Resseguie
Copy link
Collaborator

@voodootikigod yep

@voodootikigod
Copy link
Owner

like a dot dot dot dash dash dash dot dot dot (SOS)?

Chris Williams

@voodootikigod http://twitter.com/voodootikigod | GitHub
http://github.com/voodootikigod

The things I make that you should check out:
SaferAging http://www.saferaging.com/ | JSConf http://jsconf.com/ |
RobotsConf http://robotsconf.com/ | RobotsWeekly
http://robotsweekly.com/

Help me end the negativity on the internet, share this
http://jsconf.eu/2011/an_end_to_negativity.html.

On Tue, Jun 10, 2014 at 10:22 PM, David Resseguie [email protected]
wrote:

@voodootikigod https://github.com/voodootikigod yep


Reply to this email directly or view it on GitHub
#23 (comment)
.

@Resseguie
Copy link
Collaborator

Yes, looks like SOS repeated two times. Video uploading to YouTube presently. I'll post link when it's ready.

@voodootikigod
Copy link
Owner

Means it is out of memory... I can track it front here (assuming I can find
the parts.... and time)

Chris Williams

@voodootikigod http://twitter.com/voodootikigod | GitHub
http://github.com/voodootikigod

The things I make that you should check out:
SaferAging http://www.saferaging.com/ | JSConf http://jsconf.com/ |
RobotsConf http://robotsconf.com/ | RobotsWeekly
http://robotsweekly.com/

Help me end the negativity on the internet, share this
http://jsconf.eu/2011/an_end_to_negativity.html.

On Tue, Jun 10, 2014 at 10:32 PM, David Resseguie [email protected]
wrote:

Yes, looks like SOS repeated two times. Video uploading to YouTube
presently. I'll post link when it's ready.


Reply to this email directly or view it on GitHub
#23 (comment)
.

@Resseguie
Copy link
Collaborator

For completeness sake, here is essentially the same thing using spark-io instead of cylon.js and it also runs out of memory (SOS red flash) eventually.
https://gist.github.com/Resseguie/3942facab36fd3cc6ab1

@Resseguie
Copy link
Collaborator

Sounds like it's probably not needed at this point, but since I promised, here is a video of the crash running the cylon.js program:
https://www.youtube.com/watch?v=ie0u7eEXd-o

@voodootikigod
Copy link
Owner

Yup memory issue. Will clear.

On Tuesday, June 10, 2014, David Resseguie [email protected] wrote:

Sounds like it's probably not needed at this point, but since I promised,
here is a video of the crash running the cylon.js program:
Voodoospark https://www.youtube.com/watch?v=ie0u7eEXd-o


Reply to this email directly or view it on GitHub
#23 (comment)
.

Chris Williams

@voodootikigod http://twitter.com/voodootikigod | GitHub
http://github.com/voodootikigod

The things I make that you should check out:
SaferAging http://www.saferaging.com/ | JSConf http://jsconf.com/ |
RobotsConf http://robotsconf.com/ | RobotsWeekly
http://robotsweekly.com/

Help me end the negativity on the internet, share this
http://jsconf.eu/2011/an_end_to_negativity.html.

@Resseguie
Copy link
Collaborator

Note, I had copied that spark-io example straight from the johnny-five examples. But it assumed 5V instead of the 3.3V so the calculated temps were wrong. I've updated the spark-io gist to calculate the correct temperature and that seems to work fine now. (Still have the memory issue, of course.)
https://gist.github.com/Resseguie/3942facab36fd3cc6ab1

@m4strmind You'll want to note that I made the same temperature calculation adjustments to the cylon.js gist as well and I'm now getting the correct temperature with it too:
https://gist.github.com/Resseguie/1a834419d26d8545e7ea

@rwaldron Once the memory issue is fixed, I'll do a PR to put the spark-io above example into the repo.

@rwaldron
Copy link
Collaborator

@Resseguie cylon isn't relevant here, I didn't even bother with it since the same issue was reproducible using just spark-io.

@voodootikigod I'm already knee deep in this... Most of the issues with memory are supposed to be resolved with a new core-firmware release this week

@rwaldron
Copy link
Collaborator

This buffer caching branch is a necessary evolution as voodoospark was previously losing data and missing actions as a result.

@voodootikigod
Copy link
Owner

@rwaldron should be available in irc today, if you need/want help just ping
me.

Chris Williams

@voodootikigod http://twitter.com/voodootikigod | GitHub
http://github.com/voodootikigod

The things I make that you should check out:
SaferAging http://www.saferaging.com/ | JSConf http://jsconf.com/ |
RobotsConf http://robotsconf.com/ | RobotsWeekly
http://robotsweekly.com/

Help me end the negativity on the internet, share this
http://jsconf.eu/2011/an_end_to_negativity.html.

On Wed, Jun 11, 2014 at 12:55 AM, Rick Waldron [email protected]
wrote:

This buffer caching branch is a necessary evolution as voodoospark was
previously losing data and missing actions as a result.


Reply to this email directly or view it on GitHub
#23 (comment)
.

@rwaldron
Copy link
Collaborator

Will do! :)

@michaeldewayneharris
Copy link
Author

@Resseguie fyi the ./connection was my doing. I do that just to keep from accidentally forgetting to remove my spark token from different copy/pastes around the intertubes. I just stash the connection in a separate file. Sorry for the confusion.

@Resseguie
Copy link
Collaborator

@m4strmind No problem, I figured that was the case. I've gotten in the habit of using process.env.SPARK_TOKEN and process.env.SPARK_DEVICE_ID for the same reason.

@julianduque
Copy link

digitalRead has the same problem, isn't reading data and crashing the spark

@rwaldron
Copy link
Collaborator

rwaldron commented Oct 7, 2014

@julianduque code?

@julianduque
Copy link

@rwaldron this single line is crashing the app, not even listening the data event, only defining a button

var button = new five.Button('D0');

I also tried with board.io.digitalRead('D0', callback) with same result, a couple of secs before starting the spark gets restarted (led flashing red as in the video)

I'm using voodoospark#master and spark-io

@rwaldron
Copy link
Collaborator

rwaldron commented Oct 7, 2014

@Resseguie was working on this I think, but don't remember how far he got (I might even be mistaken)

@julianduque
Copy link

I'll see if my C skills are good enough to figure out what the problem is ;)

@voodootikigod
Copy link
Owner

I am flushing out a couple things, will put this in the queue.

Chris Williams

@voodootikigod http://twitter.com/voodootikigod | GitHub
http://github.com/voodootikigod

The things I make that you should check out:
SaferAging http://www.saferaging.com/ | JSConf http://jsconf.com/ |
RobotsConf http://robotsconf.com/ | RobotsWeekly
http://robotsweekly.com/

Help me end the negativity on the internet, share this
http://jsconf.eu/2011/an_end_to_negativity.html.

On Tue, Oct 7, 2014 at 10:02 AM, Julian Duque [email protected]
wrote:

I'll see if my C skills are good enough to figure out what the problem is
;)


Reply to this email directly or view it on GitHub
#23 (comment)
.

@rwaldron
Copy link
Collaborator

rwaldron commented Oct 7, 2014

@Resseguie
Copy link
Collaborator

FYI, I tested the OP (using TMP36) after the recent buffer overflow fix ( #33 ) and it still gets an SOS as before. I was hoping it was related.

Here's the gist that still fails:
https://gist.github.com/Resseguie/3942facab36fd3cc6ab1

@rwaldron
Copy link
Collaborator

I'm a jerk.
https://github.com/voodootikigod/voodoospark/blob/master/firmware/voodoospark.cpp#L447-L451

Looks like it starts at 100, but I wonder if we change this to something faster, but put some tiny delays in between the reads? https://github.com/voodootikigod/voodoospark/blob/master/firmware/voodoospark.cpp#L153

Add a delay here https://github.com/voodootikigod/voodoospark/blob/master/firmware/voodoospark.cpp#L195 and see what happens. Keep in mind that I'm completely guessing right now and might be way off

@rwaldron rwaldron reopened this Nov 19, 2014
@rwaldron
Copy link
Collaborator

Whoops. Wrong button.

@rwaldron
Copy link
Collaborator

I need peeps to test out master.

@Resseguie
Copy link
Collaborator

@rwaldron wow, how did this ever work if those were wrong? I'll run the tests again.

Reference to updates: c5d8130

@rwaldron
Copy link
Collaborator

how did this ever work if those were wrong?

Something must've become stricter on their end.

@Resseguie
Copy link
Collaborator

Re-ran my tests with the updated voodoospark firmware on main (pin modes).
Unfortunately didn't solve the problems in this issue.

Summary since we've got several test cases going on in this thread:

  1. running a continuous analog sensor.on("data") takes a long while but SOS eventually
  2. setting all 8 pins to ANALOG gets immediate SOS as in analog sensor read crashes spark core #23 (comment)
  3. defining a digital button as in analog sensor read crashes spark core #23 (comment), gets an eventual SOS
  4. running a digital read as in above comment, eventual SOS

I should note that (1) above, when used with a tmp36 sensor as in the OP, returned valid readings both before and after the latest pin mode updates you put in.

@rwaldron
Copy link
Collaborator

Unfortunately didn't solve the problems in this issue.

I'm going to try your specific steps after this, but I couldn't reproduce an SOS yesterday.

I should note that (1) above, when used with a tmp36 sensor as in the OP, returned valid readings both before and after the latest pin mode updates you put in.

Exactly—we had all tested and re-tested this stuff.

@rwaldron
Copy link
Collaborator

  1. running a continuous analog sensor.on("data") takes a long while but SOS eventually

Can you give me an idea of how long until the SOS occurs?

  1. setting all 8 pins to ANALOG gets immediate SOS as in analog sensor read crashes spark core #23 (comment)

I can repro this at 3 pins

  1. defining a digital button as in analog sensor read crashes spark core #23 (comment), gets an eventual SOS
  2. running a digital read as in above comment, eventual SOS

Yeah, looks like the board just stops responding.

@Resseguie
Copy link
Collaborator

On (1) it was probably 5-10 minutes. It was long enough that I thought it had been fixed initially, but then it SOS'd while I was preparing the next test.

@rwaldron
Copy link
Collaborator

No matter what headway I make, this thing eventually SOS's. I'm beginning to think that we simply expect too much from it.

@rwaldron
Copy link
Collaborator

Setting pinMode on 3 analog pins will crash the board. Setting pinMode on 3 digital pins will not. Why? (thinking out loud)

@rwaldron
Copy link
Collaborator

And just like that...

@rwaldron
Copy link
Collaborator

@Resseguie
Copy link
Collaborator

Following up with your earlier question, I just timed (1) from above. It took less than a minute this time to SOS with the existing voodoospark/spark-io.

Then, trying your reporting-refactor, I ran into a compilation error on voodoospark. (See my inline comment on the commit.)

@Resseguie
Copy link
Collaborator

Compiled that time.

What specifically are you looking for? It still SOS'd after ~30 seconds but the analog values coming in from my tmp36 weren't correct after the refactor code was used.

(Apologies, I only had time to do a quick test, not dig into the changes you had made.)

@rwaldron
Copy link
Collaborator

@Resseguie can you test with:

@Resseguie
Copy link
Collaborator

@rwaldron will do. I should have a few minutes tonight after kids go to bed.

@Resseguie
Copy link
Collaborator

@rwaldron sweet, My (1) example with tmp36 has been running for over 20 minutes w/o hiccup!

Thankful for Google when I see stuff like this:
Array.from({ length: count }, function(_, i) { return prefix + i; })

@rwaldron
Copy link
Collaborator

Array.from({ length: count }, function(_, i) { return prefix + i; })

Just ask! This is a neat side effect of removing the sparse array checks from new Array APIs in ES6 :)

@Resseguie
Copy link
Collaborator

FYI We passed the hour mark. Initial tests on 2-3 also came back positive.

@Resseguie
Copy link
Collaborator

Argh. After about the 1:!5 mark I finally got an error. But it wasn't the usual SOS. In this case, it started flashing cyan (lost network connection?) and it never recovered. It would occasionally start flashing red, then back to flashing cyan. I didn't notice the SOS pattern, but perhaps I missed it.

But I'm not sure this particular fault is related to what we've been working on. More likely related to it just losing connectivity and then losing it's mind.

@rwaldron
Copy link
Collaborator

Can you run some other tests to make sure everything else is in working order? I did a few things, but I need your confirmation

@edgarsilva
Copy link

Discover similar issue, it seems to also be related to #32 : this code breaks the board and makes it impossible to connect again unless you disconnect and reconnect the board or do a reboot:

var Spark = require("spark-io");

var board = new Spark({
  token: 'token',
  deviceId: 'device_id',
});

board.on("ready", function() {
  console.log("CONNECTED");
  this.pinMode("A0", this.MODES.ANALOG);
  this.pinMode("A1", this.MODES.PWM);

  var byte = 0;

  // Log all the readings for A1
  this.analogRead("A0", function(data) {
    console.log(data);
  });

  // This will "blink" the on board led
  setInterval(function() {
    this.analogWrite("A1", 128);
  }.bind(this), 1000);
});

I just wanted to do an analog read from a potentiometer and regulate the brightness of an LED with the analogRead value.

This is the output:

$ node spark-io.js 
CONNECTED
529
528
528
530
530
528
531
527
531
531
525
525
525
527

events.js:72
        throw er; // Unhandled 'error' event
              ^
Error: read ECONNRESET
    at errnoException (net.js:904:11)
    at TCP.onread (net.js:558:19)

And this is a video of the board rebooting and acting all loco when it stops and before showing the error, seems like it restarts but after that needs a hard reboot or unplug to be able to connect again:

https://copy.com/QoObsAj2Cyoeu044

@edgarsilva
Copy link

Well, it seems if I try to connect again, and let it be for some minutes, it starts flashing cyan fast and then turns off, completely off.

@Resseguie
Copy link
Collaborator

@edgarsilva thanks for another test case.

I wanted to capture some notes from my initial tests.

I got inconsistent results using your example and the latest updates from @rwaldron

First run of your code, I also got an SOS red flash pretty quickly.

But then I ran it again a few minutes later and it chugged along for an extended time without problem.

I made a few test cases to try and isolate the issue and add some timers.

(1) I isolated just the analogRead calls:
https://gist.github.com/Resseguie/988b39a28277fc3052e9

(2) Doing just the analogWrite inside setInterval:
https://gist.github.com/Resseguie/9e7a0a93b4ee75864bad

(3) I combined the above two (basically your example but with some timers in place):
https://gist.github.com/Resseguie/bac8572efe3fa0b6b116

I never got an SOS with the first two. (Though I didn't run them long term, just for a few minutes each.)

With (3), it sometimes ran for a while fine, but usually SOS'ed.

Sample output from one of the runs that failed quickly:

CONNECTED
10:37:25 1417145845442 528
10:37:25 1417145845458 525
analogWrite 10:37:25 1417145845474
10:37:25 1417145845479 527
10:37:25 1417145845516 526
10:37:25 1417145845532 524
10:37:25 1417145845549 525
10:37:25 1417145845562 525
10:37:25 1417145845585 525
10:37:25 1417145845599 525
10:37:25 1417145845612 528
10:37:25 1417145845629 523
10:37:25 1417145845643 527
10:37:25 1417145845663 524
10:37:25 1417145845676 526
10:37:25 1417145845694 523
10:37:25 1417145845713 524
10:37:25 1417145845727 526
10:37:25 1417145845741 527
10:37:25 1417145845759 529
10:37:25 1417145845774 526
10:37:25 1417145845791 524
10:37:25 1417145845810 524
10:37:25 1417145845822 528
10:37:25 1417145845839 525
10:37:25 1417145845855 525
10:37:25 1417145845870 525
10:37:25 1417145845891 523
10:37:25 1417145845906 526
10:37:25 1417145845920 524
10:37:25 1417145845935 524
10:37:25 1417145845951 525
10:37:25 1417145845968 526
10:37:25 1417145845984 524
10:37:26 1417145846000 529
10:37:26 1417145846019 525
10:37:26 1417145846033 526
10:37:26 1417145846047 526
10:37:26 1417145846071 526
10:37:26 1417145846080 525
10:37:26 1417145846095 523
10:37:26 1417145846111 526
10:37:26 1417145846126 524
10:37:26 1417145846146 528
10:37:26 1417145846158 528
10:37:26 1417145846175 524
10:37:26 1417145846197 528
10:37:26 1417145846208 523
10:37:26 1417145846228 526
10:37:26 1417145846238 526
10:37:26 1417145846255 527
10:37:26 1417145846274 524
10:37:26 1417145846290 528
10:37:26 1417145846304 523
10:37:26 1417145846326 524
10:37:26 1417145846341 526
10:37:26 1417145846352 528
10:37:26 1417145846369 525
10:37:26 1417145846383 526
10:37:26 1417145846399 528
10:37:26 1417145846418 524
10:37:26 1417145846432 525
10:37:26 1417145846452 526
10:37:26 1417145846463 525
analogWrite 10:37:26 1417145846476
10:37:26 1417145846482 525
10:37:26 1417145846521 527
10:37:26 1417145846535 526
10:37:26 1417145846554 527
10:37:26 1417145846565 523
10:37:26 1417145846582 528
10:37:26 1417145846598 524
10:37:26 1417145846614 525
10:37:27 1417145847145 528
10:37:27 1417145847145 524
10:37:27 1417145847149 528
10:37:27 1417145847151 528
10:37:27 1417145847153 523
10:37:27 1417145847160 523
10:37:27 1417145847161 524
10:37:27 1417145847168 524
10:37:27 1417145847183 528
10:37:27 1417145847200 528
10:37:27 1417145847221 525
10:37:27 1417145847237 526
10:37:27 1417145847250 525
10:37:27 1417145847264 524
10:37:27 1417145847281 528
10:37:27 1417145847299 528
10:37:27 1417145847313 526
10:37:27 1417145847329 526
analogWrite 10:37:27 1417145847477
analogWrite 10:37:28 1417145848480
10:37:28 1417145848556 526
10:37:28 1417145848556 525
analogWrite 10:37:29 1417145849481
analogWrite 10:37:30 1417145850482
analogWrite 10:37:31 1417145851483
analogWrite 10:37:32 1417145852484
analogWrite 10:37:33 1417145853487
analogWrite 10:37:34 1417145854488
analogWrite 10:37:35 1417145855489
analogWrite 10:37:36 1417145856491
analogWrite 10:37:37 1417145857492
analogWrite 10:37:38 1417145858494
analogWrite 10:37:39 1417145859500
analogWrite 10:37:40 1417145860501
analogWrite 10:37:41 1417145861504
analogWrite 10:37:42 1417145862507

events.js:72
        throw er; // Unhandled 'error' event
              ^
Error: read ECONNRESET
    at errnoException (net.js:904:11)
    at TCP.onread (net.js:558:19)

Interesting that the reads stopped but the writes continued for a while before the SOS.

The Core was jacked up every time after the error. It's pretty usual that I have to reboot a Core after SOS but it seemed like it was particularly difficult to get it to reconnect tonight. Had to power it off and on multiple times before I could get it to connect again.

I'll need to do formal testing again and capture DEBUG output, but I'm out of time for the night.

@edgarsilva
Copy link

That pretty much seems like the same behavior I've been getting, I'll try to isolate and have more debugging info next week, see if we can find the root cause.

@rwaldron
Copy link
Collaborator

This has been fixed for some time

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants