Skip to main content

Posts

Showing posts with the label code

GameBoy (Classic) Work In Progress

This is a dump from the forum...it's notes on an in progress GameBoy hack. I will refine it later. Forum thread is here . I'm trying to identify and spec out the LCD signals in the GB (classic). I'm looking to do away w/ the GBs original controller board while keeping the LCD board. Basically I want to plug the ribbon cable into my on PCB and output the necessary signals to drive the video myself. I'm just wandering if anyone has more info on LCD signals output by the z80 so I can emulate them to display stuff. So far I've mapped all the buttons, speaker, power LED, LCD negative power to the appropriate pins on the ribbon cable. What I have so far: Note: Pin 01 is the pin on the ribbon cable closest to the power switch (at the cables connector). Note: Pin LCDV1 is the pin closest to power switch on the LCDs vertical axis connector (beneath LCD). Note: Pin LCDH1 is the pin closest to power switch on the LCDs horizontal axis connector. Pin 01 GND Pin...

Remote Controlled Turret

This is an update and rehosting of a senior design project completed in Spring 2008 at RIT . It is (to date) my favorite robotics project. Myself and two friends collaborated to create a remote controlled turret that was accessible from anywhere on the web. The project makes use of a 5 gallon air tank at ~80 psi to fire foam (Nerf) darts. One servo operates six rotating barrels which are mounted on two more servos that provide pan and tilt movement. There are two ultra bright LEDs providing light in dark conditions for a top mounted web-cam. An Arduino is used to control the turret, while communicating (via serial over USB) with a web server that hosts the custom web page and live video stream. A modified PC power supply was used to provide the power. Here's a video of the finished turret... Full System Test I was in charge of most of the hardware and electrical work, Mike programmed the Arduino (I usually work with other AVR stuff ) to take serial commands from a server...

The First

This post is a retrospective look at the first robot I built solely for myself (back in 2008). I had only helped build one robot before this. It's clear I got a very late start into robotics. Although school did prepare me formally to dive right in, I wish I had been more focused on it when I was younger, I would have really flourished in college. This robot was designed mostly on a whim, but has turned out to be a nice solid prototype, and it is very useful for testing sensors and AVR code... The Parts List: Aluminum Chassis, Motor Mounts & Tire hubs - Machined while I was still at RIT when I had access to their machine shop. No original designs are available, I just went in and used what scrap I could find...I'd be embarrassed by providing the true measurements :). Stepper Motors - From Sparkfun ...I may replace these some day with cheaper gear motors so I can use these steppers in a CNC/Drill Press. EasyDriver Stepper Motor Driver - Also from Sparkfun...sim...

Code

Time for the code... The software portion of this robot was fairly straight forward compared to the electrical and hardware designs. I had several previous robots and experiences to pull from when writing the code. As a result the code is very clean and well documented. There are two languages required to understand the code: JAVA and C ( AVR Libc to be precise). JAVA: I used JAVA to create a user interface which would take keyboard input and translate it into serial commands. The UI is very simple. It uses a KeyListener (which is added to all visible components of the UI) to pick up key strokes from the user. When a key is "typed" a string of characters is sent via GiovynetSerialPort1.3 to the XBee Module attached to the PC. The XBee acts a transparent serial cable with the XBee on the robot as the other end of the cable. Any serial data coming from the robot is displayed in the text area... I used Giovynet's serial port library for two reasons; first, Sun (JAVA)...