Embedded systems and simple microcontrollers have been booming since the late nineties and there have been a lot of developer’s kits around. Microchip’s PIC series and the Atmel AVR series are the most popular I guess. Even in the ham scene these little gimmicks have earned their place. I did quite some 8051 and the basics of Motorola 68000 in school. I’ve always appreciated the possibilities of these things but I didn’t want to master yet another programming language let alone an assembler language for these CPU’s. There are BASIC-like compilers à la Basic Stamp (PIC) and Bascom AVR (Atmel) that might get me productive on a low level but I have lost my interest in and the need for making hardware projects myself. Plus there’s always the hassle of making PCB’s – prototyping and low quantity production for printed circuits is VERY expensive. Finding parts here in Belgium isn’t always easy either though there’s the WWW today. And things often can’t be homebrewed for the price it ships from a Chinese warehouse. But most of all: There are only 24 hours in my day and 7 days in my week. How ’bout yours?
Back to 2012. Anyone who’s life has a technical aspect, by education, profession, interest or by hobby has come across Arduino. Arduino is hot! The concept is neat: one board with countless applications using analog and digital I/O. The price is right: cheap. No assembler to be learned. Great! But you do need to use the C/C++ oriented programming language which is then compiled to run on the microcontroller. Drat. I’ve written thousands of lines of code since 2007 using VB. I don’t like using two different languages. I learned and liked Turbo Pascal when I studied electronics. I migrated to the Pascal-like Borland Delphi to program for Windows when I graduated and had to use VB 5.0 for a graduation project as an intern. All that in a year and a half. It was confusing. Colon, semicolon or nothing? What kind of brackets? Since I use VB.Net intensively nowadays, I want to avoid that scenario.
Enter netduino. It’s an arduino for the .NET platform. It is said to be even pin compatible with the arduino. Which means all the benefits of a popular, cheap and open source developer’s platform but using the .NET languages. Of course, as with all .NET development most information and samples are in C#. But now there is a version supporting VB.Net! Hallelujah! I navigated to Floris.CC and decided to order a NEDX experimenter’s kit. The plan is to get to know the board and the I/O. I have some possible ham projects for which I could use this. Like a digital RF power meter. Or the wild idea of using stepper motors to convert a conventional cheap amp into an auto-tune amp (idea found here). So many plans… I don’t have an infinite thread pool though: there’s log checking, there are still a few thousand QSL cards waiting, I want to get on the air (I’m a contester after all) and that’s only a few of the things to do in my free time. Luckily I might just integrate the netduino in my professional life too.
Anyway the netduino board arrived today (actually yesterday but I wasn’t at home so it needed a second attempt). It did do only C# out of the box. I needed to upgrade a few things to enable the use of Visual Basic. I am not really an RTFM kinda guy so of course I messed it up. Big time! And then I must have EE’d some EEPROM which was the proverbial coup de grâce.
An hour later I had my first netduino project running: a blinking LED. The embedded and hardware equivalent of ‘Hello World‘! Not that it took me an hour to write that code. That part took only 30 seconds. The other 3570 were spent RTFM’ing my way out of the mess I created with the firmware upgrade gone bad.
I’m excited to find out what else can be done. I especially want to try to drive stepper motors. For that I will need to build some external hardware etc etc etc…
Note to self: this is what saved the day: “Installing the TinyBooterDecompressor step by step (Netduino and Netduino Plus)“