Slick Web Oscilloscope Is Ready In A Flash (Literally)

A bench oscilloscope is one of the most invaluable tools in the hardware hacker’s arsenal, but even the slimmest digital models are a bit large to be part of your everyday electronic carry. Sure you could throw one of those cheap pocket scopes in your bag, but what if there was an even easier way to take a peek at a few signals while you’re on the go?

For those who roam, the Arduino-web-oscilloscope project created by [David Buezas] is worth a close look. Using the Web Serial API built into recent versions of Google’s Chrome browser, this project allows you to pop open a software oscilloscope without installing anything locally. Whether it’s a public computer or that cheap Chromebook you keep around for emergencies, a valuable tool is just a few clicks away.

Flashing the MCU from the web interface.

Of course, there has to be some hardware involved. Despite what you might think given the name of the project, the code currently only supports the Logic Green LGT8F328P microcontroller. This cheap ATmega328P clone not only runs at 32 Mhz but according to [David], many operations can be done in fewer clock cycles than on the original 328P. In short it’s fast, and fast is good if you want more samples.

One of the best parts about this project is that a function to flash the firmware to the LGT8F328P is built right in the web interface. With the oscilloscope running in the browser, you just need to plug in a blank board, click the button to flash it, and start taking measurements. You could outfit a whole classroom or hackerspace with basic oscilloscopes in minutes, with a per-seat cost of just a few bucks.

Now as you might expect, there are some pretty hard limits on what you can realistically measure with this setup. For one thing, the board can’t handle anything higher than 5 volts. Even the cheapest oscilloscope kit is still going to be an upgrade, but the fact you can spin this up almost anywhere for the cost of a cheap MCU board makes it hard to complain about the results.

[Thanks to Bill for the tip.]

3D Printable Nameplates From Your Web Browser

It’s an unwritten rule that all proper pieces of shop equipment need a nameplate. Otherwise, how are you going to know what name to use when you curse it under your breath? In the old days these would have been made out of something fancy such as brass, but for the modern hacker that doesn’t stand on tradition, you can now easily outfit all your gear with custom 3D printed nameplates using this online tool.

Granted, it wouldn’t be very difficult to throw one of these together in whatever CAD package you happen to have access to. But with the tool [Tobias Weber] has developed, you don’t have to. Simply pick the font, the shape of the border, and fill in a few variables to fine tune things such as padding and base thickness.

Finally, enter your text and marvel at the real-time 3D preview that’s rendered thanks to the magic of modern web technologies. In seconds, you’ll have an STL file that’s ready for the warm liquid goo phase.

The huge collection of fonts are a particularly nice touch, ranging from delicate scripts to military style stencils. Depending on your CAD software, getting arbitrary fonts imported and extruded into a three dimensional shape can be tricky for new players. If we do have one complaint though, it’s that there doesn’t seem to be a clear indicator of how big the nameplate is going to be when exported. First time around, it spit out an STL that would have been 300 mm long if we hadn’t scaled it down in the slicer.

This project is very reminiscent of another web-based tool we featured recently. That one allowed you to make 3D printed QR codes which would whatever entomb in plastic whatever data your cold hacker heart desired.

Continue reading “3D Printable Nameplates From Your Web Browser”

Generate 3D Printable QR Codes With This Web Tool

Since most people are carrying a camera-equipped computer in their pockets these days, QR codes can be a great way to easily share short snippets of information. You can put one on your business card so people can quickly access your contact information, or on your living room wall with your network’s SSID and encryption key. The design of QR codes also make them well suited to 3D printing, and thanks to a new web-based tool, you can generate your own custom STL in seconds.

Created by [Felix Stein], the website provides an easy to use interface for the many options possible with QR codes. Obviously you have full control over the actual content of the code, be it a simple URL or a something more specific like a pre-formatted SMS message. But you can also tweak physical parameters like size and thickness.

Once you’re happy with the 3D preview, you can have the website generate an STL for either single or multi-extrusion printers. For those of us who are puttering along with single extruder machines, you’ll need to swap the filament color at the appropriate layer manually. With so many variables involved, you’ll also need figure out which layer the swap should happen on your own.

Incidentally, this is an excellent example of where STL leaves something to be desired. When using a format like 3MF, color and material information could be baked right into the model. Once opened in a sufficiently modern slicer, all the tricky bits would automatically sorted out. Or at least, that’s what Prusa Research is hoping for.

Bringing FPGA Development To The Masses

The Field Programmable Gate Array (FPGA) is one of the most exciting tools in the modern hacker’s arsenal. If you can master the FPGA, you can create hardware devices that not only morph and change based on your current needs, but can power through repetitive tasks at phenomenal rates. The only problem is, working with FPGAs can be a bit intimidating for newbies. One could argue that the technology is waiting on its “Arduino” moment; the introduction of a cheap development board coupled with easy to use software that brings FPGA hacking into the mainstream.

If everything goes according to plan, the wait might soon be over. [Ryan Jacobs] believes his project WebFPGA is the easiest and fastest way to get your hands dirty with this incredible technology. Outwardly the hardware could pass for an Arduino Nano clone, with a bunch of GPIO pins and a couple of LEDs on a small breadboard-friendly PCB. Certainly a no-frills presentation. It’s the software side is where things get interesting: all you need to develop for this FPGA is a modern web browser.

Currently Chrome, Opera, and Edge are supported, even if they’re running on relatively low-end computers. [Ryan] says this makes it much easier and cheaper to roll out FPGA classes in schools, as students can do everything with their existing Chromebooks. As the video after the break shows, you can even get away with using a sufficiently powerful smartphone to do some FPGA hacking on the go.

So what’s the trick? Essentially the heavy-lifting is done remotely: all of the synthesis is performed in their cloud backend, with the final bitstream delivered to the user for installation through WebUSB. If you’re more comfortable on the command line, [Ryan] says they’re currently working on tools which will allow you to perform all the necessary interactions with their cloud service without the browser.

The more critical Hackaday reader will likely be concerned about lock-in. What happens if you buy one of these development boards without a license for the service, or worse, what happens if WebFPGA goes belly-up down the road? To that end, [Ryan] makes it clear that their hardware is completely compatible with existing offline FPGA development tools such as the open source IceStorm.

We’ve seen considerable interest in low-cost FPGA development platforms, with readers perhaps recalling the excitement surrounding the fire sale of the Pano Logic thin clients. Despite efforts to make developing for these systems even easier, it’s hard to imagine the bar getting much lower than what WebFPGA is shooting for. Their Kickstarter campaign is close to crossing the finish line, and we’re very interested to see where the product goes from here.

Continue reading “Bringing FPGA Development To The Masses”

Shoot Darts At The Shins Of Total Strangers

[Michael Brumlow] found us and sent us a link. Within a few seconds, we were driving a webcam-enabled Nerf dart tank through his office and trying not to hit walls or get stepped on by his co-workers. Unfortunately, it was out of darts at the time, but you can find them all over the floor if you scout around.

screenshot_remote_botAll of the code details, including the link where you can test drive it yourself, are up on [Michael]’s GitHub. The brains are an Intel Edison board, and the brawns are supplied by an Arduino motor controller shield and (for the latest version) a chassis bought from China.

It runs fairly smoothly, considering the long round trip from [Michael]’s office in Texas, through wherever Amazon keeps their Web Services, over to us in Germany and back. Once we got used to the slight lag, and started using the keyboard’s arrow keys for control, we were driving around like a pro.

It’s got a few glitches still, like the camera periodically overheating and running out of WiFi distance. [Michael] said he’d try to keep it charged up and running while you give it a shot. The controls are multiplexed in the cloud, so your chance of steering it is as good as anyone else’s. It’ll be interesting to see what happens when thousands of Hackaday readers try to control it at once!

It takes a certain kind of bravery to put your telepresence robot up on the open Internets. So kudos to you, [Michael], and we hope that you manage to get some work done this week, even though you will have all of Hackaday driving into your cubicle walls.

Learning Assembly With A Web Based Assembler

AssemblyOnlineVery few people know assembly. [Luto] seeks to make learning assembly just a little bit easier with his “fully functional web-based assembler development environment, including a real assembler, emulator and debugger.”

These days, you can be a microcontroller expert without knowing a thing about assembly. While you don’t NEED to know assembly, it actually can help you understand quite a bit about embedded programming and how your C code actually works. Writing a small part of your code in assembly can reduce code size and speed things up quite a bit. It also can result in some very cool projects, such as using Java to program microcontrollers.

With high quality example code, it is very easy to get started learning assembly. The emulator consists of a microcontroller with 32 registers, hooked up to three LEDs, two buttons, and a potentiometer. This is way better than painfully learning assembly on real hardware. Be sure to check out the online demo! Being able to step through each line of code and clearly see the result help make assembly easier to use and understand. It would be great to see this kind of tool widely adopted in engineering programs.

Have you used assembly in any of your projects? Let us know how it went and why you choose to use assembly

Web Based Automation Courtesy Of Raspberry Pi


This project is a great example of the Raspberry Pi’s ability to eclipse Arduino when it comes to interaction. [Fall Deaf] mentions that he used to use an Arduino board with an Ethernet shield to add extensible interactivity to his project. But this one, which is a home automation lamp project, uses a Raspberry Pi instead. The concepts end up being very similar. But the cost of the hardware is less and the coding work is arguably orders of magnitude easier.

Don’t get us wrong, the hardware is fundamentally different. When you move from Arduino to RPi you lose some I/O pins and the low level control of them isn’t quite as straight-forward. But you also don’t have to program the thing in C. The Linux kernel handles the low level control which means you can write your scripts using Python. Because Python is an interpreted language the testing and debugging is much faster — no need to flash new code, just run the script again.

This project used the RPi GPIO to drive a strip of LEDs which use the WS2801 protocol. The board includes a NIC which makes it a snap to use as a web server. The smart phone controls seen above are served up from the Pi using jQuery. Right now there’s a cord running out of the lamp. But there should be plenty of room to use a screw-in outlet adapter and to hide the RPi and its PSU inside.

The board still has enough juice to drive other automation features too, like acting as a web radio server.

Continue reading “Web Based Automation Courtesy Of Raspberry Pi”