To be honest, we originally considered throwing [Zachary Tong]’s experiments with ultralight metallic microlattices into the “Fail of the Week” bucket. But after watching the video below for a second time, it’s just not fair to call this a fail, so maybe we’ll come up with a new category — “Qualified Success of the Week”, perhaps?
[Zachary]’s foray into the strange world of microlattices began when he happened upon a 2011 paper on the subject in Science. By using a special photocurable resin, the researchers were able to use light shining through a mask with fine holes to create a plastic lattice, which was then plated with nickel using the electroless process, similar to the first half of the electroless nickel immersion gold (ENIG) process used for PCBs. After removing the resin with a concentrated base solution, the resulting microlattice is strong, stiff, and incredibly light.
Lacking access to the advanced materials and methods originally used, [Zachary] did the best he could with what he had. An SLA printer with off-the-shelf resin was used to print the skeleton using the same algorithms used in the original paper. Those actually turned out pretty decent, but rather than electroless plating, he had to go with standard electroplating after a coat of graphite paint. The plated skeletons looked great — until he tried to dissolve the resin. When chemical approaches failed, into the oven went the plated prints. Sadly, it turns out that the polymers in the resin expand when heated, which blew the plating apart. A skeleton in PLA printed on an FDM printer fared little better; when heated to drive out the plastic, it became clear that the tortuous interior of the lattice didn’t plate very well.
From aerogels to graphene, we love these DIY explorations of new and exotic materials, so hats off to [Zachary] for giving it a try in the first place.
Continue reading “Printing, Plating, And Baking Makes DIY Microlattices Possible”
Yesterday we reported that Lattice Semiconductor had inserted a clause that restricted the reverse engineering of bitstreams produced by their FPGA toolchains. Although not explicitly stated, it’s assumed that this was directed toward several projects over the past five years that have created fully open source toolchains by reverse engineering the bitstream protocols of the Lattice ICE40 and ECP5 FPGA architectures. Late yesterday Lattice made an announcement reversing course.
To the open source community, thank-you for pointing out a new bitstream usage restriction in the Lattice Propel license. We are excited about the community’s engagement with Lattice devices and our intent is to not hinder the creation of innovative open source FPGA tools.
It’s refreshing then to see this announcement from Lattice Semiconductor. Even more so is the unexpected turn of speed with which they have done so, within a couple of days of it being discovered by the open-source community. We report depressingly often on boneheaded legal moves from corporations intent on curbing open source uses of their products. This announcement from Lattice removes what was an admonition opposing open source toolchains, can we hope that the company will continue yesterday’s gesture and build a more lasting relationship with the open source community?
The underlying point to this story is that in the world of electronics there has long been an understanding that hardware hackers drive product innovation which will later lead to more sales. Texas Instruments would for years supply samples of exotic semiconductors to impecunious students for one example, and maybe you have a base-model Rigol oscilloscope with a tacitly-approved software hack that gives it an extra 50MHz of bandwidth for another.
We can only congratulate Lattice on their recognition that open source use of their products is beneficial for them, and wish that some of the other companies triggering similar stories would see the world in the same way. Try interacting more with your open source fans; they know and love your hardware more than the average user and embracing that could mean a windfall for you down the road.
The topic of reverse engineering is highly contentious at best when it comes to software and hardware development. Ever since the configuration protocol (bitstream) for Lattice Semiconductor’s iCE40 FPGAs was published in 2015 through reverse engineering efforts, there has been a silent war between proponents of open bitstream protocols and FPGA manufacturers, with the Lattice ECP5’s bitstream format having been largely reverse-engineered at this point.
Update: About eight hours after this article was published, Lattice Semiconductor issued a statement retracting the EULA language that banned bitstream reverse engineering. Please check out Hackaday’s article about this reversal.
Most recently, it appears that Lattice has fired a fresh shot across the bow of the open source projects. A recently discovered addition to the Propel SDK, which contains tools to program and debug Lattice devices, specifically references bitstream reverse engineering. When logged in with an account on the company’s website the user must agree to the Lattice Propel License Agreement for Lattice Propel 1.0 prior to download. That document includes the following language:
In particular, no right is granted hereunder […] (3) for reverse engineering a bitstream format or other signaling protocol of any Lattice Semiconductor Corporation programmable logic device.
Continue reading “Lattice Semiconductor Targets Bitstream Reverse Engineering In Latest Propel SDK License”
Tim [Mithro] Ansell has a lot to tell you about the current state of open FPGA tooling: 115 slides in 25 minutes if you’re counting. His SymbiFlow project aims to be the GCC of FPGA toolchains: cross-platform, multi-platform, completely free, and all-encompassing. That means that it’s an umbrella framework for all of the work that everyone else is doing, from work on synthesis and verification tools, to placing and routing, to vendor-specific chip libraries. His talk catches you up with the state of the art at the end of 2019, and it’s embedded below. Spoiler alert: SymbiFlow has the big Xilinx 7-series FPGAs in its crosshairs, and is closing in. SymbiFlow is that close to getting a networked Linux system on the FPGA fabric in a Xilinx 7 today, completely independent of any vendor tools.
But let’s step back a sec for a little background. When you code for an FPGA, words you type get turned into a bitstream of ones and zeroes that flip perhaps a few million switches inside the chip. Going from a higher-level language to a bitstream is a lot like compiling normal programming languages, except with the twist that the resulting computational logic doesn’t map straight into a machine language, but rather into lower-level physical hardware on the FPGA. So “compilation” for FPGAs involves two steps: synthesis and place-and-routing. Synthesis takes the higher-level language that you write and turns it into a set of networks and timing requirements that represent the same logic, and can work across chip families. Yosys is the open-source synthesis tool of choice here.
Continue reading “Mithro Runs Down Open Source FPGA Toolchains”
Our friend [Hunter Scott] gave a talk at a past Supercon about phased array antennas. He mentioned he was looking for collaborators to create an antenna with the SiBeam SB9210 chip. This is a specialized chip for WirelessHD, a more or less failed video streaming protocol, and it’s essentially an entire 60 GHz phased array on a chip with both transmit and receive capabilities. For $15, it seems like quite the bargain, and [Hunter] still wants to put the device to work.
The downside is that Lattice bought SiBeam and killed this chip — not surprising considering WirelessHD never really took off. However, [Hunter] says the chip was in some old smart TVs and laptops. If you can find replacement boards for those devices on the surplus market, you can get the chip and the supporting circuitry for a song.
Continue reading “A 60 GHz Phased Array”
“RISC architecture is going to change everything”, which is why [SHAOS] is building this cool RISC-V DIY retro-style computer.
The project took inspiration from another hacker’s work in building a RISC-V emulator; shared in the Hackaday FPGA chat. He took it a bit further and got it going on an UPDuino v2.0 board which features a iCE40 FPGA from Lattice.
The board passes all the tests for the RISC-V subset he’s aiming for and even run some Zephry RTOS examples. He’s done a really good job of documenting how he got the code to run as well as many of the experiments he’s run so far. All the project files for ICEcube2 software are posted. It’s not the only RISC-V CPU we’ve seen in an FPGA, but the code is actually very clear and worth a read if you’re into such things.
We think anyone interested in duplicating his work could do so somewhat easily and start playing around with this increasingly popular architecture. Or at least get some LED’s blinking in an arcane but meaningful way. Video after the break.
Continue reading “A Scratch-built RISC-V CPU In An FPGA”
Anyone who’s ever had the pleasure of programming FPGAs knows that it’s a land of proprietary tools that almost require marriage level commitment to a specific platform to be effective. Symbiflow hopes to solve this by becoming the GCC of FPGAs.
Rather than a tool built around a specific chip or architecture, Symbiflow will provide a more universal interface. Users can program in Verilog; architecture definitions define how the code will be compiled for the right chip. They are currently targeting the popular Xilinx 7-series, the very affordable iCE40 series from lattice, and the ECP5 FPGAs also from Lattice.
If you’re headed to Hackaday Supercon this year, [Timothy Ansell] will be giving a talk on how Symbiflow is making this process much more approachable and much less proprietary. Overall we’re very excited about a common interface, especially as the price of FPGAs keep dropping into micro controller territory while also increasing in capability.
(Speaking of Supercon, and maybe this is a spoiler, the badge would not have been possible without Symbiflow, Project Trellis, Yosys, and NextPNR.)