Phone Is Brain in QNX

##About Me

Hi, my name is ze chen, from Georgia Tech.
I am a Senior Computer Engineer student. Some people maybe know me from last year presetation. Yeah, this is my second co-op term at PASA. I work at Advance Software Engineer team at Georgia Tech office.

##Phone is Brain

In the last year, Advance Engineer team worked on the phone is the brain project for six months and successful demo at the detroit auto show last year.

In this project, we refactor and implement solid functionality by using panasonic global platform framework aka GPF. in this project, customers can make multimedia playback on the head unit, and more important, we launched Apple’s DIO, they call it Carplay right now. So customers can plugin their iphones to take over the control, like audio/video playback, maps and navigation, send and receive the message by siri, etc, etc.

The host system is Linux, and we developed on Qt Framework. because Qt is well-known cross-platform support. This is key I can port it from linux to QNX easily.

Tata is the HMI name. HMI is human machine interface. basiclly users only look and handle wit HMI.
to increase the perfomance and user experience, I migrate Tata from HTML webkit version to Qt version.

This is what we did on the last year.

##Problems and solution

When I come back to the office this year, all of our engineers were focus on the ford project, and I was assigned to work with silicon valley office’s demo project. This demo project is focus on Carply and Google Auto, but it was developed on EB for the HMI and use GTF, a test version to handle all the services.

This is how it was look like.

When they know our Phone is The Brain project, and they are very intereted. So they want to merge Phone is the brain into their demo.

This is want they want, full looking Hmi on the Qt engime. running Their services instead of GPF, and run on the QNX system, not linux. and Specificly on the TI’s J6 board.

Last year we spend six months, and more than two teams to develop the Phone is the brain on the linux. We tried and failed to develop the QNX version in the same time.

We don’t know how much blocks and difficult to build the Qt and HMI on the QNX, the way to communicate between HMI and those service like audio, Carplay ext.

To solve all of these problems, is the job I have done in this summer.


After a few talks and dicsussion with Germano and Kesuge san, we decide to implement a system like this. Keep using silicon valley’s service, and turn off the HMI connection to our GPF service. And I am going to develop the GTF handler and hook up the connections between HMI, GTF sevice handler and GTF service.

In this case, we can make it simple that Code will be pollute and we can keep them in the same code repository.


The final goal for this demo project has these features. Users can in and out between the CarPlay Mode and Native HMI, once you plugin the phone.
Users can turn on/off the FM audio.
Users can check the Native Navigation and iphone’s navigation.
Also We can simulate a fake incoming Call pop up.

All of these features and functionalities are based on the Silicon Valley’s demand.


This summer, my teammates are all locate at silicon valley. I am working alone here. All of discussion We need to use email and web meeting to coordinate the progress and features we want or something we can cut it out. That is not easy but I make it.

Turn out communication is not bad and is so important. I mean to make sure your understanding is in the same page with other people. Specially, to understand what they are asking for, and how to evaluate the methods to implement the feature before you start it.

Agile Development, working as a independent member in this project, I learn an important lesson. the Agile Development. How to quickly start to work. fail quickly and correct quickly, push fast to develop a new feature and version.