ENG [#IOT] #RaspberryPi2 and #Windows10, VS deployment process and Web Management app (4 on N)


New post for Windows 10 and Raspberry Pi 2 series

  1. Hardware and software (1 on N)
  2. Boot from SD card in the device (2 of N)
  3. Hello World mode! (3 of N)
  4. Visual Studio deployment process and Web Management app (4 on N)
  5. Hello Blinky !!! (5 on N)
  6. Some admin tasks, like change password and change name (6 on N)
  7. List of connected devices in the Raspberry Pi 2 (7 on N)
  8. Deploy an app using the deploy package (8 on N)

In yesterday’s post I wrote on how to deploy our first “Hello World” app to the device, today I will discuss a little bit what happens behind and the tools we have like Visual Studio and Windows 10 IoT Core to analyze as our apps behavior.

I usually start analyzing the log DEPLOY that Visual Studio 2015 creates when we deploy and app from the IDE. This is a “Summary” of the full deployment log

All packages are already installed and there is nothing to restore.
NuGet package restore finished.
1>—— Deploy started: Project: HelloValentino, Configuration: Debug ARM ——
1>Starting remote deployment…
1>Reading package recipe file "$$$\RPi2\HelloValentino\HelloValentino\bin\ARM\Debug\HelloValentino.build.appxrecipe"…
1>*** Start of logging from deployment agent ***
1>TailoredDeploy.exe /debug /xml GetLayoutState d40d829e-3550-420f-9535-9ec75e5cc1c3:VS.Debug_ARM.$$$:CN=$$$ GetInstalledFrameworks
1>FOLDERID_DevelopmentFiles = C:\Users\DefaultAccount\AppData\Local\DevelopmentFiles
1>Default PackageVolume is a SystemVolume – system development folder path: C:\Users\DefaultAccount\AppData\Local\DevelopmentFiles
1>FindPackages: PackageManager.FindPackagesForUser(S-1-5-21-2702878673-795188819-444038987-503, d40d829e-3550-420f-9535-9ec75e5cc1c3, CN=$$$)
1>(C:\USERS\DefaultAccount\APPDATA\Local\DevelopmentFiles\d40d829e-3550-420f-9535-9ec75e5cc1c3VS.Debug_ARM.$$$, d40d829e-3550-420f-9535-9ec75e5cc1c3_1.0.0.0_arm__73nr6b5p9v3r0)
1>deployPackageName: d40d829e-3550-420f-9535-9ec75e5cc1c3
1>publisher: CN=$$$
1>suffix: VS.Debug_ARM.$$$
1>layoutFolder: C:\Users\DefaultAccount\AppData\Local\DevelopmentFiles\d40d829e-3550-420f-9535-9ec75e5cc1c3VS.Debug_ARM.$$$
1>isRegistered: True
1>registeredMoniker: d40d829e-3550-420f-9535-9ec75e5cc1c3_1.0.0.0_arm__73nr6b5p9v3r0
1>packageRegistrationName: d40d829e-3550-420f-9535-9ec75e5cc1c3
1>isExternalInstalledByVS: True
1>targetOSArchitecture: ARM
1>TailoredDeploy.exe /debug /xml GetLayoutState d40d829e-3550-420f-9535-9ec75e5cc1c3:VS.Debug_ARM.$$$:CN=$$$ GetInstalledFrameworks
1>FindFrameworks: PackageManager.FindPackagesForUser(S-1-5-21-2702878673-795188819-444038987-503)
1>Framework: (C:\PROGRAM FILES\WINDOWSAPPS\Microsoft.VCLibs.140.00_14.0.22720.0_arm__8wekyb3d8bbwe, Microsoft.VCLibs.140.00_14.0.22720.0_arm__8wekyb3d8bbwe)
1>Framework: (C:\PROGRAM FILES\WINDOWSAPPS\Microsoft.NET.CoreRuntime.1.0_1.0.22816.1_arm__8wekyb3d8bbwe, Microsoft.NET.CoreRuntime.1.0_1.0.22816.1_arm__8wekyb3d8bbwe)
1>*** End of logging from deployment agent ***
1>Shutting down application: "d40d829e-3550-420f-9535-9ec75e5cc1c3_1.0.0.0_arm__73nr6b5p9v3r0"
1>Remote deployment layout folder location: "C:\Users\DefaultAccount\AppData\Local\DevelopmentFiles\d40d829e-3550-420f-9535-9ec75e5cc1c3VS.Debug_ARM.$$$"
1>Trying to download old recipe file: 'C:\Users\DefaultAccount\AppData\Local\DevelopmentFiles\d40d829e-3550-420f-9535-9ec75e5cc1c3VS.Debug_ARM.$$$\vs.appxrecipe' to 'C:\Users\$$$\AppData\Local\Temp\deploy74e04da275154341ac21a16c1afab9dd.tmp'
1>Read old recipe file: 'C:\Users\$$$\AppData\Local\Temp\deploy74e04da275154341ac21a16c1afab9dd.tmp'
1>Comparing with new recipe: '$$$\RPi2\HelloValentino\HelloValentino\bin\ARM\Debug\HelloValentino.build.appxrecipe'
1>File unchanged: '$$$\RPi2\HelloValentino\HelloValentino\bin\ARM\Debug\Core\ApplicationInsights.config', timestamp: '2015-05-09T11:18:09.426'
1>File unchanged: '$$$\RPi2\HelloValentino\HelloValentino\bin\ARM\Debug\Core\Assets\Logo.scale-100.png', timestamp: '2015-04-02T15:55:54.000'
1>File unchanged: '$$$\RPi2\HelloValentino\HelloValentino\bin\ARM\Debug\Core\WinMetadata\Windows.winmd', timestamp: '2015-05-08T10:26:55.001'
1>File unchanged: '$$$\RPi2\HelloValentino\HelloValentino\bin\ARM\Debug\Core\AppxManifest.xml', timestamp: '2015-05-09T11:18:10.439'
1>Updating the layout…
1>Deleting file "vs.appxrecipe" from layout…
1>Copying file "C:\Users\$$$\AppData\Local\Temp\deploy53ed71fc8e54427e8ab41ea7cde619c8.tmp" to layout "vs.appxrecipe"…
1>*** Start of logging from deployment agent ***
1>TailoredDeploy.exe /debug /xml SetNetworkLoopback d40d829e-3550-420f-9535-9ec75e5cc1c3_73nr6b5p9v3r0 Enabled
1>*** End of logging from deployment agent ***
1>Deployment complete (1700ms). Full package name: "d40d829e-3550-420f-9535-9ec75e5cc1c3_1.0.0.0_arm__73nr6b5p9v3r0"
========== Build: 0 succeeded, 0 failed, 1 up-to-date, 0 skipped ==========
========== Deploy: 1 succeeded, 0 failed, 0 skipped ==========

It is interesting to see read that, after creating the deployment package, a search is performed for the deployment agent in Raspberry Pi 2 and then copied the local package.

If we also want to debug an app in remote with the device, it must be in the same running process MSVSMON. EXE.The image of Windows 10 IoT launches this process in the startup of the OS. If we want to validate that it is running, we can see running processes from the web console


2 lines on top we can see our application executable now in debug mode. In another post I’ll comment on log options we have in Windows 10 IoT Core, EWT among them.

Another interesting feature of the web console is to see in real time the consumption of CPU and I/o in the SD actions

W10rpi2 perfomance

In addition to these options, we have the ability to see information about the network


the connected devices


And many other things. The truth that as remote console is quite well although most advisable to perform most delicate actions is done with PowerShell.

Greetings @ Home

/El Bruno


Leave a comment

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: