Arachnid Labs Is Going to Shenzhen!

Arachnid Labs is going to Shenzhen! I’ll be in town from the 5th to the 9th as part of the digital mission Shenzhen, attending the maker faire, and meeting up with friends and fellow makers from IRC.

Are you going to be in town? Look for me at the UKTI booth at Maker Faire, or leave a comment below!

Interfacing With the Minishift From Your PC

The Minishift Python library and HTTP interface is now available on GitHub and in PyPi!

Usage documentation can be found here, too.

Finally, videos demonstrating minishift assembly and enclosure assembly are up on YouTube. Expect a full assembly instructions page soon.

Keep an eye out for a tutorial on using the Minishift from your Arduino, and an Arduino library, also coming soon.

And don’t forget, you can still preorder your own minishifts https://www.tindie.com/products/arachnidlabs/minishift/ here, for shipment in a little over a week.

Introducing the Minishift

Meet Arachnid Labs’ latest project, the Minishift:

The Minishift is a compact 8x8 LED matrix display and driver that speaks SPI, and can be driven from any microcontroller platform, or with an optional interface board, over USB. Each Minishift module operates independently, and they chain together to form larger displays, limited only by the amount of power you can supply them. They speak a really simple SPI protocol, with each display acting like an 8 byte shift register, making it extremely easy to work with them. Sample code for the Arduino will be available before preorders ship.

An optional USB-SPI interface is available, which makes it easy to drive a series of Minishifts from your computer. Python libraries and sample code, as well as a display driver daemon, will also be available soon. The USB interface can drive 8-9 Minishifts fully lit, or more if you will only be displaying text or other graphics that don’t light all the LEDs at once.

The Minishift is available for preorder now on Tindie. The regular price is $8.99 per minishift, but you can get 20% off for preorders only with discount code 9D903ED, making them only $7.19 each! Kits with more minishifts and USB interfaces are available at a discount too.

Do you have a job in mind for the Minishift? Leave your ideas in the comments!

Better Component Storage

Like most people, I’m overwhelmed with small quantities of parts from Mouser, Farnell, and Digi-key. Most of them reusable, some of them valuable, it can be a pain storing and keeping track of them. I have some of those cunning little SMD compartments from China, which are great for passives and other small parts, but for slightly larger ICs, and for parts that I don’t use so often, they’re not ideal.

I think I’ve found a better way to store those parts, though. I sourced some 3” x 5” antistatic bags for a pittance, lasercut a box to hold them in, and printed off some simple labels to keep track of what’s in each one. Here’s the end result:

So far, it seems to work pretty well, allowing me to store a lot of different parts in only a very small amount of space.

I’m particularly proud of the design of the box: it’s entirely snap together, with no glue or fastenings, inspired by this post on lasercut clip joins. The whole box can be cut out of a single A4 sheet of 3mm acrylic; the DXF is available here.

How do you store your electronic parts?

Circuit Patterns Trading Cards Now Available on amazon.co.uk

As a bit of an experiment, I’ve put the Circuit Patterns Trading Cards up on amazon.co.uk. They’re fulfilled by Amazon, so you can get all the usual shipping options such as free super-saver or prime shipping, as well as prompt delivery. They’re in stock now for £8.99.

Of course, they’re still available on Tindie, too!

Re:load 20W Heatsink Back in Stock

As some of you will know, the 20W option for the Re:load has been out of stock for a little while. I’m happy to say that it’s now back in stock. You can buy one on Tindie!

Spider Monday

It’s Cyber Monday over at Tindie, and to celebrate, we’re taking 20% off nearly everything just for today. So now’s a great time to get a Re:load, some Circuit Patterns Trading Cards or a MiniMatrix to call your own!

Usb-if: No VID for Open Source

By now, you’re probably aware that every compliant USB device requires a Vendor ID (VID) and Product ID (PID), and that VIDs are handed out - in return for substantial monetary compensation - exclusively by the USB-IF. This has proven problematic for open source hobbyists and small electronics businesses for a long time, since the fees they demand are well outside what’s affordable for a small project or a hobby. I’ve had a pet theory on how to resolve this for a while, though, and recently I decided to see if it could really work.

My idea was this: While USB-IF prohibits resale of PIDs, they don’t - or at least didn’t until recently, see below - prohibit handing out PIDs for limited use for free, as witnessed by organisations like Microchip and FTDI who hand out PIDs for use on their hardware, or by OpenMoko, who hand out PIDs on their VID to open source users. Therefore, perhaps a not-for-profit foundation could be formed, solicit donations for a VID, and hand out PIDs free of charge to anyone who meets the criteria. Such a foundation could also reserve a few PIDs for ‘generic’ devices that expose a well defined set of endpoints, enabling drivers for such to be produced and qualified with MS.

I decided to see if this was as practical as I thought it would be. Unfortunately, USB-IF have recently increased their fee to $5000 US, and updated their Vendor ID agreement(PDF) to include the following text:

The company set forth above hereby applies for a USB Vendor ID Number and agrees to the following: The USB Implementers Forum is the authority which assigns and maintains all USB Vendor ID Numbers. Each Vendor ID Number is assigned to one company for its sole and exclusive use, along with associated Product ID Numbers. They may not be sold, transferred, or used by others, directly or indirectly, except in special circumstances, and then only upon prior written approval by USB-IF. Unauthorized use of assigned or unassigned USB Vendor ID Numbers and associated Product ID Numbers are strictly prohibited.

Not great - but there’s still that “special circumstances” and “prior written approval” bit. So I sent the USB-IF a very polite letter enquiring about the possibility:

Hi,

I’m interested in licensing a VID from the USB-IF explicitly for the purpose of enabling small developers producing open source hardware to more easily produce USB devices.

Tentatively, this would involve establishing a not for profit foundation, whose members are allocated PIDs from a VID owned by the foundation. Membership would be free of charge, and PIDs would not be charged for either. PIDs would not be available to anyone outside the foundation, or anyone producing hardware that is not open source; if needed additional restrictions on number of units could be imposed. These amount to similar or more restrictive terms as those followed by FTDI and Microchip, who provide PIDs to users of their hardware.

Are you prepared to license a VID along these lines? A great deal of the open source and OSHW community would benefit from being able to more easily produce USB devices on a small scale, one not currently catered for by the issuing of VIDs to larger organisations.

Regards,

Nick Johnson

Director

Arachnid Labs Ltd

A few hours later, I got a response:

Dear Nick,

Thank you for your message. The USB VID is the property of the USB Implementers Forum (“USB-IF”) and is assigned by the USB-IF for use solely by the original vendor to whom the VID is issued. The VID is provided to the assigned company to identify only its own products and neither the VID nor associated PIDs may be sublicensed, transferred or offered for resale in any manner.

The policy of the USB-IF regarding vendor ID numbers (VIDs) is as stated in the attached policy statement. In general, VIDs are not transferable.

The USB-IF has long had a VID/PID process for hobbyists.

Please immediately cease and desist raising funds to purchase a unique USB VID for the purpose of transferring, reselling or sublicensing PIDs and delete all references to the USB-IF, VIDs and PIDs for transfer, resale or sublicense from your website and other marketing materials.

Please kindly reply no later than Friday, October 25 with your written assurance that you will no longer promote the purchase of a community VID or PIDs for sale, transfer, or use by a third party.

Best regards,

Traci Donnell

Executive Director

I’ll leave it to you to judge if that seems proportional. Regardless, the message is clear: No VIDs for you.

If anyone knows what the USB-IF’s VID/PID process for hobbyists is, I’d like to hear it. I’ll ask them for details and update this post if I receive one.

Update: USB-IF’s response about the ‘hobbyist process’:

Hi Nick,

We do have a vendor ID number designated for prototype products. This vendor ID number may not be used for a production product. Anybody who has such a need may contact us directly and we will provide them with the proto VID once they confirm that will not be making production products to be distributed and/or sold in the marketplace.

Best regards, Traci

Interesting to know - I’d certainly never heard that this was an option - but it doesn’t seem to be a practical option for those of us who sell our gear in small quantities, but it might work if you want to publish your design as OSHW for other people to build themselves.

Electronics Patterns

Coming from a software background to electronics, I tend to try and apply tools and techniques I learned in one to the other. Some skills and approaches transfer very well, while others don’t. One that seems to transfer very well is the technique of looking at schematics in terms of design patterns.

Design patterns are quite common in software, and provide an easy way to break down a system into components that you already understand, rather than trying to understand the system as one large piece. Happily, you can take much the same approach to analyzing, understanding, and composing electronic circuits - and once you start to learn common patterns, understanding an unfamiliar circuit becomes a great deal simpler!

An example ought to make this clearer. Here’s the equivalent schematic for a simple operational amplifier, courtesy of Wikipedia:

Complicated, right? But it gets a lot easier to understand when you know how to break it up into its constituent parts, and recognise the repeating patterns:

In this annotated image, current mirrors are outlined in red, a differential amplifier in blue, voltage level shifter in green, and an output stage in cyan. Each of these are components that can be understood independent of each other, and you’ll see them repeated again and again in different designs. Some of them can be broken down further into sub-patterns, too!

Or, how about a simpler example. Here’s an excerpt from the Arduino Uno schematic, the part that controls switching between USB and DC plugpack power:

And here it is, annotated to show the patterns, simple though they are:

Here, the blue box depicts a voltage divider, the green a comparator, and the red a FET switch.

This doesn’t just apply to analog circuits, either - you’ll find common patterns in digital, in power electronics, in fact pretty much everywhere there’s human designers at work. Most people learn to recognize them implicitly, and certainly there are a number of them that get taught as such. Everyone knows what a resistor divider does, for instance, or learns it pretty quickly.

I think there’s a lot of value in using patterns as a teaching tool directly, though, and once I sat down with the explicit goal of identifying and describing patterns, it wasn’t hard to find a lot of them. I thought it would be very neat to print them off on cards; I could publish the source online, and include one in each Arachnid Labs package I sent out.

It didn’t take long to pick out 32 patterns, ranging from the extremely common and well known, to the more advanced or esoteric - a collection I hope will have something in it for everyone. I got a few printed by Moo, and took them with me to my first Mini Maker Faire, at Elephant and Castle.

Here’s a few example cards. The ubiquitous resistor divider, of course:

Or how about a capacitative voltage doubler, from power electronics:

If digital’s more your style, there’s the SR latch:

As you can see, each card is color coded by type, and has a schematic and a short description of its functionality, along with relevant equations and other information.

At the Maker Faire, they were popular beyond my wildest imagination. People weren’t content with just one - they wanted whole decks! I wasn’t really prepared for this, but after the faire, I sought out a small run printing service and got my own decks with tuckboxes made. Now they’re even being resold by Adafruit!.

As with everything else produced by Arachnid Labs, the full source is available on GitHub. The source files are all HTML, rendered using wkpdf - apologies to anyone using Linux or Windows, though I’m certain alternatives will work with a little tweaking. The schematics are all exported from Eagle using a script that’s part of the makefile.

Of course, if you’d just like a set for yourself without all the hassle, they’re available on Tindie, too.

Do you have a favorite electronics pattern that you’d like to see explained better? I’m pondering expansion decks focused on specific fields such as digital, power and analog, and I’d love to hear what patterns you think warrant going in one. Leave a note in the comments!

Arachnid Labs Is at Brighton Maker Faire

We’re going to be at Brighton Mini Maker Faire, tomorrow Saturday 7th September!

Come see us and say hi! We’ll be demoing a totally rebuilt sand plotter, as well as selling Minimatrixes, Labs Cards, and Re:loads!

The faire is on from 10AM to 5:30 PM, at the Brighton Corn Exchange. Lots more details, and an opportunity to avoid lines and buy tickets ahead of time, can be found here.