Self-described “Inventor Dad” [pepelepoisson]’s project is called Stecchino (English translation link here) and it’s an Arduino-based physical balancing game that aims to be intuitive to use and play for all ages. Using the Stecchino (‘toothpick’ in Italian) consists of balancing the device on your hand and trying to keep it upright for as long as possible. The LED strip fills up as time passes, and it keeps records of high scores. It was specifically designed to be instantly understood and simple to use by people of all ages, and we think it has succeeded in this brilliantly.
To sense orientation and movement, Stecchino uses an MPU-6050 gyro and accelerometer board. An RGB LED strip gives feedback, and it includes a small li-po cell and charger board for easy recharging via USB. The enclosure is made from a few layers of laser-cut and laser-engraved material that also holds the components in place. The WS2828B LED strip used is technically a 5 V unit, but [pepelepoisson] found that feeding them direct from the 3.7 V cell works just fine; it’s not until the cell drops to about three volts that things start to glitch out. All source code and design files are on GitHub.
2016 was a great year for Open Hardware. The Open Source Hardware Association released their certification program, and late in the year, a few silicon wizards met in Mountain View to show off the latest happenings in the RISC-V instruction set architecture.
The RISC-V ISA is completely unlike any other computer architecture. Nearly every other chip you’ll find out there, from the 8051s in embedded controllers, 6502s found in millions of toys, to AVR, PIC, and whatever Intel is working on are closed-source designs. You cannot study these chips, you cannot manufacture these chips, and if you want to use one of these chips, your list of suppliers is dependent on who has a licensing agreement with who.
We’ve seen a lot of RISC-V stuff in recent months, from OnChip’s Open-V, and now the HiFive 1 from SiFive. The folks at SiFive offered to give me a look at the HiFive 1, so here it is, the first hands-on with the first Open Hardware microcontroller.
Before I dig into this, I must discuss the openness of the HiFive 1, and RISC-V in general. Free Software and Open Hardware is a religion, and it’s significantly more difficult to produce Open Hardware than Free Software. No matter how good or how Open the design is, the production of the first Open Source microcontroller will generate far too many comments from people who use the words ‘moral imperative’ while citing utilitarian examples of why Open and Libre is good. You should ignore these comments, but not just because these people have only read the back cover of the Cliff’s Notes for Philosophy For Dummies.
The Openness of the HiFive 1 and RISC-V
The biggest selling point for RISC-V chips is that there are no licensing fees, and this microcontroller is Open Source. This is huge — your AVRs, PICs, ARMs, and every other microcontroller on the planet is closed hardware. You can’t study the silicon. If we’re ever going to get a completely Open Source computer, it has to start somewhere, and here it is.
With that said, this is an Arduino-compatible board with an FTDI chip providing the USB to serial conversion. If we had a facepalm emoji, we’d use it here. An FTDI chip is not Open Source, and they have designed drivers to break chips that aren’t theirs. The design files for the HiFive 1 were made with Altium, a proprietary and non-Free software.
Will Stallman ever say the HiFive 1 is Free as in speech? Absolutely not. Instead, the HiFive 1 is an incrementally more Free microcontroller compared to a PIC, ARM, or AVR. There will be people who will argue – over the Internet, using late-model Intel processors with Management Engines — this is insufficient to be called Free and Open Source. To them, I will simply link to the Nirvana fallacy and ask them to point me to a microcontroller that is more Free and Open Source. Let’s not cut down the idea of an Open Source microcontroller because it’s not perfect on the first release.
Speed: 320+ MHz (the stock frequency seems to be about 256 MHz, this can be changed)
Performance: 1.61 DMIPs/MHz
Memory: 16 KB Instruction Cache, 16 KB Data Scratchpad
Other Features: Hardware Multiply/Divide, Debug Module, Flexible Clock Generation with on-chip oscillators and PLLs
Operating Voltage: 3.3 V and 1.8 V
Input Voltage: 5 V USB or 7-12 VDC Jack
IO Voltages: Both 3.3 V or 5 V supported
Digital I/O Pins: 19
PWM Pins: 9
SPI Controllers/HW CS Pins: 1/3
External Interrupt Pins: 19
External Wakeup Pins: 1
Flash Memory: 128 Mbit Off-Chip (ISSI SPI Flash)
Host Interface (microUSB): Program, Debug, and Serial Communication
Basically, the HiFive 1 is the SiFive FE310 microcontroller packaged in an Arduino Uno form factor. The pin spacing is just as stupid as it’s always been, and there is support for a few Adafruit shields sitting around in the SDK.
There are no analog pins, but there are two more PWM pins compared to the standard Arduino chip. The Arduino Uno and Leonardo have 32 kilobytes of Flash, while the HiFive 1 has sixteen Megabytes of Flash on an external SOIC chip.
The HiFive 1 supports 3.3 and 5V I/O, thanks to three voltage level translators. The support for 5V logic is huge in my opinion — nearly every dev board manufacturer has already written off 5V I/O as a victim of technological progress. The HiFive doesn’t, even though the FE310 microcontroller is itself only 3.3V tolerant. It should be noted the addition of the voltage level translators add at least a dollar or two to the BOM, and double that to the final cost of the board. It’s a nice touch, but there’s room for cost cutting here.
Other than that, the only other chip of note on the board is the FTDI FT2232HL, a well-supported but most certainly not Free and Open Source USB to UART chip. This is a two-port chip that provides programming, serial, and debug connections simultaneously.
Getting Started With The HiFive 1
The folks at SiFive realize documentation and SDKs are necessary to turn a chip into a development board. To that end, they have a bare-metal SDK and support for the Arduino IDE. The board itself comes with a bootloader, and when you plug the HiFive 1 into a USB you get the equivalent of the Blink sketch from the Arduino. Yes, you too can have Open Source blinkies. What a magical time to be alive.
Right now there are two methods of programming the HiFive 1. The Freedom E SDK, and the Arduino IDE. The Arduino IDE appears to be dependent on the Freedom E SDK, so either way, you’ll have to get the SDK running.
Right now, the SDK only works under Linux (and OS X, and possibly Cygwin), but support for Windows is coming. For Linux users, the getting started guide is more than sufficient, although it will take quite a while (at least 30 minutes) to build all the tools.
Once the Freedom E SDK is installed, support for the Arduino IDE pretty much falls into place. You’ll have to futz around with the Boards Manager, but with a few clicks, you get something fantastic. You can blink an LED with Open Source Hardware.
Actually Programming the Thing
Blinking an LED is proof enough this can be programmed, but what about the vast SDK we had to install before getting the Arduino IDE working? Here, too, it’s pretty easy to get the SDK up and running:
For this example, I simply changed the ‘hello world’ program shipped with the SDK to a ‘hello Hackaday’ program, compiled it, and ran it. Yes, someone as dumb as me can compile and upload a program to the HiFive 1.
This Stuff is Still New, Okay?
Before receiving the HiFive 1, I originally planned to benchmark this dev board against other small, common dev boards. The SDK comes with a Dhrystone program, making this the obvious choice. The results were not good, but this isn’t a reflection of the power of the FE310 microcontroller. Allow me to present the shocking infographic you should not pay attention to:
This test used this Dhrystone Arduino sketch with the Arduino Micro, HiFive 1, and the Teensy 3.6. As you would expect the Arduino Micro performed poorly (but still ten times faster than a mainframe from 1988), and the Teensy 3.6 was extremely fast. According to this benchmark, the HiFive 1 did terribly at barely twice the computing power of the Arduino while running 16 times faster. If this benchmark was accurate, it would immediately spell the end of the RISC-V ISA.
I love this test. Beginning this review, I originally planned to run a few benchmarks on an Arduino, a Teensy, and the HiFive 1, throw together a graph and spend a hundred or so words on the results. I got so much more.
Right off the bat, we can see the HiFive 1 is fast. Really, really fast. Right now, if you want to build a huge RGB LED display, you have one good option: the Teensy 3.6. If you need a microcontroller to pump a lot of data out, the Teensy has the power, the memory, and the libraries to do it easily. In this small but very demanding use case, the HiFive 1 might be better. The HiFive 1 has more Flash (although it’s an SPI Flash), it has DMA, and it has roughly twice the processing power as the Teensy 3.6. This could be very, very cool, and I can’t wait to see the real life examples of how much the HiFive 1 can push out of its pins.
There’s your hundred word review on the performance of the HiFive 1 based on synthetic benchmarks. However, getting this benchmark working revealed far more about the state of the HiFive’s software, and how much support SiFive is throwing at it.
Admittedly, I do have a very early version of this board, and the CrowdSupply campaign for the HiFive 1 was only funded last week. No one would expect one of the three demo apps shipped with a newly released board with a mature architecture to be completely broken (unless it’s an Allwinner chip, but whatever). Very few people would expect the devs to get a patch out in less than 24 hours in response to a random person on a support forum.
All of this circles back to a single observation on the HiFive 1: It’s new. The HiFive 1 and all RISC-V microcontrollers don’t have a vast market share, user base, or decades of work behind them. However, the SiFive team seems to be taking their work seriously. They’re fixing the problems they have, and they’re constantly pushing out new documentation. This is great, and a very good indication of how much support the RISC-V chips from SiFive will have.
The easiest parallel to draw is between SiFive and OSH Park. These companies don’t have their own manufacturing capability; the value is in connecting end users (engineers, startups) to manufacturers. OSH Park connects you to a board house that really knows purple, and SiFive connects you to a chip fab. In the case of the FE310, that’s TSMC.
For anyone who wants silicon you can study, this is great. No, it’s not as simple as sending a board off to a fab house, but it’s a start. The fact that SiFive chose to start with Open Hardware is great, and we can’t wait to see the other hardware made with their sweat and hydrofluoric acid.
It’s a Beginning
At the base level, the HiFive 1 is a powerful microcontroller with a lot of Flash, with support for hundreds of Arduino libraries. That’s great, and alone this might be worth the $60 price of admission.
However, the big story here is the Openness of the HiFive 1. Is it completely open? No. the HiFive 1 itself uses an FTDI chip, and I’ve heard rumor and hearsay the FE310 chip has proprietary bits that are ultimately inconsequential to the function of the chip. A strict interpretation of Open Hardware will not allow this board to be called Open Hardware. Those who advance this interpretation are dumb, and to counter this argument I will quote the man himself:
…We need to distinguish levels in the design of a digital product (and maybe some other kinds of products). The circuit that connects the chips is one level; each chip’s design is another level. In an FPGA, the interconnection of primitive cells is one level, while the primitive cells themselves are another level. In the ideal future we will want the design to be free at all levels. Under present circumstances, just making one level free is a significant advance.
– Richard M. Stallman, Free Hardware And Free Hardware Designs
A design that fails to be completely Open does not deserve to be grouped with designs that are explicitly closed.
Nevertheless, this is the best we have so far, and it is only the beginning. We’re going to have more microcontrollers that are more Open, but until then, the HiFive 1 is actually a pretty cool board.
Say hello to the newest member of the Arduino family! The MKRZero–now available on our stores at the price of $21.90/€20.90 (+ tax)–shrinks the functionality of the Arduino Zero down into an Arduino MKR1000 form factor, making it a great educational tool for learning about 32-bit application development.
Like the Zero, the latest board is based on a Microchip SAM D21 ARM Cortex®-M0+ MCU. An integrated SD connector with dedicated SPI interfaces (SPI1) allows you to play with files without any extra hardware, while an analog converter enables you to monitor its battery voltage.
The MKRZero’s features in a nutshell:
small form factor
number crunching capability
low power consumption
integrated battery management
integrated SD management
programmable SPI, I2C and UART
Interested? You can explore the MKRZero in more detail, including its technical documentation, via the links below:
We know the concept from quadcopters, little robots, and generally things that are small enough to make use of their PCBs as a structural component. But an entire CNC machine, soldered together from a few dozen PCBs certainly takes it to the next level.
There is no doubt that 2mm thick fiber reinforced epoxy can be surprisingly rigid, although the Achilles heel of this method might be the solder joints. However, it looks like all load bearing, mechanical connections of the machine are supported by tightly interlocking “dovetail”-joints, which may help protecting all the solder connections from the strain hardening effects of continuous stress and spindle vibrations.
As you might expect, most of the wiring is embedded into the FR4 frame construction, and to squeeze the maximum value out of the PCB material, the motor driver boards interface via card edge connectors with the (currently Arduino based) controller board. In addition to the milling head, which features a brushless DC motor and a tool coupler, the team wants to develop heads for circuit printing, microscopy, pneumatic pick and place, hot air reflow, and 3D printing.
With all those cost-driven design choices, from the one-step manufacturing process of the frame and wiring to the dismissal of screws and nuts from the frame assembly, the “FR4 Machine Shield” could indeed become one of the cheapest CNC machine kits on the market. The team targets an introduction price of $400 during a Kickstarter campaign in June 2016. Can they deliver? [Gerrit] check Pocket NC out at the Faire and ended up raving about how they run their business.
I make things for people that can’t be bought off a shelf, and in the past several years I have gone through a lot of Arduinos. More and more, they are simply the right tool for both the job and the client. This wasn’t always the case; what changed?
My clients today still include startups and other small businesses, but more and more they’re artists, hobbyists venturing into entrepreneurship, or people who make one-offs like the interactive displays you find in museums or science centers. The type of people I work for has changed, and because of this, the right tool for their job is almost always an Arduino.
If Not Arduinos, What?
I was chatting with some new people at a local hackerspace, and we were talking about what we do. I told them I spent a lot of time making one-off devices, prototypes, or small production runs for people who know what they need, but can’t buy it off a shelf. I mentioned that I go through plenty of Arduinos as a result.
“What would you be using if it wasn’t an Arduino?” I was asked.
I thought for a moment and replied something about how I’d probably use an AVR on a board I designed, and roll that out when I needed a microcontroller to do things. I said this because that board was my go-to solution when I needed something for my own projects. There was a nod and the conversation moved on, but after thinking a moment more I realized I had to change my answer.
If I wasn’t using an Arduino, what would I use? Probably nothing. Because the job wouldn’t exist.
The Arduino is the Right Tool for Their Jobs
A lot of my work looks like this: the client comes in with an idea but it’s not quite there, and it needs some development before it can become a product. First I build a proof of concept, but then we often move to iterative prototypes where we do a lot of testing and measuring. What is learned from one prototype is rolled into subsequent prototypes in a continuous flow of learning and refinement. (The following saying applies to this process: “Developing hardware is just like developing software, except that every time you hit ‘compile’ it takes weeks and costs thousands of dollars.”)
Eventually, we reach the end of what’s possible with the Arduino and readily available components. Then it’s time for the engineers to design a solution: something focused directly around exactly what was discovered, with minimal waste. That engineered solution is not very likely to include an Arduino.
But until we hand the job off to the engineers, the Arduino was part of the solution. And a big reason for that is the comfort level of the client during this phase of iterative refinement. A lot of clients would throw up their hands at an AVR-ISP or a hex file but they know what an Arduino is. They are often comfortable uploading sketches and making changes to them, or even following a wiring diagram. They probably even prototyped their idea with an Arduino. Using an Arduino allows them to remain hands-on with the development of their idea, even as they outsource some of the work to consultants.
The Clients have Changed
Sticking with what the client knows and expects is often the right move but there’s another, deeper reason that an Arduino is even involved in the first place. Without the Arduino and the whole ecosystem of open and accessible hardware and tools that has grown along with it, many of my clients would probably never have even begun to develop their ideas. They certainly would never have gotten to the point of hiring me for my help.
The observation that I was going through a lot of Arduinos also made me realize that my clients had changed. I now work more with artists who are incorporating electronics into their work in ways that weren’t accessible just a few years ago, basement inventors who are taking the plunge to see if their idea will fly, people who need small production runs of 10-100 in a world where “small” often means thousands, and stage magicians who need someone to help them make the next great trick happen. (I hadn’t expected that last one, but you better believe that market exists.)
All of these clients need someone to handle the hard or time-consuming parts of something they otherwise grasp, or someone to make them something they can plug in to the rest of their work. They don’t always have much of a budget to work with, but they do have enthusiasm and they know what they want. They’re idea people who roll up their sleeves and get their hands dirty, and they weren’t around in the numbers that they are now.
There’s one more advantage to working with these types of folks: when people have experience with developing their own solutions and experience running into the roadblocks, they usually also have some understanding of and appreciation for the kind of time, work, detail, and costs that go into development. Those of you who have done professional development work will recognize what a boon that is.
I’ve done custom work for many people over the years, but change is constant. It’s a big world and I’ve only worked in and seen my piece of it. Have you found things to be as I described, or different? Is my experience somehow unique? Post up in the comments!
The Open Source Hardware Association (OSHWA) is seeking feedback on a proposal for the certification of open-source hardware. The certification would provide a more formal means of verifying the compliance of a particular project or organization with the practices of open-source hardware, as understood by the community. There are, however, many different ways in which such a certification process could work, e.g. whether it should include a single standard for open-source hardware or recognize multiple levels of openness; whether people should be able to self-certify or if OSHWA would need to pre-approve certifications; etc. OSHWA is seeking feedback from the broader open-source hardware community in order to help refine the certification proposal.
Marco Mauro is a physicist currently employed as Scientific Coordinator at Novaetech, the first Spin-off Company of the National Institute for Astrophysics (INAF) in Italy. He shared with us all the info about a project he’s been working on and based on Arduino Micro.
OpenQCM is a fully open source scientific microbalance capable of weighing mass deposition down to 1 billionth of gram:
The sensing core of the microbalance is a piezoelectric quartz crystal oscillator. The deposition of a very tiny mass on the surface causes the variation in the quartz frequency. openQCM belongs to a new generation of innovative smart sensor which boast high resolution and ultra high mass sensitivity. The open source strategy made the creation of openQCM available at low cost which represents a bit fraction of the cost of similar scientific products.
openQCM was built keeping in mind the emergent principles of the open source hardware movement. The open source hardware gives people the freedom to control their technology through the open exchange of all the project features, 3D design, electronics and software. The open hardware potentiality is even greater when it comes to hardware for scientific applications.
openQCM is exactly something like that, the first open hardware quartz crystal microbalance with applications in a wide range of scientific fields, such as chemical and biological sensing, material science.
openQCM has an Arduino Micro board inside at heart. By hacking the timer counter of the AtMega32U4 Arduino microcontroller, it is possible to measure the quartz crystal frequency variations using the 16 Mhz microprocessor clock. openQCM team has designed an Arduino Micro shield with an embedded quartz crystal oscillator driver circuit and a temperature sensor. The output of the quartz crystal oscillator driver is fed to the Arduino Micro timer counter and the analog value of the temperature sensor is fed to the analog pin of the board. This configuration allow you measure the quartz crystal frequency with a resolution of 1 Hz, which roughly corresponds to a mass resolution of 700 pg over the entire quartz surface in air.
One of the major challenge of an open hardware project is that such devices require funding to prototype and manufacture. That’s why the openQCM team have selected the 3d printing technology to keep high quality and low cost. Using 3d printing to print out the prototypes via the SLS process from OS Formiga P100, P110, P395, and P730, the openQCM team created the device’s parts, which required a precision down to 60 µm.
The open source concept made openQCM publicly available so that anyone (scientists, technology enthusiast, makers, hobbyist …) can study, modify, and develop the hardware based on the original design. openQCM is now working and ready to win the heart of the scientific community and more.
Or at least [Squonk42] couldn’t. In Sept. 2013, [Squonk42] posted up on the Arduino forums requesting the schematics and editable design files for the Arduino Yun, and he still hasn’t received them or even a response.
[Squonk42]’s hypothesis is that Arduino must have done what any “sane” engineer would do in this case when presented with a super-complex piece of hardware and a potentially tricky radio layout: just use the reference design (Atheros AP-121). That’s what everyone else in the industry did. And that’s smart, only the rest of the consumer electronics industry isn’t claiming to be Open Source Hardware while the reference design is protected by an NDA.
Is this a change of strategy for the Arduino folks or did they just make a mistake? We won’t know until they respond, and that answer’s a year and a half in coming. Let’s see what we can do about that. And who knows, maybe Arduino can lean on Atheros to open up their reference design? It’s already an open secret at best.
But before you go out lighting up your righteous Open Source Hardware pitchforks and sharpening up your torches, read through [Squonk42]’s case and then dig through the primary sources that he’s linked to make up your own mind. You’ll make your case more eloquently if you’re making it yourself.
Good luck, [Squonk42]! We hope you at least get your answer. Even if you already know it.
The topic of this edition of the Summit wants to reflect on how production models are shifting from one to one, to one to many structure and the latest schedule features several outstanding speakers of the open hardware scene such as Adrian Bowyer (father of RepRap), Tomas Diez (Fab Lab Barcelona Director), Yasmin Elayat (GOOD fellow), Becky Stern (Director of Wearable Electronics, Adafruit Industries), Eric Pan (Founder, Seeed Studio, Forbes China’s 30 under 30), David Lang (OpenROV Founder, Author of Zero to Maker), Gawin Dapper (CTO, Phonebloks), Nick Ierodiaconou (Co-Founder Open Desk), Phoenix Perry (Founder, Code Liberation) and many more.
There are a number of different types of maker applications you can do. You can apply as:
Maker : Individuals, groups, schools and organizations that would like to demonstrate what they make and/or how it works; interactive exhibits are encouraged. No fee to exhibit for Makers in a standard setup.
Light-Talk speaker: Individuals and groups who would like to talk about an idea or project of interest to the Maker community, OR makers who are interested in demonstrating what they make and how it works in a stage setting. Presentations are typically 15 or 40 minutes, with some time for Q&A.
Hands-On Workshop: If your passion is in inspiring the public into Making, we invite you to propose activities and workshops. The organization can provide materials and components for activities (please be specific in your proposal). Activities has to be guided and Maker facilitated. Each Activity should have a duration of 2 hours and half or the whole day and should be accessible for younger audience to make with parental guidance.
This year the venue will be the Parco della Musica Auditorium, the multi-functional complex designed by Renzo Piano (Viale Pietro Coubertin 30), in the Flaminio area of the city.
And just some days before on September 30 and October 1 , the same venue will host the fifth edition of the Open Hardware Summit, the annual conference organized by the Open Source Hardware Association and the world’s first comprehensive conference on open hardware.
Keynotes cover a wide range of subjects from electronics and mechanics to related fields such as digital fabrication, fashion technology, self-quantification devices, and DIY bio. Confirmed speakers until now are Becky Stern from Adafruit, Gabriella Levine COO of Protei Inc, manufacturing robotic biomimetic sailboats, Phoenix Perry - Adjunct Professor at NYU teaching Gaming, Design and more to come. They are seeking submissions for talks and workshops from individuals and groups working with open hardware and related areas. Submit your proposal (Accepted contributors will have airfare PAID by the organization)!