Embedded development, meet the web browser

Building IoT prototypes has never been easier: grab a Raspberry Pi, run Node.js or Python on it, and start sensing through sensors or actuate some actuators. But scaling this up from prototype to actual deployment is tough. You need to fit your app in kilobytes of RAM, start thinking about battery usage, and switch from a nice high-level language to C (or C++ if you’re lucky). With these constraints also comes an archaic ecosystem… Compiling and flashing a new application can take minutes, stepping through code requires an external debugging probe, and many tools are only available on Windows.

Now we can’t add much more RAM to your device, or create a magic battery that will never run out of juice, but we *can* learn a thing or two from web development when developing for embedded… What if we would be able to run a Cortex-M microcontroller straight in the browser? Development times would be much faster, simulation would be instant, and debugging would go through the normal browser development tools. All while still writing normal C code. Sounds insane?! Come see this session and find out…

Will guide people through:

1. Constraints that come with embedded programming.
2. Challenges that embedded devs face when building devices.
3. How I started modeling a simulator for embedded devices.
4. Cross-compiling applications from C to JavaScript with Emscripten, and modeling a UI to go with it.

Then will do some live demos using the simulator, code for that will be in C++. But heavily scripted, so should be easy to follow.