Firmware update, first contact feedback

Posted on
  • Hey guys

    I just recieved my board and start hacking. Here is a quick feedback:

    • its hard to find the firmware url to update the firmware. if you boot into bootloader mode, the firmware url field is left empty
    • if I connect the WebIDE there are two chrome processes (google chrome and google chrome helper) which both consume more than 100% cpu. OS: OSX v10.9.1, Chrome: Version 32.0.1700.77 and Version 32.0.1700.102

    the documentation about the firmware update process is a bit unclear ("the status in the top left will change and you can disconnect..."). which status? a led? or in the ide?

  • Hi Michu,

    the URL will be filled in automatically when you press the disconnect button and then connect one (while you have the options menu open). No need to manually put it in.

    I've heard about the chrome thing. It's a chrome bug and should be solved in chrome 34. I'm using 33 (beta atm) and have no problems.

    have fun

  • Thanks for your reply. Yes I saw the firmware URL once, then I went into the bootloader mode, then the URL disappeared...

  • ok, that's kind of weird. It's not reproducible here.

  • I was wondering what's the best way to send a data stream to the espruino, any hints about this? I first think using the USB serial functions together with a ring buffer might work. however this script:

    USB.onData(function(serial) {
      console.log("recieved ";

    is a bit unhealthy and mess up the webide. at least I don't see any motd banner anymore and uploading a new "sketch" take ages...

  • Hi Michu,

    Thanks for the feedback - the firmware update is definitely something I'd like to be able to make more obvious...

    As far as transferring data to Espruino via USB, your best bet is really to send data as function calls (had you seen this?). If you send: d("my data here") and then just write a function called d that handles your data, it should all work nicely.

    Normally the Espruino console echos what it receives back down the serial port (so you can see what you're typing), and that's not so great for transfers so you can send echo(0). Espruino will then appear not to respond to anything except calls to console.log (it'll still be executing as normal though) until you type echo(1).

    If you really want to handle whatever data gets sent down USB then you can move the console onto another device, for instance Serial1.setConsole(). After that you'll have to program Espruino via a USB-TTL convertor attached to the serial port though (see Wiring Up ) - either that or you just have to reset and then program it again each time.

    So basically, if you want to be able to program Espruino via USB at the same time, you have to play by the rules of the console and send data as function calls. However if you don't need that or can use Serial, you can use the USB as you wish.

  • Thanks Gordon

    I wrote a quick blog post how to drive ws2801 led modules:­ws2801/

    The code is just a quick prototype, but I hope to find more time to create a firmware for PixelController LED Matrix software. If someone would like to contribute, be my guest!


  • Great! I'll have to try some WS2801's out... At least you avoid some of the timing issues that you have with WS2811.

  • Just to add, if you manage to control WS2811s from PixelController, you could also try these guys:

    They're a bit smaller than your pixel arrays but are at least ready-made square panels - so assembly would be a lot easier.

  • yes, I have to implement the usb protocol, after that it should be a piece of cake. however I'm off for two weeks, I'll see what I can do after it...

  • Post a reply
    • Bold
    • Italics
    • Link
    • Image
    • List
    • Quote
    • code
    • Preview

Firmware update, first contact feedback

Posted by Avatar for Michu @Michu