Reply by shoonya May 25, 20102010-05-25
> >"Nobody" <nobody@nowhere.com> wrote in message >news:pan.2010.05.15.13.35.40.407000@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 > > >
Hi, You might want to look at FLTK. You can use it on embedded linux or build it for your RTOS. It comes with uClinux and though is X based, it can be made to work on raw video buffer. It has a GUI designer called FLUID which you can use to design your gui on your linux desktop and just crosscompile it for your target. I have used it on my previous project running uClinux on a softcore processor. The gui with menus and buttons was overlayed on live video. Regards Manish --------------------------------------- Posted through http://www.EmbeddedRelated.com
Reply by tim.... May 16, 20102010-05-16
"Nobody" <nobody@nowhere.com> wrote in message 
news:pan.2010.05.15.13.35.40.407000@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
Reply by Nobody May 15, 20102010-05-15
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).
Reply by tim.... May 14, 20102010-05-14
"msr" <mario.ribas@n_o_s_p_a_m.gmail.com> wrote in message 
news:rbGdneSrq-SFO3DWnZ2dnUVZ_qednZ2d@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
Reply by msr May 14, 20102010-05-14
>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
Reply by Paul E. Bennett May 14, 20102010-05-14
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@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.. ********************************************************************
Reply by tim.... May 14, 20102010-05-14
"msr" <mario.ribas@n_o_s_p_a_m.gmail.com> wrote in message 
news:3YKdndKtObsJ9HDWnZ2dnUVZ_uCdnZ2d@giganews.com...
> Thank you all for the responses and suggestions! > > 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?
I still don't see that you need a complex GUI to control this. Unless perhaps you are wanting to draw a "map" of the arm's location, on the screen. Or are you using a touch screen?
> What frameworks/libraries/toolsuites are there to create small embedded > GUI?
The BSP that comes with development boards should be sufficient for a basic textual GUI. Do you need anything more complicated than this? tim
Reply by Tim Wescott May 14, 20102010-05-14
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?
I think the first thing you may be missing is that many smaller GUIs are hand-rolled for the purpose at hand. A really basic graphics framework (like PEG), is mostly there to manage frames, keep track of which frames are 'above' others, and make sure that the 'top' frame doesn't get painted over by a 'lower' one. But when you get right down to it, someone still has to think through what a typical user is going to be comfortable with, and program an interface that works -- there are guidelines that you can follow for that, but I know of no frameworks* for such systems. * Commercial ones. Every place I've ever worked at but one that had a GUI with menus has ended up with at least a rudimentary menuing system that captures menu behavior in some object-oriented way. -- Tim Wescott Control system and signal processing consulting www.wescottdesign.com
Reply by msr May 14, 20102010-05-14
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! 	   
					
---------------------------------------		
Posted through http://www.EmbeddedRelated.com
Reply by Not Really Me May 14, 20102010-05-14
msr wrote:
> Hello, > > Could someone point me to something that could help me > creating/understanding GUI for embedded systems in general? What's the > "easier" (I know "easy" could be relative) to get GUI on an embedded > system? > > The hardware I'm looking for is ARM-based microcontrollers (Cortex > M3, ARM7 > or ARM9). > > I think Qt could be a solution right? However I would like to know > "lighter" alternatives. > > Thank you! >
Also look at uC/GUI from Micrium/Segger. It should do what you want. -- Scott Validated Software Lafayette, CO __________ Information from ESET NOD32 Antivirus, version of virus signature database 5115 (20100514) __________ The message was checked by ESET NOD32 Antivirus. http://www.eset.com