Reputation: 405
I have to develop a small web application which would be running on a embedded device.
There are many light weight servers like thttpd
, lighttpd
. The functionality I want is something similar to router/modem configuration page. I am using mpc5200B (http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=MPC5200B). It'll have a Linux kernel on it.
I am not able to decide on the server and programming language to use. Should I just run an embedded apache server and use JSP/servlets for programming as I believe the chip has enough resources.
Any hints/help/insights would be helpful. Thanks!
Upvotes: 0
Views: 1859
Reputation: 12027
Or Raspberry PI. Cost is less than $50, and you can run Linux with a LAMP stack, iptables, etc.
Upvotes: 0
Reputation: 73
In case of 8- and 16-bit microcontrollers you can use micro IP (uIP). It implements TCP/IP protocol and it is written in C and requires few kilobytes of RAM ( good striped version requires only 200 bytes of RAM). Moreover, uIP is open source TCP/IP stack.
Upvotes: 0
Reputation: 966
The micromonitor (uMon... http://www.umonfw.com) package has an LWIP application that includes the HTTP server that started from LWIP contributions; however I modified it quite a bit so that it would serve files out of TFS (basic FFS that comes with uMon). Plus I added some basic hooks to support SSI-like stuff and some form-to-target interaction. Works ok and doesn't need an RTOS; but for really small systems it still needs to be "tuned". So...
I am now working on a condensed version of that package (called uMon-M) for use on devices with very small footprints like the Cortex-M3/M4 stuff. As of this writing, I have it ported to the "Simple-cortex" (http://www.brc-electronics.nl) based on an NXP-LPC1769 (Cortex-M3). The boot monitor itself is a major subset of uMon, but still has all the same fundamental capabilities (FFS, scripting, UDP/IP, etc..). Most of my effort at this point is in the HTTP server as a user interface for an application. It currently works I'm just trying to make it smaller; but still have some reasonable ability to serve dynamic web pages. I've got it hooking to Web Sockets and a very basic SSI-like facility so that the html pages can be more dynamic. Try it, it works as is, and will hopefully just get smaller. It would be great to get some folks looking at this with me for collaboration.
Upvotes: 0
Reputation: 1975
For smaller embedded systems, based on single-chip microcontrollers, you might want to consider the lwIP TCP/IP stack. There is a YouTube video that shows an embedded web server running on a small embedded ARM Cortex-M3 board with SSI (server-side includes) and CGI (common gateway interface) capabilities. This means that you can generate HTML dynamically (SSI) and you can accept commands from standard HTML forms (CGI). All this without a need for running Java in your browser.
Upvotes: 2
Reputation: 165
I would suggest Apache + PHP. Even you have enough resource, whether the technology is stable or not still one of the consideration. Apache + PHP is a very stable combination.
I am not sure, seems the device come with it's own linux.
Upvotes: 0
Reputation: 9162
I've never seen routers with JVM inside.
From my own experience - every router I've configured had a PHP inside web-admin application.
Upvotes: 2