Wednesday, 24 December 2008

Merry Christmas

The whole Team would like to wish everybody

A Merry Christmas
&
A Happy New Year!

Look forward to reading lots of interesting news and infos coming up in 2009:
  • Embedded World 2009
  • Launch of Windows Embedded Compact
  • Imagine Cup
  • eMVP Nominations
  • TechEd in Berlin
  • Sparks will Fly Contest
  • Partner Awards
  • and lots, lots more ...
So long and thanks for all the fish!

Read more! Post this to a friend!

Friday, 19 December 2008

Happy Holidays!

Hi all,

I wanted to wish you all a merry Christmas and a happy New Year! I am going to spend the holidays with my family; hopefully there will be lot of snow in southern Germany!

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

Thursday, 18 December 2008

Come and find out more about MS Auto

Microsoft's Automotive Business Unit will be presenting the latest version of the Microsoft Auto platform together with a variety of partner solutions at two events next year.

  1. Embedded World from March 3rd to 5th 2009, in Nürnberg
  2. CeBIT from March 3rd to 8th 2009 in Hannover
@ Embedded World you will be able to find out everything you always wanted to know about MS Auto 3.1 and also get some insight into what is coming next with MS Auto 4.0.
Additionally they will be showing several different partner solutions based on the platform, like EB's street director and EB's Guide suite.

If you are more interested in seeing a prototype of a next-generation Infotainment system then, in this case, CeBit is the place to be.

So long and thanks for all the fish!


Read more! Post this to a friend!

Windows CE: SOURCES files best practices

Hi everyone,

today I want to talk about a common problem you might run into when cloning a module to your platform. As you might know, the RELEASETYPE macro in the SOURCES file indicates the location of the output file but sometimes you simply forget to change this macro accordingly or don’t know what the correct setting would be.

One way to ensure the correct location of your output file would be to specify the RELEASTYPE macro only in the SOURCES.CMN file and not in the SOURCES file of each individual module in your platform.

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

Wednesday, 17 December 2008

Windows CE: Remote Tools issue

I am sure you’ve all experienced this problem once in a while: you are debugging your Windows CE system, you are starting a remote tool but the connection somehow doesn’t establish or fails!

So what do you do now? No matter how often you retry you will never get a connection to the remote tool. You might try to restart your Platform Builder and if that doesn’t help restart your machine but that’s just annoying and time consuming! A better solution would be to open the task manager on you development machine, go to the processes tab and kill the cemgr.exe (CE Manager).
If you now restart the remote tool, it should connect and work!

Have fun!

Read more! Post this to a friend!

Tuesday, 16 December 2008

Do you know the Windows Mobile Development forum?

Hello Folks,


do you already know the Windows Mobile Development forum?
If not, then just take a look at the following link: http://social.msdn.microsoft.com/Forums/en-US/category/smartdevicedevelopment/


Not only the new UI makes it very valuable to all Windows Mobile developer. All you have to do is: check this out!!!



Read more! Post this to a friend!

Tomorrow: Free Windows Embedded OEM Technical Seminar and Workshop

Hi Folks,

If you are in Israel tomorrow, December 17th, don’t miss the free Windows Embedded OEM Technical Seminar and Workshop!

It is intended for technical decision makers and developers. MS will show you the latest innovations in embedded software development, present the Microsoft Embedded Products as well as their development tools and give you the opportunity to ask questions about everything.

Location:
Herzliya, Israel
Onsite Seminar
The Daniel Hotel and Spa
60 Ramat Yam
Herzliya Pituah
Herzliya, Israel 46851
+972 9 9528282

Further information:
http://www.microsoftembeddedseminars.com/about.aspx?seminarid=199

Overview of MS embedded seminar offerings:
http://www.microsoftembeddedseminars.com/Europe1.aspx

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

Monday, 15 December 2008

Windows Embedded Standard Training and Consulting

Looking for a strong official Training Partner for Windows Embedded Standard?

The successor of the previous Windows XP Embedded is called Windows Embedded Standard.

Both solutions allow to go embedded on x86 architectures (only). While Windows CE is targeting ARM, MIPS, SH4 and x86, too, the x86 on Windows CE does not support Hyperthreading, e.g., like available on Intel's Atom processors which became a hype during the last months as you surely know following the news. So at least here going embedded using Microsoft solutions means going Windows Embedded Standard.

During the next few weeks the official training material from Microsoft will be finished and released. Early support for interested customers in upcoming Windows Embedded Standard projects is already available since Microsoft already delivered the training material to interested offically certified trainers for reviewing purpose.

Feel free to contact our BLOG team or me directly...

- Oliver
Read more! Post this to a friend!

Friday, 12 December 2008

Windows CE: TARGETLIBS vs. SOURCELIBS

Hi everybody,

Did you ever wonder why there is both TARGETLIBS and SOURCELIBS macros in the Windows CE SOURCES file? Well I did and here is the explanation why:

First of all the reason to have these macros is that we can componentizise our module but why not just have one of these macros? The difference is in which one will be listed first to the linker:

  • When building an .exe, TARGETLIBS will be listed first to the linker
  • When building a .dll, SOURCELIBS will be listed first to the linker
  • When building a .lib, only SOURCESLIBS will be listed to the linker
In any case the linker will always use the first version of particular function that it finds.

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

Thursday, 11 December 2008

A flexible way to exclude files from CE image

Sometimes you want to remove files from a CE image for example to save ROM/RAM space or because you do not want to support a certain functionality.

Usually, the right way is to remove the related feature from the OS design. But there are circumstances where a catalogue feature adds several files and you do not want them to be included. Here comes a little batch file and additional bib file which will do all the work.

Here the batch file 'make_bibremove.bat' which will do the work for you

@echo off
rem -- remove items from a .bib file
rem -- declare items to remove with "; @BIBREMOVE "
rem -- keep semicolon and spaces ^^----------^
rem -- somewhere inside the .bib file you request filtered
rem -- filtering occurs by case-insensitive item identifier comparison
rem -- a list of removed items is appended to the resulting file
rem -- USAGE: make_bibremove

if not exist %1 goto :EOF

rem -- extract files marked by tag -------------------------------------
findstr "@BIBREMOVE" %1 > ~bibremove~.0
for /f "tokens=3 eol=§" %%I in (~bibremove~.0) do (
echo Removing %%I from %1
echo %%I> ~bibremove~.1
)
rem -- filter marked files ---------------------------------------------
if exist ~bibremove~.1 (
findstr /i /v /g:~bibremove~.1 %1 > ~bibremove~.2
echo ; ** Files removed by make_bibremove.bat ** >> ~bibremove~.2
type ~bibremove~.0 >> ~bibremove~.2
copy ~bibremove~.2 %1 > NUL:
)
rem -- cleanup temporary files -----------------------------------------
rem del ~bibremove~.*


Call this batch file in your FILES\postfmergebib.bat:

@rem --------------------------------------------------------------------------
@rem -- remove unnecessary items from the ROM filesystem ----------------------
@rem --------------------------------------------------------------------------
@call make_bibremove.bat %_FLATRELEASEDIR%\ce.bib

@rem --------------------------------------------------------------------------
@rem -- add additional generic postfmergebib directives here ------------------
@rem --------------------------------------------------------------------------


Now add the items to be removed somewhere in your platform.bib (or any other included file), like


;;------------------------------------------------------------------------------
;; Remove items which aren't required for our application to
;; => save some RAM (winsock API is required for compilation of our
;; application framework, but the target does not provide network interface)
;;------------------------------------------------------------------------------
; @BIBREMOVE ws2instl.dll
; @BIBREMOVE wspm.dll
; @BIBREMOVE nspm.dll
; @BIBREMOVE ws2k.dll
; @BIBREMOVE ws2serv.dll
; @BIBREMOVE afd.dll
; @BIBREMOVE usbhid.dll
; @BIBREMOVE usbmsfn.dll


Pleas let me know if you have any questions or suggestions.

Read more! Post this to a friend!

Windows CE: Config.bib best practice

Hi everybody,

In this post I want to talk a little about the AUTOSIZE macro which can be used in the CONFIG section in the config.bib file. But let’s start with the MEMORY section which can also be found in your platforms config.bib file.

Here are, amongst others, the defines for where your image will run (NK) and where your images RAM will be located (RAM), of course none of the regions defined here should overlap or else it is possible to overwrite your own memory and crash your system. Initially, the memory regions for NK and RAM are fixed up as you set them up here; hence you might waste some memory at the top of the NK region as your image might not be exactly as large as you defined the NK region to be. This is where the AUTOSIZE macro in the CONFIG section comes into play: it increases the RAM of your image by the unused size of your NK region. But why am I telling you this? You can easily find this in the MSDN!

Well this is where it gets interesting as there is ONE pitfall here:

The AUTOSIZE macro only works if:

  • The NK region is BELOW the RAM region AND
  • The NK region and the RAM region are adjacent

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

Wednesday, 10 December 2008

Windows CE QFEs for month of November 2008 arrived

Hi Folks,

X-Mas is comming and the latest Windows CE updates have been recently released and are available for download. Especially the fixes for Windows CE 6.0 are very important.

Windows CE 5.0 Platform Builder Monthly Update (November 2008)
Download link: http://www.microsoft.com/downloads/details.aspx?FamilyID=91e8e5a0-96ba-4350-9149-15592e2461eb&displaylang=en

Download this set of updates for Windows CE 5.0 Platform Builder released during the period of November 1 - November 30, 2008. These updates are fixes for Windows CE operating system problems you run into during the development and maintenance of your custom platform.

Fixes made in this update:
Component: Component: Bluetooth
081125_KB959619 - This update addresses an issue that may occur if a request comes from a device with 255 characters long name.

Component: IE
081117_KB958010 - This update addresses a number of Internet Explorer issues.

Windows Embedded CE 6.0 Monthly Update (November 2008)
Download link: http://www.microsoft.com/downloads/details.aspx?FamilyID=4fcc2e54-55fe-4ba7-9676-e925582316b8&displaylang=en
Download this set of updates for Windows Embedded CE 6.0 released during the period of November 1 - November 30, 2008. These updates are fixes for Windows Embedded CE operating system problems you run into during the development and maintenance of your custom platform.

Fixes made in this update:
Component: Bluetooth
081125_KB959618 - This update addresses an issue that may occur if a request comes from a device with 255 characters long name.

Component: COMM
081113_KB957901 - Windows Server 2008 may not respond to Dhcpv6 packets sent by Windows Embedded CE 6.0 device.

Component: DirectX
081114_KB959374 - This fix addresses the issue with incorrect validation of overlay's constant alpha value.
081124_KB959480 - This update addresses an issue with choppy audio and video when streaming 4 mbps or higher content over MMS or HTTP.

Component: IE
081117_KB958070 - This update addresses a number of Internet Explorer issues.

Component: MSFlash
081105_KB959247 - Warning messages cannot be turned off in ship builds.

Component: MSXML
081113_KB959877 - Deadlock may occur when two threads with different priority share the lock.

Component: Network Projector
081124_KB959416 - This update adds ioctl function to set/get a new status "suspended".

Component: Tools
081110_KB958805 - This update addresses the issue with Heaplist CEDebugX extension returning an error.
081124_KB959879 - Platform Builder 6.0 may be reading uncommited memory pages. With this update, Platform Builder 6.0 will check to make sure the valid bit is set on the page table entry.
Read more! Post this to a friend!

Windows CE: Catalog file issue

Hi everybody,

You might come across the problem that even though you created your catalog item correctly, when selecting it, it will appear as excluded from build:

When you look at the reason why your catalog item is excluded from build it will tell you:
The <myAudioDll.dll> file is not referenced in the BSP’s bib file. The BSP may not support this driver.
How can this be, you might ask yourself, I did include it in platform.bib! Well you run into this particular problem if both of the following conditions are met:

  • The driver is referenced in the platform.bib file via an #include statement and not directly
  • you specified the module name in the catalog item file
In this case your driver will still be built and included in your image. In oder to fix the catalog item view all you need to do is get rid off the module definition in your catalog item file. Et voilá, now the catalog item will no longer be displayed as excluded from build.

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

Tuesday, 9 December 2008

Windows Embedded CE 6.0 R2: VoIP dial plan problems

Hi,

in my earlier post, I gave you a few hints on how to get the new Windows Embedded CE 6.0 R2 VoIP application suite working. But you might find that by default only the US phone number dial plan is supported. So what do you need to do in order to place a call if you do not live in the US or don’t want to call a US number? Well the dial plan is defined in an .xml file which you can find under _WINCEROOT\PUBLIC\FP_VOIP\OAK\FILES\ipdialplan_fpvoip.xml. All you need to do is alter that file accordingly.

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

Monday, 8 December 2008

Windows Embedded Standard MSDN Chat - TOMORROW

Hi Folks,

just a quick reminder: the next MS technical chat on Windows Embedded Standard takes place tomorrow, check out Haralds’ post for more details.

Have fun!


Read more! Post this to a friend!

Application Development under Windows Embedded CE 6.0

Hi out there,

in case you are looking for a good and extensive description of the changes in application development under Windows CE 5.0 to application development under Windows Embedded CE 6.0 have a look at this article on the Windows CE Base Team Blog written by Upender R. Sandadi.

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

Saturday, 6 December 2008

What is new in MS Auto 3.1?

Hello guys,

here some news about MS Auto 3.1:
Microsoft Auto 3.1 is the latest release in Microsoft’s leading automotive focused software platform. It is built on top of Windows Embedded CE 6.0 R2.
The improvements made for MS Auto 3.1 include:
  • Availability of a new Board Support Package (BSP) for the Renesas SDK-7785 system development kit enabling a new class of processor support for Microsoft Auto
  • Significantly improved BSP for Texas Instruments’ TMS320DRA446 (Jacinto) EVM board
  • Improved media device support
  • Improved Bluetooth support

If you need more information, then just take a look here.

Thanks


Read more! Post this to a friend!

Friday, 5 December 2008

C# Yellow Book

Hello guys,

Rob Miles has released his C# "Yellow book".

It is free availabele to download. It is a very nice book about C# developement and programming technics.
You can download it here. If you can't get enough about C# and if you interessed in .Net Microframework, then I have another hint for you!
Rob has also has published a great post describing how to build your own festive lights controller using .Net Microframework. Just look at:
http://blogs.msdn.com/coding4fun/archive/2008/11/27/9149635.aspx


Read more! Post this to a friend!

Tuesday, 2 December 2008

Windows CE and Mobile: Microsoft Technical Chat on December 16, 2008

Hi Folks,

If you have missed the last chat on Windows Embedded CE and Windows Mobile, don’t worry the next one is coming up:

MS is hosting a live chat on, December 16th, regarding Windows Embedded CE and Windows Mobile.

Title: Windows Embedded CE and Windows Mobile Live Chat!
Date: Tuesday, December 16, 2008 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

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

Windows CE: SOURCES macro restrictions

Today I want to focus on the SOURCES macro which contains a list of files that are processed during the build process of Windows CE to become the contents of a .lib, .dll or .exe file. This macro is used from within the SOURCES file. The list of files to compile includes assembly and source files with the following file extensions:
.cxx, .cpp, .c, .asm, .s, .src, .rc, .obj, .ire, .res, .h, .edl, .tlb, .i, .cs, .resx

As with all other macros in SOURCES or DIR files, a “\” character denotes that the list for the particular macro continues in the next line. Be careful not to use any other character after the “\” character otherwise the list will NOT continue in the following line. A whitespace character after the “\” character is a common and hard to trace bug in this context.

There is one more restriction you need to be aware of when using the SOURCES macro. You can only specify files in the same directory as the SOURCES file (e.g. SOURCES=myFile.c) or files that are one directory up from the SOURCES file (e.g. SOURCES=..\myOtherFile.c). Every other file will not be taken into account and produce an error when building your module.
NOTE: This restriction does not apply to the assembly file macros such as ARM_SOURCES, SH_SOURCES, x86_SOURCES or MIPS_SOURCES.

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

Monday, 1 December 2008

Substitute the Desktop Background Graphics

Well, how to customize the background image on Windows CE Desktop?

I've seen quite a few times now and it seemed the most intuitive way for me, too, to first search for the background image file coming from Microsoft. But what to do then?

1.) First alternative coming to everybody's mind is to substitute the background image file. The file is named windowsce_vgal.jpg and is placed in _PLATFORMROOT\<BSPNAME>\Files After testing you hopefully have IMAGING_IMG_JPEGDECODER enabled, too. Otherwise you will find out that there is a windowsce_vgal.bmp that has to be sustituted then. This was quite easy but since you used the same file naming in your project compared to Microsoft's original file naming it's hard to see or recognize that the substitution took place. Especially if you'll just look at the sources a few month after the changes. Then you'll really need an image viewer to recognize the replaced images.

So is there a better way to do this?

2.) Watch out for the shell.bib file. There you will find the lines controling the inclusion of the background image like:

; @CESYSGEN IF SHELL_MODULES_VGAL
; @CESYSGEN IF IMAGING_IMG_JPEGDECODER
WindowsCE.jpg $(_FLATRELEASEDIR)\windowsce_vgal.jpg NK S
; @CESYSGEN ELSE
; @CESYSGEN ENDIF IMAGING_IMG_JPEGDECODER
; @CESYSGEN ENDIF SHELL_MODULES_VGAL

And now look at that: In the final nk.bin image the background image file gets renamed to WindowsCE.jpg

So what you can do here is obviously to add a line like

WindowsCE.jpg $(_FLATRELEASEDIR)\my_projects_background_image.jpg NK S

and probably introduce an own environment variable or feature variable as a catalogue item to wrap this line(s) with some controling IF ELSE ENDIF statements. Now you did not touch the original background image from Microsoft and inside your repository your background image file has a meaningful file name. A few month later looking into your repository you will have a good chance to recognize the customization now.

3.) Now is there a third alternative even better? Why not use your own file name even inside your nk.bin image? So some of your bib files contains, e.g.

my_project_bg_image.jpg $(_FLATRELEASEDIR)\my_projects_background_image.jpg NK S

If you have a look into wceshellfe.reg you will find

; initial value for background bitmap, if any
[HKEY_CURRENT_USER\ControlPanel\Desktop]
; @CESYSGEN IF IMAGING_IMG_JPEGDECODER "wallpaper"="\Windows\WindowsCE.jpg"
; @CESYSGEN ELSE
; @CESYSGEN ENDIF IMAGING_IMG_JPEGDECODER

Adopting the "wallpaper" line to something like

"wallpaper"="\Windows\my_project_bg_image.jpg"

might do the trick then. And again customization control can be added by feature variables and catalogue items. Transparency for others or while time goes by is surely higher compared to the two alternatives before.

Other customization work can often be controled in similar ways...
Read more! Post this to a friend!

Friday, 28 November 2008

SPARKs start to fly

So! The SPARKs Will Fly contest was officially launched at ESC (Embedded Systems Conference) in Boston - a month ago! But what hardware platform to go for? There are five complete kits (containing hardware, Visual Studio 2005 Pro and PlatformBuilder (Windows Embedded CE 6.0 R2 Full Versions) offered. Only restriction on software is: no commercial use! Advantech, VIA, ICop are more PC alike systems on x86 compatible CPUs. VIA Artigo even needs active cooling. The real ultra low powered embedded devices from Special Computing and Keith & Koep run on an ARM core. Keith & Koep's Trizeps4 platform (312MHz and 520MHz version) is hosted by a small and feature rich base board much smaller than Artigo. That's why it is my personal favorite even compared to the small GUMSTIX from Special Computing. Which one's your preferred platform here? This weekend I will obviously start playing around with my Trizeps4/520MHz. Bye... and have a nice weekend!
Read more! Post this to a friend!

Options to build a Windows CE hybrid image (Part II)

You might have read my previous post on how to build a CE hybrid image. Now I want to give you one more option how to achieve the goal of building a CE hybrid image:

  • You can create a Platform Builder subproject and move the module (e.g. device driver) that you are trying to debug to the just created subproject. Now all you need to do is to make sure that the “Always build and link as debug” and the “include in Run-Time Image” checkboxes are checked in the subproject settings. Et voilà, if you now build your BSP and subprojects, you will have a hybrid image.

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

SPS/IPC/Drives recap

Hi Folks,

if you read Damian’s announcement, you know that I was holding a presentation on the Microsoft Embedded booth at the SPS/IPC/Drives on Windows Embedded CE 6.0 Driver Development: Best Practice. It was really exciting to meet the Microsoft folks, hear all the other interesting presentations and get the latest news on the Microsoft embedded products! Hope you could make it; if not the next chance to meet Microsoft and us in Nuremberg will be @ the Embedded World 2009 March 3rd to March 5th 2009. Thanks again guys!

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

Tuesday, 25 November 2008

Windows Embedded Standard MSDN Chat

Hello out there,

you know that the Windows Embedded Standard 2009 is officially available. You can download a trial version of the product at: http://www.windowsembedded.com/.
The product team is excited to hear your feedback and thoughts on the new release. MS is hosting a live chat about Windows Embedded Standard. Only what you have to do, is come in and join the live chat with the Windows Embedded Standard team to talk about this latest release and get your questions answered directly by the experts!

Date: December 9, 200810:00 - 11:00 A.M. Pacific Time
Link: http://msdn.microsoft.com/en-us/chats/default.aspx

Put the date into your schedule and join it!
Thanks
Read more! Post this to a friend!

Thursday, 20 November 2008

Agile Developement with Visual Studio (Part II)

Hello,

for all agile guys out there who did not manage to get time off and come to Barcelona - here the link to slides about Agile software developement with VS by Stephanie Saad from the Tech Ed.

If you're using Version ONE in your projects for planing purposes, maybe you should think about usage of the TFS (Team Foundation Server). In this case Version ONE offers an integration with Microsoft Team Foundation Server 2008, which gives you some very nice features, like updating your tasks directly from Visual Studio. :)

If you're interessted in it, just take a look here: http://www.versionone.com/microsoftvsts/

Thanks
Read more! Post this to a friend!

Microsoft Technical Chat on November 25, 2008

Hi Folks,

MS is hosting a live chat on, November 25th, regarding Windows Embedded CE and Windows Mobile.

Title: Windows Embedded CE and Windows Mobile Live Chat!
Date: Tuesday, November 25, 2008 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

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

“Sparks Will Fly” Contest

Hi Folks,
The Microsoft Windows Embedded Team has launched a global embedded development contest called “Sparks Will Fly” which is open to all except full-time Microsoft employees. The first prize will be $15,000 plus a slot in the Embedded System Conference (ESC) Silicon Valley keynote 2009! If you want to enter the contest you can get a kit combining Windows Embedded CE 6.0 R2, Visual Studio 2005 Professional and an embedded device that you will develop your solution on. Ready to start? First round submissions are due January 7th 2009, check it out:
http://www.sparkcontest.com/



In Addition there are some interesting online tutorials, especially created for the “Sparks Will Fly” contest. So even if you don’t want to enter the contest but want to learn more about Windows Embedded CE 6.0 R2 you can check out these tutorials:
http://www.microsoft.com/windowsembedded/en-us/products/spark/classroom.mspx

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

Microsoft Auto 3.1 Feature Pack released

Just a short post to let you know Microsoft has just released its Microsoft Auto 3.1 Feature Pack. Together with the Live Services for Devices Toolkit, companies can create new in-car solutions based on Windows Embedded and offer dynamic, connected services.

In the near future we will post some more news around this feature pack - so stick around.

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

Wednesday, 19 November 2008

.NET Micro Framework Porting Kit 3.0 - Where to get it.

Ok, as I have been asked more than just once, here is a short update on where to get the Porting Kit from.

As you will have noticed, the link on the .NET Micro Framework site has not yet been activated.

So what to do? Well if you're a US resident, simply visit the Microsoft store here: http://store.microsoft.com/microsoft/-NET-Micro-Framework/product/667DC827

If you're living in europe the porting kit will be offered from December onwards at the UK store.

Ok, so what if you don't want to wait or live outside of the US or Europe. Well in this case I have got good news for you; simply contact netmfbiz@microsoft.com

So long and thanks for all the fish!

Read more! Post this to a friend!

Let's talk about performance

Hello guys,

I attended a very very interesting session at TechEd held by the unforgetable, unbeliveable Douglas Boling - If you have not been to one of his talks then that is something you have to put on your ToDo list.

The session had the following title: "Windows Embedded CE Application Development", but was actaully about performance. So, what kind of performance did we talk about? I will try to give you a short summary.

Basicly in the embedded world we can differentiate between:
  • device performance &

  • developer performance

Embedded devices are not so powerful as PCs and there are many constraints: memory, processor speed, power issues etc. Because of this the developers/tools and applications have to meet some requirements specific to embedded devices.

If you have to develop an application for Windows Embedded, then you have basically 3 frameworks to achieve this with:

  • usage of Win32 API

  • uasge of MFC

  • usage of .NET compact framework
With Win32 API you will write the "fastest" and most "compact" code, but it requires some advanced programming skills from the developers. The code may be fast, but development and time to market will not! And notice: the realtime(able) code can be only written with Win32 API.

Now let's talk about the usage of MFC for Windows Embedded application development: Sorry, but there is nothing to say. In Doug Boling's opinion, it's a "dead technology" which shouldn't be used anymore - and I agree with him.

Last but not least, we have the .NET compact framework. It allows a very good developer performance. The developers are able to create new applications very fast, because
  • the tool support is much better than with Win32.

  • C# is better than C++

  • Processor and O/S abstraction is done by the .NET compact framework
  • .NET Compact Framework apps run on desktops!
  • Build for one device target and run it on all processors
But .NET applications are not realtime applications! Just think of the carbage collection - always think of dispose.

So, what to do, when you have to develop a Windows Embedded application and don't know what to choose? Put your high-level requirements (time to market, which device you will use etc.) together and make a kind of trade-off decision: device performance vs. developer performance. You can't have both!

By the way -
Q: What is the difference between a Desktop Software Engineer and an Embedded Software Engineer?
A: The Desktop Software Engineer gets paid to write code fast; The Embedded Software Engineer gets paid to write fast code.
Read more! Post this to a friend!

Tuesday, 18 November 2008

Come and meet Jochen @ SPS/IPC/Drives

You may be aware that next week the Exhibition Center Nürnberg will be home to SPS/IPC/Drives - the exhibition for electric automation technology.


During this event Jochen will be holding a 20min presentation @ the Microsoft booth about "Device Driver Development - Best Practices". So if you are visiting this event and would like to learn best practices around driver development as well as talk to Jochen about Windows CE, come to the Microsoft Booth at 10:30 on any of the three days - Hall 7A Booth 645.
Of course you can come and talk to the Microsoft folks as well!
So long and thanks for all the fish!
Read more! Post this to a friend!

Friday, 14 November 2008

Load order of built-in drivers in Windows CE

This is simple you might think as it is specified in the Order value of the drivers registry setting ([HKLM\Drivers\BuiltIn\<DriverName>]). But what happens if either the Order value is not specified or if there are multiple drivers with the same Order value?

If the Order value is not specified the driver will load last, meaning it would be as if you would have specified the Order value to be 255 (FF).

If, however there are multiple drivers with the same Order value, then they will load bottom-up as specified in the reginit.ini file in the _FLATRELEASEDIR which is the registry of your device.

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

Thursday, 13 November 2008

Tech Ed Impressions

For all of you who weren't able to come to Barcelona - you're missing out on a good event - and for those of you who are here I've quickly collected some impressions of the last couple of days.


For the embedded developers visiting TechEd, the Embedded Zone is the place to be. Not only to talk with the partners from Germany and the UK, but also to have the chance to grab someone from Microsoft or to listen to one of the presentations in the Embedded theatre - remember mine? What started out to be a 20min presentation turned into a 2hr interactive session with some great disscussions - Thank-you!

Then there was the Windows Embedded Community Party which turned out to be a great success - If you look closely or click on the picture you will see Harald mingling with the crowd.


And as you can see there was plenty to celebrate and yes everbody did miss Mike - especially Olivier. And as far as I am concerned I can only approve with the results of the baked beans contest.

Anyway, we are having a great time and big thank-you to the WEPP team.


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

Windows CE QFEs for month of October 2008 arrived

Hi Folks,

the TechEd in Barcelona is still going on, but I have the newest updates for you.
The latest Windows CE updates have been recently released and are available for download.

Windows CE .NET 5.0 Platform Builder Monthly Update (October 2008) Download link: http://www.microsoft.com/downloads/details.aspx?FamilyId=48126B23-4BCB-42AD-92B5-3402F371E7AD&displaylang=en

Download this set of updates for Windows CE 5.0 Platform Builder released during the period of October 1 - October 31, 2008.

Fixes made in this update:
Component: COMM
081010_KB957881 - EAP-PEAP may fail if AP resends EAP-PEAP user credential request with incremented ID.
081013_KB958185 - Insufficient size of DNS Transaction ID may allow Delegation Spoofing.
081014_KB957620 - This update enables SIO_LIMIT_BROADCASTS socket ioctl.

Component: DirectX
081010_KB957922 - This update addresses small memory leak that may occur when playing MMS stream from Windows Media Server 2003.

Component: FATFS
081007_KB957946 - If the number of free clusters runs out during the file data cloning, then the file data can potentially get corrupted.

Component: FSD
081022_KB958806 - The ReadFile path assumes there is at least one byte to read and does not check for zero bytes.

Component: Storage
081028_KB958403 - SD cards without a partition table may not be mounted.

Windows CE .NET 6.0 Platform Builder Monthly Update (October 2008)

Download link: http://www.microsoft.com/downloads/details.aspx?FamilyId=62FD4F00-7C1D-4883-868A-3A95E720C134&displaylang=en

Download this set of updates for Windows CE 6.0 Platform Builder released during the period of October 1 - October 31, 2008.

Fixes made in this update:
Component: COMM
081013_KB958183 - Insufficient size of DNS Transaction ID may allow Delegation Spoofing.
081028_KB958342 - This update disables the generation of Magic Number configuration requests, so no magic number will be configured and the Echo Requests sent with Magic Number 0 will be acceptable.

Component: DirectX
081029_KB958452 - This update addresses small memory leak that may occur when playing MMS or MBS stream from Windows Media Server 2003.

Component: Drivers
081020_KB958780 - USB driver may issue RESET when port is not connected.

Component: Unimodem
081020_KB955238 - This update makes registry configuration for unimodem DCCRequest and DCCResponse command strings configurable.

Component: USB
081013_KB958341 - USB Host Controller Driver for the EHCI host controller assumed that any device connected to its root port was high speed. This caused some low speed devices to not work.
Read more! Post this to a friend!

Calling Kernel IO Controls (OEMIoControl) from user space in Windows Embedded CE 6.0

Due to the architecture change of Windows Embedded CE 6.0, Kernel IO Control call go through a kernel mode component called oalioctl.dll. The source code for this component can be found at %_WINCEROOT%\PUBLIC\COMMON\OAK\OALIOCTL. By default, it has a list of 5 user-accessible Kernel IOCTL codes in a switch case statement: IOCTL_HAL_GET_CACHE_INFO, IOCTL_HAL_GET_DEVICE_INFO, IOCTL_HAL_GET_DEVICEID, IOCTL_HAL_GET_UUID and IOCTL_PROCESSOR_INFORMATION, even though IOCTL_HAL_GET_DEVICEID and IOCTL_HAL_GET_UUID are deprecated and there functionality can now be accessed via new SPI_* codes in IOCTL_HAL_GET_DEVICE_INFO. If your user mode application or driver now calls one of the IOCTLs listed in OALIOCTL, the call will be forwarded to the OAL code, for all other IOCTLs the call will be rejected. But remember this is only true for user mode processes and not for kernel mode driver.

Now why am I telling you this you might ask? Well you can clone the OALIOCT component to your Platform and add any Kernel IOCTL to the switch case statement that you would like to allow from user space. Therefore you just need to make sure that the component compiles as oalioctl.dll in your Platform. No .bib or .reg entries are necessary.

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

Wednesday, 12 November 2008

Dare to dream with .NET Micro Framework

Hello guys,

I want to give you my impressions from the "Running on the metal with .NET Micro Framework" Session with John Leier today.



John gave the broad overview about the .NET Micro Framework 3.0, which allows developers to quickly create smart connected embedded devices using Visual Studio 2008 and C#, without the added complexity of an underlying operating system. John talked about the market possibilities, architecture, hardware requirements and last but not least the new features in the version 3.0.


The most impressing feature to me, was the possibility of "linking" native code into the managed code with .NET Microframework:
- define "Native Methods" region in your managed code
- generate the native stubs
- fill your native code into the generated stubs


That's it!


In my opinion, .NET Microframework gives us many new chances, where very small solutions are required.
You have ideas for new cool devices with .NET Micro Framework? Then participate in the
"Dare to Dream Different Contest"


Read more! Post this to a friend!

Agile presentation about "Agile Software developement with SCRUM"

is running now, here at TechEd in Barcelona (in theatre 2). Look at the picture below:

Damian is presenting the experience about usage of SCRUM and agile best practises in embedded software projects.
There are many developers here with questions, it seems that SCRUM is required in the developer comunity. :)
P.S.
Thanks Damian!!!!

Read more! Post this to a friend!

Options to build a Windows CE hybrid image

First of all what is a hybrid image anyway? A hybrid image is a release image where certain components are compiled as debug. It can be very helpful while debugging. For instance you are developing a device driver right now so you only need the debug version of the device driver you are working on right now; the rest of the image can be release for better performance and a better simulation of how your device will behave in the real world.

But how do I get a hybrid image, you might ask?
  • Do I simply copy the debug version from the debug directory to the release directory and make a run-time image afterwards? Well that would be one method but not a very sophisticated one!

  • What about set WINCEDEBUG=debug in the command line window? Well that would build your component in the debug directory and hence you still would copy it over manually to your release directory.

  • What about setting DISABLE_OPTIMIZER=1 in the SOURCES file or from the command line window? This would only disable the optimizer but still not compile debug macros.

  • set COMPILE_DEBUG=1 from within the command line would do the trick. But unfortunately this command does not work from within the SOURCES file.

  • Now for the ultimate solution that you can specify in the SOURCES file: CDEFINES=$(CDEFINES) –DDEBUG /Od this disables the optimizer and compiles the debug macros.

To include the just build component in your image, a make run-time image is necessary after each of the just mentioned solution and if you build form within the command line, make sure you have set WINCEREL=1 to automatically execute the buildrel step after build.

Have fun
Read more! Post this to a friend!

Waking up

on Wednesday.
The exhibition hall is quite empty. Where are all the developers??? :)



The reason is: the exhibition opens at 10:00am. Then we expect as many developers as on the previous days.
Read more! Post this to a friend!

Tuesday, 11 November 2008

Daily SCRUM at TechEd08

Hello guys,

today at 9:00 am I attended the "daily SCRUM" here at TechEd in Barcelona. Early in the morning, but .... we started with the well-known daily SCRUM questions:

what I did yesterday?

what will I do today?

do I have any impediments?

The answers are secret :)
It was quite interesting and very agile. Great!!!!

After a short introduction to the basics of Scrum like: the Scrum Master, team, product owner, burn down and of course the daily Scrum, Stephen Forte discussed with us about our experiences with SCRUM.

It was amazing to see, how many pepole are using or want to use SCRUM in their software project. For me as a certified Scrum Master was this very satisfying, that SCRUM is becoming more and more popular.

If you want to hear more about SCRUM and you're in Barcelona on Wednesday ? Then, visit Damian's presentatoin in theatre 2.
Read more! Post this to a friend!

10 Reasons to build your own Windows Embedded Standard Device

For those of you out there who did not manage to get time off and come to Barcelona - here are 10 Reasons to build your own Windows Embedded Standard device - a Breakout Session held by eMVP and Excellence Award winner Alexander Wechsler, today.
The 10 topics Alexander talked about can be devided into 5 groups:
  • Time to Market
  • Flexibility
  • Robustness
  • Security and
  • Change Management
So, let's have a look at Alexander's reasons for building devices with WES.

1. Fast OS Image Generation
Fast Image generation is not only essential to ensure fast time to market but also helps you to cut down on your coffee intake.
The toolchain offered by Microsoft, with Target Analyzer, Component Designer and Target Designer helps you to easily find the right components required for your Image and ensures that all dependencies are built into the image.

2. Reuse of XP Professional Dirvers and Applications
If it runs on on XP Pro SP3 it will run on Windows Embedded Standard ... that is if the right components are in the image.

3. Choose from over 11000 Components to Build an Image
OK, let's be precise: The current version of WES contains 11892 components! But, don't worry lots of these are drivers which means you only have to know around 3000 components when adding functionality.

4. Boot from any Storage Device - even into a custom shell
This is of course a prerequisite for embedded devices. Do we want moving parts in an embedded system? Of course not!
WES supports booting from flash disk, USB stick, compact flash, CD & DVD etc.

5. Disk Protection
Again, something most important for embedded devices. WES supports this by using Embedded Enabling Features (EEFs):
  • Enhanced Write Filter
  • File based Write Filter
  • Registry Filter
6. The fastest Way to Boot XP
is using HORM - Hibernate Once Resume Many. This way you can achieve boot times under 10 seconds. However this does depend on your hardware and specific image.

7. Built-in Security Infrastructure
WES supports all the infrastructure you would expect from an embedded OS based on XP Pro SP3:
Active Directory Security with all those industry standard secure protocols we love
Policy based Management
Device Security, i.e. Firewall, Anti-virus protection, File System Encryption etc.

8. Support for innovative Authentication Methods
Alexander showed us a demo here on how to use an RFID chip to automatically Log-in and out of the system. When you walk away from the system it automatically logs you out and when you come back it logs you back in again - great! This is something I guess alot of people could do with especially if their group policy automatically logs them out.

9. Manage Small to Large Deployments
Another main issue with embedded devices, especially when it comes to adding patches or even a complete image update. WES offers 3 possibilities to meet this issue:
  • Device Update Agent
  • Windows Server Update Services (WSUS)
  • System Center Configuration Manager (SCCM)

10. SCCM OSD - Operating System Deployment
OSD is a new feature in WES which includes the sysprep utility and makes deployment of images a piece of cake.

So, enjoy building your Windows Embedded Standard images!

So long and thanks for all the fish!



Read more! Post this to a friend!

Agile Developement with Visual Studio

Hi guys,

yesterday I attended a very interesting session by Stephanie Saad about the agile software development with Visual Studio. It was a great session about agile planning, continuous integration and improvement, connecting with customers and a bunge of other agile practices enabled through the VS tools.
One of (especially for me) the very cool features was the the integration of the SCRUM process methods and practises into the microsoft tools.
The Visual Studio Team System includes Microsoft Solutions Framework (MSF) which allows usage of some (e.g. agile) process templates or creation of your own templates. For more info about it, look here: http://msdn.microsoft.com/en-us/vsts2008/aa718795.aspx

My highlight is "Task board for VS Team System" by Conchango.

It allows managing of the SCRUM backlog items / tasks by Drag'n'Drop!



Have a look and try this out ....
Read more! Post this to a friend!

Monday, 10 November 2008

Ready to start!


Hi folks,
here we are in Barcelona all set up and ready to go!
Here's a picture of the Windows Embedded Zone where you can find us ... that is if we're not currently visiting one of the many sessions.




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

Sunday, 9 November 2008

How to use Eclipse and GDB to debug the .NET Micro Framework

In my last post we were using GCC to build the .NET Micro Framework firmware for the i.MXS reference board. Now we go one step further and will debug the firmware using GDB.

What do we need?
First an overview of our setup:



The installation should be straight forward. Here are the configuration steps...
  • Open a command window, invoke setenv_gcc.cmd and run Eclipse from this initialized build environment.

  • Create a new C++ Project in Eclipse:

    File->New->C++ Project



    (I set the workspace to "C:\" and named the project like the installation directory of the porting kit "MicroFrameworkPK_v3_0".)

  • Configure Build:

    Project->Properties->C/C++ Build
    Add a new configuration e.g. "iMXS Debug RAM"
    Build command: msbuild.exe
    Build directory: ${workspace_loc:/MicroFrameworkPK_v3_0/Solutions/iMXS}



    Build (Incremental build): dotNetMF.proj /t:build /p:flavor=debug;memory=ram;platform=iMXS
    (This builds a debug version of the iMXS firmware that executes from RAM. To build a release version that executes from FLASH, don't add any additional arguments after dotNetMF.proj)


  • We add OpenOCD as an external tool:

    Run->External Tools->External Tools Configuration...
    Name: OpenOCD
    Location: C:\Program Files\openocd-r247\bin\openocd-ftd2xx.exe
    Working Directory: C:\Program Files\openocd-r247\bin\
    Arguments: -f imxs.cfg
    (For a sample imxs.cfg file look here.)



  • Finally we configure gdb:

    Run->Debug Configurations...
    Add "Zylin Embedded debug (native)" configuration
    Name: iMXS tinyclr
    C/C++ Application: C:\MicroFrameworkPK_v3_0\BuildOutput\ARM\GCC4.2\RAM\debug\iMXS\bin\tinyclr.axf



    GDB Debugger: C:\Programs\Raisonance\Ride\arm-gcc\bin\arm-none-eabi-gdb.exe



    Initialize commands:

    target remote 127.0.0.1:3333
    monitor reset
    monitor sleep 500
    monitor poll
    monitor soft_reset_halt
    monitor arm7_9 sw_bkpts enable

    break PreStackEntry
    load
    continue

    (This connects to the gdb server, enables software breakpoints, sets a breakpoint at the function PreStackEntry, loads the firmware into RAM and starts... )



  • Now we can settle back and only press some buttons...

    First we build a debug version that executes from RAM







    ...run our JTAG server OpenOCD






    ...and hit the debug button!
    Now it takes some seconds to transfer our debug firmware into the RAM of the i.MXS board.



    The firmware starts and immediately stops at PreStackEntry. Now we can discover the code line by line... :)




Read more! Post this to a friend!

Thursday, 6 November 2008

Which sources.cmn file will be taken into account?

So you created a sources.cmn file but somehow it is not used when compiling your component and you can’t figure out why?
This is because the compiler only considers ONE sources.cmn file, but which one will it be? Well, it will be the one closest up the tree from where your component is.

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

Come and hear me talk!


Just over 3 more days before TechEd 2008 opens its doors for developers in Barcelona and I would like to invite attendees to come and hear me talk in the Embedded Theatre on Wednesday @ 10:20.

I will be giving a 20min presentation on Agile Development and I'm looking forward to seeing you there.

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

Don't miss todays Webinar!

Just wanted to remind you about todays Webinar - Windows Embedded CE
and Handheld Solutions - @ 1:00-2:00 PM PST.

Dion Hutchings, Microsoft - Technical Product Manager, will tell all you will need to know in order to build your next Handheld device.

Register here for the webinar and win a ZUNE Digital Media Player!

So long and thanks for all the fish!

Read more! Post this to a friend!

Wednesday, 5 November 2008

Save the dates!

Hi folks,

if you're interested in Kiosk Solutions or Windows XP Pro for Embedded Systems (XP Pro FES) then you will want to mark the following dates in your calendar:

Windows Embedded Vertical Focus: Kiosk Solutions
Sylvain Ekel, Microsoft Systems Engineer, will take you through the key features of the Windows Embedded Technologies which are suitable for kiosk solutions.
To register for this 60 min webinar click here - and win a Digital Picture Frame.

XP Pro FES
Attend this 60 min webinar and learn about the key differences between Windows XP Professional and Windows XP Professional for Embedded Systems including an overview on the product's technical features, and it's availability through the OEM Embedded Devices (OED) channel until 2016.
To register click here - and win a Digital Picture Frame.

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

Silverlight for Mobile

Wouldn't it be super cool if the Silverlight apps you built for the desktop could run on Millions of Mobile Devices?

If you have been building Silverlight applications and are wondering how to extend them to mobile devices, then I have a hint for you.

Silverlight 2 for mobile has been announced at PDC and the webcast video is already available. Cool!
This webacast video is filled with some very cool demo, e.g. the "painter".


You will not only learn how to extend your existing Silverlight 2 applications to work on Windows Mobile but also learn how to build rich mobile Silverlight apps that play media, handle simple gestures, have cool animations, and web services.
Further information about Silverlight 2 for Mobile ia available at:

http://silverlight.net/learn/mobile.aspx
http://blogs.msdn.com/mobiledev/archive/2008/11/03/let-s-review-the-pdc-silverlight-2-for-mobile-demos.aspx

Read more! Post this to a friend!

Tuesday, 4 November 2008

Instable JTAG connection

Currently I'm working on a platform without Ethernet or USB client and therefore I depend on JTAG debugging support for this SH4 based board (Renesas SH7760).

Debugging was quite annoying during the first debug sessions: The debugger always lost the connection after a while.

The reason for that is quite evident: The CPU enters the sleep mode in OEMIdle() as long as there are no busy tasks. But if the CPU "sleeps" the JTAG communication gets broken. So, the only thing that I have to assure is that the CPU does not enter sleep mode.

OEMIdle() in OAL\OALLIB\timer.c is the right location for such an adaption:

Search for "sleep" and enclose it with a define like

#if !defined(DISABLE_OEMIDLE_SLEEP)
__asm("Sleep");
#endif

If you like, you can control this define via the sources.cmn file and a CE catalog feature. Just add these lines


!IF "$(DISABLE_OEMIDLE_SLEEP)"=="1"
CDEFINES=$(CDEFINES) -DDISABLE_OEMIDLE_SLEEP=1
!ENDIF

and create a catalog feature which sets the environment variable DISABLE_OEMIDLE_SLEEP. Do not forget to rebuild oallib if you set or clear your new feature.

Read more! Post this to a friend!

Monday, 3 November 2008

.NET Micro Framework Porting Kit V3.0 with GCC Support?

Just a joke or what? The release notes of the recently released .NET Micro Framework Porting Kit V3.0 highlight the support for building the .NET MF firmware with GCC tools. It's hard to believe - so let's try it!
After installation of the porting kit I was looking for some information about the toolchain to use. The only hint I could find in the documentation is that GCC4.2 or later is supported for the ARM architecture. Frivolous as I am, I installed the first GNU ARM toolchain for Windows I found on the web. A few seconds later the build script ran and a lot of red output was flashing in the build window. Usually I like the red color but not in this case! ERRORS - wherever you look! Sure.. GCC support. Fortunately the cause was obvious. The toolchain I'd installed doesn't include a none EABI compiler, that was called by the build script. Due to the lack of information, I had to try several toolchains until I found the free ARM Tools from Raisonance, which finally worked :)

These are the three easy steps to build your home-made firmware:
  1. Start a command window
  2. Call setenv_gcc.cmd in the installation directory of the porting kit with the path of your toolchain to set up your build environment
    setenv_gcc.cmd C:\PROGRA~1\RAISON~1\Ride\arm-gcc
  3. Invoke MSBuild.exe with the command below in the directory of your platform solution
    msbuild dotNetMF.proj


E Voilá. We have built a release version of the .NET Micro Framework V3.0 firmware ready for flashing. How to do this? Take a look at this previous post :)

The following is just a reminder of the used OpenOCD commands for me, if I want to flash my i.MXS board again ;)

flash probe 0
flash erase 0 0 63
flash write_binary 0 C:\MicroFrameworkPK_v3_0\BuildOutput\ARM\GCC4.2\FLASH\release\iMXS\bin\TinyBooterDecompressor.bin 0x0
flash write_binary 0 C:\MicroFrameworkPK_v3_0\BuildOutput\ARM\GCC4.2\FLASH\release\iMXS\bin\tinyclr.bin\ER_CONFIG 0x40000
flash write_binary 0 C:\MicroFrameworkPK_v3_0\BuildOutput\ARM\GCC4.2\FLASH\release\iMXS\bin\tinyclr.bin\ER_FLASH 0x60000
flash write_binary 0 C:\MicroFrameworkPK_v3_0\BuildOutput\ARM\GCC4.2\FLASH\release\iMXS\bin\tinyclr.bin\ER_DAT 0x120000


The result looks like this:




Even the output of the deployment tool tells us V3.0. Now we could use Visual Studio to develop and deploy our real application with all the features of the new SDK.



Next time we'll visit the wonderful world of the gdb console and try to debug the whole thing. No, just kidding - we'll use a debugger with a graphical interface of course :)
Stay tuned!

Read more! Post this to a friend!

Friday, 31 October 2008

Mark your calendar: the MSDN Live Webcast about Industrial Automation Solutions is comming soon!

The Windows Embedded family of products offers a broad range of embedded operating systems that have been deployed in demanding environments, and Windows Embedded operating systems will continue to drive the next generation of leading industrial automation solutions.

If you interessted in, so attend this Live Webcast presented by Chris Muench on Thursday December 11, 2008 11:00 AM Pacific Time (US & Canada).

Follow the link to register for this webcast:
http://msevents.microsoft.com/CUI/WebCastEventDetails.aspx?EventID=1032394353&EventCategory=4&culture=en-US&CountryCode=US

Don't miss it!
Read more! Post this to a friend!

Have you already seen ...

the new Windows Mobile portal at http://developer.windowsmobile.com/. It has a new look and feel:


check out the "for developers" area. In my opinion, it's nice :)

It’s not only the Windows Mobile portal that has changed. Also the Windows Mobile Team blog has a new look and feel too. Check it out:


Read more! Post this to a friend!

Thursday, 30 October 2008

Register now for the Windows Embedded Community Party in Barcelona!


Click here before Friday 6th November 2008 to put your name down on the guest list for the Windows Embedded Community Party.

This is your chance to connect with the Windows Embedded team, Windows Embedded Partners, your fellow developers and academic community in a chilled environment with food, drink and music!

DATE: Tuesday 11th November 2008
TIME: From 6pm
LOCATION: Only 2 minutes walk from the CCIB

Save the date - and I'll see you there!

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

Sign Up For InfoBlast!

InfoBlast is a monthly ‘Must Read’ from the Windows Embedded Team and Partners.

Subscribe here for the monthly newsletter and read the latest news from Windows Embedded and WEPP partners.

Don't miss it!

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

Wednesday, 29 October 2008

Don't panic - Windows XP hotline for embedded developers


Windows Embedded Distributor Abacus Deltron has set up a Windows® XP Professional Hotline to support embedded developers affected by Microsoft’s withdrawal of Windows® XP Professional from the royalty channel as of June 30th this year.

"So, what has Windows® XP got to do with Embedded?", you might ask. Well ever heard of Microsoft XP Professional for Embedded Systems? No?
Well this is a package that is technically identical to the desk-top product in every respect except that the licensing terms are different.

Well if you are using Microsoft XP Professional for Embedded Systems and need support

- Don't panic -

Simply contact dontpanic@abacus-deltron.de or visit http://www.abacus-deltron.de

- and don't forget your towel ;-)

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

Don't miss Windows Embedded Webcast

covering Windows Embedded CE and Handheld Solutions on November 6, 2008.

This session will cover everything you need to know in order to build your next Handheld device. Windows Embedded CE is the ideal handheld platform with hardware support and software components to satisfy all requirements of the next generation of connected, service-oriented handheld devices.

Check it out:
URL: http://www.microsoftembeddedseminars.com/about.aspx?seminarid=164

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

Tuesday, 28 October 2008

Quebec to be based on Windows 7!

If you read the comment on one of my last posts on Embedded Standard, you know that I was expecting some news around "Quebec" soon, considering these eventful weeks.

However, the news from Kevin Dallas - general manager of Microsoft's Windows Embedded business - during a Keynote at the ESC in Boston was not what I expected; but could prove to be the right step in developing Windows Embedded Standard forward.

This announcement also answers Pats question if and when there will be a 64bit version of Windows Embedded POSReady - the successor of WEPOS.

Kevin told attendees "Quebec" will not only provide OEMs with "exciting new input capabilities," such as multitouch, gesture support, and other user interface enhancements but also - at long last - be newly available in a 64-bit version.

So when will "Quebec" be available?
Rumor has it that the new desktop OS will be released to manufacturing in October 2009 and John Doyle - Microsoft Product Manager - noted that the embedded version, Quebec, will be available "within a number of quarters" after the desktop edition's release.

Hence the time frame I assumed when answering Pats question seems to be a fairly good bet - only now with the better foundation!

Here is the official Press Release.

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

.NET Micro Framework 3.0 is to be launched today

Hi folks,

today, Version 3.0 of the .NET Micro Framework is to be launched during the Embedded Systems Conference (ESC) in Boston and at the Professionals Developer Conference (PDC) in Los Angeles.
So watch out for news around this.

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

Monday, 27 October 2008

Want to have a look at some of the new features ...

in Windows Embedded Standard?

The Windows Embedded Standard Team will be releasing a number of screencasts over the next couple of weeks to demonstrate the new features as well as some Tips&Tricks.

The first video
- which you can find here: Windows Embedded Standard - A Look At Some New Features.
shows you features such as the Enterprise macro, the Test Application Compatibility macro and new drivers.

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

Countdown commencing ...

A little under 2 weeks before the Tech-Ed in Barcelona opens its doors to developers and I don't know about you but we (Harald and I) have got our bags and boxes packed and are ready to go.
Something tells me that we will be lurking around the Embedded Area Booth B2 and we are looking forward to seeing you there.

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

Tuesday, 21 October 2008

Windows CE QFEs for month of September 2008 arrived

Hi Folks,
the latest Windows CE updates have been recently released and are available for download. Some critical issues (e.g. in kernel) have been resolved so get them now! More information for each update is provided in the Readme document available after the individual update(s) has been installed.

Windows CE .NET 4.2 Platform Builder Monthly Update (September 2008)
Download link: http://www.microsoft.com/downloads/details.aspx?FamilyId=F90D86F6-4B44-4786-8FAC-69945BD1BCC2&displaylang=en
Description: Download this set of updates for Windows CE .NET 4.2 Platform Builder released during the period of September1 - September30, 2008. These updates are fixes for Windows CE operating system problems you run into during the development and maintenance of your custom platform.
It contains critical update of the CoreOS component:
Component: CoreOS
080911_KB957304 - NULL termination character may get ignored when user specifies -1 as the input string length.

Windows Embedded NavReady Monthly Update (September 2008)
Download link: http://www.microsoft.com/downloads/details.aspx?FamilyId=AAAA0048-9F23-4F84-90C1-DDAF0FD062FB&displaylang=en
Description: Download this set of updates for Windows Embedded NavReady released during the period of September 1 - September 30, 2008. These updates are fixes for Windows CE operating system problems you run into during the development and maintenance of your custom platform.
It contains following updates:

Component: Bluetooth
080908_KB956719 - This update addresses the following issues:
- Incorrect COM GUID is being used in SyncML code
- SyncML run-time dependencies (SAX, Coreloc) are missing from sysgen code
- Document SyncML host name registry key

Component: Servers
080919_KB956579 - The MSN Direct Emulator sample DAT file was missing some source type content. When the custom rolls and SDK containing DBRLib.lib, linking against the library may cause a number of linker problems when using update versions of the compiler.

Windows CE 5.0 Platform Builder Monthly Update (September 2008)
Download link: http://www.microsoft.com/downloads/details.aspx?FamilyId=91396D23-43EE-48C1-9CAD-775628B0BD95&displaylang=en
Description: Download this set of updates for Windows CE 5.0 Platform Builder released during the period of September 1 - September 30, 2008. These updates are fixes for Windows CE operating system problems you run into during the development and maintenance of your custom platform.
Fixes made in this update:
Component: CAPI 2.0
080925_KB957639 - This update adds ASN1 decoder and encoder to address some issues related to certificate processing.

Component: CoreOS
080911_KB957314 - NULL termination character may get ignored when user specifies -1 as the input string length.

Component: DirectX
080912_KB956452 - This updated allows more control over the audio device used by the DShow audio renderer.

Component: Drivers
080911_KB956296 - This update adds support of DRVM_MAPPER_PREFERRED_SET.

Component: Shell
080910_KB957139 - SHChangeNotifyRegister and SHChangeNotifyDeregister may not work correctly when dealing with more than 1 registered HWND.

Component: TimeSVC
080930_KB958079 - Time Zone data are out of date resulting in DST transition time being wrong for some of the time zones. This update also adds a number of new time zones.

Windows Embedded CE 6.0 Monthly Update (September 2008)
Download link: http://www.microsoft.com/downloads/details.aspx?FamilyId=D192EA1F-E968-4D57-835E-DDF248BA3FC2&displaylang=en
Description: Download this set of updates for Windows Embedded CE 6.0 released during the period of September 1 - September 30, 2008. These updates are fixes for Windows Embedded CE operating system problems you run into during the development and maintenance of your custom platform.

Fixes made in this update:
Component: CoreOS
080911_KB957315 - NULL termination character may get ignored when user specifies -1 as the input string length.

Component: Display
080925_KB956505 - GPE::EmulatedBlt_Bilinear may not reset the initial step value before each horizontal line stretch. This causes some visual errors in the resulting bitmap.

Component: Network Projector
080919_KB956842 - Windows Vista's Network Projector is not able to connect to Windows Embedded CE 6.0 Network Projector device if none of the resolutions that it supports are part of capability blob. This update allows optional customization registry, for example, 800x600 to be send along in capability blob. This makes Network Projector connection succeed, however it does not change the resolution of the Windows Embedded CE 6.0 Network Projector.

Component: NK
080909_KB957302 - This update addresses an issue with slow registry flushing.

Component: NTLM
080911_KB956352 - The proxy call for QueryContextAttributes for SECPKG_ATTR_SESSION_KEY is missing the context handle from the invocation.

Component: Redirector
080911_KB957428 - Redir component may not always use Server Local time for file modification timestamp.

Component: TimeSVC
080930_KB958080 - Time Zone data are out of date resulting in DST transition time being wrong for some of the time zones. This update also adds a number of new time zones.
Read more! Post this to a friend!