-
Brief update on project status
09/29/2014 at 03:12 • 0 commentsUnfortunately, I've been rather busy with housework and job hunting this month and I haven't finished nearly enough of the FNIR system. I still intend to complete the project and will be posting to the project log as I do so, but I regret to say that I will not be qualifying for quarterfinals in the hackaday prize.
Good luck to all the qualifying contenstents!
-
Intro Video Posted
08/21/2014 at 06:24 • 0 commentsHere's an introductory video I just posted to youtube, explaining my initial goals for the project:
-
A Question Of Microcontrollers
08/21/2014 at 04:22 • 0 commentsI've tended to shy away from simply throwing arduinos at my projects, especially if I don't intend to disassemble them once they're complete. Arduino's a great prototyping platform but I find custom designing a PCB gives me much more flexibility in layout, size and most importantly microcontroller selection.
My experience with ARM microcontrollers from STM and Freescale have strongly dragged me in their direction, however AVR remains the most hobbyist friendly solution. The scope of my project doesn't require too much out of my microcontroller, so I settled on the Atmega16u2 which is very similar to the 8u2 which modern arduinos use to provide a USB-serial bridge. The extra 8k of program memory eliminates the need for an additional microcontroller like the atmega328, significantly reducing the cost of the board at volume.
-
Parts have arrived!
08/20/2014 at 23:28 • 0 commentsThank you digikey!
-
PCBs have arrived!
08/19/2014 at 02:12 • 0 commentsAfter designing my circuit in Eagle CAD I ordered a small batch of PCBs from ITEAD studio. Shipping took quite a while, I send out the order for these at the end of july and they just arrived the other day. Luckily they were very cheap at around $15 for a batch of 10.
The 2-layer PCB is about the size of a business card. Unfortunately the text size I chose for the silk screen was one size too small for ITEAD to print, most of it is a series of small dots and too blurred to read. This won't cause any problem during assembly but it just doesn't have the same sexy look without a good silkscreen.
I ordered the parts from a mixture of ebay and digikey and they should arrive over the next couple days.
-
LUFA for the atmega16u2
08/19/2014 at 02:01 • 0 commentsTo simplifly communication, the fNIR scanner uses a USB connection similar to an arduino. The circuit will enumerate as a USB serial device and spit out measurements in CSV format. This seems like a more simple way to go than something like a HID and is more suited to collecting raw data. Raw data will probably be useful in experimental or research situations, rather than just returning a limited amount of HID information.
The LUFA project is a set of drivers for AVR processors that handles many parts of the USB protocol. My code is based off the USB-serial examples contained in the LUFA documentation. Upon startup it attempts to connect to a host device (your computer) and once connected it creates a stream using a function provide by the LUFA code. This stream can then be used by the fprintf function just like in normal *nix c programming.
Atmel's usb enabled microcontrollers come with a built in DFU bootloader, so no special programming devices are needed. The board is always programmable over the same USB connection, again similar to an arduino which allows for rapid firmware development.
In the next few built logs I will go over my firmware and hardware design and the basic theory of operation of an fNIR device.