Sine Waves, Squares Waves, and the Occasional FFT

I became aware of harmonics and the sound of different shaped waveforms early in my electronics career (mid 1970’s) as I was an avid fan of [Emerson Lake and Palmer], [Pink Floyd], [Yes], and the list goes on. I knew every note of [Karn Evil 9] and could hear the sweeping filters and the fundamental wave shapes underneath it.

bil1

I remember coming to the understanding that a square wave, which is a collection of fundamental and (odd) harmonics frequencies, could then be used to give an indication of frequency response. If the high frequencies were missing the sharp edges of the square wave would round off. The opposite was then true, if the low frequencies were missing the square wave couldn’t “hold” its value and the top plateau would start to sag.

[Read more...]

Unreal Line-up and Live Stream of Hackaday’s 10th

10th-Anniversary-Lineup-scaledYeah, check out that line-up poster. We’re so lucky to have an unreal collection of talented people pitching in to make this event happen. This Saturday is going to be Epic! Good thing since we’re celebrating 10-years-of-Hackaday!

What’s that you say? You don’t live in Los Angeles and are going to miss out? We’ll be live-streaming the event on:

Hackervision #1

Hackervision #2

You should put this feed on in the background while you hone your solding skills on that project you’ve been meaning to finish.

We will also be recording and posting the talks so that you may watch at your leisure.

Here’s a quick run-through of all that we have going on:

The day will start with three workshops, the first is a tiny-robot build based on [shlonkin's] design. The second is a lockpicking workshop hosted by [datagram] and [Jon King]. And the third is a Lithium charger workshop and build hosted by [Todd Black].

The afternoon brings the mini-conference with major talks by [Ryan '1o57' Clarke], [Steve Collins], [Quinn Dunki], [Jon McPhalen], and [ThunderSqueak]. There will be Lighting Talks by [Tod Kurt] and [Arko], as well as special appearances by Hackaday head editors from the past decade.

In the evening we’ll move into party mode. Music is presented by [The Gentlemen Callers] with interactives by [Deezmaker] and [Two Bit Circus].

Of course there will be a handful of the Hackaday writers in town for the event as well. [Adam Fabio] will be leading the robot workshop, [James Hobson] will be leading a build-off throughout the day, and [Mike Szczys], [Brian Benchoff], and [Bil Herd] will be on hand to do whatever is needed.

If you are interested in attending there may still be conference tickets available. The others are sold out but we’ve asked anyone who is unable to attend to cancel their ticket so they may become available as that happens. Yep, fans of Hackaday are courteous people. Yet another reason to celebrate.

Developed on Hackaday: Sometimes, All You Need Is a Few Flags

Mooltipass

The development of the Hackaday community offline password keeper has been going on for a little less than a year now. Since July our beta testers have been hard at work giving us constant suggestions about features they’d like to see implemented and improvements the development team could make. This led up to more than 1100 GitHub commits and ten thousand lines of code. As you can guess, our little 8bit microcontroller’s flash memory was starting to get filled pretty quickly.

One of our contributors, [Miguel], recently discovered one compilation and one linker flags that made us save around 3KB of Flash storage on our 26KB firmware with little added processing overhead. Hold on to your hats, this write-up is going to get technical…

Many coders from all around the globe work at the same time on the Mooltipass firmware. Depending on the functionality they want to implement, a dedicated folder is assigned for them to work in. Logically, the code they produce is split into many C functions depending on the required task. This adds up to many function calls that the GCC compiler usually makes using the CALL assembler instruction.

This particular 8-bit instruction uses a 22-bit long value containing the absolute address of the function to call. Hence, a total of 4 flash bytes are used per function call (without argument passing). However, the AVR instruction set also contains another way to call functions by using relative addressing. This instruction is RCALL and uses an 11-bit long value containing the offset between the current program counter and the function to call. This reduces a function call to 2 bytes and takes one less clock cycle. The -mrelax flag therefore made us save 1KB by having the linker switch CALL with RCALL instructions whenever possible.

Finally, the -mcall-prologues compiler flag freed 2KB of Flash storage. It creates master prologue/epilogue routines that are called at the start and end of program routines. To put things simply, it prepares the AVR stack and registers in a same manner before any function is executed. This will therefore waste a little execution time while saving a lot of code space.

More space saving techniques can be found by clicking this link. Want to stay tuned of the Mooltipass launch date? Subscribe to our official Google Group!

Minicut2d and Omniwheel Robot

minicut1

You’d think we would be done with the World Maker Faire posts by now, but no! We keep looking at our memory cards and finding more awesome projects to write about.

[Renaud Iltis] flew over from France to show off MiniCut2D, his CNC hot wire foam cutter. MiniCut2D uses X, Y, and Z stMINICUT2epper motors much like a 3D printer. Rather than print though, it pulls a heated nichrome wire through styrofoam. Foam cutting is great for crafts, but it really takes off when used for R/C aircraft. [Renaud] was cutting some models out of Depron foam in his booth. [Renaud] has set up FrenchFoam.com as a central location for users to upload and share designs in DXF format.

One of the neater features of MiniCut2D is that it can be loaded with a stack of foam boards to make several cuts at once. Not only is this a time saver when cutting repeating designs like wing ribs, but it also ensures the cut pieces are identical. Hey, even CNCs make mistakes once in a while.

 Omniwheel Robot

vic

In the MakerShed booth, we found [Victor Aprea] showing off Wicked Device’s new product, the Omniwheel Robot. Omniwheel utilizes a holonomic drive with omnidirectional wheels. The kit comes with a Nanode Zero, Wicked Devices’ own Arduino Uno clone, a motor control board, 3 motors, 3 omnidirectional wheels, and a whole list of hardware. The only thing needed to complete the kit is a radio control unit and receiver. Omniwheel may be simple, but we found driving it around to be mesmerizing – and a bit challenging.It’s a good thing [Victor] brought that plexiglass cover, as we bumped it a few times.

We’d love to see one of these little bots with a couple of sensors and autonomous control. If you build one, make sure to post it to Hackaday.io!

Reverse Engineering a Wireless Studio Lighting Remote

Strobe Remote

If you want to take a photograph with a professional look, proper lighting is going to be critical. [Richard] has been using a commercial lighting solution in his studio. His Lencarta UltraPro 300 studio strobes provide adequate lighting and also have the ability to have various settings adjusted remotely. A single remote can control different lights setting each to its own parameters. [Richard] likes to automate as much as possible in his studio, so he thought that maybe he would be able to reverse engineer the remote control so he can more easily control his lighting.

[Richard] started by opening up the remote and taking a look at the radio circuitry. He discovered the circuit uses a nRF24L01+ chip. He had previously picked up a couple of these on eBay, so his first thought was to just promiscuously snoop on the communications over the air. Unfortunately the chips can only listen in on up to six addresses at a time, and with a 40-bit address, this approach may have taken a while.

Not one to give up easily, [Richard] chose a new method of attack. First, he knew that the radio chip communicates to a master microcontroller via SPI. Second, he knew that the radio chip had no built-in memory. Therefore, the microcontroller must save the address in its own memory and then send it to the radio chip via the SPI bus. [Richard] figured if he could snoop on the SPI bus, he could find the address of the remote. With that information, he would be able to build another radio circuit to listen in over the air.

Using an Open Logic Sniffer, [Richard] was able to capture some of the SPI communications. Then, using the datasheet as a reference, he was able to isolate the communications that stored information int the radio chip’s address register. This same technique was used to decipher the radio channel. There was a bit more trial and error involved, as [Richard] later discovered that there were a few other important registers. He also discovered that the remote changed the address when actually transmitting data, so he had to update his receiver code to reflect this.

The receiver was built using another nRF24L01+ chip and an Arduino. Once the address and other registers were configured properly, [Richard's] custom radio was able to pick up the radio commands being sent from the lighting remote. All [Richard] had to do at this point was press each button and record the communications data which resulted. The Arduino code for the receiver is available on the project page.

[Richard] took it an extra step and wrote his own library to talk to the flashes. He has made his library available on github for anyone who is interested.

The Chibi-Mikuvan, or a Power Wheels with a Ford Fusion Battery

chibi

At all the big Maker Faires, the Power Racing Series makes an appearance, turning old Power Wheels into race cars that whip around the track at dozens of miles an hour. [Charles] is somewhat famous in the scene – there’s even a clause in the official rules named after him – so of course anything he brings to race day will be amazing. It was. It used a battery pack from a Ford Fusion plugin hybrid, a custom body, and a water cooling unit from a dead Mac G5.

A few months ago, we saw [Charles] tear into the battery pack he picked up for $300. This is the kind of equipment that will kill you before you know you’ve made a mistake, but [Charles] was able to take the pack apart and make a few battery packs – 28.8v and 16Ah – enough to get him around the track a few times.

The chassis for the Chibi-Mikuvan was built from steel, and the bodywork was built from machined pink foam, fiberglassed, and finished using a few tips [Charles] gleaned from [Burt Rutan]‘s book, Moldless Composite Sandwich Aircraft Construction. The motor? That’s an enormous brushless motor meant for a 1/5th scale RC boat. The transmission is from an angle grinder, and the electronics are a work of art.

The result? A nearly perfect Power Wheels racer that has a curb weight of 110 pounds and tops out at 25 mph. It handles well, too: in the videos below, it overtakes the entire field of hacky racers in the Power Wheels Racing competition at Maker Faire NYC, and afterwards still had enough juice to tear around the faire.

[Read more...]

Pain Machine Brings Pleasure, Too

pain machinePain is a good thing. It tell us to pull our hand away from the stove and to stay off a turned ankle. But we all have different experiences of pain, and chronic pain degrades our quality of life. A person’s reports of pain will vary from one day to the next based on many factors, so the 1-10 scale isn’t universally effective in determining a person’s pain level. [Scott]‘s entry into The Hackaday Prize is based on the classic cold pressor testing device, which measures changes in heart rate and blood pressure in a patient while their hand is immersed in ice water for one minute.

[Scott] has tentatively dubbed his device The Pain Machine, but it does more than the typical cold pressor apparatus; it also delivers simulated pain relief in the form of warm water when the valves are reversed. In addition, the subject under testing can push a button when they’ve had enough. While his original plan used external sources of hot and cold water, [Scott] pulled a couple of Peltier coolers from some wine chillers for a more contained design.

The Pain Machine uses an Arduino ATMega 2560 to control gravity flow solenoids, collect temperature data, and send the data cloudward. A couple of 110V pumps circulate the water. [Scott] will open up the code once he has finished commenting it and fleshed it out with use cases. For now, you can check out his two-minute entry video after the break.


SpaceWrencherThis project is an official entry to The Hackaday Prize that sadly didn’t make the quarterfinal selection. It’s still a great project, and worthy of a Hackaday post on its own.

 

[Read more...]

Follow

Get every new post delivered to your Inbox.

Join 94,561 other followers