It probably goes without saying that hardware hackers were excited when the Raspberry Pi 4 was announced, but it wasn’t just because there was a new entry into everyone’s favorite line of Linux SBCs. The new Pi offered a number of compelling hardware upgrades, including an onboard PCI-Express interface. The only problem was that the PCIe interface was dedicated to the USB 3.0 controller; but that’s nothing a hot-air rework station couldn’t fix.
We’ve previously seen steady-handed hackers remove the USB 3.0 controller on the Pi 4 to connect various PCIe devices with somewhat mixed results, but [Colin Riley] has raised the bar by successfully getting a PCIe multiplier board working with the diminutive Linux computer. While there are still some software kinks to work out, the results are very promising and he already has a few devices working.
Getting that first PCIe port added to the Pi 4 is already fairly well understood, so [Colin] just had to follow the example set by hackers such as [Tomasz Mloduchowski]. Sure enough, when he plugged the port multiplier board in (after a bit of what he refers to as “professional wiggling”), the appropriate entry showed up in
But there was a problem. While the port multiplier board was recognized by the kernel, nothing he plugged into it showed up. Checking the kernel logs, he found messages relating to bus conflicts, and one that seemed especially important: “devices behind bridge are unusable because [bus 02] cannot be assigned for them“. To make a long story short, it turns out that the Raspbian kernel is specifically configured to only allow a single PCI bus.
Fortunately, it’s an easy fix once you know what the problem is. Using the “Device Tree Compiler” tool, [Colin] was able to edit the Raspbian Device Tree file and change the PCI “bus-range” variable from
<0x0 0x1> to
<0x0 0xff>. From there, it was just a matter of plugging in different devices and seeing what works. Simple things such as USB controllers were no problem, but getting ARM Linux support for the NVIDIA GTX 1060 he tried will have to be a topic for another day.
[Thanks to Paulie for the tip.]
A Raspberry Pi kicking around one’s workbench is a project waiting to happen — if they remain unused long enough to be considered a ‘spare.’ If you find you’ve been pining after an Alexa or your own personal J.A.R.V.I.S., [Novaspirit Tech] might be able to help you out — provided you have a USB mic and speaker handy — with an accessible tutorial for setting up Google Assistant on your Pi.
A quick run-through on enabling a fresh API client on Google’s cloud platform, [Novaspirit] jumps over to the Raspbian console to start updating Python and a few other dependencies. Note: this is being conducted in the latest version of Raspbian, so be sure to update before you get underway with all of your sudos.
Once [Novaspirit] gets that sorted, he sets up an environment to run Google Assistant on the Pi, authenticates the process, and gets it running after offering a couple troubleshooting tips. [Novaspirit] has plans to expand on this further in the near future with some home automation implementation, but this is a great jumping-off point if you’ve been looking for a way to break into some high-tech home deliciousness — or something more stripped-down — for yourself. Check out the video version of the tutorial after the break if you like watching videos of guys typing away at the command line.
Continue reading “Sudo Google Assistant”
In a clever bit of miniaturization, [JediJeremy] has nearly completed a gyro-mouse controller for a Raspberry Pi Zero! Ultimately this will be a wearable Linux-watch but along the way he had some fun with the interface.
Using the MPU6040 gyroscope/accelerometer card from a quadcopter, [JediJeremy] spent a week writing the driver to allow it to function as a mouse. Strapping an Adafruit 1.5″ PAL/NTSC LCD screen and its driver board to the Zero with rubber bands makes this one of the smallest functional computer and screen combos we’ve seen. Simply tilt the whole thing about to direct the cursor.
It presently lacks any keyboard input, and [JediJeremy] has only added a single button for clicking, but look at this thing! It’s so tiny! In his own words: “I think this is the first computer that I can accidentally spill into my coffee, rather than vice versa.”
Continue reading “Raspberry Pi Zero Becomes Mighty Miniature Minecraft Machine”
I ordered a Raspberry Pi Zero from Adafruit in their Startup Pack right after they were released. There are a few Greater Than Zero Pis (GTZPi) already on my workbench so my purchase was driven by curiosity, not necessity. With no rush on delivery it eventually got here, and I finally got around to looking at it. My experience with the Pi family began with the Pi B+ and, shortly after that, the Pi 2. The speed difference between them was noticeable so I decided to dive in and further test the performance of the Zero.
Continue reading “Firing Up A Raspberry Pi Zero”
[j3tstream] wanted an easier way to monitor traffic on the roads in his area. Specifically, he wanted to monitor the roads from his car while driving. That meant it needed to be easy to use, and not too distracting.
[j3tstream] figured he could use a Raspberry Pi to run the system. This would make things easy since he’d have a full Linux system at his disposal. The Pi is relatively low power, so it’s run from a car cigarette lighter adapter. [j3tstream] did have to add a custom power button to the Pi. This allows the system to boot up and shut down gracefully, preventing system files from being corrupted.
After searching eBay, [j3tstream] found an inexpensive 3.2″ TFT LCD touchscreen display that would work nicely for displaying the traffic data. The display was easy to get working with the Pi. [j3tstream] used the Raspbian linux distribution. His project page includes a link to download a Raspbian image that already includes the necessary modules to work with the LCD screen. Once the image is loaded, all that needs to be done is to calibrate the screen using built-in operating system functions.
The system still needed a data connection. To make things simple and inexpensive, [j3tstream] used a USB WiFi dongle. The Pi then connects to a WiFi hot spot built into his 4G mobile phone. To view the traffic map, [j3tstream] just connects to a website that displays traffic for his area.
The last steps were to automate as much as possible. After all, you don’t want to be fumbling with a little touch screen while driving. [j3tstream] made some edits to the LXDE autostart file. These changes automatically load a browser in full screen mode to the traffic website. Now when [j3tstream] boots up his Pi, it automatically connects to his WiFi hotspot and loads up local traffic maps.
What do you get when you take an extremely small Raspberry Pi clone and stuff it inside a Game Boy Advance SP? We don’t know what to call it, but it’s probably one of the best portable gaming machines ever made, able to run emulators ranging from the Apple II to playing Quake III natively on a tiny flip-top display.
This isn’t the first time we’ve seen [frostedfires]’ work on a tiny system stuffed into a Game Boy. The initial post on this build over on the bacman forums just covered the basics – getting an Odroid W up and running, and putting Quake III on the tiny display. Now that the build is complete, we can get a look at what it takes to turn a Raspberry Pi clone into one of the smallest portable projects we’ve ever seen.
Using a Raspi clone as the only component in a tiny portable emulation station isn’t possible, so [frostefires] added a few other bits of electronics to make everything work. There’s a joystick from a PSP in there to work as the mouse, a few extra buttons in addition to the stock Game Boy ones, A USB hub, WiFi adapter, speaker and amplifier, a battery and the related charging electronics, and a Teensy 3.1 to handle all the input.
It’s a very impressive build that can run emulators ranging from the Apple II to later generation Nintendo consoles and handhelds (including the Game Boy Advance), but since the HDMI connector is availble on the outside of the case, [frostedfires] can also use this as a tiny, portable media center. Check out the video below to see this Game Boy in action, playing Mario Kart and 1080p video.
Continue reading “The Smallest Portable Pi”
[Andrei] is cruising in style thanks to his Raspi-powered CarPC project, which is a steal at $200 considering all the functionality it provides. This is an update to the work we saw from him back in March. Rather than completely replace his car’s head unit, [Andrei] simply relocated it to the trunk, permanently set it to the “aux input” source, and connected the Raspberry Pi’s audio output. The Pi runs a Raspbian Wheezy distro with XBMC and is mounted in the storage area beneath the middle armrest. [Andrei] filled the hole left by the old stereo with a 7-inch touchscreen display, which connects to the Pi through both HDMI and USB. If you throw the car into reverse, the Pi automatically selects the touchscreen’s AV input to display the car’s backup camera, then flips back when put in drive.
The unit also provides navigation via the open-source Navit software using OpenStreetMap data. An ST22 SkyTraq GPS receiver grabs coordinates and feeds them into the Raspi, which updates the on-screen map once per second. You’ll want to watch the video after the break (Audio Warning: Tupac) to see for yourself just how well the CarPC came together,
Continue reading “Using A Raspberry Pi To Give Your Car More Features”