ASTROGUN is like Asteroids on Steroids

Astrogun

As the Jerusalem mini Makerfaire approached, [Avishay] had to come up with something to build. His final project is something he calls ASTROGUN. The ASTROGUN is a sort of augmented reality game that has the player attempting to blast quickly approaching asteroids before being hit.

It’s definitely reminiscent of the arcade classic, Asteroids. The primary difference is that the player has no space ship and does not move through space. Instead, the player has a first person view and can rotate 360 degrees and look up and down. The radar screen in the corner will give you a rough idea of where the asteroids are coming from. Then it’s up to you to actually locate them and blast them into oblivion before they destroy you.

The game is built around a Raspberry Pi computer. This acts as the brains of the operation. The Pi interfaces with an MPU-9150 inertial measurement unit (IMU). You commonly see IMU’s used in drones to help them keep their orientation. In this case, [Avishay] is using it to track the motion and orientation of the blaster. He claims nine degrees of freedom with this setup.

The Pi generates the graphics and sends the output to a small, high-brightness LCD screen. The screen is mounted perpendicular to the player’s view so the screen is facing “up”. There is a small piece of beam splitting glass mounted above the display at approximately a 45 degree angle. This is a special kind of glass that is partially reflective and partially translucent. The result is that the player sees the real-world background coming through the glass, with the digital graphics overlaid on top of that. It’s similar to some heads-up display technologies.

All of the electronics fit either inside or mounted around a toy gun. The display system was attached with a custom-made fiberglass mount. The code appears to be available via Github. Be sure to watch the video of the system in action below. [Read more...]

Adding GPIOs To The Raspberry Pi With The Camera Interface

GPIOs

The Raspberry Pi Model B+ was just released, and now everyone who picks one of those up has a few more GPIO pins to play around with. For the millions of people with the two-year-old version of the Pi, we’re still stuck with the same old, same old: 17 GPIOs on the big header, and that’s about it as far as toggling pins goes.

The Broadcom SoC on the Pi has far more GPIO pins than are broken out on the large header, and a few of those go to the CSI camera interface. These GPIOs can be broken out with a few flat cables (Portuguese, Google Translatrix), giving you four more GPIOs, and this technique can also be used with the new, expanded Model B+.

The CSI camera connector has two I²C lines that go directly to the camera, controllable in Linux as GPIO0 and GPIO1. There are two more GPIO connectors on the CSI connector controllable as GPIO5 and GPIO21. By carefully slicing and soldering wires to a flat cable, these GPIO lines can be broken out onto a breadboard.

There’s a video below demonstrating these GPIO lines being used to control a few LEDs. Of course, anything that is possible with a normal Raspi GPIO is possible with the CSI connector GPIO lines.

[Read more...]

Building The Slimmest Raspi

slim_pi

[Colin], AKA [Domipheus], was working on a project to monitor a thermostat with a wall mounted Raspberry Pi and a touchscreen. Simple enough, but the Pi has a problem: The plugs are all around the perimeter of the board, and with a TFT touch screen shield, it’s a bit too thick to be wall mounted. What followed is a hack in the purest sense: [Domipheus] removed and relocated components on the Pi until the entire Pi/display stack was just a hair over 10mm tall.

A Raspberry Pi Model A was used for this build, meaning the Ethernet jack was gone, and there was only a single USB port to deal with. Still, the highest components – the RCA and audio jacks – were too tall and needed to be removed; they weren’t going to be used anyway.

After these components were gone, [Domipheus] turned his attention to the next tallest parts on the board: fuses, caps, and the HDMI port. For fear of damaging the surrounding components when removing the HDMI connector the right way, this part was simply hacked off. The large tantalum cap near the USB power connector was removed (it’s just a filter cap) and the large protection diode was moved elsewhere.

Slimming down a Pi is no good without a display, and for that [Domipheus] used this touchscreen thing from Adafruit. Things got a little complicated when the project required the ability to remove the LCD, but you can do amazing things with a DIP socket and a file.

The end result is a Raspberry Pi with touchscreen display that’s just a smidgen thicker than a CD case. It’ll fit right up against a wall in its repurposed enclosure, and the end result looks very professional.

[Thanks Luke via reddit]

The Raspberry Pi Model B+ Is Here (Again!)

raspberry_pi_Pi_side_01_ORIG

Depending on who you believe, yesterday someone either broke an NDA or was the lucky recipient of an Element 14 shipping error. Nevertheless, we were lucky enough to get a glimpse at the new Raspberry Pi Model B+. Today, everything is live, and Adafruit has a great teardown of what’s new, what’s changed, and what’s completely different in this new board.

The biggest question about this new Pi was the CPU: the Broadcom SoC in the models A and B are looking a little long in the tooth right now, and an upgraded CPU would be a very, very welcome addition. There is no change. This is the same 700 MHz Broadcom chip with 512MB of RAM. There will not be a ‘magical, because you’re awesome’ RAM upgrade the original Model B saw early in production, either – there simply aren’t enough address pins in the SoC.

Despite not having an upgraded CPU, there are some neat features that addressed the complaints of the original Pi: The standard sized SD card socket is replaced with a microSD card socket that won’t stick out over the edge of the board. The ports are rearranged, with the analog video out on a TRRS plug with the audio. There are now four USB ports and an Ethernet port thanks to this chip, and mounting holes galore: they’re M2.5 holes in a square 58mm wide and 49mm high. Also included in the B+ is a completely redesigned power supply – the jumbo linear regulator is gone, replaced with an all-around better power supply.

The biggest change for anyone looking making a project with the Pi is the expanded GPIO header. This is a 40 pin header, with the ‘top’ pins identical to the original 26 pin header. Yes, all your existing Pi plates/shields/whatevers will still work. The new pins on this header include nine more GPIO pins, the I2S pins for the Wolfson audio card, and a pair of pins for an ID EEPROM. Connections to an ID EEPROM have been a feature of the BeagleBone for a while now, and this will allow the Pi to configure the appropriate I/Os and kernel modules at boot, depending on what Pi Plates are attached.

The best part about this is the price – it’s the same as the OG Model B. Using the same case as you old Model A or B is out of the question, but that’s totally what Kickstarter is for, right? You might want to grab one of those, because this is probably going to be the form factor for the upgraded Raspberry Pi 2.0 that will probably be released in a year or two.

Introducing The Raspberry Pi B+

rpi-b-plus

Click to embiggen

It looks like Element 14 screwed up a single shipment, because some lucky soul just received an unreleased model of Raspberry Pi. If you can believe the silkscreen, it’s called the Raspberry Pi Model B+, and while we have no idea what the chipset is, the layout and peripherals look pretty cool.

From the looks of it, this new board features four USB ports, a new, 40-pin GPIO header, and more screw holes that will allow you to secure this to anything. The analog video out is gone, and the SD card connector – a weak point of the original design – might be replaced with a microSD connector. Oh, every Raspi case that has ever been made? They won’t work.

Without booting this Raspi B+ there’s no way of knowing what the chipset is on this new board. The smart money is on the entire SOC being the same: basically, what you’re looking at is the same as a Raspberry Pi Model B, only with a few more ports.

There is no clue when these improved Raspis will be available, but the word “soon™” will probably appear on the Raspberry Pi blog shortly.

Thanks [John] for the tip.

EDIT: [feuerrot] is smarter than me and mirrored all the images in an imgur album.

 

Easily Turn Your Raspberry Pi into an FM Transmitter

RasPi FM Transmitter

Have you ever wanted to be your own radio DJ? [Kevin] has made it easier than ever with his Raspberry Pi FM Transmitter program. The program is written in C. [Kevin] has made source code is available along with a compiled binary.

PIFM allows you to load up any audio file and specify a frequency to transmit. The program will then use PWM to modulate the audio sample through the Pi’s GPIO4 pin. [Kevin] claims that the RasPi alone will only transmit around a 10 cm distance. He says that making a simple antenna out of a jumper wire can increase the distance to around 100 meters. All you have to do is hook up the wire to the GPIO4 pin to drastically increase the range.

The legality of such a transmitter will vary from place to place, so be sure to check out your local regulations before you go transmitting audio on regulated frequencies. If this kind of thing is interesting to you, you may want to investigate ham radio. It’s not all Morse code and old fogies. Some people claim it’s a hacker’s paradise.

[via Reddit]

How to Upgrade Jasper’s Voice Recognition with AT&T’s Speech-to-Text API

Jarvis upgrade

Jasper is an open-source platform for developing always-on voice-controlled applications — you talk and your electronics listen! It’s designed to run on a Raspberry Pi. [Zach] has been playing around with it and wasn’t satisfied with Jasper’s built-in speech-to-text recognition system. He decided to take the advice of the Jasper development team and modify the system to use AT&T’s speech-to-text engine.

The built-in system works, but it has limitations. Mainly, you have to specify exactly which keywords you want Jasper to look out for. This can be problematic if you aren’t sure what the user is going to say. It can also cause problems when there are many possibilities of what the user might say. For example if the user is going to say a number between one and one hundred, you don’t want to have to type out all one hundred numbers into the voice recognition system in order to make it work.

The Jasper FAQ does recommend using the AT&T’s speech-to-text engine in this situation but this has its own downsides. You are limited to only one request per second and it’s also slower to recognize the speech. [Zach] was just fine with these restrictions but he couldn’t find much information online about how to modify Jasper to make the AT&T engine work. Now that he’s gotten it functional, he shared his work to make it easier for others.

The modification first requires that you have at AT&T developer account. Once that’s setup, you need to make some changes to Jasper’s mic.py module. That’s the only part of Jasper’s core that must be changed, and it’s only a few lines of code. Outside of that, there are a couple of other Python scripts that need to be added. We won’t go into the finer details here since [Zach] goes into great detail on his own page, including the complete scripts. If you are interested in using the AT&T module with your Jasper installation, be sure to check out [Zach's] work. He will likely save you a lot of time.