Hands On With The Arduino FPGA

All of the tools you need to work with the FPGA Arduino — the Vidor — are now in the wild!

We reported earlier that a series of French blog posts finally showed how all the pieces fit together to program the FPGA on the Arduino MKR4000 Vidor board. Of course, I wasn’t content to just read the Google translation, I had to break out the board and try myself.

I created a very simple starter template, a tool in C to do the bitstream conversion, required, and bundled it all together in one place. Here’s how you can use my starter kit to do your own FPGA designs using the Vidor. I’m going to assume you know about FPGA basics and Verilog. If you don’t, why not check out the FPGA boot camps first?

The first thing you’ll want to do is grab my GitHub repo. You’ll also need the Arduino IDE (a recent copy) and Intel’s Quartus software. Inside, you’ll find three directories, two of which contain slightly modified copies of original Arduino files. But before you start digging in, let’s get the high-level overview of the process.

Continue reading “Hands On With The Arduino FPGA”

Microsoft Releases Crown Jewels — From 1982!

If you look back 30 or so years ago, it wasn’t clear what was going to happen with personal computers. One thing most people would have bet on, though, was that CP/M — the operating system from Digital Research — would keep growing and power whatever new machines were available. Except it didn’t. MS-DOS took over the word and led — eventually — to the huge number of Windows computers we know today. Microsoft has released the source code to MS-DOS 1.25 and 2.0 on GitHub.

Microsoft — then another fledgling computer company — had written some BASIC interpreters and wanted in on the operating system space. They paid the princely sum of $75,000 to Seattle Computer Products for something called QDOS written by [Tim Paterson]. Rebranded as MS-DOS, the first version appeared in late 1981 and version 1.25 was out about a year later.

While you might not think having MS-DOS source code is a big deal, there’s still a lot of life left in DOS and it is also interesting from an educational and historical perspective. If you don’t want to read x86 assembly language, there’s also the BASIC source for the samples (paradoxically, in the bin subdirectory) along with compiled COM files for old friends like EDLIN and DEBUG.

Continue reading “Microsoft Releases Crown Jewels — From 1982!”

Microsoft Confirms GitHub Acquisition

After recent talks, Microsoft has now officially confirmed that it will be merging GitHub to master. The acquisition will cost $7.5 billion, and has received mixed reactions so far. A staple of the open source community, GitHub is well known to Hackaday readers, and has played a key role in developing an incredible amount of the software we use on a daily basis.

Microsoft has embarked on a community crusade of late, seemingly trying to win some respect from developers and makers. Under the encouragement of Satya Nadella, we’ve had Visual Studio Code, Typescript, the Ubuntu-on-Windows saga, and many more. It’s hard to tell whether these endeavours have succeeded in winning the hearts of the community or not, but those who distrust Microsoft may be looking to make a move away from GitHub. In fact, since murmurs started about the possibility of the acquisition, GitLab, one of GitHub’s major competitors, has reported 10x the number of normal repositories moving to GitLab.

How does GitHub make money? Mainly through paid private repositories plans, and GitHub Enterprise for businesses. This provides GitHub with enough cash to allow free public repositories for the community. It will be interesting to see what changes in business and culture are made (if any) by Microsoft’s Nat Friedman (founder of Ximian) who will be taking the role of GitHub CEO.

To keep a close eye on your GitHub activity, you can monitor your repositories with an LED matrix.

Alexa Controls This Projector Thanks To ESP8266

[jfessard] doesn’t have extra-sensory perception, but does have an ESP8266. The little board seems to pop up in every hack these days. Inspired by not wanting to get up from the bean-bag chair or leave the electronics-housing cabinet wide open to use an HDMI switcher, [jfessard] hacked together an Alexa-compatible projector control via the ESP8266!

The core functionality here is the ability to turn the projector on and off, and to switch the HDMI source. [jfessard] connected the Panasonic PT-AE3000U projector to a Monoprice HDX-401TA 4×1 HDMI switcher. Tucked away in the cabinet below the projector, it is controlled using a IR LED transmitter breakout board sitting at the end of a fairly long set of jumper wire. The projector control itself is through a RS232 interface.

To make this easy to use with Amazon’s Alexa, [jfessard] turned to some libraries for the ESP8266 D1 Mini. The fauxmoesp library makes it look like a WeMo device, and the IRemoteESP8266 library made remote control code cloning a snap. One really frustrating part of this hack was the MAX232-style breakout board; getting a board to work when it’s labelled backwards takes a bit of head-scratching to figure out.

If the the projector ever gets too noisy, we suggest this hack that shushes the machine. For the moment, we’d rather take another look at this laser projector that mimics a cool ‘laser sky’ effect.

Meltdown Code Proves Concept

If you’ve read about Meltdown, you might have thought, “how likely is that to actually happen?” You can more easily judge for yourself by looking at the code available on GitHub. The Linux software is just proof of concept, but it both shows what could happen and — in a way — illustrates some of the difficulties in making this work. There are also two videos in the repository that show spying on password input and dumping physical memory.

The interesting thing is that there are a lot of things that will stop the demos from working. For example a slow CPU, a CPU without out-of-order execution, or an imprecise high-resolution timer. This is apparently especially problematic in virtual machines.

Continue reading “Meltdown Code Proves Concept”

Turn Command Lines Into Web Apps

Even if you like using a graphical user interface, you can probably agree that writing a graphical program is usually harder than writing an old-fashioned text-based program. Putting that GUI into an online format means even more to think about. [Adam Kewley] has the answer to that problem: Jobson. As you can see in the video below, the program is a web server that runs command line programs as jobs.

Simply write a YAML file to describe the program’s inputs and outputs and Jobson will create input fields for arguments and display the output in a web page. Any files the program creates are available to download. Basically any command line program can be quickly and easily pulled into one web interface to rule them.

If a program takes a long time to run, Jobson will let you switch away and then later resume looking at the output. You can also abort a job or look at the arguments it received. Jobson can also authenticate users with several different methods to prevent just anyone from executing jobs.

If you really want to write a graphical program, try QTCreator. Or, you can get a shell in a web browser if you want to go that route. But this is the smoothest method we’ve seen for gathering command line programs into one place for monitoring and control. Neat!

Continue reading “Turn Command Lines Into Web Apps”

Ad Hoc MIDI To Music Box Project Shows Power Of Hacker Community

Fair warning: when you post a video of you doing an incredibly tedious process like manually punching holes in a paper tape to transfer a MIDI file to a music box, don’t be surprised when a bunch of hackers automates the process in less than a week.

The back story on this should be familiar to even casual Hackaday readers. [Martin] from the Swedish group “Wintergatan” is a prolific maker of unusual musical instruments. You’ll no doubt recall his magnificent marble music machine, a second version of which is currently in the works. But he’s also got a thing for music boxes that are programmed by paper tape, and recently posted a video showing his time-consuming and totally manual process for punching the holes in the tape. Since his source material was already in a MIDI file, a bunch of his fans independently came up with ways to automate the process.

The video below shows what he learned from his fans about automating his programming, but also what he learned about the community we all work and play in. Without specifically asking for help, random strangers brought together by common interests identified the problems, came up with solutions, sorted through the good and the bad ideas, and made the work publically available. Not bad for less than a week’s work.

Continue reading “Ad Hoc MIDI To Music Box Project Shows Power Of Hacker Community”