Monday, 27 July 2009

Windows CE: The whole truth about your image

Hi folks,

as you know, after successfully building your image, your Release Directory holds a whole lot of files. The question is which of these files will be part of your image and which ones won’t?

Only the files that are defined in the MODULES or FILES section of the numerous .bib (Binary Image Builder) files in your system will be part of your image. But don’t worry, you don’t have to look though all .bib files there is a much simpler way: in the Make Image step of your build system all previously filtered .bib files are combined to a single .bib file called CE.bib, which contains the whole truth about your image! Only the files listed here are actually in your NK.bin image file. But keep in mind the CE.bib is a generated file and will be created every time you call makeimg so editing this file is not a good idea.

If you also want to know the initial registry settings, directory structure and/or entries in the CE Database of your image you can consult the files reginit.ini, initobj.dat and initdb.ini respectively. Keep in mind that these files are also generated in the Make Image phase of your build system.

If you are running Windows Embedded CE 6.0 and up you can simply open your NK.bin file from within PlatformBuilder and you will get a graphical representation of all the files and registry settings of your image.

Have fun!
Read more! Post this to a friend!

Saturday, 25 July 2009

FREE Microsoft Technical Chat on Windows CE and Mobile on July 28th 2009

Hi Folks,

It has been some time now since the last Microsoft Technical Chat on Windows Embedded CE and Windows Mobile took place. So, if you have missed it, don’t worry the next one is coming up:

MS is hosting a live chat on July 28th regarding Windows Embedded CE and Windows Mobile.

Title: Windows Embedded CE and Windows Mobile Live Chat!
Date: Tuesday, July 28th, 2009 9:00 - 10:00 A.M. Pacific time (additional time zones)

Description:
Do you have tough technical questions regarding Windows Embedded CE or Windows Mobile for which you're seeking answers? Do you want to tap into the deep knowledge of the talented Microsoft Embedded Devices Group members? If so, please join us for a live chat and bring on the questions! Windows Embedded CE is the operating system that is powering the next generation of 32-bit, small-footprint and mobile devices. This chat will cover the tools and technologies used to develop devices using the CE operating system.

To join this chat, please log on via the main MSDN chat page at:
http://www.microsoft.com/communities/chats/default.mspx

There is also an archive of previous chats available at:
http://msdn.microsoft.com/en-us/chats/aa497439.aspx

Unfortunately the archive hasn't been updated lately and we are currently following up with Microsoft on this issue.

Have fun!
Read more! Post this to a friend!

Friday, 24 July 2009

Windows CE: Boot Time Considerations

Hi folks,

I’ve often been ask the question “How can I improve the boot time of my Windows CE device?” Well the first thing to notice here is that Windows CE allows you to implement your own boot concept which should be customized to the needs of your specific device! But that of course requires some knowledge about the specific device so let’s focus on all the things that effect your boot time.
  • Well as you might have guessed, every component that loads during boot has an impact on the boot time. So it is crucial to understand where each component fits in. By that you see that bringing down the boot time is really a team effort that everyone in your team has to think about. The first thing to do would be to remove unnecessary components and registry keys. To learn more about the impact of each component you should profile your system for instance with CeLog.

  • The next step would be to optimize your boot order. Therefore you need to know your boot phases as well as the dependencies of each component.

  • The debug print function NKDbgPrintfW is the source of numerous trivial but impactful bugs! By using the appropriate RetailZones your performance gain can be up to 30%.

  • To cut down your boot time even further you should de-serialize your file system mountings by disabling AutoMount and controlling the load order.

  • Drivers and services can also have a huge impact on your boot time as they are loaded on a single serialized thread. Therefore you should not poll, loop, stall, sleep, block, WaitForSingleObject, etc. during the XXX_Init function. File and registry I/O should also be minimized during boot. Use DisableThreadLibraryCalls in DllMain to disable notifying every Dll of the creation of a new thread. You should also keep in mind that User-Mode drivers (only relevant for Windows Embedded CE 6.0 and up) have a longer boot time due to the additional overhead of the udvice.exe host process. As User-Mode drivers are also loaded serialized, having only one udevice.exe host process increases your boot time even further. Having only Kernel-Mode driver would result in a faster boot time. As you see, again it is important to know your dependencies to reduce the boot time.

Well you see there is a lot you can do to improve your boot time but in order to do so you really need to know your system in and out.

Have fun!
Read more! Post this to a friend!

Thursday, 23 July 2009

SD (street director) with bing integration


Hi folks,

ok, I realize that just showing a couple of screen shots is not the best way of showing off and I should of added the same comment you see on iPhone advertisements ;-)

Anyway, to let you know how the real system works here is a video. Have fun.



The hardware by the way is the MARPFII reference platform running Microsoft Auto 4.0.

So long and thanks for all the fish!
Read more! Post this to a friend!

Microsoft Auto 4.0 “Train The Trainer”

Hi everybody,

you might have wondered why I didn’t post in the past 3 weeks. Well I was in the USA; first on vacation and then on the Microsoft Auto 4.0 “Train The Trainer” event.

I found out that the EB Street Director navigation software which I have installed on my HTC Diamond smart phone works very well in the US as well.

If you have read Damian’s post you already know that I am now one of five Microsoft certified Trainers for MS Auto 4.0 – world wide. But it gets better: EB has yet another official MS Auto 4.0 Trainer – Michael Forkey from the Bothell, WA branch office (which makes two out of five!), so congratulations to him as well! I would also like to thank the folks from Microsoft for the great MS Auto 4.0 Training; you have done a great job! Following are a couple of pictures I took at the MS Auto 4.0 “Train The Trainer” Event:




Have fun!
Read more! Post this to a friend!

Wednesday, 22 July 2009

Hot news from Nuremberg (Part II)

Hi folks,

1) Harald wasn't quite exact with his temperature information as we are located in Erlangen and not in Nuremberg ;-)

2) I think I have a slightly more geeky way of finding out what the weather is like (in Erlangen or anywhere as a matter of fact ;-):

By using EBs street director on the Microsoft Auto Platform and using bing!

First I enter my destination or look for a point of interest via bing search (formerly known as Live Search 4 Devices), for example a hotel:





So bing search has found a hotel for me and I would now like to know the weather forecast.



I hope you're haveing the same sunny weather we are having at the moment :-)

This demo was also shown during the 13. International Advances in Automotive Electronics Conference in Ludwigsburg from 15. to 16. July.

So long and thanks for all the fish!
Read more! Post this to a friend!

Imagine Cup to be held in Poland next year

Microsofts Student Technology Competition "Imagine Cup 2010" will be held in Poland next year.

If you missed the final round of this years competition - because you were on holiday like me ;-) - then you can find the 2009 Cup Winners here.

If your interested in participating in next year's competition and have questions or are looking for a mentor, feel free to get in touch with us.

So long and thanks for all the fish!
Read more! Post this to a friend!