Hi,
I need a general advice on developing an application for a Ubuntu Touch panel computer. Intel Atom based.
I am programming using C++.
The application I am making will communicate with external hardware via serial port.
The basic task of the application is to monitor a device connected to the serial port and set various parameters depending on the data received. The application will be run on startup and will be the only application running on the computer. The application operation will be monitored by other applications that will ensure it is running without problems.= (such as crashes etc.).
Users will interact with the system using a form. Users can configure, control the hardware connected. The application will also have a database (sqlite based) that keeps data for various parameters.
I have thought of two different approaches to the application, the first is the usual style of having an application that controls the hardware and also manages the user interface via text boxes, buttons tables etc via form(s).
The second approach is to have a back end application (C++ based) that interacts with the hardware via the serial port. This application runs in the background and is not visible to the user. It will handle all serial port related tasks.
The front end will be a PHP based webpage (or web app), the page will be run from a Apache server installed on the computer (local installation). The web app will also handle the database (sqlite based).
So basically I have PHP based front end, a back end that consists of a C++ application and the web-server. Please remember both back-end and web-server are running on the same PC, internet will not be available.
The second approach looks favourable because it is quite easy to generate tables / page styling etc. with HTML, PHP and ajax. User is also more familiar with this as it is web based. Development and coding could also be easier.
The first approach has the advantage that only a single application needs to be maintained, so I just have monitor a single application, this will also reduce complexity of code.
Please remember the application would be running almost continuously and as hangups/application crashes are un-acceptable I will also be providing a backup, recovery and monitoring application that will check the general health of the applications and re-start any application that fails.
Please give some ideas which is suitable .
thanks
a