Filtering Noisy Data with an Arduino

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.

Happy Pi Day. 3.14159265359……

Unless you were alive in 1592, this is the closest to the perfect “Pi day” you’ll ever get.  3/14/15.  And if you want to take a moment to pause at 9:26:53 (am or pm?  Time zone? Country?) we’ll be right there with you. Well, sorta of.

Now, before you laugh, and think Pi is just a number, think again.  It’s almost magical in nature.  It’s effects on our daily lives is found everywhere.  From biology to astrophysics.  In the perspective of history, it can be used as a milestone to mark many different culture’s advancement of math and science.  In short, Pi is a keystone of the modern world.  With out it, we’d never would have gone to the moon. We might sill be on horse back.  And forget electronics.  That fun stuff never would have happened.

(As a side note, on this day, 3/14,  just happens to be Albert Einstein birthday.  Happy birthday!)

We hope you have an awesome Pi day.  We would love to see you in the comments too.  For example, we’d love to hear about and see posts of algorithms that can compute Pi.  How far can you compute Pi on a Raspberry Pi?  Or even child hood stories of your first encounter with that magical number.  Post up, and let us know your thoughts.

We’ll leave you with this cute video after the break, It’s an 8-year-old reciting 200 digits of Pi .  But if you need more digits….There is 1 million digits of pi.

Continue reading “Happy Pi Day. 3.14159265359……”

Nixie Sudoku

[John Sarik] asked himself why a project should only have a handful of Nixie tubes? Without a good answer to his query he went ahead and built this Sudoku game using 81 Nixie tubes. There’s not much of a description for his work but here’s how we think things go: The two knobs manipulate a cursor, one for rows and the other for columns, while the keypad is used to input your chosen number. The system is Arduino based and [John’s] linked to his code, schematic, and board layout files on Dropbox. He’s even written a recursive solver which can be seen in the video after the break. Would it be inappropriate to bring this to work and whip it out during some down time?

Continue reading “Nixie Sudoku”