Speaker Snitch Tattles On Privacy Leaks

A wise senator once noted that democracy dies with thunderous applause. Similarly, it’s also how privacy dies, as we invite more and more smart devices willingly into our homes that are built by companies that don’t tend to have our best interests in mind. If you’re not willing to toss all of these admittedly useful devices out of the house but still want to keep an eye on what they’re doing, though, [Nick Bild] has a handy project that lets you keep an eye on them when they try to access the network.

The device is built on a Raspberry Pi that acts as a middle man for these devices on his home network. Any traffic they attempt to send gets sent through the Pi which sniffs the traffic via a Python script and is able to detect when they are accessing their cloud services. From there, the Pi sends an alert to an IoT Arduino connected to an LED which illuminates during the time in which the smart devices are active.

The build is an interesting one because many smart devices are known to listen in to day-to-day conversation even without speaking the code phrase (i.e. “Hey Google” etc.) and this is a great way to have some peace-of-mind that a device is inactive at any particular moment. However, it’s not a foolproof way of guaranteeing privacy, as plenty of devices might be accessing other services, and still other devices have  even been known to ship with hidden hardware.

Continue reading “Speaker Snitch Tattles On Privacy Leaks”

Nerfnet Tunnels TCP/IP Over NRF24L01 Radios

There’s an excellent chance you’ve already worked with the nRF24L01. These little modules are an easy and cheap way to shuffle data across a 2.4 GHz radio link at a respectable rate, making them great for remote control projects. But after seeing that others had experimenting with using these radios to transmit digital audio, [Andrew Rossignol] got to wondering if some software trickery could push the envelope even further.

The result is nerfnet, a Linux program that allows you to tunnel TCP/IP over a pair of nRF24L01 modules. The link appears as a virtual interface, meaning everything happens transparently as far as other programs are concerned. Anything that uses TCP/IP to communicate on Linux can take advantage of this low-cost link, albeit at speeds that most of us haven’t had to deal with in decades.

Though it’s not quite as bad as you might think. Latency is around 50 ms, and after some tweaks, [Andrew] has been able to squeeze almost 300 Kbps out of the link. That’s more than enough for terminal work, and some light audio and video streaming isn’t out of the question.

In terms of range, he was able to maintain a fairly reliable connection at a distance of up to 60 meters (200 feet) outdoors. It might not sound like much, but again, you’ve got to take the cost of these radios into account. If you’re looking to SSH into a Raspberry Pi weather station you’ve got in the backyard, a pair of these could get the job done for just a couple of bucks.

The blog post [Andrew] has put together explains the software in fantastic detail if you’re interested in the nuts and bolts of it all. But if you just want to play around with the idea, you just need to connect some nRF24L01 modules to a pair of Raspberry Pis with short SPI wires to cut down any interference, and follow the instructions. Ideally the radios would have external antennas, but it’s not strictly required.

We’ve seen these modules pushed into service as impromptu Bluetooth Low Energy transmitters in the past, but nothing quite like this. While the latency and bandwidth offered by this technique might seem antiquated to modern eyes, it could be the perfect dedicated communication channel for your sensors, smart devices, or home automation projects.

Continue reading “Nerfnet Tunnels TCP/IP Over NRF24L01 Radios”

Linux Fu: VPN For Free With SSH

If you see a lot of banner ads on certain websites, you know that without a Virtual Private Network (VPN), hackers will quickly ravage your computer and burn down your house. Well, that seems to be what they imply. In reality, though, there are two main reasons you might want a VPN connection. You can pay for a service, of course, but if you have ssh access to a computer somewhere on the public Internet, you can set up your own VPN service for no additional cost.

The basic idea is that you connect to a remote computer on another network and it makes it look like all your network traffic is local to that network. The first case for this is to sidestep or enhance security. For example, you might want to print to a network printer without exposing that printer to the public Internet. While you are at the coffee shop you can VPN to your network and print just like you were a meter away from the printer at your desk. Your traffic on the shop’s WiFi will also be encrypted.

The second reason is to hide your location from snooping. For example, if you like watching the BBC videos but you live in Ecuador, you might want to VPN to a network in the UK so the videos are not blocked. If your local authorities monitor and censor your Internet, you might also want your traffic coming from somewhere else.

Continue reading “Linux Fu: VPN For Free With SSH”

Low-Level Academy Gets Into Details

We often say that you don’t have to know how an engine works to drive a car, but you can bet that every driver at the Indy 500 knows exactly how it works. You could say the same for computers. You don’t need to understand the details, but it really helps, especially if something goes wrong. [Low-Level Academy] has an online class where you can program in Rust inside your browser to learn about low-level TCP and UDP networking details.

Just how low it goes, we aren’t exactly sure, yet. There are three of eight modules ready to go. The first three cover number encoding, exchanging messages with UDP, and fragmentation. Reliability, routing, server programming, TCP, and HTTP are not out yet, but the ultimate project is a web server. In addition, new modules are released to sponsors first, so the fragmentation module for example won’t be available for a few more days. While that seems unorthodox, it is no different than having to wait for an HBO show to show up on basic cable in reruns.

Continue reading “Low-Level Academy Gets Into Details”

Long Range WiFi Broadcasts Open-Source Video Conferencing

WiFi is an ubiquitous feature of the modern landscape, but due to power restrictions on most hardware alongside the high-frequency signal it’s typically fairly limited in range. This of course leads to frustration where a WiFi signal can be seen, but the connection is unreliable or slow. While most would reach for a range extender or other hardware bridge, [tak786] was able to roll out a better solution for his workplace by using a high-gain antenna and a single-board computer which gets him an amazing kilometer-wide WiFi network.

The build uses a 10 dBi antenna from TP-Link that’s rated for outdoor use and a single-board computer which acts as a sort of router. The antenna is placed at the top of a building which certainly helps with the extreme range as well. This setup doesn’t actually broadcast an open Internet connection, though. [tak786]’s employer needed a teleconferencing solution for their building, and he also created a fully open-source video conferencing solution called trango that can run on any LAN and doesn’t require an Internet connection. The WiFi setup in this build is effectively just a bonus to make the conferencing system more effective.

[tak786] is planning on releasing a whitepaper about this build shortly, but for now you can access the source code for the video conferencing system at his GitHub page. And, before anyone jumps to conclusions, apparently this is well within FCC rules as well. Some of the comments in the linked Reddit post suggest that with an amateur radio license this system could be pushed much further, too. If you need more range than a kilometer, though, it’s not too much more difficult to do once you have all the right hardware.

Tiny Ethernet Switch Gets Even Smaller

As a project gets more complicated, some kind of internal communication network is often used to that all of the various modules and sensors can talk with each other. For hardware hackers like us, that usually means SPI, I2C, or maybe even good old fashioned UART. But if you’re pushing a lot of data around, like live video feeds from multiple cameras, you’ll need something a bit faster than that.

Which is why [Josh Elijah] has created the SwitchBlox Nano, a three port 10/100 Ethernet switch that fits on a one inch square PCB. All you need to do is provide it with power, with a generous input range of 5 to 50 volts, connect your devices to the Molex Picoblade connectors on the board, and away you go. There’s even a 5 V 1 A regulated output you can use to run your downstream devices.

If you’ve got a feeling that you’ve seen something very similar on these pages earlier in the year, you’re not imagining things. Back in April we covered the original five port SwitchBlox in a post that garnered quite a bit of attention. In fact, [Josh] tells us that the design of this new switch was driven largely by the feedback he got from Hackaday readers. The Nano is not only smaller and cheaper than the original, but now maintains full electrical isolation between each port.

The average Hackaday reader is as knowledgeable as they are opinionated, and we’re glad [Josh] was able to put the feedback he received to practical use. We’re proud that our community has had a hand in refining successful commercial products like the Arduboy handheld game system and the Mooltipass hardware password keeper. Now it looks like we can add a tiny Ethernet switch to the list of gadgets we’ve helped push up the hill. Maybe we should get a stamp or something…

New Part Day: An Open Source Ethernet Switch In The Palm Of Your Hand

When you can get a WiFi-enabled microcontroller for $3, it’s little surprise that many of the projects we see these days have ditched Ethernet. But the days of wired networking are far from over, and there’s still plenty of hardware out there that can benefit from being plugged in. But putting an Ethernet network into your project requires a switch, and that means yet another piece of hardware that needs to get crammed into the build.

Seeing the need for a small and lightweight Ethernet switch, BotBlox has developed the SwitchBlox. This 45 mm square board has everything you need to build a five device wired network, and nothing you don’t. Gone are the bulky RJ45 jacks and rows of blinkenlights, they won’t do you any good on the inside of a robot’s chassis. But that’s not to say it’s a bare bones experience, either. The diminutive switch features automatic crossover, support for input voltages from 7 V all the way up to 40 V, and management functions accessible over SPI.

If you want to get up and running as quickly as possible, a fully assembled SwitchBlox is available to purchase directly from BotBlox for £149.00. But if you’re not in any particular rush and interested in saving on cost, you can spin up your own version of the Creative Commons licensed board. The C++ management firmware and Python management GUI isn’t ready for prime time just yet, but you’ll be able to build a “dumb” version of the switch with the provided KiCad design files.

The published schematic in their repo uses a Microchip KSZ8895MQXCA as the Ethernet controller, with a Pulse HX1344NL supplying the magnetics for all the ports in a single surface mount package. Interestingly, the two images that BotBlox shows on their product page include different part numbers like H1102FNL and PT61017PEL for the magnetics, and the Pulse H1164NL for the Ethernet controller.

Make Networks Wired Again

There’s no question that WiFi has dramatically changed the way we connect devices. In fact, there’s an excellent chance you’re currently reading these words from a device that doesn’t even have the capability to connect to a wired network. If you’re looking to connect a device to the Internet quickly, it’s tough to beat.

But WiFi certainly isn’t perfect. For one, you have to contend with issues that are inherent to wireless communications such as high latency and susceptibility to interference. There’s also the logistical issues involved in making that initial connection since you need to specify an Access Point and (hopefully) an encryption key. In comparison, Ethernet will give you consistent performance in more or less any environment, and configuration is usually as simple as plugging in the cable and letting DHCP sort the rest out.

Unfortunately, that whole “plugging in” part can get tricky. Given their size, putting an Ethernet switch into your project to act as an internal bus only works if you’ve got space to burn and weight is of little concern. So as appealing as it might be to build a network into your robot to connect the Raspberry Pi, motor controllers, cameras, etc, it’s rarely been practical.

This little switch could change that, and the fact it’s released under an open source license means hackers and makers will be free to integrate it into their designs. With the addition of an open source management firmware, this device has some truly fascinating potential. When combined with a single board computer or suitably powerful microcontroller, you have the makings of a fully open source home router; something that the privacy and security minded among us have been dreaming of for years.