2

Considering using a node.js based library for a simple interface on an embedded ARM system. I have zero experience with node.js. At the very least I will use this as a test rig outside of the embedded system.

How much space will a minimal node.js server take?

Note: If its in the gigs my guess is this will be too large for our system.

Comments
  • 8
    ...Javascript...
    ...embedded...
    ...arm...

    Wtf wrong with you people??
  • 0
    I found an opcua client system (runs on node.js) that can act as an HMI. It would be convenient for testing some opcua servers we are developing.

    Like I said, I don't know anything about node.js.

    We already have an embedded web server for our devices.
  • 2
    If you are talking about a Cortex-A based system, that should work if you don't care much about performance. Raspis can run a full-blown Linux, after all.

    If it's about Cortex-M, I don't think it will work. Even if you have off-chip RAM on the board, you will only discover that code from that RAM runs maybe ten times slower than from the internal space, and even that is already slow enough.
  • 1
    Just for the order of magnitude, a 168 MHz Cortex-M4 is about 60 times slower than a single core of a low-end office PC if you run code from the internal flash-ROM that uses the on-chip RAM.
  • 1
    @Fast-Nop The system we have now is this:

    https://beagleboard.org/black

    But we are moving to a system with more ram, more cores, and will be 1.6GHz.
  • 0
    @Demolishun OK that's Cortex-A, it runs Linux, and you should be able to do anything that Linux can do.

    Sure, your server won't be able to support hundreds of users at the same time, but that isn't necessary for a device HMI.

    How do you intend to connect? Will you have the other side of the HMI in a browser than runs off-device? Or will you also run a browser on the device and attach a touchscreen to it?
  • 0
    @Fast-Nop The embedded system is headless. So any web interface is on a separate client.

    Edit: And yes, we are running Linux.
  • 1
    @Demolishun Yeah than you should probably be fine.

    The only catch is that you will want to use a PC with Linux for developing and only pushing over the result because node.js is legendary for pulling in a huge amount of things on the dev machine, but most of it doesn't end up in production.
  • 1
    @Fast-Nop Ah, that is the type of tribal knowledge I was looking for. Didn't know there development setup would be that different from deployment. Thanks.
  • 0
    The entire sentence containing words such as: simple interface, embedded, node js is just so wrong I can't stomach it. A simple interface requires an elegant simple solution. Not bloat
Add Comment