Skip to content

Category Archives: tronics

tracking my Arduino progress

Duinos and 2012 + GCC libraries

I was making a minor change to an Arduino based Garage door controller an discovered I couldn’t build a package with the Arduio API.  I got  an error that complained about some syntax expected identifier or ‘(’ before ‘double’ Fortunately there was an easy fix here: It appears that there was a bug in […]

blue tooth blues: logitech v470 M-RCQ142

Having problems connecting your V470 mouse to XP?

AVR Arduino RAW development environment (non IDE)

AVR development environment on Ubuntu Lucid

mprintf: A thread safe printf: mprintf library

So, I decided to take this one step further and build a library that hides the details of the mutex and variadic macro. To use the library you will need to: Go into your libraries directory and make a new directory called ‘mprintf’ Copy these two files into the new directory; mprintf.h mprintf.cpp Put the […]

mprintf: a simple thread safe printf for DuinoOS Part A: Getting a thread safe printf to work

There are lots of ways to implement a thread safe printf for DuinOS (or free RTOS). The following is a version that renames printf as mprintf. Like an fprintf function, mprintf has a leading parameter which must be passed with the rest of the printf variables. This implementation exposes the methodology used to make printf […]

mprintf: a simple thread safe printf for DuinoOS Part A: Getting non threaded printf to work

I thought it best that I document how I got printf to work and how I made it thread safe for DuinoOS (or freeRTOS for that matter) Getting non threaded printf to work. printf makes use of a file handle called stdout. This file handle is null unless we do something to change its value. […]

How does an Atmega boot?

The bootloader (stk500) used by arduino and other atmega vendors allows for self modifying code.  Normaly not a good idea, however, being able to use your atmega to load code onto the very same chip is extremely handy (think, in the field re-programming and programming your chip without a flash burner) So, how does all […]

The devil is in the details: Atmega startup to freertos

Figuring out why something breaks usually involves understanding how it is supposed to work.  Sure, it was easy getting my first Atmega328 code running using Arduino.  Getting the DuinOS version of freeRTOS was a little bit more of a challenge but ran remarkably well given its alpha state.  Getting a printf function to work using […]

DTN (Delay Tolerant Network Architectures)

Here is a link to a good DTN paper Here is a working group Another paper here discussing DTN2 implementation Discussion of DTN2, DTNLite and Contiki here DTN-Lite on TinyOS here

RTOS for Arduino

List of RTOS for Arduino and their current activity state