Ever since Slashbot hit the blogosphere and Youtube a lot of people have been asking questions about the project. We have especially loved reading the comments on Youtube, very entertaining. Below are responses to some general questions we have received. If you have more questions, we’d love to hear them. Just leave a comment!
How does Slashbot work?
There is a post in the blog that describes our approach but the concept is as follows. The “notes” to be played are the brightest images on the screen. This means we can look at a black and white (actually grayscale) version of the video and observe “notes” very easily. The brightness of a pixel is defined by a voltage between 0V(black) and 1V(white). By using NI LabVIEW to observe the waveform of the video signal, we monitor specific pixels on an individual line of video. When a “note” crosses that line, we see a spike in the signal’s voltage. Depending on where the spike occurred in the waveform, we can determine which note needs to be played by the robot.
How long did it take to make Slashbot
This was a semester long project that began in January 2008. Our team would work on Slashbot two days a week for about 4-5 hours each day. We had a working design after a couple months. We then spent a month tweaking and improving the overall design and performance. So in all, it took about three months from design proposal to fully functioning.
Why use the robot to press the buttons? Wouldn’t it be better to wire a signal directly to the controller’s electronics? You could probably achieve 100% that way.
This is a valid question. From a purely performance standpoint, wiring control signals directly to the game would likely have improved the system’s accuracy. However, there are already existing solutions that implement this approach. It was very important for us to create a system without hacking the game controller. We wanted our robot to have a human element to it. By physically seeing the buttons being pressed, someone watching could more easily relate to Slashbot. We wanted to blur the lines between man and machine. Plus, it is REALLY cool to see the actuators firing at break-neck (or “break-guitar”) speed!
Can you make it play “Through the Fire and Flames” on Expert?
This is by far the most common request. For those unfamiliar with Guitar Hero 3, “Through the Fire and Flames” by DragonForce is notoriously the game’s most challenging song. It is extremely fast and includes intricate solos lasting several minutes.
To answer the question, YES! We can make Slashbot play TTFAF and have done so. At our project demonstration day at Texas A&M a worthy challenger played against Slashbot. The robot finished with 68%.
So what’s the problem? Many have speculated that the actuators would not be fast enough to react to the incredible speed of the song, but this is not the case. The problem lies in the “note” detection software. Our algorithm currently has difficult differentiating between long strings of the same colored note and the long bar that appears for held notes. For the long strings of notes, Slashbot will strum on just the first note because the video signal is very similar to that of a held note. We are working to improve this.
Can Slashbot use Star Power or the whammy bar?
Slashbot does use Star Power. The game allows two ways to activate Star Power, by lifting the neck of the guitar or by pressing the “Select” button. We have mounted an actuator above the “Select” button. Its fires roughly every 10 seconds. There is no effect from pressing “Select” unless Star Power is available. As for whammy, we have the software implemented to handle it, but have yet to attach a motor to move the bar. We may eventually add this feature.
What does the future hold for Slashbot?
The main purpose of Slashbot was to complete our requirements for our Electrical and Computer Engineering degrees. That has been accomplished. We have been asked to demonstrate Slashbot at some public appearances, details TBD. We may make some improvements and will post any news here on the blog.