OS : Linux.
I'm trying to find possible ways to implement web interface for my embedded system. Currently there is a shell (text based) and a small set of commands are implemented to query the device.
I'm new to web development, my questions are:
What web server must I use? (I got apache up on my development setup and tried using CGI to fetch some pages, but seems like this not the right choice for embedded systems)
Assuming I'm using CGI, what strategy can be used for passing data between CGI and the Main App? I intended to create a thread in the MainApp to handle the query from CGI script. This thread would call interfaces in the MainApp, retrive the data and pass it to CGI.
An embedded system interface is itself a part of a larger embedded system and the interface design process is one part of the overall embedded system design. Interface design selects two important boundaries: between CPU software and digital interface logic; and between the digital and analog sides of the interface.
This framework makes it possible to build desktop applications using popular web technologies.
The goal of embedded GUI design / development is to create an interface that is intuitive, clean, and helps your product stand out from the competition. Design elements are more effective if they are given thoughtful touches that align with the end users interests and needs.
We use Lighttpd on our embedded systems, it's small and very easy to integrate. There are also specialized webservers with features especially geared to embedding, like AppWeb, which in my opinion is also a very nice product.
For the communication between the main application and the CGI's you can use sockets, or System V message queues if those are available on your embedded platform. The advantage of SYSV message queues is that they're very easy to use and manage, and messages in the queues survive restarts of the applications, but they also have some quirks (like you can't select() on them).
As web server another choice is thttpd. I use it successfully in an industrial product.
For the communication between CGI and main application sockets is the right choice.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With