From: Jon Smirl <jonsmirl@gmail.com>
To: Netdev <netdev@vger.kernel.org>
Subject: USB attached microcontroller with net interface
Date: Mon, 12 Jul 2010 09:55:20 -0400 [thread overview]
Message-ID: <AANLkTilFk5FJENjQ-mafUeqvs9V4zcxhY-PEW3mcCcYK@mail.gmail.com> (raw)
I have a USB stick with a microcontroller and a 802.15.4 radio on it.
The USB stick is fixed as a standard USB serial device by the hardware
but the device has a unique USB ID. What is the best strategy for
integrating this stick into Linux?
One option is the linux-zigbee model. The microcontroller runs a small
program which implements a private serial line protocol. On the Linux
side there is a device driver that understands this protocol and
implements a net device. The serial line protocol is implemented as a
line discipline - which requires a user space component to hold the
ttyUSBx device open. The protocol passes things like send packet,
receive packet, etc.. This implies that the 6lowpan/RPL support in
Linux gets finished.
Second option is to run TCP in the microcontroller. This model has
already been implemented in Contiki (a small OS for microcontrollers).
Contiki supports two network interfaces - SLIP and radio. It routes
everything between the interfaces. 6lowpan/RPL are running on the
microcontroller. After you plug the device in you use ldattach on
ttyUSBx to get SLIP running over the USB serial port.
The 802.15.4 nets are running IPv6. A complicating factor is routing.
Say you have a building covered by a 802.15.4 RPL mesh. Now you plug
802.15.4 USB sticks into some PCs and create multiple gateways into
the RPL network. You want to use the closest gateway since mesh hops
are quite slow.
Is there another, better option? I'd like to get this working without
requiring a user space component.
--
Jon Smirl
jonsmirl@gmail.com
reply other threads:[~2010-07-12 13:55 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=AANLkTilFk5FJENjQ-mafUeqvs9V4zcxhY-PEW3mcCcYK@mail.gmail.com \
--to=jonsmirl@gmail.com \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).