Published on
June 24, 2008 in
Tech.
My sister got Rock Band for her Wii today, after having tons of fun playing it on the XBox 360. She’d bought the Wii largely because she wanted Rock Band for it. Imagine her disappointment when the Wii version of the game came out with key features (custom characters, custom world tour, etc.) missing.
Others might say that she should have done research – but this is a consumer item, which carries the same name as a game people have seen and fallen in love with on other systems. Most reasonable people aren’t about to research the game they’re buying to see if it has all the features that they’re looking for – if they’ve played it on one system, why would it play THAT differently on another?
What Harmonix shipped is not the same game, and I think it’s deceptive to pass off such a weak effort as the same thing.
Published on
June 11, 2008 in
Tech.
I’ve been giving some thought recently on designing a new Arduino-like board using the more powerful ATmega644P rather than the ATmega168. I’ve reached a bit of a dilemma: what to do with the connector layout of the board. The problem is that the pinouts of the two chips are vastly different, to the point where shoehorning the ‘644P to work with the existing Arduino layout could be quite tricky. In addition, various features (PWM outputs mostly, but also SPI and TWI) are on rather different pins on the ‘644P than they are on the ‘168.
This presents a bit of a dilemma: how to lay out this new board? A few options seem to be available:
- Run the ports on the ‘644P to the same pins that the ‘168 uses on the Arduino. Digital code is easily ported, layout is somewhat simple (but not exactly straightforward), but the PWM outputs are suddenly on different physical pins, and we retain the somewhat odd connector spacing used on the Arduino. Shield compatibility is questionable.
- Make sure that the analog output pins line up, and patch the Digital outputs to be the “right thing” in software. This requires a lot of messing around with the Wiring libraries, and will make it difficult for people to embed their designs into their own boards. Also, layout becomes tricky to downright nightmarish, but we retain shield compatibility.
- Start from scratch. Set up the headers in a way that makes sense for this chip, and make the layout easy and clean. Shield compatibility goes right out the window, but the software remains clean.
So it’s a bit of a tossup right now. I’m leaning towards starting from scratch, but abandoning the existing shields is a touch decision to make. It would be REALLY nice if there were enough resources on the new chip to make two complete shield ports, but that doesn’t appear to be the case. It would, of course, be ideal to maintain compatibility with the software that the folks over at RobotCraft have come up with.
Maybe some jumpers could allow a best of both worlds implementation… layout would be hellish, but it could work…