Quantum Searching in Your Browser

If you’ve made it through the last two posts on quantum computing (QC), then you’ve seen the Quirk simulator, a little of IBM’s web-based offering, and how entanglement and superposition can do strange and possibly wonderful things. However, the superdense encoding I showed you didn’t really feel like a real computer algorithm. This time we will look at Grover’s algorithm which is often incorrectly billed as an “unstructured database search.” In reality, it is an algorithm for making a state — that is a set of qubits — match some desired state without simply setting the state.

By analogy, consider a web service where you guess a number. Most discussions of Grover’s algorithm will tell you that the service will only tell you if the number is correct or not. If the number was from 1 to 16, using traditional computing, you’d have to query the values one at a time to see which is correct. You might get lucky and hit the first time. Or it might take 16 times. With qubits you can get the same result in only four attempts. In fact, if you try more times, you might get the wrong answer. Of course, what you really get is an answer that is probably correct, because that how QC works.

Continue reading “Quantum Searching in Your Browser”

Quantum Communications in Your Browser

Quantum computing (QC) is a big topic, and last time I was only able to walk you through the construction of a few logic gates, but you have to start somewhere. If you haven’t read that part, you probably should, because you’ll need to understand the simulator I’m using and some basic concepts.

I like to get right into practice, but with this topic, there’s no avoiding some theory. But don’t despair. We’ll have a little science fiction story you can try by the end of this installment, where we manage to pack two bits of information into a single physical qubit. Last time I mentioned that qubits have 1 and 0 states and I hinted that they were really |1> and |0> states. Why create new names for the two normal binary states? Turns out there is more to the story.

What’s the Vector, Victor?

In Dirac notation, |1> is a vector. So is |hackaday> and |123>. You can get into a lot of math with these, but I’m going to try to avoid most of that. This is also called ket notation (the last part of the word bracket) so you’ll hear people say “one ket” or “hackaday ket.” Either way, the vector can represent one or more qubits and there are several ways to represent them.

Continue reading “Quantum Communications in Your Browser”

Quantum Weirdness in Your Browser

I’ll be brutally honest. When I set out to write this post, I was going to talk about IBM’s Q Experience — the website where you can run real code on some older IBM quantum computing hardware. I am going to get to that — I promise — but that’s going to have to wait for another time. It turns out that quantum computing is mindbending and — to make matters worse — there are a lot of oversimplifications floating around that make it even harder to understand than it ought to be. Because the IBM system matches up with real hardware, it is has a lot more limitations than a simulator — think of programming a microcontroller with on debugging versus using a software emulator. You can zoom into any level of detail with the emulator but with the bare micro you can toggle a line, use a scope, and hope things don’t go too far wrong.

So before we get to the real quantum hardware, I am going to show you a simulator written by [Craig Gidney]. He wrote it and promptly got a job with Google, who took over the project. Sort of. Even if you don’t like working in a browser, [Craig’s] simulator is easy enough, you don’t need an account, and a bookmark will save your work.

It isn’t the only available simulator, but as [Craig] immodestly (but correctly) points out, his simulator is much better than IBM’s. Starting with the simulator avoids tripping on the hardware limitations. For example, IBM’s devices are not fully connected, like a CPU where only some registers can get to other registers. In addition, real devices have to deal with noise and the quantum states not lasting very long. If your algorithm is too slow, your program will collapse and invalidate your results. These aren’t issues on a simulator. You can find a list of other simulators, but I’m focusing on Quirk.

What Quantum Computing Is

As I mentioned, there is a lot of misinformation about quantum computing (QC) floating around. I think part of it revolves around the word computing. If you are old enough to remember analog computers, QC is much more like that. You build “circuits” to create results. There’s also a lot of difficult math — mostly linear algebra — that I’m going to try to avoid as much as possible. However, if you can dig into the math, it is worth your time to do so. However, just like you can design a resonant circuit without solving differential equations about inductors, I think you can do QC without some of the bigger math by just using results. We’ll see how well that holds up in practice.

Continue reading “Quantum Weirdness in Your Browser”

Rewire Your Own Brushless Motors

Hackaday likes the idea of fine-tuning existing hardware rather than buying new stuff. [fishpepper] wrote up a tutorial on rewinding brushless motors, using the Racerstar BR1103B as the example. The BR1103B comes in 8000 Kv and 10000 Kv sizes,  but [fishpepper] wanted to rewind the stock motor and make 6500 Kv and 4500 Kv varieties — or as close to it as he could get.

Kv is the ratio of the motor’s RPM to the voltage that’s required to get it there. This naturally depends on the magnet coils that it uses. The tutorial goes into theory with the difference between Wye-terminated and Star-terminated winding schemes, and how to compute the number of winds to achieve what voltage — for his project he ended up going with 12 turns, yielding 6700 Kv and 17 turns for 4700 Kv. His tutorial assumes the same gauge wire as the Racerstar.

Just as important as the theory, however, the tutorial also covers the physical process of opening up the motor and unwinding the copper wire, cleaning the glue off the stator, and then rewinding to get the required stats.

[fishpepper]’s handle has graced Hackaday before: he created what he calls the world’s lightest brushless FPV quadcopter. In addition to motors and drones, he also rocks a mean fidget spinner.

 

A BluePill for Arduino Dependence

Arduinos are helpful but some applications require more than what Arduinos can provide. However, it’s not always easy to make the switch from a developed ecosystem into the abyss that is hardware engineering. [Vadim] noticed this, which prompted him to write a guide to shepherd people on their quest for an Arduino-free environment, one BluePill at a time.

With an extended metaphor comparing Arduino use and physical addiction, [Vadim’s] writing is a joy to read. He chose to focus on the BluePill (aka the next Arduino Killer™) which is a $1.75 ARM board with the form factor of an Arduino Nano. After describing where to get the board and it’s an accompanying programmer, [Vadim] introduces PlatformIO, an alternative to the Arduino IDE. But wait! Before the Arduino die-hards leave, take note that PlatformIO can use all of the “Arduino Language,” so your digitalWrites and analogReads are safe (for now). Like any getting started guide, [Vadim] includes the obligatory blinking an LED program. And, in the end, [Vadim] sets his readers up to be comfortable in the middle ground between Arduino Land and the Wild West.

The debate for/against Arduino has been simmering for quite some time, but most agree that Arduino is a good place to start: it’s simpler and easier than jumping head first. However, at some point, many want to remove their “crippling Arduino dependency” (in the words of [Vadim]) and move on to bigger and better things. If you’re at this point, or still cling to your Uno, swing on over and give Vadim’s post a read. If you’re already in the trenches, head on over and read our posts about the BluePill and PlatformIO which are great complements for [Vadim’s].

A Detailed Guide for 3D Printing Enclosures

We’ve all have projects that are done, but not complete. They work, but they’re just a few PCBs wired together precariously on our desks. But fear not! A true maker’s blog has gifted us with a detailed step-by-step guide on how to make a project enclosure.

Having purchased an MP Select Mini 3D Printer, there was little to do but find something practical to print. What better than an enclosure for a recently finished Time/Date/Temperature display Arduino based device?

The enclosure in this guide, while quite nice, isn’t the main attraction here. The real feature is the incredibly detailed instructions for how to design, model and print an enclosure for any project. For the veterans out there, it seems simple. Sketch something on the back of a napkin and take a nap on your keyboard with OpenSCAD open. When you wake, BAM: perfect 3D model. However, for newcomers, the process can seem daunting. With incredibly specific instructions (an example is “Open up a new workspace by clicking CREATE NEW DESIGN,” notice the accurate capitalization!), it should ease the barrier of the first enclosure, turning the inexperienced into the kind-of-experienced.

If you’ve been printing enclosures since the dawn of time or plastic simply isn’t your style, boy, do we have you covered. Why not check out FR4 (aka PCB) enclosures? Or what about laser cut enclosures from eagle files? Maybe two-piece boxes are more your thing.

Australian Raspberry Pi Tutorials

There’s a new and very detailed video tutorial about the Raspberry Pi available from the Australian firm Core Electronics.  There are 30 videos and 5 chapters in total. A few of the introduction videos are short, but the detail videos range from 3 to 16 minutes.

The instructor [Michael] starts out at the very beginning — loading NOOBS on the Pi — and then moves on to Python, shell scripting, and building GUI applications with TkInter. It also covers using Particle Pi for IoT applications that integrate with IFTTT.

We do realize that most people reading Hackaday have probably used a Raspberry Pi at least once or twice. However, we also know that we all get asked to recommend material for beginners, or — in some cases — we are using material to teach classes in schools or hackerspaces.

Continue reading “Australian Raspberry Pi Tutorials”