Some NanoNote Hardware Experiments
paul at boddie.org.uk
Sat Jun 1 13:29:06 EDT 2013
Werner's statistics round-up has once again prompted me to post to the list.
This time, it's about some experiments I have been doing with the Ben's 8:10
port, with the Universal Breakout Board (or equivalents) being used to
interface to various devices.
First off, some work to interface with an Arduino USB Host shield:
Since such shields can provide USB Host capabilities to devices like the
Arduino Duemilanove, it's not too surprising that they can do so for the Ben
as well, although the Arduino's ATmega CPU provides hardware support for SPI,
which is the mechanism used to talk to the shield's MAX3421E controller, and
thus the Arduino is actually more capable than the Ben in this respect.
So far, I've only really managed to replicate some of the capabilities that
the Arduino libraries provide, but basic communication is in place, and it's
possible to get information from devices and to manage connections and
disconnections. Managing the different USB workflows and supporting things
like the Human Interface Device framework is tedious work, and the next step
might reasonably be supporting this hardware as a kernel module instead,
delegating the tedious stuff to code hopefully already written.
Another thing I got to play with recently was an e-paper display module using
a screen from Pervasive Displays:
There is documentation and code available for displays from this vendor, and
it seems that they are trying to get people to use their equipment. (Given
that I've seen e-paper displays as shelf pricing labels in at least one
supermarket, they may be getting somewhere.) I'm not sure whether my display
module is open hardware, but Adafruit do seem to sell a similar module which
might well be.
Neither of these projects are necessarily practical, and they may not inform
us very much about hypothetical future NanoNotes. For USB, one would choose a
SoC with built-in USB Host support which is exposed to the outside world; an
e-paper display is useful as a secondary screen, but would be frustrating as
the primary screen for this kind of device. Nevertheless, they do provide
some experience with the technologies involved and help us decide whether
they would be worthwhile supporting in future.
I hope this is interesting to some of you, at least.
More information about the discussion