Invisibility cloaking with lenses

Invisibility Achieved With A Few Clever Focal Points

Students at the University of Rochester have developed a clever optical system which allows for limited invisibility thanks to a bit of optic sorcery physics.

Almost all invisibility technologies work by taking light and passing it around the object as if it were never there. The problem is, a lot of these methods are very expensive and not very practical — and don’t even work if you change your perspective from a head on view.

[Joseph Choi] figured out you can do the same thing with four standard achromatic lenses with two different focal lengths. The basic concept is each lens causes the light to converge to a tiny point  in between itself and the next lens — at which point it begins to diverge again, filling the following lens. This means the cloaked area is effectively doughnut shaped around the tightest focal point — if you block the center point of the lens, it won’t work. But everything around the center point of the lens? Effectively invisible. Take a look at the following setup using lasers to show the various focal points and “invisibility zones”.

Continue reading “Invisibility Achieved With A Few Clever Focal Points”

Using The Boxee Remote With A PC

When it was first announced in 2010, the Boxee remote was a stroke of genius. Not because it controlled the BoxeeBox, the set-top media center PC, mind you. It was impressive because the reverse side of the remote had a small qwerty keyboard, just the thing for searching menus loaded up with movies and TV shows and entering URLs. [Martin]’s BoxeeBox loved his BoxeeBox, but it’s an old device now, with some support for web streaming (including Netflix) gone.

Other media center devices have filled the void in [Martin]’s life, but he loved that Boxee remote. Getting it working on his XBMC-equipped PC was a top priority. This meant figuring out a way to connect the RF receiver from a BoxeeBox to a USB port. It turns out this is pretty easy, requiring only a few parts and half of a USB cable.

[Martin] traced out the connectors on the RF receiver for the BoxeeBox, and found the usual V+, V-, Power, and Ground connections found in a USB cable. The receiver operated at 3.3 Volts, so stepping down the voltage required regulator. The rest of the project was simply putting everything in a project box and stuffing it behind his PC.

Windows identifies the RF receiver as a normal keyboard, so everything went swimmingly. Since [Martin] built this small device, a few people have come up with better keyboard layouts for XBMC and the Boxee remote, allowing this device to function far into the future.

Console Controllers For JAMMA Boards

Back in the day, and by that we mean the late 80s and early 90s, arcade machines started using the JAMMA standard, a means for a single arcade board to be wired in to the controllers, video output, and other ephemera found in arcade cabinets. Since then, quite a few people have amassed a collection of these vintage arcade boards. Putting them to use requires a means of providing power, video output and controller connections. The usual way of wiring in a joystick and buttons is with a wiring harness, but [Mike] and [Jasen] are connecting Xbox 360 and PS3 controllers to their machines with the help of a Raspberry Pi Hat.

[Mike] and [Jasen] created Project Kajitsu to replace the expensive ‘Supergun’ controllers arcade game collectors usually use to play Street Fighter, X-Men, and Battletoads. They’re using the USB ports on a Raspberry Pi B+ to listen to two XBox or PS3 controllers and translate button mashing into something these old games can understand.

The guys are using a custom Linux Kernel that boots in just a few seconds, providing the bare minimum of an OS to support the controllers. The board itself is extremely simple; just a few bus transceivers, caps, resistors, and headers. They have an iPhone-quality vertical video proof of concept video (below), and although they’re still figuring out the best way to simplify the Bluetooth pairing process, they’re well on their way to supporting wireless controllers.

This board only provides controller input. If you have one of these old boards, you will need video output. That’s another project entirely, but very simple if you have an SCART monitor.

Continue reading “Console Controllers For JAMMA Boards”

Ask Hackaday: Help NASA With Their High Altitude Problem

image of hackaday logo on box at high altitude

Unless you’ve been living under a high voltage transformer, you’ve probably heard that NASA has grounded the Space Shuttle fleet. This makes getting stuff to and from the International Space Station slightly more difficult. With the growing need to get small experiments back to the surface quickly and safely, NASA is researching an idea they call Small Payload Quick Return, or SPQR (pdf warning). Basically, they toss the experiment out of the window, use drag to slow it down, and then use a High Altitude High Opening (HAHO) self guiding parafoil to steer the thing down to a predefined location on the surface.

Now, what we’re interested in is the self guided parafoil part, as it takes place in known hacker territory – around 100,000 feet. This is the altitude where most high altitude balloon experiments take place. NASA is throwing a bunch of money and brainpower to research this part of the system, but they’re having problems. Lots of problems.

Stick around after the break and see if you can help, and maybe pick up some ideas on how to steer your next High Altitude Balloon project back to the launch pad.

Continue reading “Ask Hackaday: Help NASA With Their High Altitude Problem”

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.

Continue reading “Sine Waves, Squares Waves, And The Occasional FFT”

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:

Ticket-buttonThe 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 tickets available. We have been sold out but we’ve asked anyone who is unable to attend to cancel their ticket so new tickets become available as that happens. Yep, fans of Hackaday are courteous people. Yet another reason to celebrate.

[Poster Art by Joe KimFull Resolution 15.5MB]

Developed On Hackaday: Sometimes, All You Need Is A Few Flags

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!