Visual C++ and Intel Edison

While looking forward to the Intel Joule running Windows IoT Core, a colleague reminded me of the VC++ team’s announced support for Linux from earlier this year and more recently.

The extension has had a couple of updates since then and as I haven’t built anything for my Edison and Arduino kit for sometime I thought I’d dig it out and see what’s what.

First order of the day was to update my Edison. Instructions are here, but the automated tool was unable to complete the flashing of new firmware. I was able to do this easily following the manual approach.

Once the firmware was updated I restarted the Setup tool and completed the SSH security and WiFi connectivity steps. I use Putty as my terminal tool of choice and successfully SSH’ed into it via WiFi.

The VC++ extension documents several dependencies: openssh-server, g++, gdb and gdbserver. On Edison you use the opkg package manager to install them. I noted that openssh-server was an ‘unknown package’. I left that unresolved and moved forward to see if it mattered 😉

It didn’t. Or at least, I was able to create a new Cross Platform Console app in VC++ and successfully build and debug it as documented in the VC++ blog post.

Note: The Edison is an x86 architecture with a Quark MCU. So VC++ debugger settings are x86. Quoting Intel staffer Juan Montero: Edison is x86 system. The SoC is Intel® Atom™ Processor Z34XX Series plus Quark as MCU, this series is fabricated with 22nm technology. The Soc is x86-64 but Edison implementation is x86.

The VC++ extension also provides a Linux Console Window, selectable from the Debug menu. Pretty nifty for supporting development – move over Arduino Serial Monitor 🙂