Online Firmware Builder

Posted on
  • Some time ago, there was a service to create specific LUA-Firmware for ESP8266 online.
    Target of my project is to create something similiar for Espruino.
    A first early version is running online, see a short video.

    Before going next steps, I would like to get some comments/feedback/what_ever.
    Available functions:

    • supports PICO, EspruinoBoard, ESP8266. Others are easy to add, but there are some other items on my todo list to be solved before
    • select a board and change default settings. For example, if you don't need crypto, uncheck it
    • define a blacklist of jsvascript command, you will not need in your firmware version
    • add extensions from other sources, right now they are on the server only. I'm working on extension for github.
    • save your settings in a project on your computer for sharing or reuse with new JS_version of Espruino
      If you want to do some testing, please let me know. Actual version is still under heavy development, therefore I would like to minimize number of users until it is more stable ;-)
  • That is awesome, really exciting. How do you get the firmware you've had it build? Iirc, the build process took a nonzero length of time.

    Does it use last release, or does it let you use latest?
    ( note - didn't watch video - I don't do video)

  • Compiling itself takes somewhere between 10 and 20 secs.
    Some functions are done on server, right now even comples parts, like building up a JS-Command tree, take not more than a second.
    Getting the firmware is a button inside Firmware-field, to be honest, its not active yet.
    Other buttons in Firmware field are read compiling log, read compiling errors, download project data and last not least upload project data.
    Right I'm using an old release. I had to add some lines to make file and to the py-file which creates wrapper source
    Plan is to update from Github once a day.
    One of the things to do is support of multiple users. Make itself stores a lot in global gen-folder. Same for some files which are created during linking. In a first step, I will create a busy-message or something like that.

  • Looks great! Sorry for not getting back to your earlier email.

    I'm not sure I see it, but it might be interesting to allow users to specify the number of JsVars available. I think you could find out how much RAM was used up by looking at the ELF file, so could tell users how many variables they might be able to use?

  • Hey @JumJum How's the progress coming along?

  • Some time is gone since first info about my project for a service to build your own firmware.
    A lot of work is done to get a first version running with a lot of functions.
    The service is available here
    Please give it a try, your feedback will help for future versions.

    Some tutorials have been created,

  • Wow, this is awesome. Takes all the headache out of setting up an environment to compile the source code.

    Do you plan on adding a section(s) for those who are custom coding something into the firmware? Or is that what JsCommands are for?

  • Thanks for feedback,
    Not sure, I understand your question but let me try to give an answer

    • take a look to Add extensions from Github and Add extensions from your computer, hope this is helpful to add your custom coding
    • JsCommands is used to list all commands that are available in your firmware. This includes extensions added from github or from your local computer. Another function supported by JsCommands is to blacklist JS-commands that you don't want to have in your firmware.
    • there is no dictionary for custom coded extensions. To be honest I couldn't find any in github or somewhere else.
      BTW, I use this tool to test and implement some extensions, which are tailor made for my needs (and interest).
      Right now I'm working on a stable process to get actual Espruino Source from github (https://github.com/espruino/Espruino) once a day
  • Post a reply
    • Bold
    • Italics
    • Link
    • Image
    • List
    • Quote
    • code
    • Preview
About

Online Firmware Builder

Posted by Avatar for JumJum @JumJum

Actions