Cut&paste of Till Harbaum's i2c_tiny_usb device for Linux into the LittleWire firmware tree.
Branch: master
Clone or download
Pull request Compare This branch is 4 commits ahead, 1 commit behind littlewire:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
firmware
hardware
.gitignore
Readme.md

Readme.md

Aside: Why isn't this project more active? Other than RC calibration stuff under investigation in #1, this software is feature-complete and has no other documented bugs. If you find problems, try to make fixes into a pull request, but in any case please document your frustration and/or what happened—or you'll be maintaining your fork forever.

i2c_tiny_usb on LittleWire

This is a cut&paste of Till Harbaum's i2c_tiny_usb device for Linux into the LittleWire firmware tree, forked from littlewire/Little-Wire. This port is useful because there has been a Linux i2c_tiny_usb kernel driver since ~2006.

i2c_tiny_usb requires a 12MHz crystal not present in LittleWire. The LW hardware uses an internal 16.5MHz system clock calibrated from USB timing instead. (I would not use the LittleWire hardware in places where temperature/clock drift was a concern. If you see timing problems, please add to your issue (and/or write PRs) to #1.)

Note that you will probably need to edit usbconfig.h to set proper vendor/device IDs. (I've received no response from Till Harbaum as to whether a compatible project could use the i2c_tiny_usb IDs. Take that fact as you will.)

It's possible to build a kernel driver for LittleWire directly, but the USB interrupt endpoint model complicates error handling.

See https://github.com/nopdotcom/i2c_tiny_usb-on-Little-Wire/wiki/BuildingOnLinux for an example of how to build this firmware.