TM a One-Stop Shop for Java Embedded Applications GeeseWare offer brings Java in your constrained embedded systems. You develop and simulate your Java application on PC, and enjoy a seamless hardware validation. You will enjoy small memory footprint, high execution speed and reliable applications. GeeseWare solution is made of a software development toolkit and hardware boards. One-Stop Shop for development and production. www.geeseware.com
GeeseWare Java Development Environment for Embedded Applications Java technology for industrial, real time and embedded applications becomes real. Agile development process, with early customer validation and feedback does reduce time - to - market and brings a seamless stream to deployment. This is simply available with GeeseWare Solution. daily meeting functionalities backlog new iteration functionalities 2-4 weeks iteration increment shippable product customer validation and feedbacks Agile development process MicroEJ JPK guarantee a 100% functional compatibility between its software and hardware environments. Consequently an application fully qualified on your PC IDE is ready to be directly uploaded (binary code) to the hardware board without any change, recompilation and requalification. This is especially helpful for HMI graphical applications. Application development and simulation Java application libraries libraries JVM Simulated Java Platform Embedded Java Platform Seamless hardware validation 2 The magic that can happen when one hundred minds move in a single direction
The main benefits and added values of our solution are the following: A much better productivity since the application development can be up to five times faster than traditional software technologies like C. Java code is more robust and eliminates programming bugs often due to complex memory management task. A great efficiency since application development, simulation and debug is performed on PC. The embedded application Java code can be reused and the maintenance is simplified. The Java virtual machine guarantees the application binary image portability across different platforms. Average Size of a Java Virtual Machine Less than 50Kbytes Flash Average Application Code size (Touch Demo) 200Kbytes Flash Average Application Data size (Touch Demo) 32Kbytes RAM Is Java Fast? Can be as fast as C Does it improve start - up - time? Needs a few milliseconds only Facts Development Cost 100 % 80 % Specifications hardware &software development Prototypes System test Since embedded applications become more complex and source code size keep growing, an alternative to traditional C/C++ is needed. decisions impact cost changes costs Time More than 60% of today s embedded projects cost are software costs. With Java technologies, designers get higher software quality, improved design productivity, and can keep - up C - like performances. Project Development Lifecycle The magic that can happen when one hundred minds move in a single direction 3
GeeseWare The Java virtual Machine Java is more than a programming language. It is a set of design concepts (abstractions levels, inheritance, polymorphism, error exception, multi - tasking, etc.). This brings new features that become mandatory for embedded applications. It provides solutions to develop more robust, secure and scalable applications than in C/C++ Language. GeeseWare solution includes a Java Virtual Machine (JVM) designed by IS2T called MicroJvm that is a software processor that executes the Java application. This JVM has been built for a STM32F207 ARM Cortex - M3 architecture today, but can be made available for any other architecture in keeping your application code. MicroJvm virtual machine supports a hardware platform through the Simple Native Interface (SNI ) to manage board specific features. Consequently, this goes out of Java embedded application developers tasks. MicroJvm virtual machine offers to developers of embedded applications a unique very small memory footprint, high speed Java engine thanks to optimized Java software libraries bundles and a unique Java accelerator technology that dramatically improves software libraries execution speed. MicroJvm virtual machine supports your existing C/C++/asm legacy, which can easily be integrated in your Java Platform. It features multi - tasking capabilities, an efficient garbage collector, a Java bytecode execution accelerator and memory footprint optimizer. You can compete against C in Application development terms of speed while enjoying Java advantages. In addition, you will enjoy a dramatic seamless boot time through baremetal native support. We also offer customization for specific application optimization requirements through professional service. optimized Java libraries RTOS driver Java application java virtual machine driver standard Java libraries driver Java simulator custom Java libraries simple native interface driver mocks Platform architecture 4 The magic that can happen when one hundred minds move in a single direction
GeeseWare Board Feature GeeseWare development boards are based on a STM32F207 ARM Cortex - M3 Flash microcontroller. In addition, the board offers a 4.3 TFT Touch screen LCD interface and a number of peripherals to let you get quickly an up and running application. Hardware platform STMicroelectronics STM32F207 1024 Kbytes Flash 128 Kbytes SRAM CPU Board ARM Cortex - M3 core based microcontroller Small-factor board 37x67,5mm On - Board Memories Ethernet Interface 2 MBytes RAM 4 MBytes NOR Flash 10/100 Mbps Phyceiver Connector SO - DIMM 200 Secure Microcontroller Customer IP Protection Main Board Serial and Debug Human Machine Interface Miscellaneous Sensors Connectors Extensions JTAG/SWD UARTS I2C SPI CAN USB2.0 OTG FS, Host FS with Mini - AB connector 4.3 480x272x16 RGB TFT LCD with resistive touch screen or 2.7 monochrome LCD 128x64 bit I2S Audio DAC, 3.5mm stereo audio jack Joystick with 4 - direction control and selector One Speed sensor (uses 3 ADC) One Gbyte or more Micro SD card Two 5V power supply options: power jack 2.0 mm, USB FS connector Boot from user external Flash, USB port or internal Flash One Reset, one Wakeup, Four Tamper and User buttons 3 color LEDs, 1 RGB LED One potentiometer (uses one ADC) One temperature sensor (uses one ADC) One light sensor (uses one ADC) 40 Pins IDE Extension for daughter board or wrapping zone: CAN, Timer, ADC, DAC, SPI, I2C, GPIO, Power supply, USART, DCMI camera bus The magic that can happen when one hundred minds move in a single direction 5
GeeseWare Software Development Kit GeeseWare offers an Agile design and validation on PC simulator based on IS2T s set of tools for embedded Java Design called MicroEJ. MicroEJ is a Software Development Toolkit based on Eclipse. This Workbench includes the Java Platform including the MicroJvm, a JVM simulator and a set of software libraries. These libraries provide standard Java APIs and additional features for embedded systems. The MicroJvm simulator executes the same Java application program and libraries as the embedded MicroJvm Virtual Machine. This allows the direct binary code upload to target device. With the simulated Java platform the developers can design their applications on workstations instead of hardware. They can add and simulate embedded hardware environments such as LCD displays, sensors, etc The embedded Java Platform includes the MicroJvm virtual machine and a bundle of software libraries. MicroEJ SDK features an edit - compile - debug process, functional and binary code coverage, task profiling and scheduling, Java heap inspection and footprint analysis to optimize and profile your Java application. Design and simulate on PC Mocks / real equipment Run on targets Agile process 6 The magic that can happen when one hundred minds move in a single direction
GeeseWare Offer a One-Stop Shop service solution GeeseWare offer goes beyond the Java applications development. It s a One-Stop shop solution, with one single face to customer for development and board production. With GeeseWare solution you can change an existing component like a TFT Touch screen for instance, to suit your HMI environment. GeeseWare can add an extension to the MicroJvm simulated Java Platform to support your new peripheral. This can be a software extension only (Mocks) to integrate this peripheral within the MicroJvm simulator or an interface to real equipment through your desk - top standard interface. Once your Java application has been developed, GeeseWare brings a seamless path to production for faster market evaluation, product introduction or time-to-market. You can as well decide to use your own design resources or manufacturing capacities. You may decide to make a full board redesign, keeping only the CPU card with its embedded MicroJvm virtual machine. Time - to - market GeeseWare Products, Maintenance and Support GeeseWare standard products will be commercialized under the product line GooseWare and will be sold as COTS (Component On The Shelves) Packs. GWPack CM3 is made of a main board, a CPU board and a MicroEJ development license. The main board has two options depending on the display, a color touch TFT or a monochrome LCD. The GW CPU boards CM3 contain the Java Virtual Machine for ARM Cortex M3 architecture. MicroEJ development license can be obtained on a permanent basis or as a yearly subscription. GeeseWare Customer Specific Products are sold under the name GWCSP. GeeseWare Products GWPacks GWPack CM3 TFT Permanent GWPack CM3 TFT Subscription GWPack CM3 LCD Permanent GWPack CM3 LCD Subscription GW CPU Board CM3 GW Main Board TFT GW Main Board LCD MicroEJ Permanent MicroEJ Subscription For support, training, Java architecture expertise as well as professional services (customizations) and other board optimizations services please contact GeeseWare sales. The magic that can happen when one hundred minds move in a single direction 7
TM Contact sales@geeseware.com Phone : +33 (0)2 40 57 51 78 GeeseWare s.a.s. Z.I. la Croix Blanche 6, rue Jean Moulin 44260 Malville - France Java solutions from IS2T - 027753/04/11 2011 GeeseWare s.a.s.- All rights reserved - Ref: GW - JADECM3FLY - A The information presented in this document does not form part of any quotation or contract, is believed to be accurate and reliable and may be changed without notice. No liability will be accepted by the publisher for any consequence of its use. Publication thereof does not convey nor imply any license and or other industrial or intellectual property rights. Java is Sun Microsystems trademark for a technology for developing application software and deploying it in cross - platform, networked environments. When it is used in this documentation without adding the TM symbol, it includes implementations of the technology by companies other than Sun. Java, all Javabased marks and all related logos are trademarks or registered trademarks of Sun Microsystems Inc, in the United States and other Countries. Drag Emb Drop, FNI, MicroEJ, IS2T and MicroJvm and all related logos are trademarks or registered trademarks of IS2T s.a. ARM and others are registered trademarks or trademarks of ARM Ltd. GeeseWare, GooseWare are trademarks or registered trademarks of SEICO s.a.s. Other terms and products may be trademarks of others.