Networking: Pin the Tail on the Headless Raspberry Pi

Eager to get deeper into robotics after dipping my toe in the water with my BB-8 droid, I purchased a Raspberry Pi 3 Model B. The first step was to connect to it. But while it has built-in 802.11n wireless, I at first didn’t have a wireless access point, though I eventually did get one. That meant I went through different ways of finding it and connecting to it with my desktop computer. Surely there are others seeking to do the same so let’s take a look at the secret incantations used to connect a Pi to a computer directly, and indirectly.

Continue reading “Networking: Pin the Tail on the Headless Raspberry Pi”

Brazil Wins the Raspberry Pi Overclocking Olympics

[Alex Rissato] proudly reports that he now holds the record for highest benchmark score on HWBOT (machine translation); something he sees not only as a personal achievement but admirably, of national pride. Overclocking a Raspberry Pi is not as simple as achieving the highest operational clock rate. A record constitutes just the right combination of CPU clock, memory clock, GPU clock and finally the CPU core voltage. If you’ve managed to produce that special sauce, the combination must be satisfactorily cooled and most importantly be stable enough to pass an actual performance benchmark.

More POWAAA to the CPU!

[Alex] realized that the main hurdle to achieving the desired CPU clock was the internally generated and hence restricted, CPU core voltage; This is externally LC filtered and routed back to the CPU on a stock Pi. [Alex] de-soldered the filter on the PCB and provided the CPU with an externally generated core voltage.

Next, the cooling had to be tended to. Air cooling simply wouldn’t cut it, so a Peltier based heatsink interface had to be devised with the hot side immersed in a bucket of salt water. All of this translated to a comfy 16C at a clock speed of 1600 MHz.

Was all the effort justified? We certainly think it was! Despite falling short of the Pi zero CPU clock rate record, currently set at 1620MHz,  [Alex] earned the top spot in the HWBOT Prime overclocking benchmark. Brazil can now certainly add this to its trophy cabinet, arguably overshadowing the 129 Olympic medals.

Lattice iCE40 FPGA Configured by Linux Kernel

The Linux kernel recently added support for loading firmware into an FPGA via the FPGA Manager Framework. [OpenTechLab] has built a driver for the Lattice iCE40 FPGA (same chip used on the iCEStick and other development boards). One attraction to the iCE40 is there is an open source toolchain called iCEStorm.

Even if you aren’t specifically interested in FPGAs, the discussion about Linux device drivers is good background. The principles would apply to other drivers, and would definitely apply if you want to write another FPGA loader.

Continue reading “Lattice iCE40 FPGA Configured by Linux Kernel”

Detect Cars Running Stop Signs (and Squirrels Running Across the Roof)

There’s a stop sign outside [Devin Gaffney]’s house that, apparently, no one actually stops at. In order to avoid the traffic and delays on a major thoroughfare, cars take the road behind [Devin Gaffney]’s house, but he noticed a lot of cars didn’t bother to stop at the stop sign. He had a Raspberry Pi and a camera, so he set them up to detect the violating cars.

His setup is pretty standard – Raspberry Pi and camera pointed outside at the intersection. He’s running OpenCV and using machine learning to detect the cars and determine if they have run the stop sign or not. His website has some nice charts showing when the violations occurred by hour and by day of the week. Also on the site are links that you can use to help train the system in noticing cars, cars that run the stop sign, determining if there’s enough of the video to determine if there’s a violation, and whether or not there’s a car going the wrong way through the intersection.

This is an interesting use of the Pi and OpenCV; there’s no guarantee that this will help the people of [Devin Gaffney]’s neighborhood, but hopefully gives them some ammunition (assuming they want something done about the intersection.) It’s a cheap and easy setup and it’s nice to let the community have a hand in training the system. For more OpenCV, check out this article on taking the perfect jump shot or this one which tries to quantify cloudiness. Cool stuff.

[via reddit]

Continue reading “Detect Cars Running Stop Signs (and Squirrels Running Across the Roof)”

Hackaday Prize Entry: Detecting Adulterated Food Using AI

Adulterated food is food that has a substance added to it to save on manufacturing costs. It can have a negative effect, it can reduce the food’s potency or it can have no effect at all. In many cases it’s done illegally. It’s also a widespread problem, one which [G. Vignesh] has decided to take on as his entry for the 2017 Hackaday Prize, an AI Based Adulteration Detector.

On his Project Details page he outlines some existing methods for testing food, some which you can do at home: adulterated sugar may have chalk added to it, so put it in water and the sugar will dissolve while the chalk will not. His approach is to instead take high-definition photos of the food and, on a Raspberry Pi, apply filters to them to reveal various properties such as density, size, color, texture and so on. He also mentions doing image analysis using a deep learning neural network. This project touches us all and we’ll be watching it with interest.

If all this talk of adulterated food makes you nervous about your food supply then consider growing our own, hacker style. One such project we’ve seen here on Hackaday is Farmbot, an open-source CNC farming robot. Another such is MIT’s OpenAg Food Computer, a robotic control and monitoring growing chamber.

PC In A Mouse

[Slider2732] got his Orange Pi Zero working with a 3 watt amplifier, wireless keyboard (with built-in mouse), and car reversing monitor. But he needed a case to house it in. He remembered that he used to make parameters for ghost hunting by filling PC mouse cases with all sorts of electronics. So why not put the Orange Pi Zero in a mouse too? Looking through his mouse collection, he picked out an old Logitech optical mouse and went to work.

We like that the Logitech has transparent bottom halves, perfect for proving to anyone who might be skeptical that the PC really is in the mouse. A great enhancement we think would be to make the mouse actually be the mouse too! But there doesn’t seem to be enough room left for that. What’s smaller than a Pi Zero that will also run the armbian Linux distribution, OpenELEC Mediacenter, Kodi and a bunch of games?

He even set up the wireless networking for watching YouTube videos. Check out the build and demo video after the break.

Continue reading “PC In A Mouse”

Generator Monitor Gives the Phone Company the Boot

Part of the problem with having an alarm system is its reliance on land line telephone service. Some of them are getting away from this practice, but there are still many legacy systems out there that require a check to be sent in to Ma Bell every month in addition to the alarm system fees. Like these antiquated systems, [jgyates] was having a similar problem with the generator at his home which could only be monitored with a link to a cell network. Now that there’s a Raspberry Pi in every house, however, [jgyates] has a generator monitor that isn’t beholden to the phone company.

The hardware setup is little more than connecting the communications lines from the generator’s controller (in this case, a Generac Evolution controller) to the serial communications pins on a Raspberry Pi 3. [jgyates] did most of the work in Python, and his code is able to monitor almost every aspect of this generator and report it over WiFi or Ethernet, as well as control the generator settings from anywhere that has an Internet connection.

Even if you don’t have a generator with this particular controller, it will be a good guide for converting a monitor of any type into one that doesn’t require a land line or cell network connection. To that end, there have been lots of projects that convert even simple, old, analog household devices to report data over the LAN.