One of the first frustrating situations a beginning microcontroller programmer will come across is the issue of debouncing switches. Microcontrollers are faster than switches, and the switch has yet to be built that can change state in zero time like they can on paper. This hurdle is easily overcome, but soon we are all faced with another issue: filtering noise from an analog signal. Luckily [Paul Martinsen] has put together a primer of three different ways to use an Arduino to filter signals.
The first (and fastest, simplest, etc.) way to filter an analog signal is to sample a bunch of times and then average all of the samples together. This will eliminate most outliers and chatter without losing much of the information. From there, the tutorial moves on to programming a running average to help increase the sample time (but consume much more memory). Finally, [Paul] takes a look at exponential filters, which are recursive, use less memory, and can be tweaked to respond to changes in different ways.
[Paul] discusses all of the perks and downsides of each method and provides examples for each as well. It’s worth checking out, whether you’re a seasoned veteran who might glean some nuance or you’re a beginner who hasn’t even encountered this problem yet. And if you’re still working on debouncing a digital input, we have you covered there, too.
As anyone who is a veteran of many RF projects will tell you, long component leads can be your undoing. Extra stray capacitances, inductances, and couplings can change the properties of your design to the point at which it becomes unfit for purpose, and something of a black art has evolved in the skill of reducing these effects.
RF Biscuit is [Georg Ottinger]’s attempt to simplify some of the challenges facing the RF hacker. It’s a small PCB with a set of footprints that can be used to make a wide range of surface-mount filters, attenuators, dummy loads, and other RF networks with a minimum of stray effects. Provision has been made for a screening can, and the board uses edge-launched SMA connectors. So far he’s demonstrated it with a bandpass filter and a dummy load, but he suggests it should also be suitable for amplifiers using RF gain blocks.
Best of all, the board is open source hardware, and as well as his project blog he’s made the KiCad files available on GitHub for everyone.
It’s a tough challenge, to produce a universal board for multiple projects with very demanding layout requirements such as those you’d find in the RF field. We’re anxious to see whether the results back up the promise, and whether the idea catches on.
This appears to be the first RF network prototyping board we’ve featured here at Hackaday. We’ve featured crystal filters before, and dummy loads though, but nothing that brings them all together. What would you build on your RF Biscuit?
Measuring the body’s electrical signals is a neat trick… if you can get your equipment dialed in enough to establish dependable measurements. The technique is called Surface ElectroMyography (SEMG) though you’ll hear many call this ECG. They’re essentially the same technology; the Electro CardioGraph instruments monitor the activity of the heart while SEMG Instruments monitor electrical signals used to control other muscles. Both types of hardware amount to an instrumentation type amplifier and some form of I/O or display.
This topic has been in my back pocket for many months now. Back in May we Hackaday’ites descended on New York City for the Disrupt NY Hackathon event. We arrived a day or so early so that we might better peruse the Korean BBQ joints and check out the other electronics that NY has to offer. On Saturday we gathered around, each shouting out the size of his or her t-shirt preference as we covered up our black Hackaday logo tees with maroon maroon ones (sporting the Hackaday logo of course) for a 24-hour craze of hardware hacking.
There were two individuals at our tables who were both hacking away on hardware to measure the electrical field produced by the body’s muscles in some form or another. The electrical signals measured from the skin are small, and need careful consideration to measure the signal despite the noise. This is a fun experiment that lets you work with both Instrumentation Amplifiers and OpAmps to achieve a usable signal from the movement of your body.
Continue reading “Amplifying the Body’s Own Electricity”
USB has become pretty “universal” nowadays, handling everything from high-speed data transfer to charging phones. There are even USB-powered lava lamps. This ubiquity doesn’t come without some costs, though. There have been many attacks on smartphones and computers which exploit the fact that USB is found pretty much everywhere, and if you want to avoid these attacks you can either give up using USB or do what [Jason] did and block the data lines on the USB port.
USB typically uses four wires: two for power and two for data. If you simply disconnect the data lines, though, the peripheral can’t negotiate with the host for more power and will limp along at 0.5 watts. However, [Jason] discovered that this negotiation takes place at a much lower data rate than normal data transfer, and was able to put a type of filter in between the host and the peripheral. The filter allows the low-frequency data transfer pass through but when a high-frequency data transfer occurs the filter blocks the communication.
[Jason] now has a device that can allow his peripherals to charge at the increased rate without having to worry about untrusted USB ports (at an airport or coffee shop, for example). This simple device could stop things like BadUSB from doing their dirty work, although whether or not it could stop something this nasty is still up in the air.
Network Analyzers are frequently used for measuring filters, making them extremely valuable for building radios and general mucking about with RF. They are, however, extremely expensive. You can, however, build one in an Altoids tin with an Arduino Nano, a small screen, and an AD9850 frequency synthesis module picked up on eBay.
The basic idea behind a network analyzer is to feed a frequency into a device, and measure the amplitude coming out of the device, and plot this relationship over a frequency. [Bill Meara] has been a human network analyzer before, changing frequencies and plotting the output of devices under test by hand. [DuWayne] (KV4QB) build a device to automate the entire process.
The block diagram is easy enough – an AD9850 sends a signal to the device, and this is measured by the Arduino with a small amplifier. The signal is measured again when it comes back from the device under test, and all this is plotted on a small display. Simple, and [DuWayne] is getting some very good readings with a lowpass filter and crystal filter made on a small solderless breadboard.
The Chaos Computer Club, Europe’s largest association of hackers and hackerspaces, has been blocked by several UK ISPs as part of a government filter to block adult content.
Since July, 2013, large UK ISPs have been tasked with implementing what has been dubbed the Great Firewall of Britain, a filter that blocks adult content, content related to alcohol, drugs, and smoking, and opinions deemed ‘extremist’ by the government. This is an opt-out filter; while it does filter out content deemed ‘unacceptable’, Internet subscribers are able to opt out of the filter by contacting their ISP.
Originally envisioned as a porn filter, and recently updated with list of banned sexual acts including spanking, aggressive whipping, role-playing as non-adults, and humiliation, the British Internet filter has seen more esoteric content blocked from British shores. Objectionable material such as, “anorexia and eating disorder websites,” “web forums,” “web blocking circumvention tools”, and the oddly categorized, “esoteric material” are also included in the filter.
A site built by the Open Rights Group is currently tracking which ISPs blocking which domains. http://ccc.de is currently blocked by ISPs Three and Vodafone. Interestingly, this site – Hackaday – is blocked by the ‘Moderate’ British Telecom filter. The ‘Light’ BT filter – and all other British ISPs – still somehow let Hackaday through, despite posts about building shotguns cropping up from time to time.
UPDATE: Upon reflection, it comes to my attention that Brits have a choice of ISP.
You know what’s cool? Using your engineering knowledge to solve problems that you have while building something. This is exactly what [Reinis] did when his 3D printer’s endstop wasn’t working.
Many of us automatically go to a microcontroller when we run into a problem with a sensor, but often a simple analog filter will do the trick. The endstop in [Reinis’s] RepRap style 3D printer was giving off an unusual amount of noise when closed. When he hooked the endstop up to his oscilloscope, he was shocked to see how much noise there really was. In comes the low-pass filter. Unhappy with the response time of his low-pass filter, [Reinis] solved the problem using a pullup resistor. Two resistors and a capacitor was all that he needed to fix the problem. A great solution!
How have you used analog filters in your projects? Send us a tip and let us know!