FLOSS Weekly Episode 766: WebRTC — The Hack That Connects Everyone To Everything

This week Jonathan Bennett and Dan Lynch talk with Sean DuBois, WebRTC wizard, all about the crazy feats the Pion Go server is capable of, how WebRTC is about to change OBS, and what it looks like to build a successful Open Source Career.

WebRTC is for more than video. The TOR Snowflake project uses Pion to sneak TOR traffic through firewalls even with Deep Packet Inspection (DPI) at play. Since nobody wants to block web conferencing, TOR and even Wireguard can use this to slip though.

Sean is also working on some game-changing patches for OBS Studio, including WHEP support to go along with the newly introduced WHIP feature. This enables direct connections to another OBS client, as well as connection to another WebRTC client like vdo.ninja without running an embedded browser to make it work.

And then there’s WebRTC For The Curious, a free CC0 e-book all about the nuts and bolts of WebRTC. And Broadcast Box, a ready-to-run WebRTC one-to-many broadcasting solution that lets you run your own streaming service. You can connect with Sean at the Real-time Broadcast Discord server for information about all of the projects listed here and more!

Continue reading “FLOSS Weekly Episode 766: WebRTC — The Hack That Connects Everyone To Everything”

Blastoise Humidifier Shows Us You Don’t Need A 3D Printer If You’re This Good With A 3D Pen

[3D SANAGO] is a bit of a master when it comes to using a 3D-printing pen. Their latest work involved fixing a broken humidifier and giving it a Pokemon-themed makeover. It’s an education in just what can be achieved with a tool many of us write off as a simple novelty.

The basic idea of the build was to create a Blastoise figurine that serves as a humidifier. Work starts with marking out a basic outline on a round stone. The 3D pen is then used to create a tortoise shell with the appropriate concave shape, directly on the rock. [3D SANAGO] also demonstrates how a simple plastic framework can be heated with a blowtorch and shaped around the rock as needed to generate gentle curves. Meanwhile, a simple marker pen serves as a form for creating the gun barrels on Blastoise’s back. The legs are built with a similar technique, but with expert manipulation with a blowtorch to turn them into stubby muscular forms.

The full figurine is built up in stages, with individual wireframe components assembled into a complete body. The gaps in the frame are then filled in by hand, which takes a long time; [3D SANAGO] calls it “the most boring for sure.” Plenty of post-processing is then done with various sanding tools and a bladed tip on a soldering iron. The latter is used as the melting action allows the creation of a smooth final surface. In contrast, subtractive methods like sanding would leave holes and divots that need to be filled in before painting. There’s plenty of sealing to be done before paint, too, to ensure the interior of Blastoise can hold water without leaking. Then, the internal componets are installed and the body finished to its final cartoon form. In case you’re wondering, [3D SANAGO] says that sanding took 2-3 days to get such a great result.

If you really dig it, it’s on display at [3D SANAGO’s] cafe in Daejeon. Overall, it’s amazing to see such craftsmanship with a 3D pen. A resin printer could obviously print a wonderful Blastoise of similar quality, but there’s something about watching the level of human skill in this that’s just compelling. Video after the break.

Continue reading “Blastoise Humidifier Shows Us You Don’t Need A 3D Printer If You’re This Good With A 3D Pen”

Arduino, Virtually

While simulating an Arduino isn’t a new idea, a recent project by [LRusso] provides an open source JavaScript simulator that runs in your browser. You can try it out live or host it yourself if you prefer.

The simulator looks much like the standard IDE, so there isn’t much to learn. You can select from several targets, including a UNO R3, a MEGA 1280, a MEGA 2560, or a NANO V3. At the bottom of the screen, you’ll see the correct number of digital pins, analog pins, and the serial monitor. The code is relatively new, and we noticed that the digital and output pins seem to work only for outputs. There is no way to modify any of the values from the user interface. You can, however, enter things into the serial monitor.

You can run a canned demo that uses digital and analog output. There is also another sample that uses the serial port. Unlike some other simulators, you can’t really add much external circuitry but, for some purposes, that isn’t a problem.

If you are looking for more, there is Simulide, which is also free. Falstad can do mixed signal simulations with Arduino code. There’s also Wokwi, which we’ve covered a few times before.

Linux Fu: Where’s That Darn File?

Disk storage has exploded in the last 40 years. These days, even a terabyte drive is considered small. There is one downside, though. The more stuff you have, the harder it is to find it. Linux provides numerous tools to find files when you can’t remember their name. Each has plusses and minuses, and choosing between them is often difficult.

Definitions

Different tools work differently to find files. There are several ways you might look for a file:

  1. Find a file if you know its name but not its location.
  2. Find a file when you know some part of its name.
  3. Find a file that contains something.
  4. Find a file with certain attributes (e.g., larger than 100 kB)

You might combine these, too. For example, it is reasonable to query all PDF files created in the last week that are larger than 100 kB.

There are plenty of different types of attributes. Some file systems support tags, too. So, you might have a PERSONAL tag to mark files that apply to you personally. Unfortunately, tool support for tags is somewhat lacking, as you’ll see later.

Another key point is how up-to-date your search results are. If you sift through terabytes of files for each search, that will be slow. If you keep an index, that’s fast, but the index will quickly be out of date. Do you periodically refresh the index? Do you watch the entire file system for changes and then update the index? Different tools do it differently. Continue reading “Linux Fu: Where’s That Darn File?”

Fan With Automatic Door Is Perfect For Camper Vans

Ventilation fans are useful for clearing stuffy or stale air out of a space. However, they also tend to act as a gaping hole into said space. In the case of caravans and RVs, an open ventilation fan can be terrible for keeping the interior  space warm, quiet, and free from dust. “Blast doors” or fan blocks are a common way to solve this problem. [Raphtronic] whipped up a duly-equipped ventilation fan to do just that.

The solution was to create a fan setup with a custom fan holder and a sliding door to block airflow when necessary. [Raphtronic] designed a fan frame for this purpose using parts 3D printed in ASA plastic. This material was chosen such that they could readily withstand the 50 C (120 F) temperatures typical in his Ford Transit camper during the summer. A simple 12 V ventilation fan was then fitted to the frame, along with a sliding door controlled by a 12 V linear actuator.

The mode of operation is simple. A DPDT switch controls the linear actuator. Flipped one way, the linear actuator is fed 12 V in such a polarity as to move it to open the fan door. In this mode, 12 volts is also supplied to the fan to start ventilation. When the switch is flipped the other way, the actuator moves to the closed position, and a diode in the circuit stops the fan spinning backwards. As a bonus, limit switches are built into the linear actuator, so there’s no need for any microcontrollers, “off” switch positions, or additional wiring.

It’s a tidy solution to the problem of ventilating a camper in a clean and effective manner. Files are on GitHub for those wishing to build their own. We’ve seen some great work in this area before, like this off-grid van project that made excellent use of 3D scanning during the build process. If you’ve designed and built your own nifty camping gear, don’t hesitate to drop us a line!

Sun On The Run: Diving Into Solar With A Mobile PV System

For obvious reasons, there has been a lot of interest in small-scale residential solar power systems lately. Even in my neck of the woods, where the sun doesn’t shine much from October to April, solar arrays are sprouting up on rooftops in a lot of local neighborhoods. And it’s not just here in suburbia; drive a little way out into the country or spend some time looking around in Google maps and it won’t take long to spy a sizable array of PV panels sitting in a field next to someone’s ranch house or barn.

Solar has gotten to the point where the expense of an installation is no longer a serious barrier to entry, at least if you’re willing to put in a little sweat equity and not farm the project out to a contractor. Doing it yourself requires some specialized tools and knowledge, though, over and above your standard suite of DIY skills. So, in the spirit of sharing hard-won knowledge, I decided to take the somewhat unusual step of writing up one of my personal projects, which has been in progress for a couple of years now and resulted in a solar power system that isn’t on a rooftop or a ground-mounted array at all, but rather is completely mobile: my solar trailer.

Continue reading “Sun On The Run: Diving Into Solar With A Mobile PV System”

Compute The Mandelbrot Set With A Custom RISC-V CPU

When faced with an FPGA, some people might use it to visualize the Mandelbrot set. Others might use it to make CPUs. But what happens if you combine the two? [Michael Kohn] shows us what happens with his RISC-V CPU with an instruction specially made for computing the Mandelbrot set.

[Michael] takes us through the unusual process of turning his 8008 into a RISC-V CPU. Re-using bits of logic here and replacing other logic there leaves him with a functional RISC-V core. Not finished, [Michael] takes it upon himself to also create a custom instruction just for computing a point for the Mandelbrot set, accelerating the demo from twenty-three seconds to merely one!

Still not finished, [Michael] also creates an implementation of the long gone F100-L CPU, once again with added Mandelbrot set flair, simultaneously with the RISC-V project. Finally, he ports his “Java Grinder” Java bytecode compiler to both RISC-V and the F100-L, because Java runs on 1 Billion devicesTM.

Continue reading “Compute The Mandelbrot Set With A Custom RISC-V CPU”