Rory Aronson on Documenting Open Source Projects

Every project starts off with an idea. Sometimes those ideas are bigger than one person, or even a small group of people. That was the position [Rory Aronson] found himself in with Farmbot, his finalist entry in the 2015 Hackaday Prize. Documentation was key for [Rory]. Farmbot first came into the world in the form of a white paper. The paper included a request for collaborators, making this an open source project from day 0. Documentation has been important throughout the Farmbot project, so it was naturally the topic of [Rory’s] talk at the 2015 Hackaday SuperConference.

Continue reading “Rory Aronson on Documenting Open Source Projects”

Open Source… Windows?

There’s a lot to be said for open source software. The ability to change code to suit one’s needs, the fact that security vulnerabilities can be easier to find, and the overall transparency are just the tip of the iceberg when it comes to the strengths of using open source software. And, while Microsoft is no Apple when it comes to locking down their source code, their operating system is still, unfortunately, closed.

Don’t despair, though! There is a project out there that aims to change this. No, they’re not stealing anything or breaking into any computers to obtain Microsoft’s code. They’re writing their own version of Windows called ReactOS that aims to be binary-compatible with Windows. The software has been in development for over a decade, but they’re ready to release version 0.4 which will bring USB, sound, networking, wireless, SATA, and many more features to the operating system.

While ReactOS isn’t yet complete for everyday use, the developers have made great strides in understanding how Windows itself works. There is a lot of documentation coming from the project regarding many previously unknown or undocumented parts of Windows, and with more developers there could be a drop-in replacement for Windows within a few years. It’s definitely worth a shot if you fondly remember the frontier days of Linux where doing things like reading information on a CD required extensive experience using the terminal. If this is a little too much, though, there are other unique operating systems out there to investigate.

Thanks for the tip, [Matt]!

Open Source FPGA Pi Hat

Over on Hackaday.io, [Dave Vandenbout] has posted the CAT board, a Raspberry Pi daughterboard hat that features a Lattice FPGA, 32 MB of RAM, EEPROM, and a few Grove and PMOD connectors. The CAT takes advantage of the open source tool chain available for Lattice including the Python-based MyHDL (although, you could just use Verilog directly, if you prefer) and Icestorm. One interesting point: you can run the tool chain on the Raspberry Pi, resulting in a self-contained and largely portable FPGA development environment.

Continue reading “Open Source FPGA Pi Hat”

Novation Launchpad MIDI Controller Moves Toward Open Source

The Novation Launchpad is a MIDI controller, most commonly used with the Ableton Live digital audio workstation. It’s an eight by eight grid of buttons with RGB LED backlights that sends MIDI commands to your PC over USB. It’s often used to trigger clips, which is demonstrated by the artist Madeon in this video.

The Launchpad is useful as a MIDI input device, but that’s about all it used to do. But now, Novation has released an open source API for the Novation Pro. This makes it possible to write your own code to run on the controller, which can be flashed using a USB bootloader. An API gives you access to the hardware, and example code is provided.

[Jason Hotchkiss], who gave us the tip on this, has been hacking around with the API. The Launchpad Pro has a good old 5 pin MIDI output, which can be connected directly to a synth. [Jason]’s custom firmware uses the Launchpad Pro as a standalone MIDI sequencer. You can check out a video of this after the break.

Unfortunately, Novation didn’t open source the factory firmware. However, this open API is a welcome change to the usual closed-source nature of audio devices.

Continue reading “Novation Launchpad MIDI Controller Moves Toward Open Source”

Autodesk Open Sources Ember 3D Printer

If you’ve ever been interested in what goes on inside a (roughly) $6000 DLP stereolithography printer, you might want to check out the recent announcement from Autodesk that open sources their electronics and firmware for their Ember 3D printer. The package includes the design files and code for their controller (which is more or less a BeagleBone black with a USB hub, and more memory. It also has two AVR controllers for motor and light control.

Continue reading “Autodesk Open Sources Ember 3D Printer”

Open Source FPGA Toolchain Builds CPU

When you develop software, you need some kind of toolchain. For example, to develop for an ARM processor, you need a suitable C compiler, a linker, a library, and a programmer. FPGAs use a similar set of tools. However, instead of converting source code to machine language, these tools map the intent of your source code into configuration of FPGA elements and the connections between them.

There’s some variation, but the basic flow in an FPGA build is to use a synthesizer to convert Verilog or VHDL to a physical design. Then a mapper maps that design to the physical elements available on a particular FPGA. Finally, a place and route step determines how to put those elements in a way that they can be interconnected. The final step is to generate a bitstream the chip understands and somehow loading it to the chip (usually via JTAG or by programming a chip or an external EEPROM).

One problem with making your own tools is that the manufacturers typically hold the bitstream format and other essential details close to their chest. Of course, anything can be reverse engineered (with difficulty) and [James Bowman] was able to build a minimal CPU using  an open source Lattice toolchain. The project relies on several open source projects, including  IceStorm, which provides configuration tools for Lattice iCE40 FPGAs (there is a very inexpensive development platform available for this device).

We’ve covered IceStorm before. The IceStorm project provides three tools: one to produce the chip’s binary format from an ASCII representation (and the reverse conversion), a programmer for the iCEstick and HX8K development boards, and database that tells other open source tools about the device.

Those tools blend with other open source tools to form a complete toolchain–a great example of open source collaboration. Yosys does the synthesis (one of the tools available on the EDAPlayground site). The place and route is done by Arachne. The combined tools are now sufficient to build the J1A CPU and can even run a simple version of Forth. If you’ve ever wanted to play with an FPGA-based CPU design, you now have a $22 hardware option and free tools.

Continue reading “Open Source FPGA Toolchain Builds CPU”

Tessel 2, A $35 Linux Computer That’s Truly Open Source

We’ve seen the first version of the Tessel a few years ago, and it’s still an interesting board: an ARM Cortex-M3 running at 180MHz, WiFi, 32 Megs of both Flash and RAM, and something that can be programmed entirely in JavaScript or Node.js. Since then, the company behind Tessel, Technical Machines, has started work on the Tessel 2, a board that’s continuing in the long tradition of taking chips from WiFi routers and making a dev board out of them. The Tessel 2 features a MediaTek MT7620 running Linux built on OpenWRT, Ethernet, 802.11bgn WiFi, an Atmel SAMD21 serving as a real-time I/O coprocessor, two USB ports, and everything can still be controlled through JavaScript, Node, with support for Rust and other languages in the works.

Instead of going the usual route and determining the future of Tessel through market research and the apparent pragmatism of whoever happens to be in charge, this week Technical Machines did something wonderful: the ownership and direction of the Tessel Project is now independent of Technical Machine. This makes Tessel a completely open source and community driven platform for I0T, robots, and whatever else would benefit from an open source community disconnected from hardware.

The Tessel project is completely disconnected from manufacturers, something the Arduino project has been struggling with for the last few years, unbeknownst to most of the founders for most of that time. It’s a boon for the open source community, and something that should see an incredible uptake in the next few months.