Hmm - if there's a USB disconnect then it'll be a complete crash. It could be some kind of hard fault, but at the moment it's looking pretty stable so it would be worth checking the power supply.
Maybe run analogWrite(..., 0.5, {freq:5}) on one of the pins - that will only stop pulsing the pin if the main clock stops or the board resets. If that's the case I'd be really sure it's a hardware issue :)
Check the temperature of the fuse. If it's warm you're probably starting to draw too much power.
The 3.3v regulator isn't that powerful, 150mA, and I'd try and make sure you leave 40 for Espruino. It would be quite easy to cause problems if you add other stuff - for example even an LCD display's backlight could be drawing 100mA. What did you have attached?
You could try adding E.enableWatchdog(10) - that'll self-reset the board if it doesn't return to the main loop for 10 seconds. It's not a proper fix though :)
For more advanced debugging there's http://www.espruino.com/AdvancedDebug - which would let you see if there's anything wrong in the Espruino software. Honestly it's a lot of effort though so I wouldn't advise it.
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
Hmm - if there's a USB disconnect then it'll be a complete crash. It could be some kind of hard fault, but at the moment it's looking pretty stable so it would be worth checking the power supply.
analogWrite(..., 0.5, {freq:5})
on one of the pins - that will only stop pulsing the pin if the main clock stops or the board resets. If that's the case I'd be really sure it's a hardware issue :)E.enableWatchdog(10)
- that'll self-reset the board if it doesn't return to the main loop for 10 seconds. It's not a proper fix though :)For more advanced debugging there's http://www.espruino.com/AdvancedDebug - which would let you see if there's anything wrong in the Espruino software. Honestly it's a lot of effort though so I wouldn't advise it.