Minnow Server: Fast and embeddable websocket SSL server for microcontrollers

SEJeff | 50 points

From personal experience: using WebSockets for realtime communication with a microcontroller works really well. I've put together a number of products using ESP8266 to do this and serving out the HTML/JS from an embedded web server. Works particularly well for streaming out the state of sensors on the device.

The main issue I had was that only HTTP was well supported on the Arduino/ESP8266 platform and as we all know that's fallen out of favour. Unfortunately, it also limits what you can do on resource constrained microcontrollers. Having HTTPS in this library opens up the ability to build an SPA which was something I'd always wanted to do.

I don't see any mention of ESP8266 on their site but hopefully, as probably the most widely available IP enabled microcontroller, it will be supported too. Time to do some more digging into getting it running.

edit: I obviously didn't look closely enough - there's recently been added support for ESP8266 - happy days!

bjpirt | 5 years ago

I've read this README and linked pages, but my lack of experience with these topics still prevents me from having a clear picture:

Would it be possible to port this for the Atmel (now Microchip) AVR32 architecture? I'm writing some code for the UC3C family and next thing to do is write code to present a configuration page over an Ethernet port. I'm not using a RTOS so my plan was to use lwIP directly, altough switching to FreeRTOS would also be an option (as I'm currently writing code for other boards and I've not really started writing any code for this specific, Ethernet-enabled board).

Would appreciate any pointers of how to do this. Never had to implement TCP/IP and HTTP before on a MCU, so it was a relief discovering that there are already made and free to use implementations of these stacks :)

I'm also exploring alternative OSes such as Mongoose mentioned here. It seems there is a lot of options. Having support for OTA updates could save a lot of work too, because that's another planned feature.

j1elo | 5 years ago

Where is the SSL and crypto implementation in this project?

ptspts | 5 years ago