For one of our customers, we were looking for a mobile Point-of-Sale (POS) terminal, which would cost less than the bigger names in that market (e.g. Verifone), but would still allow us to develop applications on it.
The mobile terminals from Verifone are quite expensive, more than 500 EUR per terminal.
In the end, we settled for the Castles VEGA 5000, running on Linux, and supporting GSM/GPRS, Ethernet and dial-up modem. At almost half the cost of the Verifone terminals, this was the most interesting unit we could find.
2 weeks ago we received the units, and started developing. The SDK uses the NetBeans IDE, cygwin, the mipsel-linux-uclibc-gcc, and some platform specific libraries to compile the C code into native applications that can run on the terminal.
To give you an idea of the library functions, quick-n-dirty,
CTOS_BackLightSet(d_BKLIT_LCD, d_ON); CTOS_LCDTClearDisplay(); CTOS_LCDTPrintXY(1, 4, "\fr INITIALIZING...\fn"); CTOS_TCP_GPRSInit(); CTOS_PPP_SetTO(PPP_TO_MS); CTOS_TCP_GPRSOpen(baLocalIP , "internet.proximus.be" , "web" , "web"); CTOS_LCDTClearDisplay(); CTOS_LCDTPrintXY(1, 1, "\fr MY APP \fn"); CTOS_LCDTPrintXY(1, 3, "1. ITEM 1"); CTOS_LCDTPrintXY(1, 4, "2. ITEM 2"); CTOS_LCDTPrintXY(1, 5, "3. ITEM 3"); CTOS_KBDGet ( &key ); etc..
Development was easy, obviously you’ll need some C knowledge, but the API documentation is quite extensive, with a lot of examples, etc.
The application communicates over GPRS to a central server on which all the dynamic menu items are stored, credit balance per account, etc. These units will be mostly used to generate calling card numbers, and provide an easy way to issue them to customers.
Normally, next month we’ll deploy some units to shops, and see how it goes.
I just love new toys!