Mods and Tech Demos for an Automotive Headunit
Various Mods and Tech Demos for an Automotive Headunit, involving:
- Building and Flashing the HMI onto the headunit
- Modifying the HMI in order to display special content for tech demos
- Implementing advanced 3D graphics and animations running on the headunit
Project Date | 02/2021 - now |
---|---|
Operating System | Proprietary, Linux-based |
Hardware | Proprietary |
Programming Environment | C++ |
Technologies | OpenGL-based 3D graphics, custom fragment and vertex shaders, HTTP web server |
BMW Motorrad Connected Ride
- Implementation of Cloud-based sync and other Cloud services
- Development under iOS and Android
Project Date | 12/2020 - 05/2022 |
---|---|
Operating System | iOS, Android |
Hardware | IPhone, Android Mobile Devices |
Programming Environment | Swift, Kotlin |
Technologies | Cloud Sync, REST Services |
Prototype for the Integration of Alexa into an Automotive Headunit
- Utilization of the Alexa Auto SDK under a Linux-based headunit
Project Date | 05/2020 - 02/2021 |
---|---|
Operating System | Linux-based |
Hardware | Proprietary |
Programming Environment | C++ |
Technologies | Alexa Auto SDK, Gstreamer |
BMW Interaction Ease Demo für die CES 2020 in Las Vegas
Implementing an Android App for the demonstration of the BMW i Interaction EASE concept shown at the CES 2020 in Las Vegas.
Click here for a video of the BMW i Interaction Ease Demonstration at the CES 2020 (starts at 6:40)
Project Date | 11/2019 - 04/2020 |
---|---|
Customer | BMW AG (via Adesso AG) |
Operating System | Android |
Hardware | Intel NUC Mini PC |
Programming Environment | Android Studio, Kotlin |
Technologies | Android AOSP, Surface Flinger, Lottie, OpenGL, MQTT |
Description |
|
Implementing Alexa Voice Control for the BMW Connected App
Integrated the Alexa Voice Control for the BMW Connected App such that Alexa can be used in BMW vehicles.
Project Date | 05/2018 - 06/2019 |
---|---|
Customer | BMW AG (via Jambit AG) |
Operating System | iOS |
Hardware | iPhone, iPad |
Programming Environment | XCode, Swift |
Technologies | RxSwift, Alexa AVS |
Development of a Framework for BMW Music Remote Apps
Development of a framework that allows music apps like Spotify or Amazon Music to interface with the BMW headunit such that the app can be operated through the car's main display.
Click here for a video of Spotify connected to the BMW entertainment system
Project Date | 01/2015 - 05/2020 |
---|---|
Customer | BMW AG (via Pixida GmbH and Adesso AG) |
Operating System | iOS |
Hardware | iPhone, iPad |
Programming Environment | XCode, Objective-C |
Technologies | Remote HMI |
BMW iDrive HMI Development
User interface development and audio handling in the entertainment area of the BMW iDrive system, which is the central infotainment/multimedia system in all current BMW vehicles.
Click here for a video demonstrating the iDrive HMI
Project Date | 2010 - 2014 |
---|---|
Customer | BMW AG (via Elektrobit Automotive GmbH, TechConnect GmbH, Telemotive AG) |
Operating System | QNX, Windows |
Hardware | Proprietary embedded hardware |
Programming Environment | Visual C++, Python, SVN, Mercurial |
Technologies | HMI framework, embedded software, MFC |
Impact |
|
Python Trace Analysis Tool
A set of Python scripts for a fully automated download and analysis of traces for error analysis.
Project Date | 2010 - 2013 |
---|---|
Customer | BMW AG (via Elektrobit Automotive GmbH, TechConnect GmbH, Telemotive AG) |
Operating System | Windows |
Programming Environment | Python |
Technologies | MOST, GN-Log |
Impact | Drastically simplified and speeded up trace analysis |
Home Multimedia and Backup Server
Setup of a low-power server for file acess, backup, and media. The server was created to improve the knowledge of the Linux operating system. It provides:
- Samba file server
- Remote VNC access
- Web server for remote administration
- WOL (Wake-on-LAN) for remote startup
- Automated daily incremental backup
- XBMC media center to play audio and video straight from the harddrive
Project Date | 2013 |
---|---|
Customer | Private Project |
Operating System | Linux Ubuntu (XBMCbuntu) |
Hardware | HP Proliant Microserver |
Programming Environment | Python |
Technologies | Wake on LAN, Scheduled startup, backup, XBMC media center, Apache, VNC |
Impact | Created all integrated low-power file server with integrated media player |
Kombi Interface HMI Framework
An HMI framework for a Daimler instrument cluster.
Project Date | 2009 - 2010 |
---|---|
Customer | Daimler AG (via SSW/Bosch AG) |
Operating System | OSEK, VxWorks, Windows |
Hardware | Proprietary embedded hardware |
Programming Environment | Visual C++, Softtunes, Python, SVN |
Technologies | HMI framework, embedded software, interprocessor communication, MFC |
Impact | Improved software to reach series production; implementation of new features |
blue PiraT Data Logger
Project management, architecture and development for a multibus data logger. The blue PiraT is a data logger for the bus systems/interfaces CAN, MOST, LIN, FlexRay, etc. It contains power management, a harddrive for recording, and a client software running on a PC for download and further processing of the data.
Click here to see the blue PiraT product video
Project Date | 2005 - 2009 |
---|---|
Customer | BMW AG, Daimler AG, Audi AG, Porsche AG, Siemens VDO, Harman-Becker, and more. |
Operating System | Linux, Windows |
Hardware | PC, proprietary embedded hardware |
Programming Environment | Visual C++, GNU |
Technologies | CAN, MOST 25, MOST 150, RS232, RS422, LIN, FlexRay, GN-Log, network cameras, SSH, FTP, embedded hardware, Power PC, ST10, Blackfin DSP, Powermanagement |
Impact | Improved the error analysis process during the development process of automotive electronic device units (ECUs) |
Links | Product homepage |
Serial Trace Analyser
An application running on a Windows PC that allows logging and display data from the serial port. It provides additional features to analyse and format the data while it arrives, and to record user error descriptions.
Project Date | 2002 - 2004 |
---|---|
Customer | BMW AG |
Operating System | Windows |
Programming Environment | Java, Eclipse |
Technologies | Serial port, sound recording |
Impact | Improved the BMW error analysis process |
The Robotic Platform
The Robotic Platform is an object-oriented robot programming system. All components (i.e., graphical user interface, 3D simulation, servo control, trajectory generation, task programming, and sensor integration) are integrated in one homogeneous class design. All components run on a single PC, on a single operating system, the QNX Real-Time Platform. The system allows for generic programming (e.g., manipulator independent programming). Extensions integrate seamlessly into the graphical user interface and the 3D simulator. The 3D simulator dynamically adapts to the robot control program, using Open Inventor and VRML 3D model files.
Project Date | 1999 - 2001 |
---|---|
Customer | Clemson University, USA |
Operating System | QNX 6.2 |
Hardware | Real-time, Open Inventor, motion control cards, Puma manipulators, WAM manipulators |
Programming Environment | C++, GNU |
Technologies | Real-Time Software, Embedded Control, 3D Graphics (Open Inventor, Open GL), Robotics |
Impact | Flexible object-oriented robot control on a single PC system |
Publications |
Journal Papers: |
Screenshots
Robot Simulator
Windows software that animates robot manipulators along trajectories streamed from robot control programs. With the same robot control program, either the simulator can be run or the real robot manipulator.
Project Date | 1998 - 1999 |
---|---|
Customer | Clemson University, USA |
Operating System | Windows NT |
Programming Environment | C++, GNU, Watcom |
Technologies | Socket communication, 3D graphics (OpenGL) |
Impact | Allowed testing robot control programs without the risk of damaging hardware before trying them on the real robot |
Screenshot
QMotor Robotic Toolkit
The QMotor Robotic Toolkit is set of libraries, programs, and utilities specifically targeted for robotic applications that utilize the QMotor control environment. The toolkit contains a GUI based teachpendant, a trajectory generator, and control programs for the Puma 560 and the Barrett Whole Arm Manipulator (WAM).
Project Date | 1998 - 1999 |
---|---|
Customer | Clemson University, USA |
Operating System | QNX 4.25 and QNX 6.2 |
Hardware | PC, ServoToGo motion control card |
Programming Environment | C++, GNU, Watcom |
Technologies | Real-time, motion control cards, Puma robot manipulators |
Impact | Published in the Control Systems Magazine |
Publications |
Journal Papers: |
QWidgets
The Robotic Platform, QMotor, and QRobot require graphical user interfaces on the QNX operating system, using Photon, the QNX windows manager. Photon programming by using the Photon API is extensive and leads to long programs that are not easy to read. Using PhAB, the GUI builder for Photon simplifies the development but is limited: It is not possible to use object oriented programming techniques (e.g. to re-use GUI components), and it is not straightforward to dynamically create GUI components. To overcome these problems, QWidgets++ was developed.
Project Date | 1997 - 2000 |
---|---|
Customer | Clemson University, USA |
Operating System | QNX 4.25 and QNX 6.2 |
Programming Environment | C++, GNU, Watcom |
Technologies | User Interfaces |
Impact | Basis for the user interface implementation of different projects at Clemson University |
Product Logo
Class Hierarchy Excerpt
QRobot - A PC Based Robot Control System
QRobot is a PC-based system for telerobotic decontamination and decommissioning. The system integrates hardware interfacing, real-time joint level control, sensors, control of tools, networking and task level programming (ARCL) as well as operator interfaces using video and virtual reality. The system demonstrates that the PC, a cost effective and widely used platform, is well suited to the integration of real-time control tasks and advanced user interfaces. In the first stage of the project, the joint level control was implement on a QNX 4 PC and a network interface to the robot control library RCCL was developed. In the second stage, RCCL was replaced by ARCL, running on the same QNX 4 PC. QRobot is part of the Virtual Reality Based Telerobotic Decontamination and Decommissioning Project.
Project Date | 1997 - 1998 |
---|---|
Customer | Clemson University, USA / Department of Energy |
Operating System | QNX 4.25 |
Hardware | PC, ServoToGo motion control card |
Programming Environment | C++, GNU, Watcom |
Technologies | Real-time, motion control cards, Puma manipulators |
Impact | Demonstrates how a PC with a real-time operating system to the integration of real-time control tasks and advanced user interfaces |
Screenshot
QMotor
QMotor is a framework for advanced control implementation. QMotor allows the user to easily implement complex control algorithms on a QNX PC, tune the control and plot variables in multiple plot windows.
Project Date | 1997 - 2000 |
---|---|
Customer | Clemson University, USA |
Operating System | QNX 4.25 and QNX 6.2 |
Hardware | PC, ServoToGo motion control card |
Programming Environment | C++, GNU, Watcom |
Technologies | Real-time, motion control cards |
Impact | Sold in USA, Europa, Asia and South America, published in the Control Systems Magazine |
Screenshot
Product Video
COR Control System
A system that controls and does measurements on a golf ball shooting device.
Project Date | 1996 |
---|---|
Customer | Clemson University, USA |
Operating System | Windows |
Programming Environment | C++, Borland |
Technologies | User Interfaces, Low level hardware programming |
Impact | Useful research tool |
The Unwinding Analyzer
This project was a collaboration with the textile department. The Unwinding Analyzer is a PC-based measurement system for high-speed yarn unwinding. It measures the tension in the yarn and takes snapshots of the yarn path. The yarn path is then determined by image processing, and the yarn tension and the path can be compared with theoretical calculations.
Project Date | 1996 |
---|---|
Customer | Clemson University, USA |
Operating System | Windows 95 |
Hardware | PC, video capture board, DSP board |
Programming Environment | C++, Borland |
Technologies | Synchronized video capturing, DSP - PC communication, 3D image processing |
Impact | Provided new insights into the yarn unwinding process |
Publications | M. Löffler, "Measurement of the Three-dimensional Yarn Path and Tension in Yarn Unwinding", Diploma Thesis, Technische Universität München, September, 1996. |
Screenshot
Debugging Tool for EWSD
Simplified error analysis of the telephone system EWSD by Siemens.
Project Date | 1995 |
---|---|
Customer | Siemens AG, Munich |
Operating System | OS/2 |
Hardware | PC |
Programming Environment | C |
Impact | Simplified error analysis |
Easy Slide
A control system for slide projectors and CD players. The system allowed to program transition times for public slide shows and synchronisation with music parts.
Project Date | 1995 |
---|---|
Customer | Live Show, Munich |
Operating System | Atari TOS |
Hardware | Atari 1040 ST, Kodak Ektapro |
Programming Environment | C |
Technologies | Infrared Control of CD Players, Real-Time Control of Slide Projectors |
Impact | Successfully presented 18 slide shows in Germany |
Links | Operating Manual |