QNX Dependency Mapping

November 19th, 2009

I wrote a script that will take the output of ‘pidin fd’ and generate a graphviz dot graph showing the dependencies at that point that each process has on others. Here is a sample output from a QNX Car M5 running on vmware: QNXCarM5Dependency_simple_small.png

If you want to generate your own graph from your system you can do that from this page: http://dan.hld.ca/pidingraph.py

Uncategorized

The Connected Car – ngConnect

November 5th, 2009

Here is a video showing something we’ve been working on at QNX.

Uncategorized

QNX Car Milestone 3 Walkthrough

August 12th, 2009

I put together this video so that you can see what our QNX Car reference platform looks like. This runs on QNX Neutrino and uses QNX Multimedia for the video and Flash Lite for the UI.

If you want to try it join the QNX Car project and download the VMWare image.

Uncategorized

QNX MM 1.2 is Released

May 27th, 2009

Our team has finished Aviage MM 1.2. Its got some excellent features and new platforms that it supports. Notably:

  • DVD-V playback
  • Video file playback
  • Microsoft Zune support
  • Significant improvements to Album Art support
  • Significant improvements to metadata synchronization speeds
  • Additional playlists supported
  • Faster startup, much less memory used
  • RTP & HTTP streaming
  • TI OMAP3 Codec Engine (audio decoders)
  • Intel Performance Primitives codecs

There are lots of other improvements also. We’ve been busy this past 6 months!

You can find more information about it here: http://www.qnx.com/products/middleware/multimedia.html

This project is developed openly on the foundry27 site where you can get source code and daily builds. If you’re looking to try it out you can do that for free with one of those daily builds on top of QNX Momentics 6.4.0 or 6.4.1(soon to be released).

Multimedia, QNX

Multimedia on Foundry27

April 2nd, 2009

The multimedia project I work on at QNX is now available on foundry27. Foundry27 is QNX’s development portal where you can find software projects actively being developed.

On the foundry27 site for multimedia you can get source code, documentation, forums and other great resources. The source code is the latest and greatest, updated every night at 2am and right after that a binary nightly build is available. If you want to build the source, make sure to check our the source guide wiki page that describes the straight forward process.

We put together a QNX video a while ago where I walk through at a high level what each of the components are. Here it is:

Multimedia, QNX

Audi turns to Nvidia for 3D navigation

January 30th, 2009

QNX RTOS and multimedia are helping to drive this new infotainment system provided in the latest Audi’s.

Audi turns to Nvidia for 3D navigation: “

Audi navigation system

Audis new navigation system includes 3D textured buildings.

(Credit: Audi)

Audi’s new Q5 sports navigation graphics empowered by chip maker Nvidia, along with a radically updated dashboard interface, which Audi calls the Multimedia Interface, or MMI. Integrated into the new navigation system is an automotive grade Nvidia …

(Via Car Tech: An automotive blog from CNET.)

Multimedia, QNX

QNX Multimedia at Convergence!

October 21st, 2008

QNX is at convergence this year with a great demo. Some great things from a multimedia perspective that we’re showing at this demo:

  • Zune playback
  • iPod 1-wire playback
  • USB Mass storage playback
  • Youtube
  • Video games
  • Multinode: you can plug in an iPod in the front, and listen to it in the back seat using headphones
  • From you LCD panel dash cluster you can see what song you’re playing, and its artwork

I think this demonstrates a well “connected” car. You’ve got the devices, you’ve got the internet, and you’ve got several happy networked users!

Here is a photo of the booth:

QNX Convergence Booth

There are more photos of this on Paul Leroux’s blog.

There are lots of other advanced features that it shows as well such as voice integration, hands free support for bluetooth phones. I hope a few of you have a chance to see it.

Multimedia, QNX

iPod integration in the car

October 13th, 2008

Cars are getting to be pretty advanced and feature rich. CNET has an article that talks about how iPods are integrated into more than half of 2009 models. QNX likely has contributed a large portion to many of these models. Its satisfying to see your work end up in real-world product.

The article also has some interesting stats on hard drives and bluetooth integration in cars. The head units in cars these days are as powerful as many desktop computers and have even more peripherals.

Now unfortunately, the one thing the article has completely wrong is that “Microsoft Automotive Platform … offers the most universal integration”. If I were to compare MS Auto to QNX Car, I’d like to point out:

  • CD’s are not dead. MS Auto currently doesn’t do CDs, or CD Changers. QNX is shipping in many cars today with that feature. We also support MP3-CD’s
  • Ripping CDs, or USB Sticks. QNX’s MME manages all this for you so that when you ask to rip a CD or list of USB tracks to your hard drive it will do that as fast as possible without interrupting your playback. And if you power off your car, it’ll continue where it left off.
  • Embedded hard drive support: without ripping, do you support a hard drive?
  • Internet Radio integration.. how connected are you without the internet?
  • QNX Car also has the same “most universal integration” features that MS has: USB Mass Storage, iPod, PlaysForSure, Zune, Bluetooth.
  • QNX Car is shipping in many other makes than Ford. In fact the last stat I heard is that it is in over 40% of the 2009 models! I should talk to marketing to get a completely accurate number.

As usual, Microsoft has lots of dollars to spend on advertising, but the real question is how good is their product? QNX has always been quality driven, and therefore is chosen to run space equipment, nuclear power plants, and the fancy features in your car.

Multimedia, QNX, Uncategorized

Last.fm announces subscription service

January 23rd, 2008

Last.fm lets you choose an artist or tag and play music in a streamed fashion just like a radio station would only you have a large choice of what to play from since you can start with any artist or tag you like.

Today they announced that from the website you can play full-length tracks of your choosing a few times and after that you can pay for a subscription. Another subscription service but this one also offers independent artists a chance to share their music and get paid for it also. Here is the last.fm blog post.

As usual with legal agreements with the big labels, this hasn’t rolled out in most of the world yet.. And if it’s anything like the Apple iTunes movie sales I won’t be expecting it in Canada sometime soon.

Multimedia

QNX 6.3.2 on Parallels 3.0

January 3rd, 2008

I spent some time getting QNX working on Parallels 3.0. Its working well with the exception of video which I know can work, I just haven’t spent the time to get it going yet. If you get it working please comment on this post with how to do it.

First off, why use Parallels now that VMWare is working? I use Parallels instead of VMWare because it is much faster for what I use it for. I have all my work on my mac and export that folder using nfs to my virtual machines. On my virtual machines I do builds as well as run and test my code. I did a quick test comparing QNX 6.3.2 building the multimedia engine and it took 9.5 minutes on VMWare Fusion 1.1, it took Parallels slightly less than 3 minutes to do the same thing. I also find a significamarknt difference in performance while running my application also.

Issues:

There are 3 issues with QNX 6.3.2 running on Parallels out of the box: 1. Kernel doesn’t work 2. Network driver (ne2000) doesn’t work 3. Graphics detect vga mode only

There is only one issue with running QNX 6.3.2 on VMWare Fusion out of the box: 1. USB doesn’t work

I’ve got problems one and two fixed for Parallels, here are the steps to get yourself a QNX 6.3.2 virtual machine running on Parallels 3.0 build 5582. There are two floppy images you’ll need to get for this off my server:

  1. Boot floppy: http://www.mediatype.ca/wp-content/uploads/parallels/QNX632ParallelsBoot.fdd
  2. Installation floppy: http://www.mediatype.ca/wp-content/uploads/parallels/QNX632ParallelsInstall.fdd

Create the virtual machine:

  1. get the QNX 6.3.2 ISO
  2. open Parallels
  3. click file | new
  4. choose custom. OS type: Other OS Version: Other
  5. Choose the amount of RAM to give QNX. I choose 300.
  6. Create a new hard disk image. I make mine 3000GB expanding.
  7. Shared networking
  8. Give it a name
  9. Optimize for VM
  10. Click more options, then select ISO image, then choose the image you got from step 1.
  11. uncheck “start guest operating system”
  12. Click menu item “Edit” then “Virtual Machine…”
  13. Click “Add…” I add a usb adapter
  14. Click “Options” Then click the “Booting” tab on the right. Choose “Floppy, Hard Disk, CDROM”
  15. Click “Floppy” on the left. Check the “Connect at startup” checkbox. Click the “…” for the image file and choose the QNX632ParallelsInstall.fdd file.
  16. Click OK. Then start the VM.

Install QNX:

Follow the steps on the screen. You’ll need your license key to perform the installation. Make sure to install to the complete hard drive. Myself I install all the tools and GPL utilities. When it asks you to reboot, just turn off the virtual machine by hitting the red stop button on the top right.

Prepare the VM for regular booting:

  1. Click “Edit” | “Virtual Machine…”
  2. Click Floppy
  3. Check the “…” for the image file and choose QNX632ParallelsBoot.fdd
  4. Click OK. Start the virtual machine.
  5. This part you need to do quickly. While the virtual machine is booting, click on the black part where the VM text will come up to put your cursor into it. Then when it asks if you want to enter boot options by hitting the space key, hit the space key on your keyboard.
  6. Press F5 to have it drop to a shell during boot
  7. Type these commands in the shell to replace the stock 6.3.2 network driver with one that works included in the boot image: cd /lib/dll /bin/cp devn-ne2000.so devn-ne2000.so.bak /bin/cp /proc/boot/devn-ne2000.so devn-ne2000.so
  8. Hit CTRL-D twice
  9. It should continue booting. Only the vga option will present itself at first, continue using these settings.

QNX