RTAndroid makes real-time Android possible. It provides support for applications with real-time requirements while preserving all benefits of Android. Extended system components augment the new platform with a predictable and deterministic real-time behavior on different levels. By creating a reliable execution environment for general purpose mobile devices, RTAndroid can be used as a low-cost platform for data monitoring and visualization or in the field of industrial automation and control.
The platform has been carefully designed based on many years of experience in Android and real-time systems to preserving the standard Android application programming model, as well as the full compatibility to already existing Android components and third-party software.
RTAndroid was developed by the Embedded Software Laboratory at RWTH Aachen University and provides a reliable execution environment for applications with real-time requirements on common mobile devices. The platform benefits from Android’s high usability and its wide range of supported hardware. The application framework and the original system API are extended with functionality that turn Android into a predictable and deterministic soft real-time system. Due to the fact that RTAndroid is fully backward compatibility to the original Android platform, application development is just as comfortable as for the stock Android platform. Android is built upon a Linux kernel, which has been modified in RTAndroid to allow deterministic priority-based process scheduling. Furthermore, RTAndroid introduces a number of additional features to ensure a reliable process execution:
The synergy of the described techniques allows predictable execution times and significatly reduced latencies.
A brand new industrial Android release for Raspberry Pi 3 and dedicated industrial hardware platforms was published under a new name emteria.OS. It has been developed from scratch based on the latest Android 7 release from Google and includes all recent bugfixes, additional features, simplified installation process and support for commercial applications. Test it for free at https://emteria.com and provide us your feedback in the new discussion forum.
Dr. Igor Kalkov ik@emteria.com
@phdthesis { Kal17, author = { Kalkov, Igor }, othercontributors = { Kowalewski, Stefan and A{\ss}mann, Uwe }, title = { A real-time capable, open-source-based platform for off-the-shelf embedded devices }, publisher = { RWTH Aachen University, Department of Computer Science }, school = { RWTH Aachen University }, pages = { 1 Online-Ressource (xx, 114 Seiten) : Illustrationen, Diagramme }, series = { Aachener Informatik-Berichte }, year = { 2017 }, address = { Aachen }, doi = { 10.18154/RWTH-2018-222005 }, typ = { PUB:(DE-HGF)3 }, reportid = { RWTH-2018-222005 }, cin = { 122810 / 120000 }, url = { http://publications.rwth-aachen.de/record/719343/files/719343.pdf }, }
@inproceedings { KGK17, author = { Kalkov, Igor and Gurghian, Alexandru and Kowalewski, Stefan }, title = { Explicit prioritization of parallel Intent broadcasts in real-time Android }, booktitle = { Concurrency and computation }, publisher = { Wiley }, volume = { 29 }, number = { 22 }, year = { 2017 }, address = { Chichester }, issn = { 1532-0626 }, organization = { 12. International workshop on Java Technologies for Real-Time and Embedded systems, Niagara Falls, NY (USA), 2014-10-13 - 2014-10-14 }, doi = { 10.1002/cpe.4122 }, typ = { PUB:(DE-HGF)16 }, reportid = { RWTH-2017-09553 }, cin = { 122810 / 120000 }, url = { http://publications.rwth-aachen.de/record/707959 }, }
@inproceedings { KGK15, author = { Kalkov, Igor and Gurghian, Alexandru and Kowalewski, Stefan }, title = { Priority Inheritance during Remote Procedure Calls in Real-Time Android using Extended Binder Framework }, booktitle = { Proceedings of the 13th International Workshop on Java Technologies for Real-time and Embedded Systems }, publisher = { ACM }, pages = { 5, 10 Seiten }, series = { ACM Other conferences }, year = { 2015 }, address = { New York, NY }, organization = { 13. International Workshop on Java Technologies for Real-time and Embedded Systems, Paris (France), 2015-10-07 - 2015-10-08 }, doi = { 10.1145/2822304.2822311 }, typ = { PUB:(DE-HGF)7 }, reportid = { RWTH-2016-03747 }, cin = { 122810 / 120000 }, url = { http://publications.rwth-aachen.de/record/573802 }, }
@article { KKO+15, author = { Kowalewski, Stefan and Kalkov, Igor and Obster, Mathias and Th{\"o}nnessen, David }, title = { Echtzeiterweiterung f{\"u}r Android: SPS inside }, journal = { IEE - Elektrische Automatisierung + Antriebstechnik }, publisher = { IEE }, pages = { 58-61 }, year = { 2015 }, issn = { 1434-2898 }, typ = { PUB:(DE-HGF)16 }, reportid = { RWTH-CONV-236305 }, cin = { 122810 / 120000 }, url = { http://publications.rwth-aachen.de/record/752275 }, }
@inproceedings { AFK+14, author = { Armoush, Ashraf and Franke, Dominik and Kalkov, Igor and Kowalewski, Stefan }, title = { An Approach for Using Mobile Devices In Industrial Safety-Critical Embedded Systems }, booktitle = { Mobile Computing, Applications, and Services : 5th International Conference, MobiCase 2013, Paris, France, November 7-8, 2013, Revised Selected Papers }, publisher = { Springer }, pages = { 294-297 }, series = { Lecture Notes of the Institute for Computer Sciences, Social-Informatics and Telecommunications Engineering }, year = { 2014 }, address = { Cham }, organization = { Mobile Computing, Applications, and Services : 5. International Conference, Paris (France), 2013-11-07 - 2013-11-08 }, doi = { 10.1007/978-3-319-05452-0_27 }, typ = { PUB:(DE-HGF)8 }, reportid = { RWTH-CONV-203202 }, cin = { 120000 / 122810 }, url = { http://publications.rwth-aachen.de/record/225590 }, }
@inproceedings { KGK14, author = { Kalkov, Igor and Gurghian, Alexandru and Kowalewski, Stefan }, title = { Predictable Broadcasting of Parallel Intents in Real-Time Android }, booktitle = { Proceedings of the 12th International Workshop on Java Technologies for Real-time and Embedded Systems : JTRES 2014 : Niagara Falls, NY, USA, October 13th-14th, 2014 }, publisher = { ACM }, pages = { 57-66 }, series = { ACM international conference proceedings series }, year = { 2014 }, address = { New York, New York }, organization = { 12. International Workshop on Java Technologies for Real-time and Embedded Systems, Niagara Falls, NY (USA), 2014-10-13 - 2014-10-14 }, typ = { PUB:(DE-HGF)8 }, reportid = { RWTH-CONV-205503 }, cin = { 120000 / 122810 }, url = { http://publications.embedded.rwth-aachen.de/file/5g }, }
@inproceedings { OKK14, author = { Obster, Mathias and Kalkov, Igor and Kowalewski, Stefan }, title = { Development and Execution of PLC Programs on Real-Time Capable Mobile Devices }, booktitle = { 2014 IEEE [International Conference on] Emerging Technologies and Factory Automation (ETFA 2014) : Barcelona, Spain, 16 - 19 September 2014 / [co-sponsored by Universitat Politècnica de Catalunya - Barcelona Tech (UPC); IEEE Industrial Electronics Society] }, publisher = { IEEE }, pages = { 8 Seiten }, year = { 2014 }, address = { Piscataway, NJ }, organization = { 2014 IEEE [International Conference on] Emerging Technologies and Factory Automation, Barcelona (Spain), 2014-09-16 - 2014-09-19 }, doi = { 10.1109/ETFA.2014.7005218 }, typ = { PUB:(DE-HGF)7 }, reportid = { RWTH-CONV-206433 }, cin = { 120000 / 122810 }, url = { http://publications.rwth-aachen.de/record/444615 }, }
@inproceedings { GKS+13, author = { Gerlitz, Thomas and Kalkov, Igor and Schommer, John F. and Franke, Dominik and Kowalewski, Stefan }, title = { Non-Blocking Garbage Collection for Real-Time Android }, booktitle = { 11th International Workshop on Java Technologies for Real-time and Embedded Systems : JTRES 2013 ; 9-10 October 2013, Karlsruhe, Germany }, publisher = { ACM }, pages = { 108-117 }, series = { ACM Digital Library }, year = { 2013 }, address = { New York, NY }, organization = { Java-Technologien f{\"u}r Echtzeit- und eingebettete Systeme, Karlsruhe (Germany), 2013-10-09 - 2013-10-10 }, doi = { 10.1145/2512989.2512999 }, typ = { PUB:(DE-HGF)8 }, reportid = { RWTH-CONV-202515 }, cin = { 120000 / 122810 }, url = { http://publications.rwth-aachen.de/record/224782 }, }
@inproceedings { KFS+12, author = { Kalkov, Igor and Franke, Dominik and Schommer, John F. and Kowalewski, Stefan }, title = { A Real-time Extension to the Android Platform }, booktitle = { JTRES 2012 : proceedings of the 10th International Workshop on Java Technologies for Real-time and Embedded Systems, October 24-26, 2012, Copenhagen, Denmark / Andy Wellings ... }, publisher = { ACM Press }, pages = { 105-114 }, series = { ACM conference proceedings series }, year = { 2012 }, address = { New York, N.Y. }, organization = { 10. International Workshop on Java Technologies for Real-time and Embedded Systems, Copenhagen (Denmark), 2012-10-24 - 2012-10-26 }, doi = { 10.1145/2388936.2388955 }, typ = { PUB:(DE-HGF)8 }, reportid = { RWTH-CONV-199219 }, cin = { 120000 / 122810 }, url = { http://publications.rwth-aachen.de/record/129215 }, }