After much research, the AVR AT32UC3B series was identified as a likely candidate for a HID-based embedded USB controller chip. The EVK1101 was obtained, and set up as follows:
Package contents: EVK1101 board, IAR embedded Workbench CD (CDKS-EVK1100-EWAVR32-310D-005), AVR Technical Library Jan 2009 DVD, serial cable, USB cable, OTG cable adapter, coax cable to pigtails, and a quickstart guide.
So, Insert CD, double-click it, and select ‘Software installations”
Pick the ‘KickStart edition’ (code-size limited but no expiration). AVR has GNU tools also available, stay tuned for details about this. It wants you to register and sends you a license # and key, so do that.
This just installs the IAR workbench, not the drivers.
The next step is to see what’s on the Technical Library DVD. Double-clicking it opens an HTML file with two choices: AVR and AVR32. Pick AVR32, which then brings up the AVR32 Technical Library page, with choices AVR32 Studio and GNU Toolchain (very nice), Tools, and Devices.
The Getting Started Guide mentions a “AVR32 UC3B Control Panel PC Demo Installer.exe” application and states that it is on the DVD, but it doesn’t appear to be, so look on www.atmel.com/avr32
Looking around on the Atmel website revealed some other interesting information:
A free RTOS is availabel: The AVR®32 UC3 FreeRTOS.org kernel port. FreeRTOS.org is a portable, open source, mini Real Time Kernel - a free to download and royalty free RTOS that can be used in commercial applications.
- Note:
- The AVR®32 UC3 FreeRTOS.org kernel port and basic demonstrations is currently available in the AT32UC3-SoftwareFramework-x.x.x.zip package under the SERVICES/FREERTOS folder.
And check out the LIBUSB driver: (http://libusb-win32.sourceforge.net/)
And after a bit more searching and re-searching, the files actually appear to be on the DVD, zipped up, so expand this one: AVR32-SoftwareFramework-1.3.0-AT32UC3B.zip (note, there was also a version 1.2.1ES, not sure what’s the difference). And looking on the website reveals an even later version: AVR32-SoftwareFramework-AT32UC3B-1.4.0.zip, so download and extract that instead.
See the Blog entry http://www.michaelshonle.com/2009/06/21/using-the-atmel-avr32-usb-evk1101-with-vista-64-way-1/ for details on getting the EVK1101 board talking to the computer.
Meanwhile, moving right along, time to install their IDE:
So run AVR32Studio-2.0.2-Setup.exe from c:\dev\AVR\techlib32\software\studio32\software
Install in c:\dev\avr\avr tools\
Running it brings up a list of errors:
avr32program: <not found> (Need version 3.0 or newer)
avr32gdbproxy: <not found> (Need version 3.0 or newer)
avr32-gdb: <not found> (Need version 6.7 or newer)
avr32-g++: <not found> (Need version 4.2 or newer)
avr32-gcc: <not found> (Need version 4.2 or newer)
avr32-as: <not found> (Need version 2.17 or newer)
avr32-nm: <not found> (Need version 2.17 or newer)
There are multiple problems with dependent executables or path settings. Please consult the user guide for details.
AVR32 Studio could not locate a AVR32/GNU Toolchain on your host. Please make sure that a compatible version is installed and restart AVR32 Studio.
So, try installing the tools:
C:\Dev\AVR\techlib32\software\GNU_toolchain\software>avr32-gnu-toolchain-2.0.3.exe
This made it happy, here’s the new startup report:
AVR32 Studio has checked your system to ensure the proper versions of required utilities are in place.
avr32program: Found version 3.0.4
avr32gdbproxy: Found version 3.0.11
avr32-gdb: Found version 6.7.1.atmel.1.0.3
avr32-g++: Found version 4.2.2-atmel.1.0.8
avr32-gcc: Found version 4.2.2-atmel.1.0.8
avr32-as: Found version 2.17.atmel.1.2.6
avr32-nm: Found version 2.17.atmel.1.2.6
You are using the MinGW version of the AVR32 Utilities and AVR32/GNU Toolchain.
Have fun!
First, download Thunderbird on new system,
Cancel the ‘Account Wizard’ so as not to have two copies of messages from the server.
Following directions found on-line, first find the xxxxx.default file, which was in the directory c:\Documents and Settings\mikes\Application Data\Thunderbird\Profiles
On the new computer, running Thunderbird seems to have created a default profile in:
C:\Users\mike\AppData\Local\Mozilla\Firefox\Profiles
[Side Note: the AppData directory appears to be hidden]
It initially had this content:
07/17/2009 09:18 PM <DIR> .
07/17/2009 09:18 PM <DIR> ..
07/17/2009 09:34 PM <DIR> Cache
07/08/2009 07:15 AM <DIR> OfflineCache
07/14/2009 09:52 PM 31,862,784 urlclassifier3.sqlite
06/22/2009 10:43 PM 2,027,342 XPC.mfl
07/17/2009 09:11 PM 998,484 XUL.mfl
3 File(s) 34,888,610 bytes
So, try copying all the old files to the xxxxx.default directory and see what happens.
Nope, Thunderbird is not convinced.
So, search some more and find MozBackup. Very nice!
I first removed all the files I had attempted to copy into the xxx.default directory, then did these steps (as seen on the internet), though I think I ended up doing it just as one step, it didn’t seem like the ‘account settings only’ option worked the way I thought it would:
- Download & install MozBackup on both old & new machines.
- On the old machine run MozBackup to create a backup of Thunderbird mail account settings.
- On the old machine run MozBackup a second time to create a backup of Thunderbird mail messages, address books, extensions, and other settings.
- On the new machine run MozBackup and choose restore. Point to the file created in step 2.
- On the new machine run MozBackup and choose restore. Point to the file created in step 3.
Wait, that wasn’t a Thunderbird directory at all, my bad. But all seems to be in order anyway. It also apparently is using a different format, instead of having a bunch of folders and sub-folders, it’s all in two files:
Directory of C:\Users\mike\AppData\Local\Thunderbird\Profiles\xxxxxxx.default
07/17/2009 10:36 PM <DIR> .
07/17/2009 10:36 PM <DIR> ..
07/17/2009 09:14 PM 1,011,812 XPC.mfl
07/17/2009 10:36 PM 1,244,638 XUL.mfl
first, download Fedora 11 from www.fedoraproject.org
pick this one from ‘Install Media’ on ‘all options’ page: http://download.fedoraproject.org/pub/fedora/linux/releases/11/Fedora/x86_64/iso/Fedora-11-x86_64-DVD.iso
useful website: http://www.fedorafaq.org/
For virtualization, ‘virtualBox PUEL’ was recommended by an IT friend, so let’s try it:
www.virtualbox.org Downloads
VirtualBox 2.2.4 for Windows hosts x86/amd64 and run it. It created a ‘Sun xVM VirtualBox’ icon…
Try it, got error:
Could not lock the settings file ‘C:Usersmike.VirtualBoxVirtualBox.xml’ (VERR_SHARING_VIOLATION).
|
Result Code: |
E_FAIL (0×80004005) |
|
Component: |
VirtualBox |
|
Interface: |
IVirtualBox {779264f4-65ed-48ed-be39-518ca549e296} |
Now tried it again, and for some magical reason, now it’s working. Whatever.
So, now, how to get Linux going on it…
New -> (Wizard)->next
Name: FedoraMuse
Operating System: Linux
version: Fedora (64-bit)
(next)
Base Memory Size: 1998 MB
(next)
[x] Boot Hard Disk (primary Master)
(*) Create new hard disk
(next)
(*) Dynamically expanding storage
50 GB
Now press ‘Start’
a dialog comes up about ‘auto capture’ mode
host key is Right Ctrl
For ‘Media Type, pick DVD-ROM device
for Media Source
(*)Image File
then ‘add’ and then pick the Fedora-11-x86_64-DVD.iso
It got a Warning message:
Some audio devices (PCM-in,PCM_mic) could not be opened.
Also, the install process got an error:
This kernel requires an x86-64 CPU but only detected an i686 CPU.
So, go and download the other kernel…
Then need to switch to using the new image, under ‘Devices | mount CD/DVD | DVD image -> then add/remove the .iso image
It appeared to install properly, but then when rebooting, it came up with the option selection screen with the following options: Welcome to Fedora 11!
‘Install or upgrade an existing system
Install system with basic video driver
Rescue Boot from disk
Boot from local drive
When I picked ‘boot from disk’, it got a FATAL: INT18: BOOT FAILURE
I tried re-installing from the loader page, and re-picking (as well as I can remember) the same options, except for the two ‘load from network’ ones. It came up with the same screen as before, but when picking ‘boot from disk’,
Then I realized I hadn’t ‘ejected’ the ‘DVD’ so it was still trying to “read” from it, dho, I’m not quite used to this virtual existance yet.
Now it boots up and I can log in, but running Add/Remove software gets an error about the index not being built.
So I run the User tool and notice there are no groups at all, so something went a bit wrong somewhere.
Try again.
This time, on the options page that has “Office and PRoductivity”, etc., in the repository section, also add the ‘Fedor 11 - i386 and Fedora 11 -i386 - Updates. These take a few mintues to select.
That seems to have done it, though the users and groups from the User Manager still doesn’t show any groups. The /etc/passwd does, however, though it probably did before too.
Also install the VBox additions. First pick the ‘Install Guest Additions’ from the ‘Devices’ VirtualBox menu. This makes it show up as a mounted media, on /media/VBOXADDITIONS_2.2.4_47978
running the ‘autorun.sh’ script there fails:
./autorun.sh: line 39: exec: gksu: not found
It appears that Fedora 11 doesn’t have gksu. However, directly running the VBoxLinuxAdditions-x89.run seemed to have worked, as far as I can tell. Now it at least allows the window to be resized to any arbitrary size and it also transparently captures and releases the mouse.
The graphics appear a bit sluggish, however.
After some investigating, it appears that the JTAG ICE mkII is required in order to program the EVK1101. A board was obtained, and plugged in via USB. A messsage came up asking to install the drivers since they weren’t signed, and after accepting, there are now new USB devices:
Jungo: JTAGICE mkII & WinDriver
Now test the rebuild & download process, as per the description from the DVD: file:///C:/Dev/AVR/AVR32-SoftwareFramework-AT32UC3B-1.4.0/AT32UC3B-1.4.0/.docsrc/TUTORIALS/GCC/Embedded_Development_Quick_Start.htm
C:DevAVRAVR32-SoftwareFramework-AT32UC3B-1.4.0AT32UC3B-1.4.0DRIVERSADCEXAMPLEAT32UC3B0256_EVK1101GCC>make
ECHO is off.
ECHO is off.
avr32-gcc (GCC) 4.2.2-atmel.1.0.8 (mingw32 special)
Copyright (C) 2007 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Compiling `../../../../../DRIVERS/USART/usart.c’ to `../../../../../DRIVERS/USART/usart.o’.
process_begin: CreateProcess(NULL, touch ../../../../../DRIVERS/USART/usart.d, …) failed.
make (e=2): The system cannot find the file specified.
make: *** [../../../../../DRIVERS/USART/usart.o] Error 2
Now run AVR32 studio, and follow the procedure in ‘Getting Started’, except for the following clarifications:
For the first step, pick ‘File’ then ‘New’ then ‘Project…’ and then ‘C’ and then ‘AVR32 C Project (Make)
For the project name and path, put the project name at the end of the path as well.
Having some troubles getting a new project started without too much manual adding of files. But, in looking around a bit more, and also realizing that maybe the AVR-ONE would have been the better JTAG programmer to get (though it is $600.00 instead of $300.00), I came across these instructions:
Create a demonstration project
Select File>New>Example.
Select EVK1101>Components>Accelerometer example, then Next.
Enter a name for the project, and click Finish.
Right-click on the project in Project Explorer view and select Build Project (or use Ctrl+B).
After a bit of futzing around with the JTAG-ICE-mkII, (it immediately wanted to upgrade the firmware, and after clicking ‘ok’, it didn’t say it did or didn’t but it still showed up as an invalid device. After a few times of restarting AVR32 studio, it eventually did figure out how to upgrade the firmware and then it showed up as a happy device. Then for picking the actual target board, the serial number had to be copied from the mkII target into the EVK1101 board target (there was no scan option or droplist that had it).
Now it can talk to the device and appears to be able to erase it, but programming gets an error:
Internal flash programming failed
Programming of at least one locked lock region has happend since the last read of FSR.
A quick search reveals this:
Your UC3 devices have a pre-programmed USB bootloader which is protected with a lock fuse (BOOTPROT fuse).
In order to program a new binary to the Flash, you need to erase the fuse first with a “Chip Erase” command.
Since, this command is not automatically executed, you have to execute it before launching the first debug session.
In the “AVR32 Targets” view:
- Right click on the JTAGICEmkII (or AVRONE!) target
- Select the “Chip Erase”command
This will erase the fuse protection and the whole Flash memory.
I’m working on involving an embedded USB system using an Atmel AVR32, and starting development using the EVK1101. I downloaded the latest (as of 6/20/09) version of the support software from Atmel: AVR32-SoftwareFramework-AT32UC3B-1.4.0.zip
I’m running Windows Vista 64 Home Premium on my system, and this is not explicitly mentioned as being supported. I attempted the process and first ran into an issue with the driver not being signed. So I searched around and found ways that put it in ‘test’ mode using a program called ‘dseo13b.exe’ (Driver Signature Enforcement Overrider). Then I read that this kit uses the libusb-win32 driver (http://libusb-win32.sourceforge.net/), so I downloaded that and tried using it after plugging in the Eval board. The driver starts installing but got an error message:

Atmel EVK1101 USB Problem in Vista 64
So that didn’t quite work. I saw some talk also of setting the program to run in ‘XP Mode’ (right-click on an executable in a folder window to see the various properties, it’s on the ‘Compatibility’ tab, but since this is being installed directly by the O/S, I didn’t see how this would work in this case.
The next plan was to use VirtualBox to run a ‘virtual’ instance of Windows XP, so that was next done. First I got an XP virtual machine set up (topic for a separate post coming soon), and then extracted the .zip file and mounted the partition within the VirtualXP machine. (You may have to reboot in order to see the “folder” which should be in something like ‘My Network Places / Entire Network / VirtualBox Shared Folders \\VBOXSVR\Atmel’
Then follow the procedure as outlined in the various guides and manuals, except that before plugging in the USB cable, first bring up the ‘Device Manager’ in both the Vista system and the VirtualXP one. You should see it appear as an ‘LibUSB-Win32 Devices’ or possibly, ‘Other Devices’ (I had tried a number of different things before doing this so my results may be a bit different. Then go to the ‘Devices’ menu in the VirtualBox for the VirtualXP and on the ‘Devices’ Menu | USB Devices’ you should see it listed. Just pick it and watch as it magically disappears from the Vista list and shows up on the XP one, and then asks for the drivers, etc., just like it’s supposed to.
Things to install/upgrade/update
1. Get it on home network, fully file sharing
2. email account/transfer email file
3. Printer: HP LaserJet 6
4. Printer: PDF writer
5. SecondCopy
6. RME Hammerfall Digital Audio Card
7. Word 2003
8. Excel
9. Virtual machine/Linux
10. Pulsonix Schematic/board layout software
11. Eclipse/DevStudio
===============
Vista-isms and Adventures so far
To change the ‘WORKGROUP’ : controlpanel -> system | computer name domain and workgroup settings section
To show extensions of files, Start -> Control Panel (classic view ) -> Folder Options | view [] hide
To show tasks from command promp: tasklist
Got new external USB harddrive & enclosure (OEM version, not formatted, etc.), plugged it in, it was recognized by the system (WDC WD10 01FALS-00E8B), but how to format it?
Go to Control Panel -> Administrative Tools [] Computer Management / Storage + Disk Management
Then it shows up on the list of disks as Unallocated, right click and pick ’simple volume’,
then it complains that the disk is not initialized! Go figure… So, after a bit of searching, it turns out that both the column with the Disk 5 as well as the column with the disk size and description BOTH have right-click menus, and the first column has the ‘initialize’ option and the second one has the ‘new simple volume’. You’d think it wouldn’t show you things you can’t do…
Cool New Trick! For screen captures/screen dumps, a tool is actually finally included!
Windows\system32\SnippingTool.exe
And to bypass the Driver signing requirement, there appear to be several methods:
Use a program called ‘dseo13b.exe’ (Driver Signature Enforcement Overrider).
run this: bcdedit /set loadoptions DDISABLE_INTEGRITY_CHECKS
I’ve only tried the first option, as there were reports that the second one didn’t work. Note that when it’s in effect, the background window says ‘Test Mode’ in the corners and ‘Microsoft (R) Windows (R) (Build 6001: Service Pack 1) in the top center.
————————————————————————————————————————
Sleeping and Power Management
My computer was suffering from insomnia, waking up seconds after going to sleep. After some attempts at setting things in the BIOS and a cursory look at the Power Options in the Control Panel, a bit more research was clearly needed.
First, here is a list and description of the Sleep modes:
S0 Awake: Note sleeping at all
S1 Sleep: system appears off, CPU is stopped, RAM is being refreshed
S2 Sleep: somewhat lower than S1, CPU has no power, RAM is refreshed.
S3 Sleep (Standby): CPU has no power, RAM is refreshed more slowly, “Save to RAM” mode
S4 Hibernate: The memory has been written to disk (”Save to Disk” mode)
S5 Off
To help diagnose Sleep disorders, there’s a handy command-line utility: powercfg
>powercfg -a: list the states:
The following sleep states are available on this system: Standby ( S1 S3 ) Hibernate Hybrid Sleep
The following sleep states are not available on this system:
Standby (S2)
The system firmware does not support this standby state.
C:\Users\mike>powercfg lastwake
Wake History Count - 1
Wake History [0]
Wake Source Count - 1
Wake Source [0]
Type: Device
Instance Path: PCI\VEN_8086&DEV_10CC&SUBSYS_00008086&REV_00\3&21436425&0&C8
Friendly Name:
Description: Intel(R) 82567LM-2 Gigabit Network Connection
Manufacturer: Intel
C:\Users\mike>powercfg -devicequery wake_armed
HID-compliant mouse (003)
HID Keyboard Device
HID-compliant mouse (004)
Intel(R) 82567LM-2 Gigabit Network Connection
High Definition Audio Controller
So, the LAN card is the culprit. A trip over to the Device Manager and opening the ‘Network adapters’ node and double-clicking on the 82576LM-2 shows an option: Wake on LAN: Wake on Directed Packet. Try deselecting that and see what happens. And while we’re at it, do the same for the Mouse, as optical mice can be a bit overly sensitive.
We are in the midst of an ever-growing remodeling project, and one of the many many many decisions (more posts to come) is what material to use for the countertops.
Here is a general list of possible materials for your consideration: Laminate, acrylic solid surface, polyester solid surface, engineered stone (”quartz”), granite, soap stone, slate, concrete, stainless steel, tile, glass, wood, & paper composite.
From this list, we were particularly interested in granite and slate. After hours and hours of research, we found mostly confusing and contradictory information about the durability and stain resistance of these materials, so we obtained some samples and did our own testing. Here are the initial results:
Stain Testing

Countertop Stain Test Substances: Tea, Blueberries, and Turmeric
Stain resistance: 3 highly staining foods that we use frequently were tested: tea, blueberries, and turmeric. These were mixed with water and left overnight. The slate was completely unstained, (as was the soapstone), and the granite was easily stained. Note however, that the granite was very likely not sealed.

Tea and Turmeric Stains in Granite Countertop

Closeup of Tea and Turmeric Stain in Granite Countertop

Blueberry Stain in Granite Countertop

Closeup of Blueberry Stain in Granite Countertop
Durability Testing

Iron Disk ("Salamander") Used for Durability Testing
Durability: A small (~2″ diameter) iron disk (actually the traditional way for carmalizing sugar on creme brulee, called a salamander) was rested on its handle with the disk on top and allowed to drop on the varioius samples. The slate was slightly chipped, the soapstone was more badly chipped, and the granite was completely unscratched.

Chip in Slate Countertop

Closeup of Chip in Slate Countertop
So, where does that leave us, other than with the realization that there is no perfect material. We certainly spill staining stuff a lot more often than we drop iron objects, but they say if granite is sealed, it won’t stain, but the chemicals have very toxic sounding names, not something we would be happy about for food preparation surfaces, and it needs renewing periodically, with possibly the only warning being a new stain. On the other hand, one slip with a cast iron frying pan may be the end of a slate countertop.
Topics will include home improvement, remodeling, computer and electronic projects and technology, and music & audio, as well as other possibly interesting flotsam & jetsam & nonlinearities of life.