From: Paul E. Bennett on
msr wrote:

> Thank you all for the responses and suggestions!
>
> English is not my mother tongue, so I have some difficulty in express
> myself clearly, but if you dont mind I will try to explain my doubts
> better.
>
> I would like to understand how GUIs are made in general (ie, depending on
> the requirements, from the most demanding to the less demandig). From a
> simple mp3 player GUI (monochromatic) to industrial displays
> controlling/monitoring machines (color, few buttons on the screen,
> dialogs, menus, etc).
>
> For the most demanding systems, maybe Qt+Linux+WinCE were some (which
> more?) of the keywords. But what about "smaller" systems?
>
> Say, I have a board (pcb) which controls a robotic arm and I want a small
> user-interface (a "specialized" LCD, not a desktop or laptop) to interact
> with that (move up, move down, etc). How can I acomplish that?
>
> What frameworks/libraries/toolsuites are there to create small embedded
> GUI?
>
> (note that Im looking at ARM, so 32 bit microcontrollers)
>
> Thanks again!

I shall recommend a book that I think will explain some of the concepts for
you.

Front Panel: Designing Software for Embedded User Interfaces by Niall Murphy

I think it will help you enormously.


--
********************************************************************
Paul E. Bennett...............<email://Paul_E.Bennett(a)topmail.co.uk>
Forth based HIDECS Consultancy
Mob: +44 (0)7811-639972
Tel: +44 (0)1235-510979
Going Forth Safely ..... EBA. www.electric-boat-association.org.uk..
********************************************************************

From: msr on

>I still don't see that you need a complex GUI to control this.

Sure! The robotic arm example may not be the best. Look at this mp3 player
GUI: http://pan.fotovista.com/dev/3/1/00015413/l_00015413.jpg
(monochromatic)

>Unless perhaps you are wanting to draw a "map" of the arm's location, on
the
>screen.
>
>Or are you using a touch screen?

In the robotic arm example, yes! Just suppose you want a "fancy"
user-interface (with touch screen) to control something and/or also display
some info in a "fancy" and user-friendly way. Another (better) example: a
train tickets machine, with buttons, menus for ticket type, destinations
name, etc That should be very easy to use and a touchscreen GUI would be
very helpful. In this case that GUI may be more sophisticated than the mp3
player GUI, I mean, with color, some graphics, etc


---------------------------------------
Posted through http://www.EmbeddedRelated.com
From: tim.... on

"msr" <mario.ribas(a)n_o_s_p_a_m.gmail.com> wrote in message
news:rbGdneSrq-SFO3DWnZ2dnUVZ_qednZ2d(a)giganews.com...
>
>>I still don't see that you need a complex GUI to control this.
>
> Sure! The robotic arm example may not be the best. Look at this mp3 player
> GUI: http://pan.fotovista.com/dev/3/1/00015413/l_00015413.jpg
> (monochromatic)

This is a simple "text and line" GUI. You should be able to build this
yourself from the basic LCD building blocks

>
>>Unless perhaps you are wanting to draw a "map" of the arm's location, on
> the
>>screen.
>>
>>Or are you using a touch screen?
>
> In the robotic arm example, yes! Just suppose you want a "fancy"
> user-interface (with touch screen) to control something and/or also
> display
> some info in a "fancy" and user-friendly way. Another (better) example: a
> train tickets machine, with buttons, menus for ticket type, destinations
> name, etc That should be very easy to use and a touchscreen GUI would be
> very helpful. In this case that GUI may be more sophisticated than the mp3
> player GUI, I mean, with color, some graphics, etc

The ticket machine isn't that hard to do because the buttons are always in
the same place on the screen all that changes is the text inside them (and
their function).

Adding colour and graphics doesn't make it hard to implement.

What makes it hard to do, and thus requires you to build a solution using a
purchase API is the requirement to move things around the screen
dynamically.

tim


From: Nobody on
On Fri, 14 May 2010 14:35:52 -0500, msr wrote:

> Another (better)
> example: a train tickets machine, with buttons, menus for ticket type,
> destinations name, etc

Such a system would typically be built using a "desktop" OS and GUI
toolkit, e.g. Windows or Linux+Qt. Adobe Flash is also quite popular.

It's not uncommon to see Windows BSoDs on ticket machines,
departure/arrival listings, ATMs, video billboards, etc; e.g.:

http://www.miguelcarrasco.net/miguelcarrasco/2006/10/blue_screen_of_.html

Qt is quite widely used on mobile phones and PDAs (Qt's developer,
TrollTech, is now owned by Nokia), as is WinCE.

AFAICT, PEG is aimed at the level below that, where you might only have an
8-bit or 16-bit CPU or RAM measured in kilobytes rather than megabytes (it
will run on more powerful systems, but then it's competing with Qt and
WinCE).


From: tim.... on

"Nobody" <nobody(a)nowhere.com> wrote in message
news:pan.2010.05.15.13.35.40.407000(a)nowhere.com...
> On Fri, 14 May 2010 14:35:52 -0500, msr wrote:
>

>
> AFAICT, PEG is aimed at the level below that, where you might only have an
> 8-bit or 16-bit CPU or RAM measured in kilobytes rather than megabytes (it
> will run on more powerful systems, but then it's competing with Qt and
> WinCE).

I can't agree with that assessment

I have worked on two systems where PEG was considered as an appropriate GUI
framework (one rejected it in favour of an "own" solution and the other used
it) and neither of these were 8 or 16 bit systems with limited memory, they
were both 32 bit systems with 100s of megabytes.

In both cases, it came down to licensing cost.

tim