Mike's Nabaztag Projects   

This page is for my Nabaztag projects.  As the above logo indicates, I'm mainly working in Python. Python is available (for free) for a wide range of systems, including Windows, Mac, and Linux.   However, if you use Windows but don't have Python installed, I'm also including Windows executables for some of the projects, so you can use the program too!  If you'd like to install Python on your machine, I like the free pre-bundled packages that Active State puts together, available here: http://www.activestate.com/Products/activepython/.  They have packages for Windows, Linux, Mac OS X, and more.

I welcome suggestions, additions, or improvements. 

My first project is extending the Nabaztag.py api that's been written at Nabazlib, a Python API wrapper for Violet's API.  I've significantly expanded upon the original, so that now every command supported by the API is supported, as is combining multiple commands into a single command.  Also added a format helper class that takes the returned XML string from Violet and either converts it to a nicely formatted string for printing or converts it to a Python ElementTree for further processing by the calling application.  By itself, this program is useful to other developers, but does nothing as a stand-alone program, so only the python source is provided.  Click here to download the code.

Some of the programs below include earlier versions of Nabaztag.py in the download.  This new version is 100% backwards compatible.

Nabaztag Control Panel (NCP) The Nabaztag Control Panel (NCP) allows one to interact with Nabaztags through a simple graphical user interface (GUI).  The user interface is not as fancy or pretty as napicc, which is written in Visual Basic, but NCP is cross-platform (you just need Python 2.5 or later installed).  You can use it to easily control multiple bunnies, and it has the ability to store and load choreographies, so that you can save the ones you've written and reuse them.

It's available with all required files here.  The zip file includes the latest version of Nabaztag.py, which is required (same as the version above).  See the included ReadMe file for more information.

Yet Another Weather Nabaztag, Version 1.0.  My third project (and ironically, the first to be finished) is a weather report application that uses Yahoo's RSS weather feeds.  It retrieves weather for a specified zip code from Yahoo, parses it, and send the information on to your Nabaztag as a text to speech message. Because there are already a number of weather applications out for the Nabaztag, it's called Yet Another Weather Nabaztag (YAWN).  I built it as a starter project for processing RSS feeds into a Nabaztag text to speech message, and also because I wanted more information than the simple next day forecast that's provided by Violet. 

Features: YAWN  will retrieve weather for a specified zip code from Yahoo, parse it, and send the information on to your Nabaztag. It provides current conditions as of the latest Yahoo report, including temperature, humidity, wind chill, and sky conditions (e.g., cloudy). It also provides the times for sunrise and sunset, the forecast for the current day, and for the next day. You can specify which Nabaztag voice you want it to use.

To download the Python code, click here.  Included in this zip file are the source code for YAWN.py, a modified version of Nabaztag.py, a Python API for Nabaztags that YAWN uses, and the required wxBunnyFile.txt file (with placeholders for your Nabaztag's serial number and token). You can use the Windows task scheduler or a Linux chron program to schedule the weather to be sent to your Nabaztag whenever you want.

If you don't have Python, you can download a Windows executable instead.   Also included are the executable files to run on Windows machines without Python. The zip file can be downloaded here.

Ear Sensor  (Updated 1/2/08, need this version if you are using the latest version of Nabaztag.py) This is a simple program that sends a message to your Nabaztag when one or both of the bunny's ears are moved.  A text to speech message is sent if the bunny's right ear is moved, and an mp3 file sent if the left ear is moved.  Both messages are sent if both are moved.  To download the Python code, click here

It is best used by setting up the program to run periodically, using Window's task scheduler or a cron file.  It will poll Violet's server to check on the ear positions and compare them with the last position. 

If you don't have Python, you can download a Windows executable instead.   Also included are the executable files to run on Windows machines without Python. The zip file can be downloaded here.

Traffic Reporting Rabbit This is a sample program that uses a trip-specific, customized RSS feeds from traffic.com. Unless you travel from Tysons Corner, VA to downtown Washington, it won't be particularly useful to you as written, but it's an example of using the ElementTree module in Python to parse an RSS feed, and then sending the key elements to a Nabaztag, and may provide some useful ideas. If you live in a city served by traffic.com, you can go to their site to set up your own custom RSS feed and then easily modify this code to access your own feed.

You'll need to download Nabaztag.py, which is in both the YAWN or Ear Sensor zip files, above, in order to use the program.  Nabaztag.py is a file used to interface to the Nabaztag API.

To download the Python code, click here


Return to Mike & Gena's Home Page
Email me at mike.mcgurrin@psualum.com
This page last updated December 12, 2007