Project Idea: Portable Media Center + Arcade
  • So after building my first full size cabinet I'm now itching for something new. I was thinking of making a "portable" media center. Basically it would be a "box" with a Pi in that had two major functions, running a media server and PiPlay. It would also contain a built in pico projector to project video (as well as a standard HDMI connection to plug in to the TV). I'm still debating how to deal with controllers for the arcade portion. Regular USB controllers, wired joystick and buttons, or 2 bluetooth units that have a standard arcade joystick and buttons on them.

    I'm still at the very early stages but wanted to get people's thoughts on this type of project and any advice you may have. I'm especially interested in experience with different types of controller connections.
  • I'm working on a similar project. I have decided that I'm going to use a bluetooth module and make some wireless controls. This also has the added benefit of being able to support wii controllers for extra players if I want.
  • So will each controller have a separate bluetooth module? Which BT module are you using?
  • I have an old rocketfish bluetooth keyboard that I don't use anymore, so I'm tearing that down. I'm going to have two traditional arcade joysticks + buttons connected to the same module.

    My original idea was to tear down one of these guys and just solder the connections directly to it, but then I remembered that I had the bluetooth keyboard in storage.
  • I was thinking of using 2 of these https://www.adafruit.com/product/1535 each mapped to different keyboard buttons. I wanted the two joystick units to be completely separate from each other. What I'm not sure about is whether the Pi will understand having 2 bluetooth 'keyboards' connected to it.
  • yeah, it should be fine. The pi uses a traditional bluetooth stack, so it should be able to handle that. I would go that way, but I'm really cheap :)
  • Yea, I'm already seeing the cost growing on this. Are you planning on using a projector or just a direct HDMI connection to a TV? I really like the idea of having a self contained project to "play anywhere" but so far the cost seems a bit much.
  • yeah, I think that I'm just going to do an hdmi to tv. It's mostly so that I can bring it over to my parents house, so all of my kids/nieces/nephews can play.
  • Yea, I'm torn on the projector as sometimes when I travel I end up places without HDMI TVs so the projector seems cool.

    Have you had any experience getting PiPlay & XBMC to work together? I'm curious which is easier to start with - e.g. do I do a RaspBMC install first then try to add PiPlay - or the other way around? Or do I just try to multiboot.

  • I haven't messed with xbmc. I've been meaning to. I imagine that it would be pretty easy to install xbmc and then add piplay to it. There would be a handfull of packages that you would need to install to get piplay running (I'm not sure what xbmc already has installed) but python 2.7, pygame, and sqlite3 at the very least.
  • I'm building a portable station in a briefcase. I'm going with USB controllers and HDMI ports on the exterior of the case just because it's my first setup and I want something simple and doable to start out. I may either look at putting another portable system together with full arcade inputs at some point but I'm so not ready for that yet.
  • @mholgatem - for your controls, how many buttons per player are you doing? On my full cabinet I did six, but I'm wondering how much I'll lose if I only did 4 per player. I'm thinking some of the games will suffer.
  • on my main cabinet, I have 4 per player, plus 2 general buttons (start1/start2, or coin1/coin2)

    I use my modified version of retrogame, so I can do combo keys as well. it's like having 6 buttons per player, plus 4 general buttons (start/select for each player)
  • @mholgatem - going back to the discussion about adding piplay to a raspbmc distro. Is there a repository of the piplay files where I can download the emulators and other files all at once? Or am I better off just zipping up the pimame directory from my existing system moving it over and then start solving dependency issues from there?
  • @fsa317 - Yes! Here is the current piplay repo, (this is what the updater pulls from). You will still need to install some things, like the python-Levenshtein module for the scraper, and pretty soon you will need to install sqlite3 ('cause trust me, this upcoming update is going to be awesome!)
  • Thanks - but what about the emulators directory? That isn't in the repo.
  • Shea has all of the emulators forked, if you check out his repo list. https://github.com/ssilverm?tab=repositories
  • I actually got it working by zipping up my existing pimame directory and moving it. I also needed to install a bunch of packages and mess around with some sound card compatibility; however I now have piplay working inside RaspBMC. However what seems to be the trickiest part is introducing a way to get to piplay that doesn't include starting with xmbc and then exiting. Starting to think berryboot may be easier.
  • could be. I haven't tried berryboot.
  • @mholgatem so I got my controller using the BT adapter from adafruit working, but realized a flaw in my approach. Right now I have 4 action buttons and 1 "other" button currently mapped to P1 Start. I was planning on using your retrogame approach to map different button combos to additional action (e.g. UP + Start would equal P1 Coin). However your script is based on the GPIO inputs not BT so I dont think that would work. I think I will need a script to intercept keypresses, but I'm not sure how or if that is possible. Ideas?
  • @fsa317 - you could probably modify something like triggerhappy daemon

    I'm not very familiar with it, but on the surface it looks like it could be useful.
  • Wow that looks very helpful, I've been playing with it for about 45 mins. I'm able to get it to see the combination key presses but I can't get it to "output" a different key. I configured:

    KEY_UP+KEY_1 1
    But when I run it with --uinput I get "Error setting up uinput support" and when I run it without I get a send error.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!