Icestudio: An Open Source Graphical FPGA Tool

If you’ve ever worked with FPGAs, you’ve dealt with the massive IDEs provided by the vendors. Xilinx’s ISE takes about 6 gigabytes, and Altera’s Quartus clocks in at over 10 gigs. That’s a lot of downloading proprietary software just to make an LED blink.

[Jesús Arroyo]’s Icestudio is a new, graphical tool that lets you generate Verilog code from block diagrams and run it on the Lattice Semi iCEstick development board. A drag and drop interface lets you connect IOs, logic gates, dividers, and other elements. Once your block diagram is ready, a single button press downloads the code to the iCEstick.

Under the hood, Icestudio uses IceStorm, which we’ve discussed on HaD in the past, including this great talk by [Clifford], Icestorm’s lead. For the GUI, Icestudio uses nw.js, which spits out JSON based on the block diagram. This JSON is converted into a Verilog file and a PCF file. The Verilog is used to create the logic on the FPGA, and the PCF is used to define the pin configuration for the device. Clicking on selected modules reveals the generated Verilog if you want to know what’s actually going on.

It’s experimental, but this looks like a neat way to get started on FPGAs without learning a new language or downloading many gigs of toolchains. We’re hoping Icestudio continues to grow into a useful tool for education and FPGA development. A demo follows after the break.

[Thanks to Nils for the tip!]

Continue reading “Icestudio: An Open Source Graphical FPGA Tool”

Resurrecting a 1960’s VTR with Foam

Nearly fifty years back, Sony launched the DVC-2400, their first consumer grade video camera. This unit weighed in at 10 pounds, and recorded only 20 minutes of footage per reel. It left something to be desired for $1250, or nearly $9000 in today’s dollars.

[NeXT] got his hands on one of these camera kits, and began bringing it back to life. While all the pieces were included, the Video Tape Recorder (VTR), which is used to play back the footage, didn’t power up. A little poking found a dead transistor. After determining a modern replacement part, the voltages checked out. However, the drum still wasn’t spinning.

Further disassembly found that the drum’s DC motor was made on the cheap, using a foam instead of springs to apply pressure on the brushes. This foam had worn out and lost its springy qualities, so no electrical contact was made. New foam was cut out as a replacement. Once reassembled, the drum spun successfully. After some adjustment, the VTR was running at the correct speed once again.

With this working, the VTR should be ready to go. However, camera still isn’t working, so we’re awaiting a part 2.

Audio Streaming on the Cheap With an RPi Zero

The minuscule size of the Raspberry Pi Zero makes it perfect for hacks where size is a factor. For example, a small, standalone device for getting streaming audio into your speakers. The RPi Zero doesn’t have an audio output on board, so PolyVection paired it up with their PlainDAC to build a minimal audio streaming device.

Their build uses a few lines from the GPIO header to drive an I2S digital to analog converter. The DAC is a PCM5142 from Texas Instruments that provides high quality sound output, and contains a built in programmable DSP.

The hardware fits into a 3D printed case, coming in at 68 mm by 48 mm. There’s no WiFi inside, but this can be added with an external USB device for wireless streaming. The DAC used is supported by the Linux kernel, so a simple configuration is all that’s needed to pipe audio out.

Once you have a device like this assembled, you can install a server like Music Player Daemon to remotely control the device and cue up internet radio channels.

Is Via Rail On Time?

Personally, I’m a fan of trains. They’re a nice, albeit slow, way to get around the country. Canada isn’t the best candidate for rail transit, given the rather large space between coasts, but Via Rail does operate regular train service in their corridor between Windsor and Quebec City.

Unfortunately, passenger rail has to yield to commercial rail in Canada which often causes delays. After noticing that some trains have very frequent delays, it seemed like it would be useful to know the average performance of each Via train. Via does not provide this data publicly.

However, they do provide some data about arrival and departure times. Digging into the data available through any browser viewing the Via Rail site, it was possible to query for past scheduled/actual arrival data. The result is TrainStats.ca, a display of Via’s on time performance. Join me after the break as I discuss how this all works, and how to pick a winner when buying your next train ticket.

Continue reading “Is Via Rail On Time?”

Audio Effects on the Intel Edison

With the ability to run a full Linux operating system, the Intel Edison board has more than enough computing power for real-time digital audio processing. [Navin] used the Atom based module to build Effecter: a digital effects processor.

Effecter is written in C, and makes use of two libraries. The MRAA library from Intel provides an API for accessing the I/O ports on the Edison module. PortAudio is the library used for capturing and playing back audio samples.

F9GW4Y4IGQFYP23.MEDIUMTo allow for audio input and output, a sound card is needed. A cheap USB sound card takes care of this, since the Edison does not have built-in hardware for audio. The Edison itself is mounted on the Edison Arduino Breakout Board, and combined with a Grove shield from Seeed. Using the Grove system, a button, potentiometer, and LCD were added for control.

The code is available on Github, and is pretty easy to follow. PortAudio calls the audioCallback function in effecter.cc when it needs samples to play. This function takes samples from the input buffer, runs them through an effect’s function, and spits the resulting samples into the output buffer. All of the effect code can be found in the ‘effects’ folder.

You can check out a demo Effecter applying effects to a keyboard after the break. If you want to build your own, an Instructable gives all the steps.

Continue reading “Audio Effects on the Intel Edison”

Robotic Wheatley from Portal 2

It’s been over 4 years since Portal 2 launched, but Wheatley, the AI character with a British accent, remains a captivating character. [Evie Bee] built a Wheatley replica complete with sound, movement, and one glowing eye.

The body of Wheatley is made out of blue insulation foam, also called XPS foam, laminated together with UHU Polyurethane glue. This formed a sphere, which was then cut into a detailed body. Papier mache clay was used to strengthen the thin foam.

The electronics for this build provide light, motion, and sound. The eye is moved by a total of 3 Arduino controlled servos: two for the movement of the eye, and one to allow it to open and close. Movement is controlled by two joysticks. Sound is provided by the Adafruit Sound Board, which connects to a speaker and a Velleman Sound to Light Kit. This kit controls the LEDs that light the eye, making it react to the voice of Wheatley.

You can watch this Wheatley rant at you after the break. Of course if you’re going to have a Wheatley you need a GLaDOS potato as well.

Continue reading “Robotic Wheatley from Portal 2”

Review: Voltera V-One PCB Printer

Back in Feburary, I was one of the first people to throw some cash at the Voltera V-One circuit board printer on Kickstarter. With an anticipated delivery date of Q4 2015, I sat back and waited. This week, my V-One arrived!

I’ll preface this article by pointing out that I do know the folks at Voltera as we went to university together. That being said, I did put down my own cash for the device, so I’ve bought the right to be critical. I also have no relationship with their company. In this article, we’ll go through unboxing and printing, then get into a review of the V-One based on what we’ve seen so far.

Continue reading “Review: Voltera V-One PCB Printer”