Embed With Elliot: Audio Playback With Direct Digital Synthesis

Direct-digital synthesis (DDS) is a sample-playback technique that is useful for adding a little bit of audio to your projects without additional hardware. Want your robot to say ouch when it bumps into a wall? Or to play a flute solo? Of course, you could just buy a cheap WAV playback shield or module and write all of the samples to an SD card. Then you wouldn’t have to know anything about how microcontrollers can produce pitched audio, and could just skip the rest of this column and get on with your life.

Harmonic distortion down ~45db on an Arduino
~45db signal to noise ratio from an Arduino

But that’s not the way we roll. We’re going to embed the audio data in the code, and play it back with absolutely minimal additional hardware. And we’ll also gain control of the process. If you want to play your samples faster or slower, or add a tremolo effect, you’re going to want to take things into your own hands. We’re going to show you how to take a single sample of data and play it back at any pitch you’d like. DDS, oversimplified, is a way to make these modifications in pitch possible even though you’re using a fixed-frequency clock.

The same techniques used here can turn your microcontroller into a cheap and cheerful function generator that’s good for under a hundred kilohertz using PWM, and much faster with a better analog output. Hackaday’s own [Bil Herd] has a nice video post about the hardware side of digital signal generation that makes a great companion to this one if you’d like to go that route. But we’ll be focusing here on audio, because it’s easier, hands-on, and fun.

Continue reading “Embed With Elliot: Audio Playback With Direct Digital Synthesis”

Swarm Of Robot Boats Coming To An Ocean Near You Soon

Planning a hostile takeover of your local swimming pool? This might help: [Dr Anders Lyhne Christensen] sent us a note about his work at the BioMachines Lab of the Institute of Telecommunications in Portugal. They have been building a swarm of robot boats to experiment with autonomous swarms, with some excellent results.

In an autonomous swarm, each robot makes its own decisions and talks to its neighbors, and the combined behavior of the swarm produces an overall behavior, like ants in a nest. They’ve created swarms that can autonomously navigate, patrol an area or monitor the temperature in an area and return to base to report the results. In an excellent video, [Anders] outlines how they used computational evolution to create these behaviors, randomly mutating a neural net to find the best approach, which is then sent to the real boats.

Perhaps coolest of all: the whole project is open source, with the brains of each boat running on a Raspberry Pi, and a CNC milled foam hull with 3D printed component mounts. Each boat costs about 300 Euro (about $340), but you could reduce the cost a bit by salvaging components and once the less-expensive Pi Zero becomes obtainable. This project will no doubt be useful for many an evil genius who is sick of being splashed by the toughs at the local pool: a swarm of killer robots surrounding them would be an excellent way to keep them at bay.

Continue reading “Swarm Of Robot Boats Coming To An Ocean Near You Soon”

Cover Your Glass: A Lesson In Design Trades

Penn and Teller once had a show about “What is the best?” Engineers know that’s not a complete question. Think about a car. What makes the “best” car? It depends on why you want a car. For a race car driver, it might be that speed is the most important factor. A mom might value safety. Someone who commutes four hours a day might like a car that’s comfortable. A teenager wants something affordable.

If you think about it, though, it is even more complicated than that. For example, just about everyone wants a car that is safe. Reliability is pretty important, too. So the reality is, most people want a car that has multiple attributes. Worse still, they sometimes conflict; making one better will make some other ones worse. Mom wants a safe car, but not one that takes half a day to drive to the corner market. Nor does she want to pay a half million dollars for a safe car.

Continue reading “Cover Your Glass: A Lesson In Design Trades”

Using Photogrammetry To Design 3D Printed Parts

[Stefan] is building a fixed wing drone, and with that comes the need for special mounts and adapters for a GoPro. The usual way of creating an adapter is pulling out a ruler, caliper, measuring everything, making a 3D model, and sending it off to a 3D printer. Instead of doing things the usual way, [Stefan] is using photogrammetric 3D reconstruction to build a camera adapter that fits perfectly in his plane and holds a camera securely.

ScanPhotogrammetry requires taking a few dozen pictures with a camera, using software to turn these 2D images into a 3D model, and building the new part from that model. The software [Stefan] is using is Pix4D, a piece of software that is coincidentally used to create large-scale 3D models from drone footage.

With the 2D images turned into a 3D model, [Stefan] imported the .obj file into MeshLab where the model could be cropped, smoothed, and the file size reduced. From there, creating the adapter was as simple as a little bit of OpenSCAD and sending the adapter model off to a 3D printer.

Just last week we saw photogrammetry used in another 3D object scanner. The results from both of these projects show real promise for modeling, especially with objects that are difficult to measure by hand.

Simple Headphone Bracket Shows Off Carbon Fiber Basics

The carbon fiber look is a pretty hot design element for things these days. Even things that have no need for the strength and flexibility of carbon fiber, from phone cases to motorcycle fenders, are sporting that beautiful glossy black texture. Some of it only looks like the real stuff, though, so it’s refreshing to see actual carbon fiber used in a project, like this custom headphone rack.

True, this is one of those uses of carbon fiber that doesn’t really need it – it just looks cool. But more importantly, [quada03]’s build log takes us through the whole process, from design to mold construction to laying up the fiber mats and finishing, and shows us how specialized equipment is not needed to achieve a great result. A homemade CNC router carves the two-piece mold out of Styrofoam, which is then glued up and smoothed over with automotive body filler. The epoxy-soaked carbon fiber mats are layered into the mold with careful attention paid to the orientation of the fibers, and the mold goes into one of those clothes-packing vacuum bags for 24 hours of curing. A little trimming and sanding later and the finished bracket looks pretty snazzy.

We’ve discussed the basics of carbon fiber fabrication before, but what we like about [quada03]’s build is that it shows how approachable carbon fiber builds can be. Once you hone your skills, maybe you’ll be ready to tackle a carbon fiber violin.

[via r/DIY]

KiCad Traducido Al Español

KiCad ya es una gran herramienta para la captura esquemática y el diseño de PCB, pero el software sólo funciona si es posible utilizarlo. Para los mil millones de personas que no hablan inglés, esto significa que el idioma es la barrera más grande al momento de utilizar el mejor software para desarrollo de hardware. En los últimos meses, [ElektroQuark] ha estado liderando esfuerzos de localización al español de KiCad y estos se encuentran finalmente completados. También ha iniciado un foro de KiCad en idioma español para llevar el desarrollo de software hacia uno de los idiomas más hablado del planeta.

SpanishMientras que ha habido otros intentos por localizar KiCad a otros idiomas, la mayoría de estos proyectos se encuentran incompletos. En una actualización de KiCad hace algunos meses, la localización al español ya contaba con algunas cadenas ya traducidas, pero no demasiadas. Los esfuerzos de [ElektroQuark] han acercado KiCad a millones de hablantes nativos de español, no solo algunos de sus menús.

El español es la segunda lengua más hablada del planeta, mientras que el inglés es la tercera. Teniendo en cuenta solamente este hecho, parece absurdo que casi todas las herramientas de software para capturas esquemáticas y diseño de PCB sean localizados sólo al chino o al inglés. Los esfuerzos de [ElektroQuark] por localizar KiCad al español son un gran avance para un ya impresionante software.

Lego Gaming Computer Case

Lego isn’t the first material that springs to mind when you think about building a new gaming computer case, but it does make sense when you think about it. It is easy to work with, can be easily reconfigured, and it’s pretty cheap. That’s the idea behind this very cool (no pun intended) gaming computer case build by [Mike Schropp]. Built around a Skylake i7 CPU and an NVidia 980 Ti graphics card, his build has an unusual X-shaped design that allows for plenty of airflow. The sides of the X hold the CPU cooler, the power supply, the hard drives and the graphics card cooler, so each of them has its own separate flow of cool air from the outside. That avoids the common problem of hot air from one component being passed over another, so it doesn’t get cooled properly. Critically for a gaming system, this design keeps all of the components much cooler than a more traditional case, which makes for more overclocking potential.

At the moment, [Mike] says he is struggling to keep up with the demand for people who want to buy custom versions of his build, but he is planning to release the details soon. “Initially that will probably be in the form of a DIY kit, where you can buy the plans with all the Lego bricks needed for the build, in a kit form” he told us. “Then you can add your own computer components to complete your build. At some point I’ll probably also just offer the plans themselves and allow the end-user to acquire the Lego bricks needed.”

Continue reading “Lego Gaming Computer Case”