Frequently Asked Questions
Everything you need to know about easyGUI.
If you cannot find an answer to your questions you are always welcome to contact us.
Company
For all credit card payments please use our web store. We do not accept credit card information via E-mail or phone.
We currently accept: American Express, Visa, Visa Electron, Eurocard, MasterCard, JBC, as well as PayPal, Bank transfers and Checks.
If you have selected to pay by bank transfer, please use the information below.
IBIS Solutions ApS
Torvevangen 24
DK-4550 Asnaes
Denmark
E-mail: sales@ibissolutions.com
CVR/VAT No. DK 27 06 03 07
Banker:
Jyske Bank A/S
Vestergade 8-16
DK-8600 Silkeborg, Denmark
Phone: +45 8922 2222
Fax: +45 8922 2496
Account: 5018-113654-5
SWIFT: JYBADKKK
IBAN: DK8950180001136545
jyskebank@jyskebank.dk
www.jyskebank.dk
Please contact us with any question you might have regarding our products or our consultancy services:
IBIS Solutions ApS
Torvevangen 24, DK-4550 Asnaes, Denmark
SE/CVR/VAT no.: DK 27 06 03 07
Fax: +45 7023 0495
E-mail: sales@ibissolutions.com
Please observe that our office hours follow the Greenwich Mean Time (GMT) + 1 hour.
The easyGUI software is produced and developed by IBIS Solutions ApS. Our head offices are located in Denmark. The company was founded back in 1999, and we started selling easyGUI in 2004. Our software (easyGUI) and its companion products has been in development since the early 1990’es.
IBIS Solutions ApS also offers consultancies and embedded development services.
Location/contact info:
IBIS Solutions ApS
Torvevangen 24, DK-4550 Asnaes, Denmark
SE/CVR/VAT no.: DK 27 06 03 07
Fax: +45 7023 0495
Displays
easyGUI allows almost any configuration to be handled, regarding placement of zero bit, byte ordering, horizontal/vertical scan lines, display orientation, mirroring, color RGB bit size and ordering, etc.
easyGUI creates font and display data in the proper format, so that no time-consuming bit swapping happens at run-time.
Yes, we develop new drivers for display controllers. We will write the basic driver, which you yourself then adapt to your particular hardware setup. It usually takes 2 to 3 weeks to develop the driver. You can order a driver from our web shop or by contacting us directly.
easyGUI is compatible with most display controllers in production currently or in the past. And we are continuously adding drivers to the list.
If you can’t find your driver on the list below, or the driver isn’t part of your driver library, we can deliver a driver for your display controller of choice. Please see our web shop for further details.
AT32AP7000, AT91RM9200, AT91SAM9261, AT91SAM9263
AX6108/AX6107, AX6120, AX6963
BVGP
D51E5TA7601
F5529
FLEVIPER
FSA506
H8S2378
HD61202
HX8238_AT32AP7000, HX8238_TMP92CH21
HX8312, HX8345, HX8346, HX8347, HX8347G, HX8352A
ILI9320, ILI9341
IST3015
KS0108B/KS0107B, KS0708/KS0707, KS0713, KS0715, KS0717, KS0718, KS0719, KS0723, KS0724, KS0728, KS0741, KS0755, KS0759
LC7981
LH155BA, LH75400, LH75401, LH75410, LH75411, LH7A400
LPC1787, LPC2478, LPC3230, LPC3250, LPC408X
MPC5606S
MX257
NJU6450, NJU6450A, NJU6452, NJU6570, NJU6575, NJU6673, NJU6675, NJU6676, NJU6677, NJU6678, NJU6679
NT39016D
NT7108/NT7107
NT7501, NT7502, NT7508, NT7532, NT7534, NT75451
OSD35GN827A
OTM2201A
PCF8548, PCF8813
PIC24FJ256
PT6520
PXA320
R61505, R61509, R61526
RA8803, RA8822, RA8835, RA8875
S1D10605, S1D10606, S1D10607, S1D10608, S1D10609, S1D13305, S1D13505, S1D13506, S1D13700, S1D13704, S1D13705, S1D13706, S1D13715, S1D13742, S1D13743, S1D13748, S1D13781, S1D13A04, S1D13A05
S1D15600, S1D15601, S1D15602, S1D15605, S1D15705, S1D15707, S1D15708, S1D15710, S1D15721
S6B0108/S6B0107, S6B0108A/S6B0107A
S6B0708/S6B0707, S6B0713, S6B0715, S6B0716, S6B0717, S6B0718, S6B0719, S6B0721, S6B0723, S6B0724, S6B0725, S6B0728, S6B0741, S6B0755, S6B0759
S6B1713
S6B2108/S6B2107
S6B33BL
S6D0129, S6D0139
S6E63D6
SBN0064, SBN1661
SED1335, SED1374, SED1375
SED1520, SED1530, SED1565
SEPS525
SH1101A, SH1123
SPFD5408
SPLC501, SPLC502
SSD01303, SSD0323
SSD1289
SSD1303, SSD1305, SSD1322, SSD1325, SSD1339
SSD1805, SSD1815, SSD1848, SSD1852, SSD1857, SSD1858, SSD1859
SSD1905, SSD1906, SSD1926, SSD1963
SSD2119
ST75256, ST7529, ST7541, ST7561, ST7565, ST7565S, ST7567, ST7571, ST7586
ST7637
ST7715, ST7715R
ST7920
T6963
TL0313, TL0324
TLS8201
TMPA900
TS7390
UC1601, UC1606, UC1608, UC1610, UC1611, UC1611S, UC1617, UC1698
UC1701
UPD161607
WG24064
easyGUI supports any display controller with graphical capabilities, i.e. where it is possible to address the individual pixels, that is most controllers. An easyGUI driver consists of only two simple c functions, initialization and data transfer, which can easily be adapted to the hardware in question, meaning that the display hardware can use any connection method (bus, ports, I²C, SPI, etc.) supported by the display controller. We will of course supply a driver, if a suitable driver doesn’t exist for the particular display controller of choice.
Right now easyGUI supports more than 150 display controllers, and we keep adding to the list on a continuous basis.
If you do not find your particular display controller on our list please contact us, as we can develop if for you as a special order.
With every easyGUI purchase you will also receive our easyDRIVER libary, currently supporting more than 200 controllers. However if we should not support your controller of choice, we can develop the for you. We will write the basic driver, which you yourself then adapt to your particular hardware setup. It usually takes 2 to 3 weeks to develop the driver. You can order a driver from our web shop or by contacting us directly.
Any display with graphical capabilities, i.e. where each pixel is individually addressable, can be used. That covers most LCD displays on the market today. Also other display technologies can be used, e.g. plasma, fluorescent, OLED, etc.
The connection method between display controller and microcontroller can be of any type, as the easyGUI display driver is simply adapted to the connection method in use. Microcontrollers with Build-in display controller can also be used.
There is no formal limit to display resolution. Any resolution in both width and height can be defined, including odd numbers. The display can be oriented in any of the four primary directions (normal, left, right, upside down) without any limitations on the user interface.
It is impossible for us to recommend individual display solutions, as there are so many factors determining a proper choice: Physical size, price, quality, viewing angle, robustness, delivery guarantees, etc. No matter which display you choose we can make a driver for it, as long as the display controller allows pixel addressing of the display (almost all do).
Fonts & Languages
Yes, in the easyGUI Unicode version. easyGUI Monochrome and easyGUI Color supports traditional ANSI character coding (8 bits per character), which is sufficient for most Western languages. However, for some languages, including many Asian and Middle East languages, this is not sufficient, and Unicode character coding (16 bits per character) must be employed. easyGUI Unicode uses the same character codes as defined by the Unicode Consortium (www.unicode.org) – these character codes are also used by e.g. Windows, making it very easy to enter text into easyGUI in any language.
Currently the Unicode fonts in easyGUI contains character sets for these languages:
- Western languages
- Cyrillic (Russia)
- Polish
- Hebrew (Israel)
- Farsi (Arab)
- Thai
- Hiragana (Japan)
- Katakana (Japan)
- Kanji (Japan)
- Simplified and Traditional Chinese – about 20.000 characters
- Hangul (Korea) – about 12.000 characters
- Greek
If you are interested in other Unicode character sets we can make it for you as a special order. Please contact us for more information.
Vector fonts, used by e.g. Windows, require substantially more processor power than bitmapped fonts, and are therefore usually not well suited for embedded platforms. They also require more screen resolution, in order to look ok. In fact, Windows uses a combination of vector fonts, and bitmap corrections, when displaying fonts below a certain size (controlled by each font), this can usually be seen as a difference when going above or below approximately 12 point in font size. Cheap Windows fonts do not have this correction build in, and therefore doesn’t look good in small sizes.
An alternative is grayscale bitmapped fonts, i.e. fonts where each pixel is not just clear or set, but can have a range of values. An easyGUI version will be release shortly, which in addition to the current monochrome fonts also can use grayscale fonts, with 16 gray values for each pixel. These fonts are of course still static in size.
A vector font feature could also be build into easyGUI, it would then be an alternative to the current character mechanism, i.e. fully independent of the bitmapped fonts. The main problem is not technical, but rather that in order to get good results with vector fonts, without the added complexity of bitmap corrections like in Windows, a resolution of at least VGA (640×320 pixels) will be needed, and most embedded applications still uses displays with less resolution.
Each text item in the user interface can be marked for translation. If marked, multiple instances of the text are created, one for each language in the project. Any number of languages can exist in a project. At run-time a simple function call to the easyGUI library establishes the language currently in use, and the library will then use texts from this language for all user interface function calls, until a new language is selected.
If needed Unicode (16 bit character codes) can be used, for e.g. Asian and Middle East languages. Please observe that only easyGUI Unicode supports this option.
In the easyGUI PC development system a Language window allows translation work to be performed, with instant visual feedback for both reference and translated languages, to ensure rapid and efficient translation work.
If external translators are used the easyTRANS stand-alone utility might come handy. easyTRANS does not contain any functionality not found in easyGUI, it merely allows remote translation to take place. A translation file is exported from the easyGUI project and shipped to the translator, along with the easyTRANS utility. Upon completion of the translation work the translator returns the language file, which is then imported back into the easyGUI project.
We do offer fonts especially developed for easyGUI. This means that we will make any font for you as a special order. All our fonts are developed from scratch, this means that they are not merely imported from an outside source. These are high quality fonts where each character has been positioned correctly and checked. Please contact us for prices and more details on this.
This is a list of fonts currently included in all easyGUI packages. You are however always welcome to contact us for an updated list.
Font name | Size in pixels |
ANSI 7 | 6×11 |
ANSI 7 bold | 7×11 |
ANSI 7 condensed | 5×11 |
ANSI 9 | 9×14 |
ANSI 11 | 9×17 |
ANSI 11 condensed | 8×17 |
ANSI 11 light | 6×17 |
ANSI 11AA 1 | 18×20 |
ANSI 13 | 11×21 |
ANSI 17AA 1 | 24×39 |
ANSI 19 | 17×31 |
ANSI 23AA 1 | 28×37 |
ANSI 24 | 19×39 |
ANSI 30 | 21×47 |
Unicode 7/14 bold 2 | 15×16 |
Unicode 9/15 2 | 16×17 |
Unicode 11/16 2 | 17×18 |
Icon 16×16 | 16×16 |
Icon 32×32 | 32×32 |
Icon 48×48 | 48×48 |
Icon 72×72 | 72×72 |
Icon 202×48 | 225×50 |
1) Anti-aliased fonts (AA) can only be used on color systems with at least 4 bits per pixel color depth.
2) The Unicode fonts are only part of the easyGUI Unicode package.
Please know that we also develop fonts as special orders. You are welcome to contact us should you be interested in this option. Please see our easyGUI InfoSheets, or contact us, for prices and more details on this.
Unicode is 16 bit character codes, allowing large character sets to be used. Traditionally only 8 bit character codes are used, allowing only ANSI character sets.
Please look at our website under the “Unicode explained” button, here you will find more information. Another source of information can be found at the Unicode Consortium web page at www.unicode.org
Currently the Unicode fonts in easyGUI contain character sets for these languages:
- Western languages
- Cyrillic (Russia)
- Polish
- Hebrew (Israel)
- Farsi (Arab)
- Thai
- Hiragana (Japan)
- Katakana (Japan)
- Kanji (Japan)
- Simplified and Traditional Chinese – about 20.000 characters
- Hangul (Korea) – about 12.000 characters
- Greek
If you are interested in other Unicode character sets we can make them for you as a special order. Please contact us for more information.
Installation & licensing
Yes, you may loan your license to a consultant or co-worker for a limited time of up to 6 months, however only the owner of the easyGUI license can make any additional purchases pertaining to the license.If the consultant needs to use the easyGUI license for more than 6 months, an additional license is needed. We do not transfer licenses between companies.
We do not offer this option.
Yes, but usually the Dongle works just fine with the drivers found in Windows. If you need a new driver use the link included with your software download Email. A dongle driver is also copied to the “Dongle” folder as part of the easyGUI installation. You are also welcome to write us and we will mail it to you.
Please note that you need at least easyGUI version 5.2.3 or higher for dongle usage, as older versions do not recognize the dongle.
No, we are sorry, but we do not have a MAC compatible version of easyGUI, as almost all of our customers exclusively use the Windows environment.
No, at this time we do not offer any educational discounts or demos. This is however something we are looking into offering.
We honestly try to have as simple and cost effective license system as possible.
You will need one license (i.e.dongle) per user. If you need more that one license you will have to purchase an additional easyGUI package (this includes a dongle) at full cost.
You may use the dongle for as long as you like. Once you have bought a license there are no additional fees to pay, no footprints and you may use the license for as many products as you like. Simple right?
The only additional cost would be if you needed a Support plan, an update, upgrade or any Add-on products.
You are only allowed to have one Dongle per license. We do not sell extra Dongles. If you need an extra license you may purchase an additional easyGUI software package, as this purchase includes a dongle.
If you loose your easyGUI dongle, we are unable to replace it for you. The only way to get a new dongle would be to purchase an new easyGUI package. Every easyGUI package includes an easyGUI dongle. An easyGUI package is either an easyGUI Monochrome, Color or Unicode.
On one machine at a time.
With our Dongle license you can easily install easyGUI on up to 5 machines and then move the Dongle from machine to machine. Only one machine can be in use at any one time.
you may loan your license to a consultant or co-worker for a limited time of up to 6 months. Should they wish to make additional purchases during this time, they can only order through the original buyer. Also they will be able to receive support only if they hold a valid easyGUI support plan, in their name. The support plan can be purchased after IBIS solutions has written permission from original buyer. all support plans are personal, and are valid for one person only.
On more than one machine at a time.
Should you need to work on more than one machine at the same time, you will need an additional dongle, and therefor will have to purchase an additional easyGUI license.
Yes, this is possible in two ways. With our Dongle license you can easily install easyGUI on up to 5 machines and then move the Dongle from machine to machine. Only one machine can be in use at any one time.
Should you need to work on more than one machine at the same time, you will need an additional dongle, and therefor will have to purchase an additional easyGUI license.
No, a Dongle is not an extra license. We are not able to issue you any software keys, as the license key is already embedded in the Dongle. We only sell our software with the Dongle license. But with the dongle you gain the advantage of being able to install easyGUI on up to 5 machines, and then move the Dongle around between them.
At this time we do not offer any other kind of license.
You can only have one dongle per easyGUI license.
Usually our Dongle works with the drivers found in Windows, but if your Dongle doesn’t seem to work, the first thing you should do is to check if you have the latest Dongle driver. Use the link included with your Dongle license. A dongle driver is also copied to the “Dongle” folder as part of the easyGUI installation. If this does not solve your problem please write to us, and we will either mail you the latest driver or solve the problem for you.
Please note that you need at least easyGUI version 5.2.3 or higher for dongle usage, as older versions do not recognize the dongle.
A Dongle is a small USB device that you can use instead of a software license key. With a Dongle license you will be able to install the easyGUI software on up to 5 machines, then move your Dongle around as you need it. The dongle licensecan only be used on one computer at a time. The Dongle has all the necessary software license data embedded in it, and this information is automatically detected by easyGUI each time the software is initialized.
You are only allowed to have one Dongle per license, as the Dongle is not considered an extra license.
Please note that should you loose your easyGUI dongle, we will be unable to replace it for you. We do not offer dongle replacements.
Windows XP or higher is required. These have been tested, with no problems found.
Purchase
Yes, when easyGUI is combined with the easySIM feature a special display driver for the Windows 32 bit API is added. Combined with a suitable PC compiler (Borland C++ Builder 5 or higher, Microsoft Visual Studio 2003 or higher, or DEV C++ 4.9.9.2 or higher) the end result is a standard Windows application, where the display output produced by the easyGUI library is shown. The easyGUI library is exactly the same as used on the target system, except for the display driver.
When you download our software, a PDF user manual is included. You will also always find it under “Downloads” on our web site. Please note that the manual version numbers do not correspond to the software version numbers.
We do not offer a printed manual at this time.
Yes we accept all currencies, but only if you pay by Bank transfer. Also; a small fee will be added to the transaction.
If you would like to make payment in another currency than EURO, please get in touch with us at sales@ibissolutions.com before payment.
Yes, we develop special orders/offer consultancies/project debugging on a continuous basis. Please contact our Customer care department for more information support@ibissolutions.com
We carry a selection of Add-ons for easyGUI. Both the easyCOMP toolset , along with others are described under the heading “products” in the menu. New Add-ons are continuously under development by our R&D department.
We also offer consultancy services, development services, file debugging, display drivers, font development and special orders such as new features for easyGUI.
Please get in touch us we will be happy to email you some PDF InfoSheets with general information, or answer any specific questions you might have. The InfoSheets can also be downloaded from this site (under the “Download” tab).
To cancel your order simply just let us know that you no longer wish to purchase our product. We will then make sure to cancel it for you.
Different cancellation practices apply to different easyGUI products:
The easyGUI package, you can only cancel your order during the 14 day trial period.
Our add-ons. Before we can cancel your order (within 14 days of purchase only) we will need your easyGUI dongle shipped back to us (via signed for delivery). This applies only if your easyGUI dongle has already been updated. We will then update your dongle and ship it back to you. We will issue you a temporary license for the duration of this period.
Support plans: let us know, and we will cancel it for you (within 14 days of purchase only). If you have used the plan, we can not cancel it for you.
As always; get in touch if you have any questions support@ibissolutions.com
Please contact us using our contact form. We will usually have a download ready for you within 24 hours. Our easyGUI DEMO is valid for 30 days, and is fully functional, except that you will not be able to generate c &h files for the target system.
You can easily order by going to our web shop, here you can pay with most major credit cards. We currently accept: Visa, Visa Electron, Eurocard, MasterCard, Maestro, CUP, JBC. We also accept ordinary Bank Transfer, as well as PayPal.
You are also welcome to mail us a PO directly, request an invoice and pay your order by bank transfer.
We do not accept credit card information via E-mail or by phone.
These two products are now a part of the easyGUI package, and can therefore not be purchased as a separate item.
Monochrome’s work environment is 1 bit monochrome (not grayscale with more than two color shades, for that you will need the Color version), easyGUI Color has color/grayscale capabilities as well as monochrome, and the Unicode version has both monochrome, color/grayscale and Unicode capabilities, and both ANSI and Unicode character coding, in any combination.
When you place an order with us, you will shortly thereafter receive a download mail. Included in this mail will be a temporary software license key, valid for 14 days. . You will have 14 days to evaluate easyGUI. A dongle (The permanent easyGUI license) will be shipped to you, using FedEx. You may cancel your order during the 14 days trial period you must inform us by mail, fax or phone. If you have not canceled your order, either by calling or writing us, we will charge your credit card after 14 days. For bank transfer orders the dongle is not shipped until payment has been received. In all instances easyGUI is fully functional under the temporary license key.
We do not offer CD or printed manuals at this time.
We always ship the Dongle using FedEx, it usually only takes a few days. We ship worldwide. Our costumer will always be responsible for any and all customs fees, duty fees etc. The dongle will not ship until payment has been received. We will not expect payment, nor charge your credit card until after your 14 day trial period is over. The dongle will ship on the 14th trial day. easyGUI will be fully functional under the 14 day temporary license period.
With an easyGUI purchase you will receive our easyDRIVER library free of charge. This add-on gives you support for more than 200 controllers.
If you are missing a driver, either make your own driver or have us deliver one for you. Please see our web shop for prices.
All our drivers are BASIC drivers. This means that you always will have to tweak them to your specific setup. Also as we cannot test our drivers with every single hardware etc possibility, there will also always be some testing to be done by you. So please allow your self time for these tasks.
If you need a more advanced driver, or an additional feature for your driver, please get in touch as we might be able to develop if for you as a special order.
We currently offer three different easyGUI packages: A Monochrome version, a Color version and a Unicode version. The Unicode version supports all 3 modes, while the Color version includes the color mode and the Monochrome mode. The Monochrome version runs strictly in 1 bit monochrome mode.
All the above packages include all you need to get started, including the following:
- A download link, mailed to you, usually within 24 hours.
- A 14 day, and fully working temporary license key.
- Our easyGUI driver library, currently supporting more than 200 controllers..
- A FREE 3 month support plan.
- An easyGUI dongle.
Please read more on our web page under “The easyGUI package”, or contact us for further info (contact detail in footer).
easyGUI is a software package used to easily develop graphical user interfaces in embedded systems. We currently have customers from more than 55 countries, and we ship worldwide.
IBIS Solutions ApS, who produces easyGUI, also offers consultancies, Font developments, special orders etc. Please read more about our products at www.easygui.com or contact us for further information (contact details in footer).
We do not offer CD or printed manuals at this time. Our software is download only, and our manual is offered as a PDF.
Support
No, we are not connected with Python.
Have you lost your easyGUI software, and need a new download package? Please purchase item no.: 298-412 in our web shop. Always include your easyGUI license number as well as the exact version number needed (x.x.x.xxx).
easyGUI is compatible with most display controllers in production currently or in the past. And we are continuously adding drivers to the list.
If you can’t find your driver on the list below, or the driver isn’t part of your driver library, we can deliver a driver for your display controller of choice. Please see our web shop for further details.
AT32AP7000, AT91RM9200, AT91SAM9261, AT91SAM9263
AX6108/AX6107, AX6120, AX6963
BVGP
D51E5TA7601
F5529
FLEVIPER
FSA506
H8S2378
HD61202
HX8238_AT32AP7000, HX8238_TMP92CH21
HX8312, HX8345, HX8346, HX8347, HX8347G, HX8352A
ILI9320, ILI9341
IST3015
KS0108B/KS0107B, KS0708/KS0707, KS0713, KS0715, KS0717, KS0718, KS0719, KS0723, KS0724, KS0728, KS0741, KS0755, KS0759
LC7981
LH155BA, LH75400, LH75401, LH75410, LH75411, LH7A400
LPC1787, LPC2478, LPC3230, LPC3250, LPC408X
MPC5606S
MX257
NJU6450, NJU6450A, NJU6452, NJU6570, NJU6575, NJU6673, NJU6675, NJU6676, NJU6677, NJU6678, NJU6679
NT39016D
NT7108/NT7107
NT7501, NT7502, NT7508, NT7532, NT7534, NT75451
OSD35GN827A
OTM2201A
PCF8548, PCF8813
PIC24FJ256
PT6520
PXA320
R61505, R61509, R61526
RA8803, RA8822, RA8835, RA8875
S1D10605, S1D10606, S1D10607, S1D10608, S1D10609, S1D13305, S1D13505, S1D13506, S1D13700, S1D13704, S1D13705, S1D13706, S1D13715, S1D13742, S1D13743, S1D13748, S1D13781, S1D13A04, S1D13A05
S1D15600, S1D15601, S1D15602, S1D15605, S1D15705, S1D15707, S1D15708, S1D15710, S1D15721
S6B0108/S6B0107, S6B0108A/S6B0107A
S6B0708/S6B0707, S6B0713, S6B0715, S6B0716, S6B0717, S6B0718, S6B0719, S6B0721, S6B0723, S6B0724, S6B0725, S6B0728, S6B0741, S6B0755, S6B0759
S6B1713
S6B2108/S6B2107
S6B33BL
S6D0129, S6D0139
S6E63D6
SBN0064, SBN1661
SED1335, SED1374, SED1375
SED1520, SED1530, SED1565
SEPS525
SH1101A, SH1123
SPFD5408
SPLC501, SPLC502
SSD01303, SSD0323
SSD1289
SSD1303, SSD1305, SSD1322, SSD1325, SSD1339
SSD1805, SSD1815, SSD1848, SSD1852, SSD1857, SSD1858, SSD1859
SSD1905, SSD1906, SSD1926, SSD1963
SSD2119
ST75256, ST7529, ST7541, ST7561, ST7565, ST7565S, ST7567, ST7571, ST7586
ST7637
ST7715, ST7715R
ST7920
T6963
TL0313, TL0324
TLS8201
TMPA900
TS7390
UC1601, UC1606, UC1608, UC1610, UC1611, UC1611S, UC1617, UC1698
UC1701
UPD161607
WG24064
We do not have a newsletter available at this time. We send out new release announcements etc. to our current customers. If you would like to be notified please let us know and we will add you to the list. If you do not want to be notified please let us know and we will remove you from said list.
Yes, we certainly do. We speak both Danish and English.
You are always welcome to write us. We will do our best to help you. If you have just bought your software you will have 3 months complimentary and free support plan. Please make sure that the support plan is in your name, as all support plans are personal and valid for one person only.
If you are not covered by the free support period, you need to purchase a Support plan, before we can forward your request to our support staff. The Support plan can be purchased in our web shop, or by mailing us a PO. Please always include a license number.
If you suspect a bug to be the cause of your problem we are always here help you. Please get in touch with us, we don’t like bugs and we appreciate any chance we get to fix them.
Each software package has its own strategy on how to offer GUI functionality to the software developer. While others have gone for a pure library solution, with a large number of function calls, easyGUI has gone a different route, moving much of the graphical work to a PC based development center (the easyGUI PC development center) – this approach offers substantial benefits, as the PC platform is inherently well suited for visually oriented tasks like GUI development. Individual screen are developed in the easyGUI development center, which then exports code for the target system, in the form of simple c/h files. A large part of the GUI development work is thus moved from embedded C code writing to the easyGUI development center.
All easyGUI packages include a full font editor, multilingual support, fonts, a large number of display drivers, display rotation, and much more. easyGUI Unicode supports 16 bit character codes, making it easy to develop firmware with e.g. Asian and Middle East languages using special, and often very large character sets. All easyGUI packages except easyGUI Monochrome support any color depth up to 24 bits per pixel.
The easyGUI library handles all aspects of the display handling, from initialization to screen rendering. Touch screens are of course supported. No pre-compiled source is used, everything is in plain C code.
We offer 1 or 2 year Support plans. Whichever you purchase you can call, write or FAX us as much as you like. We usually answer you within 1-2 days, a lot of the time even the same day. Some times are of course more busy than others. Remember that our offices are closed all weekends and holidays, and that official holidays differ from country to country.
In order for you to purchase an easyGUI support plan, you must be the owner of the easyGUI dongle the plan will be connected to.
An easyGUI support plan will cover all basic problems and questions. Should you have a more complex problem, please contact us regarding our consultancy services. We also offer development services.
We do include a complimentary and free 3 month support plan with the purchase of any easyGUI license.
Please make sure that the support plan is in your name, as all support plans are personal and valid for one person only.
For general product information etc. you are welcome to call or write us at any time ( see our contact info in footer).
If you are in need of technical support you will need a Support plan, you can purchase this in our web shop. In order for you to purchase an easyGUI support plan, you must be the owner of an easyGUI dongle license. All easyGUI support plans are personal, valid for one person, and they are not floating plans.
For more complex problems we offer consultancy services. Please get in touch with us for more information.
Thank fully we do not find many bugs in our software, but no software is totally without bugs. We mail out bug fixes once, at the most twice a year. If you hold an easyGUI support plan you will automatically be notified, otherwise you will find the information on this website or contact us.
Major software releases are made when significant new functionality has been implemented. Usually a major release contains several groups of new functionality. We will send out a newsletter and make an announcement when we release a new version.
If you suspect a bug to be the cause of your problem we are always here help you. Please get in touch with us, we don’t like bugs and we appreciate any chance we get to fix them.
We always appreciate customer feedback and suggestions very much, both the good and the bad. easyGUI is very much “made by our customers”, in the sense that many of its functions are actually our costumers wants or needs. Things you told us you would like to see, needed badly needed, would “just like to have” for a project project. Features that you thought might be useful for a certain task, thought would be “fun” to have, ”a real time saver”, or just innovative ideas of yours. Of course they were all things that we could also see other developers use, or save time with. You are always welcome to submit any great idea, or suggestion that you might have. We will then forward your thoughts and ideas to our software designers, they will then have a look at it, and maybe work it into the next version of easyGUI. We can’t promise anything of course.
If you are in need of a special function in easyGUI, we can develop it for you as a “Special order”. Please contact us for more information on this service.
We would appreciate that very much, we are always looking for Customer stories. All you do is mail us your contact info, screen shots of your product interface and a short description of your product as well as your experience with easyGUI. We will get back to you if we have any questions for you. Thank you.
Thank you!
You are welcome to mail your logo to us if you use our products. Include your logo in high resolution/good quality, also include your web address, so we can link back to you. We are always interested in seeing what you are doing with easyGUI as well. After we have received your details will place your logo on our logo/costumer page – with thanks and appreciation.
We are a small company located in Denmark called IBIS Solutions ApS. The company was founded back in 1999, and we started selling easyGUI in 2004. easyGUI has been in development since the early 1990’es. We work on the premise of always trying to make a product that is both reliable and easy to use – this and our many customers around the world comes first to us, we hope this is evident in our practices and in our products.
All contact regarding either easyGUI or IBIS Solutions ApS should be made to the below address. We will then forward your inquiry to the appropriate person.
IBIS Solutions ApS
Torvevangen 24, DK-4550 Asnaes, Denmark
SE/CVR/VAT no.: DK 27 06 03 07
Fax: +45 7023 0495
E-mail: sales@ibissolutions.com
Please observe that our office hours follow the Greenwich Mean Time (GMT) + 1 hour.
Please contact us at Phone number: +45 7022 049
We have no set hours of operating as we cater to customers worldwide. But in general we have office hours between 9.00 am and 7 pm, note that we follow the Greenwich Mean Time (GMT) + 1 hour. Our offices are closed most weekends, and all holidays. Note that national holidays differ from country to country, and some periods are busier than others.
The company developing and selling easyGUI and its related products is IBIS Solutions ApS, and our head offices are located in Denmark, just outside Copenhagen. The company also has several smaller departments in other parts of Europe. We speak both English and Danish.
If you open the easyGUI application, and navigate to the “File” or “Home” tab, you will find an easyGUI license button.
Yes, you will receive 3 months complimentary free support when you purchase a full version of either easyGUI Monochrome, Color or Unicode. This is to get you started in a good way. We offer no free support with the purchase of upgrades, updates, add-ons etc. If you need support beyond the first 3 months, you are always welcome to purchase a “Support Plan” – choose between 1 and 2 years.
Using easyGUI
easyGUI is compatible with most micro and display controller on the market, with a few exceptions:
Displays with non-quadratic pixels. Today most display solutions with elongated pixels have disappeared, but a few remains. easyGUI is not intended for this type of displays. Technically easyGUI will work, but the display representation shown in the easyGUI development center will not match the real display, regarding aspect ratio.
Some older version in the Texas TMS320 family do not support 8 bit data types. easyGUI can be used with these processors, but as easyGUI generated data are largely byte based it more memory will be used than normally.
Very small processors with only a few KB of FLASH memory are too small for the easyGUI library, which requires about 25KB in its basic form.
No, the screens (or “structures”) can have dynamic contents, controlled by variables set at run-time in the target system. Structure can call other structures, either directly or controlled through variables at run-time. Structure calling can be made to any depth, only limited by stack space. Very complex structures can thus be created, with e.g. parts of the display changing based on function to be shown, dynamic behavior on the display, differences between several hardware versions of the device, etc.
Yes, that is not a problem. In fact, we have many customers using various flavors of Embedded Linux.
easyGUI is intended for embedded applications with medium complex GUI interfaces and low processor power / memory resources, not the highly complex GUI’s of smart phones, where memory and processor power is plenty.
Yes you can rotate your display any way you would like, up, down, left or right. This is all done independent of display controller, micro controller and compiler.
easyGUI is intended for embedded applications with medium complex GUI interfaces and low processor power / memory resources, it therefore does not support very memory / processor intensive widgets like video. It is however fully possible to use easyGUI for most of the GUI, and then handle video separately.
That depends. Normally easyGUI uses an internal display buffer in RAM, for building up the display image. This buffer is then copied to the display controller, using the transfer method encoded in the display driver. Only parts changed since the last update is actually copied, in order to save time.
You may bypass the internal display buffer in RAM if the display controller buffer is directly mapped into the microcontroller memory space. As the easyGUI internal display buffer is organized exactly as the display controller RAM it is possible to edit the easyGUI library so that the declaration for the internal buffer is placed at the display controller buffer RAM location (through e.g. a Pragma directive, that depends on the compiler in use).
The reason for the intermediate buffer in easyGUI is two-fold. Both reasons are rooted in the fact that an easyGUI structure (collection of items to display) can consist of many parts, which more or less overlap, e.g. a box containing texts and other components. In fact, this is often the case. The reasons are:
- Many display controllers are very slow to write to, either because of the display controller itself, or because of the way it is hooked to the micro controller (like e.g. port access). So, to speed up the system, the minimum amount of actual display writing is sought.
- Writing overlapping parts directly to the display controller RAM will result in flickering, because partial display images might be visible for very short times.
The first reason is not that relevant with the newer color based, relatively high resolution, display controllers, which are far more efficient in moving around display data than older designs.
No, we do not have a LINUX compatible version of easyGUI, however we know that this is a wish from some developers, and are considering developing a version. Please write us to let us know that you would be interested in this version.
Please observe that easyGUI works fine with e.g. Embedded Linux. The above comments only pertain to the PC development environment.
Yes, there is a collection of graphical primitives in the easyGUI library, for drawing lines, boxes, circles, ellipses, characters, bitmaps, etc. The graphical primitives are usually called as part of the screen structures constructed in the easyGUI PC development center, but can also be called directly from the target system code.
Yes, to a certain degree. Simple animation can be handled by using indexed structure calls, with the controlling variable toggled at run-time.
Yes. Individual characters of a text string can blink, or the complete text. This also works on Paragraph items, which shows many lines of text in one component.
Yes, the display is always handled as a graphical canvas, meaning that all visual components can be placed at any position, down to the pixel level. Text and icon fonts can have any size, up to 255×255 pixels per character. Bitmaps can have any size.
Yes, by using a Paragraph item the text can scroll vertically, either pixel by pixel, or text line by text line, as desired. Horizontal scrolling can be handled through a variable being part of the X coordinate, with the variable value being incremented at run-time.
The easyGUI library is written in plain C code, therefore working with virtually all embedded C compilers. Other compiler types are not supported.
A single command in the easyGUI library (GuiLib_ShowScreen) displays a structure created in the easyGUI PC development system. Each structure can consist of many items, where each item can be a text, a graphical component, or even calls to other structures, either directly or controlled through variables at run-time. When issued, the GuiLib_ShowScreen call displays the data based on the currently active language, and eventual variables set previously. The coding actually implemented in the target system is thus minimal, compared to traditional approaches.
Each software package has its own strategy on how to offer GUI functionality to the software developer. While others have gone for a pure library solution, with a large number of function calls, easyGUI has gone a different route, moving much of the graphical work to a PC based development center (the easyGUI PC development center) – this approach offers substantial benefits, as the PC platform is inherently well suited for visually oriented tasks like GUI development. Individual screen are developed in the easyGUI development center, which then exports code for the target system, in the form of simple c/h files. A large part of the GUI development work is thus moved from embedded C code writing to the easyGUI development center.
All easyGUI packages include a full font editor, multilingual support, fonts, a large number of display drivers, display rotation, and much more. easyGUI Unicode supports 16 bit character codes, making it easy to develop firmware with e.g. Asian and Middle East languages using special, and often very large character sets. All easyGUI packages except easyGUI Monochrome support any color depth up to 24 bits per pixel.
The easyGUI library handles all aspects of the display handling, from initialization to screen rendering. Touch screens are of course supported. No pre-compiled source is used, everything is in plain C code.
There are four major parts of an embedded system using easyGUI:
- easyGUI library files.
- easyGUI display driver files.
- easyGUI files generated by the easyGUI PC application, containing constants, fonts, user interface displays, and variable declarations.
- Normal user supplied source files.
All files are compiled and linked as normally to generate the final binary.
Some characters are missing in the generated font data – check the font selection, i.e. the characters included in GuiFont when generating font data. The font in question is probably set to “All characters in use in structures” (Font editing window, Selection tab page). You need to additionally add all digits and relevant characters by selecting the “All numerical character” option, or alternatively (if memory is not a problem) include the complete font (“All characters in font”).
You are probably using the wrong GuiLib.h file. All easyGUI library files must confirm to the easyGUI PC application version in use, except for the GuiDisplay.c file (the display driver), which can usually be kept from older projects. Furthermore, make sure all files are regenerated from the easyGUI PC application (fonts, structures, etc.), before making the first compile/run session.
Another possible error is to include GuiGraph, or GuiGraphXX in the linker setup. These are include files, not complete C units. Only include GuiFont, GuiStruct, GuiVar, GuiLib and GuiDisplay in your linker setup. For external references from your own code only GuiLib.h needs referencing. GuiLib then itself references all other necessary easyGUI modules.
Both! But compromises must of course be made.
In certain areas easyGUI is more optimized for speed than size – an example is display writing of a single character. This operation must be as fast as possible, as it is used extensively in almost any type of user interface.
An example of code size optimization is storage of font and display data in the target system. Here a very compressed format is used, which at the same time does not require time-consuming unpacking routines.
Yes this is possible, but please observe that most 8051 derivatives are pretty slow, by modern standards. Only small, monochrome displays should be used for this configuration, unless your demands for display writing speed are very modest.
Yes, we have many customers using ARM controllers. Also the ARM types with build in display controller can be used.
Yes. Because of the special handling of flash memory by the AVR controllers there is a special AVR flag in easyGUI, which must be set.
Yes this is possible, but please observe that the V25 controller is pretty old, and thus not very powerful. Only small, monochrome displays should be used for this configuration, unless your demands for display writing speed are very modest.
Yes, easyGUI contains a complete touch interface. The touch screen support is made without direct hardware access, so the user supplies the connection coding. Any type on touch interface is thus possible.
The touch system starts with the user defining touch areas in the easyGUI editor with a “Touch area” item type. In the easyGUI library is adjustment routines, for correlating the touch coordinates with display coordinates, if needed (depends on the touch hardware). Then, when the embedded code receives input from the touch system these coordinates are used as an argument in an easyGUI library call. The coordinates are first corrected (if set to do so), and then compared with the currently active touch areas. The function returns information on the area hit, or if it was a no hit.
Yes, the easyGUI library is delivered as full source code in plain C. The library thus compiles and links just like the other files in the embedded project.
easyGUI is a software package used to develop graphical user interfaces in embedded systems. The software makes the task both easier and faster. easyGUI is available in Monochrome, Color and Unicode versions. Besides easyGUI we have the easyTRANSLATE and the easyCOMP toolset. Several more Add-on products are currently in development, and they will make easyGUI even more versatile to work with in the future.
In the easyGUI PC development system a Language window allows translation work to be performed, with instant visual feedback for both reference and translated languages, to ensure rapid and efficient translation work.
If external translators are used the easyTRANS stand-alone utility might come handy. easyTRANS does not contain any functionality not found in easyGUI, it merely allows remote translation to take place. A translation file is exported from the easyGUI project and shipped to the translator, along with the easyTRANS utility. Upon completion of the translation work the translator returns the language file, which is then imported back into the easyGUI project.
easyTRANS license is a part of the easyGUI package.
The easySIM feature is a part of the easyGUI package.
easySIM was created for simulating the target system display output on the PC. The easySIM add-on package contains a special display driver for the Windows 32 bit API. Combined with a suitable Windows compiler the end result is a standard Windows application, where the display output produced by the easyGUI library is shown in the PC application. For many purposes this is a big advantage, be it for demo, simulation, test, or other purposes. In essence the easyGUI PC simulator emulates the embedded system display on the PC through the easySIM special display driver. Exactly the same graphical library is used as on the target system, ensuring 100% the same output.
easySIM can be employed in many levels of complexity, ranging from simple representations of the display images, up to complete emulations of the target system, including hardware simulation, depending on the purpose of the simulation.
For compilation on the PC a suitable C++ compiler is needed. easySIM is delivered in several variants, each suited for a specific compiler:
- Borland C++ Builder 5 (or higher) C compiler for Windows.
- Microsoft Visual Studio 2003 (or higher) C compiler for Windows.
- DEV C++ 4.9.9.2 (or higher) GNU compiler for Windows. This product is free, if used under the license rules of the GNU General Public License. Please look at http://www.bloodshed.net/devcpp.html for further information.
The final executable will look almost 100% the same, no matter which C++ compiler is used. Other C++ compilers might work, but will probably require some coding in the display driver and project setup.
The user interface layout is not influenced by the selected target, PC or embedded platform. You must of course write code in the easySIM source code, just like writing code in your embedded source code, in order to control easyGUI, but the functions are exactly the same, because the library is the same. In fact, much code can be copied directly from your embedded source, or vice versa. An easyGUI project can be used for both purposes – target system and/or PC simulator. The only difference is a selection between the two modes in the C file generation window, as explained in the user manual, so that the generated files are suitable for the intended target.
easyGUI creates a number of c and h files, each time a C code generation command is issued. GuiConst.h contains setup constants and compiler directives, GuiFont.c/h contains font data, GuiStruct.c/h contains structure data, i.e. data for displaying the user interface, and GuiVar.c/h contains variable declarations.
All data in GuiFont and GuiStruct are stored in highly compressed formats, in order to minimize ROM requirements. At the same time the compression technologies have been selected to enable quick unpacking, in order to bring down execution time.
Estimating RAM/ROM requirements is a hard question, as there are so many individual variables to consider for a particular project that one can’t really say anything in general. But please know that it varies a lot depending on many, many factors.
easyGUI use an internal RAM display buffer for building the display image, before sending it to the display controller, plus an additional amount for general housekeeping. However, the internal buffer can be dispensed with, if the display controller RAM is directly accessible on the address bus.
The amount of RAM relies heavily on three factors: Display size, color depth, and complexity of the user interface. Some typical values are (including internal display buffer):
RAM usage: 2KB + (Display width x Display height x Bits per color) / 8.
- 128×64 pixels monochrome: 2KB + (128x64x1)/8: ~3KB RAM
- 240×128 pixels monochrome: 2KB + (240x128x1)/8: ~6KB RAM
- 320×240 pixels monochrome: 2KB + (320x240x1)/8: ~12KB RAM
- 128×64 pixels 16 color: 2KB + (128x64x4)/8: ~4KB RAM
- 240×128 pixels 256 color: 2KB + (240x128x8)/8: ~33KB RAM
The RAM requirements will be bigger when advanced features like e.g. cursors, scrolling, clipping, blinking, etc. is used.
Estimating RAM/ROM requirements is a hard question, as there are so many individual variables to consider for a particular project that one can’t really say anything in general. But please know that it varies a lot depending on many, many factors.
The amount of ROM relies heavily on one factor: Complexity of the user interface. A more complex user interface uses more functionality of the easyGUI library (which is divided into sections), and demands more font data and more screen structures. But some projects uses only a few fonts with many screen structures, while others might have a relatively simple user interface, but uses big Unicode fonts with Asian character sets.
Some typical values are:
ROM usage: 21KB + font data + structure data.
- Low complexity GUI (50 structures), 2 full ANSI text fonts, 1 partial big ANSI font, 2 icon fonts: 30KB~50KB ROM.
- Medium complexity GUI (250 structures), 2 full ANSI text fonts, 2 partial big ANSI fonts, 4 icon fonts: 60KB~100KB ROM.
- High complexity GUI (400 structures), 4 full text ANSI fonts, 2 partial big ANSI fonts, 6 icon fonts: 100~150KB ROM.
- High complexity GUI (400 structures), 3 full text ANSI fonts, 3 full text Unicode fonts (Simplified Chinese, approximately 2000 characters per font), 2 partial big ANSI fonts, 6 icon fonts: 200~350KB ROM.
These sizes also depend on display size, as bigger displays tend to have more complicated user interfaces, and uses bigger fonts.
The ROM requirements can be somewhat lessened by excluding features of the easyGUI library, like e.g. cursors, scrolling, clipping, bitmaps, etc.
At this time we are unable to recommend any specific hardware. The market differs from country to country, the selection process is also very individual. Another reason is the fact that we would not be able to make a good recommendation without knowing your project. One of the strengths of the easyGUI system is that it can be used with virtually all embedded displays, either as it is, or with the addition of a suitable display driver, which we can provide on demand.
We suggest that you take this up with your hardware specialist, as he will no doubt be able to help you.
easyGUI can be used with all sorts of microcontrollers, provided that their C compiler is ANSI X3.159-1989 Standard C compliant. easyGUI only uses standard C code in its library, no C++ code is used.
The processor must of course have sufficient power to run the display in graphical mode, which is somewhat more demanding than old style alphanumeric modes.
Yes, by using the easySIM feature, which along with a suitable Windows compiler will produce a standard Windows application, where the display output produced by the easyGUI library is shown, 100% like on the target system.
Yes, you will receive our easyDRIVER driver library, with this add-on you will have support for more than 200 controllers. All these drivers are included in your easyGUI package free of charge.
If we should not have a driver for your controller of choice, we can develop one for you. Please see our web store for prices, or contact us for further detail.
All our drivers are BASIC drivers. This means that you always will have to tweak them to work with your specific setup. Also as we cannot test our drivers with every single hardware etc possibility, there will also always be some testing to be done by you. So please allow your self time for these tasks.
If you need a more advanced driver, or an additional feature for your driver, please get in touch as we might be able to develop if for you as a special order.