Foundations of GTK+ Development

April 20th, 2007

Andrew Krause's book, Foundations of GTK+ Development has been released. I did some of the technical review work on this book and can say that Andrew has done a fine job. As far as I am aware, it is the only GTK+ book currently available for GTK+ 2.x. It covers the new widgets like notification icon, print dialog, recent files, etc.
Read the rest of this entry »


VB Programmer’s Intro to Linux Programming with GTK+

August 19th, 2006
Hello Application in Visual Basic 6
From Visual Basic...
Hello Application in GTK+
... to C/GTK+

Read the rest of this entry »


Using Your PC Sound Card As an Oscilloscope in Linux

June 6th, 2006

If you a home hobbiest such as myself, having an oscilloscope is ideal, but may not be economically feasible. However, there is a free option available. xoscope For Linux is a GTK application which allows you to view signals through your PC's sound card (thus limiting the range to audio frequencies dependent upon the sound card being used). This can come in handy for robotics type hobby projects. Additionally, the author (Tim Witham) has provided a buffer hardware circuit to buffer the proble similar to a true oscillosope and protect your PC's Line In from excessive voltages.

Read the rest of this entry »


FailureBot 5 - A Line Following Robot

May 27th, 2006
FailureBot 5 - Complete Robot FailureBot 5 - In Action
FailureBot 5 - Complete Robot FailureBot 5 Following A Line

Read the rest of this entry »


AVR Tutorial: Switch Input and Debounce

May 15th, 2006

Though an input can be from any number of sources, one of the mose common and the easiest to implement, would be a swith. Due to mechanical properties of a switch, when a switch is closed, there is a period of time in which the electrical connection "bounces" between open and closed. To a microcontroller, this "bouncing" can be interpreted as multiple button pushes. Therefore, we must either build a circuit to supress the "bouncing" or we must do so in our software. This is known as "debouncing a switch".

Read the rest of this entry »


AVR Tutorial: About the Clock Source

May 12th, 2006

The ATMega8 AVR is shipped with it's clock source configured to the internal 1MHz RC oscillator (see: "Calibrated Internal RC Oscillator" in the datasheet p.30). This configuration works fine for many small projects where timing isn't crucial and is also convenient as it reduces parts count (1 crystal and 2 capacitors). However, you may run in to situations where you need a more accurate clock source.

Read the rest of this entry »


AVR Tutorial: Introduction and Digital Output

May 12th, 2006

The AVR family of 8-bit microcontrollers from Atmel are quickly growing in popularity for electronics and robotics hobbiests. Their major selling point for me, as opposed to the PIC microcontrollers from Microchip, are their being designed to be developed using higher languages such as C. This allows them to be developed using the open-source GNU tools (gcc). This works out especially well for me working in Linux.

Read the rest of this entry »


AVR Controlled GP2D120 Distance Sensor

May 11th, 2006

Sharp's GP2D120 (and the GP2D12) is an infared distance sensor which is pretty common in the hobby robotics community. I purshaces a couple of these from DigiKey to use in a small wall-huggin robot. I spent quite a bit of time experimenting with it. This page will provide you with my schematic and AVR gcc source code for my demo file. It simply uses the ADC on an ATMega8 mpu to read the analog output of the GP2D120 and send the distance in centimeters to my laptop through the serial port (actually, through a USB to serial converter).

Read the rest of this entry »


Color and Font Selection Dialogs in C/GTK+ with libglade

March 10th, 2006

In this example code, I show how to use the GtkFontSelectionDialog and the GtkColorSelectionDialog using C/GTK+ and libglade. Both dialogs as well as the main window are in the gui.glade file created by Glade.

Read the rest of this entry »


Simple Dialog Boxes with C/GTK+ and libglade

March 9th, 2006

This is a simple Linux application using GTK+ and libglade to demonstrate some very simple dialog boxes. The application's interface is created in Glade and accessed using libglade, however, the dialog boxes are implemented entirely in GTK+ code since they're so easy to implement that way. These dialog boxes are from the GtkMessageDialog widget, which is a derivative of the GtkDialog widget.

Read the rest of this entry »