Download Shareware and Freeware Software for Windows, Linux, Macintosh, PDA

line Home  |  About Us  |  Link To Us  |  FAQ  |  Contact

Serving Software Downloads in 976 Categories, Downloaded 29.988.314 Times

i2c-tiny-usb 2007-01-05

  Date Added: November 22, 2010  |  Visits: 1.191

i2c-tiny-usb

Report Broken Link
Printer Friendly Version


Product Homepage
Download (152 downloads)

i2c-tiny-usb is a open source/open hardware project. Attach any I2C client chip (thermo sensors, AD converter, displays, relais driver, ...) to your PC via USB ... quick, easy and cheap! Drivers for Linux, Windows and MacOS available. The i2c-tiny-usb project is an open source/open hardware project. The goal of i2c-tiny-usb is to provide a cheap generic i2c interface to be attached to the usb. It is meant as a replacement for those simple and cheap printer port to i2c adapters. A USB solution has several advantages incl. the built-in power supply and a more future proof interface. Furthermore no cpu intense bitbanging is required on the host side. This USB solution even requires less parts than some printer port solutions. While the i2c-tiny-usb was developed under and for Linux it also works under Windows and MacOS X. A windows demo driver and demo application is included to get you started immediately. The i2c-tiny-usb project is based on: The Linux USB project and the Linux i2c implementation The windows driver and test application are based on the libusb-win32 AVR-USB, a pure software implementation of USB for the AVR platform USBtiny, another software usb implementation for the AVR The hardware of the i2c-tiny-usb interface consists of the Atmel AVR ATtiny45 CPU, a cheap and easy to obtain microcontroller with 4 KBytes flash (of which ~2k are used in this application) and 256 Bytes RAM. The processor is surrounded by few other parts. The USB interface The USB interface of the i2c-tiny-usb interface is based on a pure software implementation and uses two pins of the AVR (PB0 and PB2). This software implementation supports low speed USB only which is signalled to the PC by resistor R1. The I2C interface is implemented using a bitbanging approach. The hardware supported twi interface of the attiny45 is bound to hardware pins at the chip that are required for USB operation and can thus not be used for I2C. The bitbanging I2C interface being used instead may not be fully I2C compatible and thus not every I2C client chip may function correctly at this bus. No incompatibilities have been reported so far. The i2c-tiny-usb provides a software adjustable i2c clock delay allowing to configure the i2c clock. The default delay is 10us. Due to additional delays in the i2c bitbanging code this results in a i2c clock of about 50kHz. For simplicity reasons all USB transfers are done via the control endpoint. Since the avr usb library does only support low speed devices it cannot use bulk transfers which are specified for high and full speed devices only. Low speed devices support so called interrupt transfers which are limited to a preset bandwidth while control transfers can use any free bandwidth (if theres any at all). The device therefore uses control transfers for all of its communication. This requires some additional limitation to prevent multiple driver software (e.g. the kernel driver and the libusb based test application) to access the device at the same time. Under Linux this can be achieved by selecting certain access request types. This kind of access control may not be possible under other operating systems. Power consumption The whole device is a so called bus powered device. This means that the complete device is powered directly from USB. Therefore the AVR and one or more I2C client chips are powered from the USB VBUS signal. The adapter itself draws less than 10mA and reports this to the host via its USB descriptors. The device is able to power I2C client chips as well. But since these chips vary in power consumption it is not possible to correctly include their demands into the device descriptors. Its your responsibility to keep an eye on the total power supply and especially to make sure that the entire device does not exceed the total USB limit of 500mA. It is planned for future firmware versions to make the reported power consumption software configurable so the value can easily be adopted to the real power demands of the entire device. Kernel driver The i2c-tiny-usb is meant to be used with Linux. It comes with a Linux kernel driver that bridges between the USB and I2C subsystems in the Linux kernel. The driver then attaches to the USB device and make the i2c bus available to the i2c subsystem. Thus the entire setup is transparent to client applications like the lm_sensors framework and no special client chip drivers are required. Instead the drivers already present in the linux kernel are used with the i2c-tiny-usb as well. With e.g. the ds1621 temperature sensors used in the prototype the output of sensors may e.g. look like this: ds1621-i2c-2-48 Adapter: i2c-tiny-usb at bus 003 device 017 temp: +21.50°C (low = +15.0°C, high = +10.0°C) ALARM (HIGH).

Requirements: No special requirements
Platforms: Linux
Keyword: Avr Device Driver Hardware Interface Kernels Linux System Usb
Users rating: 0/10

License: Freeware Size: 204.8 KB
I2C-TINY-USB RELATED
Automation Tools  -  Linux X10 universal device driver 2.1.4
Linux X10 universal device driver (also known as Project WiSH) provides a /dev interface to an X10 network through a combination of Linux kernel modules and daemons. It is intended to provide a standard interface and syntax to shell script...
102.4 KB  
Utilities  -  me2600 device driver 2600-1.0-alpha
me2600 device driver is a Linux kernel modulesupporting the me2600 AD/DA-board produced by Meilhaus GmbH.
286.72 KB  
Utilities  -  GNU digital audio player 0.2b
Gnu Digital Audio Player (GNUdap) is a project to build an userspace driver to interface with proprietary-protocol usb mp3 players and mass storage devices. Currently GNUdap supports the CHIC MP10, CHIC MP30, CHIC Symphony from "Perstel,Inc." and...
225.28 KB  
Utilities  -  AR-B1047 SRAM Linux device driver 1.0
AR-B1047 SRAM Linux device driver represents SRAM chips installed on the Acrosser AR-B1047 board as a set of files that may be accessed by user application and used for data that must be saved during power loss.
20.48 KB  
Utilities  -  DKMS 2.0.13
DKMS comes from Dynamic Kernel Module Support and is a framework where device driver source can reside outside the kernel source tree so that it is very easy to rebuild modules as you upgrade kernels. This allows Linux vendors to provide driver...
71.68 KB  
Audio Tools  -  MMUSBAUDIO 2006.05.31
MMUSBAUDIO (formerly known as USBUA100) is a Linux kernel module device driver for the Roland / Edirol desktop audio devices. It works with next devices: UA-1EX UM-1 UA-5 UA-100 SC-8850 The Advanced Linux Sound Architecture (ALSA)...
21.5 KB  
Utilities  -  PCMate Free Driver Backup 6.6.4
PCMate Free Driver Backup is a device driver backup utility designed to backup driver of system for safekeeping in case of system crash or reinstallation of Windows. This free driver backup program identifies all the hardware in the system,...
3.47 MB  
Utilities  -  cwfloppy 0.5.2
cwfloppy is a Linux device driver for the Catweasel Advanced Floppy Controller manufactured by Individual Computers. The Catweasel is a versatile Shugart bus controller, i.e., it can control floppy drives. It is extremely flexible and can be...
84.99 KB  
Backup Utilities  -  Backer for Linux 3.102
Linux device driver and utilities for the Backer video tape backup device manufactured by Danmere (now 4-TV).
143.36 KB  
Utilities  -  Linux Mobile System 1.0
Linux Mobile System project (LMS) is a full Linux system whose support is the new USB Flash Memory Drives. The intention is to boot any PC with USB support with our system and therefore we will have every administration and analysis applications...
3.9 MB  
NEW DOWNLOADS IN LINUX SOFTWARE, UTILITIES
Linux Software  -  Polling Autodialer Software 3.4
ICTBroadcast Auto Dialer software has a survey campaign for telephone surveys and polls. This auto dialer software automatically dials a list of numbers and asks them a set of questions that they can respond to, by using their telephone keypad....
488 B  
Linux Software  -  Total Video Converter Mac Free 3.5.5
Total Video Converter Mac Free developed by EffectMatrix Ltd is the official legal version of Total Video Converter which was a globally recognized brand since 2006. Total Video Converter Mac Free is a free but powerful all-in-one video...
17.7 MB  
Linux Software  -  Skeith mod_log_sql Analyzer 2.10beta2
Skeith is a php based front end for analyzing logs for Apache using mod_log_sql.
47.5 KB  
Linux Software  -  SLAX 6.0+
Slax is a modern, portable, small and fast Linux operating system with a modular approach and outstanding design. Despite its small size, Slax provides a wide collection of pre-installed software for daily use, including a well organized graphical...
190 KB  
Linux Software  -  GTK+ 2.5
GTK+, which stands for the GIMP Toolkit, is a library for creating graphical user interfaces for the X Window System. It is designed to be small, efficient, and flexible. GTK+ is written in C with a very object-oriented approach. Language bindings...
60 MB  
Utilities  -  LPAR2RRD 4.95-4
LPAR2RRD collects performance data and generates actual, historical and future trends utilization graphs of your virtual environment. It is agentless (it receives everything from the management stations like vCenter or HMC). The product supports...
2.25 MB  
Utilities  -  Nessconnect 1.0.2
Nessconnect is a GUI, CLI and API client for Nessus and Nessus compatible servers. With an improved user interface, it provides local session management, scan templates, report generation through XSLT, charts and graphs, and vulnerability trending.
819.2 KB  
Utilities  -  Dynamic Power Management 2.6.16
The Dynamic Power Management (DPM) project explores technologies to improve power conservation capabilities of platforms based on open source software. Of particular interest are techniques applicable to running systems, adjusting power parameters...
30.72 KB  
Utilities  -  Ethernet bridge tables 2.4.37.9
Ethernet bridge tables - Linux Ethernet filter for the Linux bridge. The 2.4-ebtables-brnf package contains the ebtables+bridge-nf patch. Be sure to check out the ebtables hp. This site also contains the arptables userspace tool.
40.96 KB  
Utilities  -  SaraB 1.0.0
SaraB works with DAR (Disk ARchive) to schedule and rotate backups on random-access media (i.e. hard drives, CDs, DVDs, Zip, etc. Basically anything except magnetic tapes.) This reduces hassle for the administrator by providing an automatic backup...
20.48 KB