Arduino “python” Integration

vivarium

[Cyberspice] informs us she likes snakes. Hey, who doesn’t? She’ll soon be adopting a lovely ball python and wanted to keep close tabs on the sensitive creature’s environment. To that end she assembled a network-enabled vivarium monitoring system based on Adafruit’s Boarduino (a minimalist Arduino clone), a TMP36 analog temperature sensor, Saelig’s WIZ810MJ Ethernet interface, and a common LCD screen. The Arduino rig periodically issues updates to a web server, which can then generate informative graphs using a set of PHP scripts (what, no Python?).

Okay, so we could probably count on one hand the number of readers in need of fancy reptile monitoring and still have fingers left over. There are countless other applications where networked sensor monitoring of this sort is a frequent necessity, so the article could be a good starting point for your own projects. There’s lots of source code to work with, on both the Arduino and web server sides. And the parts list demonstrates serious frugality: the Boarduino, the generic LCD, and especially the Ethernet interface; even with the breadboard adapter, this unit is about half the cost of the usual Arduino Ethernet shield, leaving more funds available for the snake food budget!

AVGA: The AVR Based Video Game Platform

avrvideogame

We’ve seen our fair share of AVR projects, but this one’s pretty cool. AVGA is a color video game development platform based on the Atmel AVR family of microcontrollers. As seen in the picture above, one of the AVRs that the project uses is the popular ATMega168. There were several technical hurdles to using the AVRs to run color video games; one of the most difficult problems was figuring out a way to display detailed graphics from AVRs limited onboard RAM. Eventually, the developers figured out a way to display detailed graphics using a TILE-based driver. The TILE driver works by dividing the screen into X and Y coordinates, dividing the graphics into tiles. Then, when a graphic is needed it’s addressed from a reference table that’s stored in the AVR’s onboard RAM, allowing the bitmap graphic to be loaded from a game’s ROM. Currently, the only games available for the platform are a Super Mario clone, a Pacman clone, and a Snake clone. While there are only a few games available, the platform definitely looks promising. If anything, this project serves as a great example for what off the shelf microcontrollers are capable of.