Arduino IDE 1.6.x errors…unit16_t doesn’t name a type

Quicky post about another goofy issue with the Arduino IDE 1.6.x

While preparing a couple of demos for the HackRVA Microcontroller night, I kept getting this error in the 1.6.x Arduino IDE:

uint16_t doesn't name a type

Well, The GCC compiler that comes with the IDE enforces many things it never had and many things have been deprecated, including uint16_t. You need to declare it now:

typedef uint16_t PROGMEM prog_uint16_t

The reference below also says:

The typedef is only visible if the macro __PROG_TYPES_COMPAT__ has been defined before including <avr/pgmspace.h> (either by a define directive, or by a -D compiler option.)

uint8_t also generates the error, so a similar declaration can made for it as well.



The Mighty ATTiny85 and DigiSpark

Microcontrollers are lots of fun to play with as well as to build useful things.  They come in all sizes, shapes and varieties.  I am always, however, intrigued with the tiny controllers, like AdaFruit’s Trinket.  Well, the latest one I’ve started to tackle is the DigiSpark.  The DigiSpark is small and comes in several types. I am using the USB flavor. This little guy is on a very small board, about the size of a nickel, and is, itself, a USB dongle.

WP_20150928_23_59_09_Pro (2)

It features six I/O lines, plus power and ground pins.  This thing is a little bit more versatile than the original Trinket, but not much more. The USB version has the added advantage of being a USB dongle itself, meaning you can build a project that plugs into a USB port and act as an external controller. You don’t need USB, once you have programmed it, the power and ground pins can be used to power the device.

The nice thing about the DigiSpark is that you can use the Arduino IDE and SOME of the libraries to program the device.  There is a nice tutorial on setting up a newer release of the IDE and add DigiSpark support.

In a nutshell:

  1. Start the IDE (Install 1.6.x if you don’t already have it installed)
  2. Click FILE, then PREFERENCES
  3. in the Additional Boards Manager URL’s box, enter:
  4. Click OK
  5. Click Tools, then BOARDS
  6. Select Board Manager and then Contributed
  7. In the dialog box that pops up, select DIGISTUMP AVR BOARDS
  8. Click Install
  9. Close the Board Manager
  10. You should now see the DigiSpark boards in the IDE

The thing that tripped me up was uploading a sketch.  I didn’t realize that you don’t need to have the device plugged in prior to uploading (you are told this, but it didn’t sink in.)  Once I unplugged the device, clicked upload and THEN plugged it in, it worked like a charm.

So, now I have to figure out what I want to do with this cool little device. 

But, wait…I still have not really said anything about the device, what it has on it, etc.

It is based on the ATTiny 85 and features six I/O pins:

Pin outs:

    • All pins can be used as Digital I/O

    • Pin 0 → I2C SDA, PWM (LED on Model B)
    • Pin 1 → PWM (LED on Model A)
    • Pin 2 → I2C SCK, Analog
    • Pin 3 → Analog In (also used for USB+ when USB is in use)
    • Pin 4 → PWM, Analog (also used for USB- when USB is in use)
    • Pin 5 → Analog In

The ATTiny 85 specs:

  • 8 Bit Data Bus
  • 20 MHz Max Clock Frequency ( w/ external crystal )
  • 8 kB Program Memory Size
  • 2.7 V to 5.5 V Operating Supply Voltage
  • 6 I/O Pins
  • 512 bytes of RAM


Two things you cannot do from the IDE: burn the bootloader and use the serial monitor. Some libraries will work, most will not.  There is no short circuit or reverse polarity protection, so be careful or you will certainly destroy the board, and, if connected via USB (which it really should not be if using external power) the computer could be damaged as well.


The IDE, as with other Arduino’s, displays the compiler and upload progress in the text area below the coding window.  Several rather bothersome messages can show, but, not to worry, it is normal. See my sample output below.

Sketch uses 668 bytes (11%) of program storage space. Maximum is 6,012 bytes.
Global variables use 9 bytes of dynamic memory.
Running Digispark Uploader...
Plug in device now... (will timeout in 60 seconds)
> Please plug in the device ...
> Press CTRL+C to terminate the program.
> Device is found!
connecting: 16% complete
connecting: 22% complete
connecting: 28% complete
connecting: 33% complete
> Device has firmware version 1.6
> Available space for user applications: 6012 bytes
> Suggested sleep time between sending pages: 8ms
> Whole page count: 94  page size: 64
> Erase function sleep duration: 752ms
parsing: 50% complete
> Erasing the memory ...
erasing: 55% complete
erasing: 60% complete
erasing: 65% complete
>> Eep! Connection to device lost during erase! Not to worry
>> This happens on some computers - reconnecting...
>> Reconnected! Continuing upload sequence...
> Starting to upload ...
writing: 70% complete
writing: 75% complete
writing: 80% complete
> Starting the user app ...
running: 100% complete
>> Micronucleus done. Thank you!

Micronucleus is the name of the bootloader.  The disconnect message was a little disturbing, but not a problem.

Maybe I’ll adapt my Battlestar Galactica LCD game to this thing…

Here is a link to the Trinket posts on the blog. It is very similar to the DigiSpark.

digiStump is the maker of the device and they have other products as well. Take a gander around their site. There is a nice Wiki page and forums.

Finally, you can purchase one from Amazon for $4.88 each.  Of course, you can support digiStump by purchasing the device from them, they sell it for $8.95, a little higher than Amazon, but you will be supporting the makers and encourage further development of the product.


IFA 2015: ACER and Windows Mobile Phone 10

It seems the death knell for Windows Phone/Mobile has yet to fall.  Indeed, At the IFA2015 conference in Berlin, Germany, Acer announced not one, not two but three Windows Mobile 10 phones. Two are aimed at low to mid range markets while the third is a high end phone called Jade Primo.

acer-jade-primo-docThe Jade Primo sports a 5.5 AMOLED screen, Snapdragon 808 processor, 21megapixel rear camera, 8megapixel front camera, and other high end features. 

So what, you say?

Well, this phone also is capable of Contiuum, the Windows feature that turns the phone into a desktop computer. 

Yes, that’s right, a desktop computer.

Think about that.

Yes, I know, Motorola tried and failed with the Atrix. Those laptop docks are now used, by many, for keyboard and displays for the Raspberry Pi.

So, the Jade Primo can be used as a computer, but, how?  Simple. It ships with a dock, keyboard and mouse.  Plug the phone into the dock and a monitor into the dock and, viola! Instant computer.

The way it works is that the monitor displays something akin to a desktop, with a start button.  The phone’s screen is used separately from the monitor.  The phone can run the Universal apps, so Office Mobile runs, and a whole host of universal apps, all at full resolution, full screen on the monitor.  The mouse and keyboard work just as they would on a ‘real’ computer.  Imagine, just carrying the phone and the small dock and no laptop or even a tablet.  There are a ton of possibilities here, and, since it is Windows, I don’t think it will suffer the same fate as the Atrix—which, in itself, was a worthy effort from Motorola, perhaps a bit ahead of its time.

Of course, Microsoft has yet to present at IFA, so there’s no telling what they will introduce. Rumor is that they are also bringing out Continuum enabled phones, but we will see..

Other companies announcing Windows Mobile devices include Asus and Xiaomi.


It’s a feature: Family Safety’s Activity Report in Windows 10

Ever since Windows 10 was released to the general public, there has been a concerted effort to discredit the operating system and Microsoft. This release has been the target of those who believe that their privacy has been compromised and that Microsoft is collecting all it can on them.  While a few of the default settings should not have been set to be the default, there is nothing nefarious going on and the latest release of Windows is no more invasive than any previous release of Windows or the Mac OS for that matter. 

Now, these people have taken aim at one of the better features of WIndows for children: the Family Safety feature. 

win10famsafeSomeone discovered that a report is generated that contains things like web sites visited, applications used and how long and computer usage. The report is emailed to the parent or person who set up the family safety.

Sorry, people, this feature has been in family safety from day one. It was in Vista. It was in Windows 7 and both releases of Windows 8. Nothing new about it.

Yep, this report is integral to the feature. It does spy on the child, that is the point.  It lets the parent know what the child is doing and how long they are doing it.  I, for one, am glad it is there.  I’ve used this feature since the Vista days. Only, then, instead of emailing, it would pop up a notification in Windows that the report is ready. 

So, obviously, the people complaining about this feature have never used family safety and, likely, do not have children.

I do not see problem with this feature and have utilized it in the past and will do so again. I have two more children that I want to be safe on the Internet and whom I don’t want on the computer 24/7.  So, to those who oppose this feature, I say, go find something worthwhile to complain about, like the high price of cell service, gasoline or other such product.  Windows 10 is awesome, family safety is awesome.


Family Safety has changed with Windows 10 and will be doing a new write up on the feature at a later date.


Start! Me up! Windows 95 hits 20

IWindows-95n early 1995, I saw on America Online that, for $15, you could join the ‘open public beta’ program that Microsoft was starting for something called ‘Chicago’, aka the next version of Windows.  Boy, was I excited.  I eagerly handed them the money and awaited my DISKS. Yes, disks.  For another five bucks, I could get a CD ROM.  I think I did that too, I am pretty sure I did.  After two agonizing weeks, I got my disks.

I carefully backed up my Windows for Workgroups installation and files.  To TAPE.  Oh boy.  Then, following the instructions, I installed Windows 95 on my homebrew computer.  I had upgraded my memory to a full gigabyte of RAM AND had a spiffy new 500 megabyte (I think it was 500, might have been 420, not sure) hard disk and a new-ish Local Bus video card. I was ready.

The installation took several hours, but went smoothly.  That last reboot was very exciting. This Chicago thing already looked cool.  I think I had every computer magazine printed at the time, in front of me, opened to the lead articles about this Chicago thing. Since the public beta had been out for weeks or even months, the magazines had screenshots of what it looked like. It was sleek, three d like, cool iconography, and this thing called ‘START’. What the hell was that? Oh, and this other thing called ‘The Microsoft Network.’

The computer rebooted and Chicago – er, Windows 95, booted for the first time on my computer. WOW.  What was this magic?  Oh my.  It had a green desktop.  Battleship gray controls and…the START Button. I click it. Wow, my programs were listed there and some other things called shortcuts.  WFW 3.11, you are so yesterday! 

After getting to know the user interface, I immediately tried the one feature that I was dying to have:  LONG FILENAMES. Yes, the only thing that really drew me to the this new operating system were the long filenames.  I wanted ‘georges resume for 1995.doc’ instead of gresu95.doc.  I mean, really, gresu95.doc? Long filenames, to me, were the biggest improvement to Windows.  Oh, sure, there was all that stuff about new API’s, something called DirectX coming out soon, a new audio system, a new rendering engine, networking that was ‘easy’, and other cool things, but all I cared about were the long filenames.  And, they worked well.

Suddenly, it dawned on me that my Windows 3.11 applications looked like natvie Windows 95 apps and I got all giddy.  COOL! I don’t need to buy new stuff.  Well, yeah, I sort of did have to buy new stuff. Some could wait, but others could not.  None of the Windows 3.x software was long file name aware, so, I really had the same situation as before, only it looked way better now.  No problem, I bought a program that faked it for those applications and it worked well, until the database got corrupted.

My twenty bucks also got me into the Microsoft Network, aka MSN.  MSN was an America Online wannabe.  It wasn’t really. It was cool, until the beta ended and I had to pay for it. Once I got a bill, I dropped it. Wasn’t worth it and, after all, I had AOL AND Bell Atlantic dial up, so why would I need MSN?  Problem was, most people did not need or want MSN and it did not last long.

As the release date drew closer, there was a frenzy around the OS building.  The Rolling Stones’ ‘Start Me Up’ song became the Windows 95 theme, commercials abound and, OS2 Warp trying to make a big splash before Windows 95 hit shelves.  IBM’s last stand.  It failed.  OS/2 was relegated to the dust bin.  But, Windows 95? It was everywhere. Seeing that big START button on a billboard? That was cool. Hearing people talk about this Windows 95 thing was tremendous.

During this time, I entered a contest, by Microsoft, whereby I had to write about how Windows 95 changed my life.  I wrote it, took pictures of my computer running it and submitted it.  Weeks later, just prior to the launch, I was notified that I had placed in a tie with an undisclosed number of people. My prize was a legal, boxed copy of Windows 95 AND something called Windows 95 PLUS! pack.  I got both of them on launch day.

August 24, 1995.  Lines wrapping around buildings. Entire newspapers devoted to the operating system.  Product placement everywhere.  Microsoft held an event to officially kick off the OS.  On stage, Jay Leno emceed the event. He read off quotes from the testimonials-actually from the contestant entries-and I was quoted by him.  Supposedly, the essays were framed and lined halls at the Microsoft campus in Redmond. I don’t know if that is true or not, but I want to think it was. Yeah, we’ll go with that.

Anyway, the hype was so great, people who did not even have a Windows computer were buying Windows 95.  That’s all you heard on the news, was this new computer program was out and would make life so much easier. While, it did make computers easier to use, I don’t know that it was killer app for life.

My favorite product placement was the Windows 95 box on Seinfeld's desk, next to his Macintosh—which could not run PC software at that time.

Windows 95 was a huge advancement for home computers. As much as the iPhone was important for smartphones, Windows 95 introduced computing people who would not otherwise have bothered.  It took computers mainstream.  It jumpstarted careers, indeed, created an entire industry. While that industry today is changing, in 1995, it was just starting and ‘Start me up’ is, indeed, what it did. 

Looking back, I was not as excited on launch day as others were. Oh, sure, I enjoyed the day, as any geek might, but the excitement of putting the disks in the computer, following prompts, installing the OS was gone because I already experienced it, months prior to that day.  There were a few things on the shipping CD that I had not seen, mainly the two music videos-The New Bohemians and the ‘Happy Days’ video. I think there were a few games and some demos. But the core OS was the same.  No matter, I was now eager for the NEXT version, Windows 96. Only, that would be nearly three years later and called Windows 98.  But, it didn’t come close to the excitement that was Windows 95.

Yep, the Start button, fancy new themes, something called ‘Internet Explorer’ (which was on the Plus! pack) and the Long FileNames. Those were killer.  Oh, sure, having Leno quote ME, a shmoe from Richmond, Virginia, well, that was OK too.