GithubHelp home page GithubHelp logo

mlab-modules / usbi2c01 Goto Github PK

View Code? Open in Web Editor NEW
5.0 4.0 3.0 15.02 MB

USB device to I²C master adapter with Linux kernel support

Home Page: https://www.mlab.cz/module/USBI2C01/

License: GNU General Public License v3.0

HTML 100.00%
usb-hid usb-devices i2c i2c-bus i2c-interface i2c-master mlab mlab-module kicad kicad-pcb

usbi2c01's Introduction

USBI2C01A - USB to I²C master converter

USBI2C01A is USB to I²C master adapter, it provides you ability to connect almost any I2C/SMBUS sensor or other device to a computer trought USB. Converter is based on CP2112 integrated USB brigde with native Linux kernel support. Therefore device create kernel accesible I2C interface intstantly on almost any Linux distributions. If your computer doesn't support CP2112 converter, it's possible to use the USB-HID interface of the converter. Thanks to that, the device can be used with other operating systems as well, as Windows or Android.

USBI2C01A

The module is connected to computer using a USB-B connector, which provides a quality connection to the computer. The module contains three LED diodes that indicate power and communication via the I2C bus in the default configuration. The communication pins are doubled, so you will have enough space to connect your circuit.

I2C is connected to the 5-pin header in the MLAB I2C pinout. This is specific in that the rotation of cable (connector) will only result in not functioning state. However, there is no risk of electrical damage. Using jumpers, it is possible to set the power supply voltage in the I2C bus connector. This can either be 5V from USB, which is protected by a 750 mA fuse, or 3.45V from the integrated LDO with a maximum allowed load of 100 mA.

The converter is equipped with a set of GPIO ports that can be controlled via USB. In addition to communication via I2C, you can, for example, check the status of digital signals or control them with software. Similarly, you can use LEDs on the module to indicate your own states because they are software-controllable.

Parameters

  • USB-HID to SMBus (I2C) master bridge
  • 8 GPIO ports (2 equipted with LED indicators)
    • Configurable as Input/Output, Open-drain/Push-pull
    • Configurable as clock output (48 MHz to 94 kHz)
  • Selectable 5V or 3.3V power supply
  • USB-B - FullSpeed USB support (up to 12 Mbps)
    • Powered from USB
  • Support in linux kernel
  • Configurable clock speed, 7bit i2c adressing
  • Ready to use

USBI2C01A USB to I2C master converter

I sell on Tindie

How to get this device?

This device is sold by Universal Scientific Technologies s.r.o.. You can buy it online trought Tindie MLAB store or interested in more our products, do not be afraid to contact us.

Drivers and software

The USB device behaves as a standard USB-HID device, so you do not need non-standard drivers. It also allows control of devices in the I2C system bus.

In case of Linux the drivers are available in kernel. Therefore the module creates the system-wide I2C bus. This is the same interface that you can known from thesingle-board computers like Raspberry Pi. Thanks to this, you will be able to run your Raspberry Pi programs directly on your computer.

Usage

The functional examples are available in pymblab control library. The details are available on MLAB wiki. The Pymlab library supports accessing the device both through the I2C interface in the Linux kernel and through the USB-HID interface. Thanks to this, you can use these modules on different operating systems.

Hardware

schematics

usbi2c01's People

Contributors

kaklik avatar kasbah avatar roman-dvorak avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

usbi2c01's Issues

I2C Pull-up

In some applications, the external pull-ups to CP2112 could be helpful.
Therefore there would be an improvement in the option to add pull-up for some applications, where the devices itself does not have their own.
Suitable options could be activation by jumper or the optional possibility to solder it on the PCB.
Alternatively, there could be some weak pull-ups like 47k on PCB soldered directly from manufacturing.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.