VIA Springboard Blog

• Running Go on VIA ARM devices

Go is a modern and quite popular systems programming language developed at Google. I’ve recently came across a wiki page describing its ARM support, I thought it would be interesting to check how VIA devices can make use of Go.  . I was surprised by its composition and its performance real time. It will get convenient and useable among the users over a period of time. When the product has the right development at every stage it proves to be a highly effective solution just like Erogan, which has the necessary attributes to solve inadequacy among males in having an intimate relationship. I’ve checked out the VAB-820, VAB-600, and the APC 8750 boards, all a bit different from each other.
VAB-820 with a Gopher
I found that the general documentation does not cover all the things that can (and generally do) go wrong, though a few online searches usually pointed me in the right direction. Installing Go needs two separate steps: bootstrapping first, then compiling from source.
Continue reading →
This entry was posted in Springboard Blog and tagged APC 8750, golang, VAB-600, tutorial, VAB-820 on November 18, 2015 by Gergely Imreh.
• Mini-PCIe microcontroller and make your board too
All VIA’s current ARM boards (VAB-600, 820, 1000) have an online mini-PCIe connector, and I’ve been planning to do something interesting with that for a long time (see this intro post from more than a year ago). Thus I’m very happy to introduce the PCIeDuino – mini-PCIe form-factor Arduino-compatible microcontroller, which can add a whole new set of I/O capabilities to these ARM “carrier boards”.
PCIeDuino under the magnifying glass
I have just recently finished this board, and been able to test it briefly with Springboard and also with the VAB-820. The picture just below shows the shining blue LED, that is tied to D13 – the 13th digital pin, as most Arduinos do.
Continue reading →
This entry was posted in Springboard Blog and tagged VAB-600, mini-PCIe, open source hardware, KiCad, VAB-820 on September 18, 2015 by Gergely Imreh.
• Grove comes to embedded
Hardware interoperability is hard.
While software is usually easy to adjust to your different needs, hardware pieces tend to be quite finished by the time they are being used. If they require changes, it’s usually not a trivial thing to make it happen. You want to use a different IC, you need more sensors, or want to change your output device? All of these might be custom work instead of plug-and-play solutions.
There are some examples of projects to make such hardware interoperable between devices, so they can benefit a larger user base. The most successful is probably the shields for Arduino. They have now spread beyond Arduino boards as you can start seeing shield connectors in a lot more places. However they are still not the ultimate solution. Some of their drawbacks include their large size for many common accessories as well as difficulty in using more than a handful at a time as stacking can become troublesome very quickly. Fortunately there’s a new system that complements these existing solutions very well and improves usability tremendously!
Enter Grove
The Grove system was designed by Seeed Studio and seems to be taking maker computing platforms by a storm. It is designed to have a standardized physical connector, predictable pinouts, and common board sizes.
Continue reading →
This entry was posted in Springboard Blog and tagged Grove, open source hardware, prototyping, VAB-820 on September 3, 2015by Gergely Imreh.
• Going Real-Time with Xenomai on VAB-820
It has been quite a few years since I’ve last used Xenomai, the real-time application framework for Linux, during the work on my thesis back at the university physics lab. When I’ve found that the VIA VAB-820 board is listed on Xenomai’s compatible hardware page, it brought back a lot of interesting memories and I got excited trying it out again. Now that the new (testing) kernel for the VAB-820 is released recently, I thought it’s a good chance to revisit real-time operating systems.
Setting up
Buildroot is a very handy tool to build a kernel and simple file system for embedded devices, and just recently accepted our submitted patch adding support for VAB-820. Buildroot already has support for Xenomai, so everything’s set up to create a system complete with the required patches & tools.
Running xeno-test on the VAB-820
One outstanding issue was a bit of adaptation. Xenomai (at least the stable 2.6.4 version I targeted) needs a suitable Adeos I-pipe patch applied to the Linux kernel, which enables secondary real-time kernel on the same hardware (see the Xenomai FAQ). The closest kernel version that had an available patch was 3.10.18, and I’ve backported that to the 3.10.17 kernel used in our latest release (can download the patch from Github).
Continue reading →
This entry was posted in Springboard Blog and tagged real-time, Xenomai, buildroot, VAB-820, benchmark on May 13, 2015 by Gergely Imreh.
• Ready-to-go file system for the VAB-820
It’s been a while since we have announced on this blog another member of the VAB family, the VAB-820. At that time the highlight was Android support for this quad-core Freescale SoC based system, but our board support package (BSP) also had a Linux version. Over the Christmas holidays I found a bit of time to make a simplified Linux OS image for the VAB-820, and want to share with you, so you can make the most of your boards too.
Running Debian Wheezy on the VAB-820
That original, official Linux BSP version was is based in turn on the Freescale BSP, and had a lengthy user manual how to arrive to a working system. It is perfectly fine for our embedded customers. For the wider community this clearly does not cut it, the large number of quality ARM boards raised the bar for everyone, and we do want to work harder and smarter too.
Continue reading →
This entry was posted in VIA Embedded and tagged tutorial, Debian, buildroot, kernel, VAB-820, Linux on December 31, 2014 by Gergely Imreh.
• Cryptography for Springboard: Hashlet
Previously I’ve described here the ProtoSpring board to support quicker prototyping with Springboard. Since then it was put to good use for just that: I’ve tested how the I2C bus works, and created a new device.
The inspiration for that new device comes from Tindie, the indie hardware marketplace (where ProtoSpring is listed as well). Browsing existing hardware I’ve found Hashlet, a secure authentication cryptographic device made for BeagleBone Black and Raspberry Pi by Cryptotronix. It looked interesting, it’s open source hardware, and I hope that Springboard users can take advantage interesting too, so decided to make a “remix” of the original board. It’s also good process to learning about hardware too! 🙂
A working Hashlet for Springboard, serial #1
Hashlet is based on the Atmel ATSHA204A chip, which is a “secure authentication and validation device”, with use cases such as:
• Network and Computer Access Control
• Key Exchange for Encrypted Downloads
• Authenticated/Encrypted Communications for Control Networks
Continue reading →
This entry was posted in Springboard Blog and tagged i2c, cryptotronix, atmel, open source hardware, cryptography, prototyping, open source on December 20, 2014 by Gergely Imreh.
• ProtoSpring, part 3: manufacturing and demo
After coming up with the idea in part 1 for ProtoSpring, the prototyping board for Springboard, and creating the PCB in part 2, this final segment shows the end-result and a demo application – using GPIO to control a 7-segment display from an Android app!
Finished Prototyping Board
After finishing the v1 of the PCB, I’ve exported the Gerber files from KiCad and sent them to Seeed Studio. Looking at their specifications, some of the filenames they require were different from the ones KiCad creates by default (the board outline and the drill files need different extensions). It’s a bit weird, but it’s easy enough to adjust before submission.
The board fits on a 5 cm x 10 cm base, has 2 layers, standard 1.6mm thickness, and didn’t bother changing the PCB colour to save some money on the manufacturing (though I bet the others looks very good too). The printing took less than a week together with shipping from Shenzhen to Taipei, and got 5 boards for about US$20:
ProtoSpring board straight from manufacturing
The board feels really nice and solid, and I’m almost surprised that it worked out so well on the first try (this is my first ever PCB!) After reviewing it, I’ve added a few changes for future print runs: Continue reading →
This entry was posted in Springboard Blog and tagged ProtoSpring, prototyping, electronics, Android on November 7, 2014 by Gergely Imreh.
• ProtoSpring, part 2: schematic revision and PCB
In the first part of this series I’ve outlined the idea of making a prototyping extension board for the Springboard, and finished with a rough schematic. Since then I’ve revised the schematic based on experience, and laid out the prototyping board PCB. By the end of this write-up we’ll have a complete design, ready to send to manufacturing.
Before I dive in, probably the single most important lesson learned is to keep in mind all different stages of a board design. There’s a lot of back and forth between schematic, components, footprint, layout, manufacturing specs. The tools help making the right decisions, and often when something feels difficult it is because I’m doing it wrong…
Finding crucial parts
After making the basic schematic I realized that there’s one type of component on the board that can make or break the entire project: the board-to-board connectors. To interface with the Springboard needed to find 2mm pitch, dual row, through hole, perpendicular mounting female receptacles. I couldn’t find anything like that in the local electronic stores. After an hour of search online they did turn up, fortunately both Digikey and Mouser had the required 3×2, 4×2, and 7×2 connectors by 3M.
Finally found the correct 2mm, double row, perpendicular, through-hole connectors I needed
I got a bit lucky too, because these ones can be ordered piecemeal, while other pin count versions (e.g. the 10×2) require minimum order of 300 pieces. This is one of the first example of the importance of choosing components. Of course, if these were 0.1″ (2.54mm) connectors then there wasn’t any problem finding them in the first place, but then they would probably not fit on the Springboard itself… Continue reading →
This entry was posted in Springboard Blog and tagged ProtoSpring, PCB, schematic, KiCad, design, electronics on October 28, 2014by Gergely Imreh.
• ProtoSpring, part 1: Idea and Schematic
I was looking for a project to showcase how easy it is to extend the functionality of the Springboard platform, drawing inspiration from the expansion board that is bundled in the kit.
Springboard and expansion board (top), from
The expansion board connects to the main board with a couple of pin headers (power, GPIO, sound) and cables (USB) to break out some of the functionality to easy to access connectors, such as the regular speaker and mic plugs, two USB, on-off button. It should be easy to replace that board with another to provide different functionality, so I’ve come up with an example. Continue reading →
This entry was posted in Springboard Blog and tagged ProtoSpring, schematic, KiCad, design, electronics on October 14, 2014 by Gergely Imreh.
• At a Freescale developer event in Taiwan
Here at VIA we like to learn from others, and our ecosystem is full of very successful examples we can learn from. Just like we were very happy to see RaspberryPi in Taiwan recently, this week we’ve joined the “Designing with Freescale” developer event in Hsinchu.