i2cdriver/README.md

62 lines
1.7 KiB
Markdown
Raw Normal View History

2019-02-10 15:07:27 +00:00
![logo](/images/logo.png)
[![Build Status](https://travis-ci.org/jamesbowman/i2cdriver.svg?branch=master)](https://travis-ci.org/jamesbowman/i2cdriver)
I2CDriver is a tool for controlling any I2C device from your PC's USB port,
and can also monitor and capture I2C traffic.
It connects as a standard USB serial device, so there are no drivers to install.
2019-03-08 00:26:13 +00:00
On the main site
[i2cdriver.com](https://i2cdriver.com),
there are drivers for
2019-02-10 15:07:27 +00:00
* Windows/Mac/Linux GUI
* Windows/Mac/Linux command-line
* Python 2 and 3
* Windows/Mac/Linux C/C++
![front](/images/hero.jpg)
Full documentation is at
[i2cdriver.com](http://i2cdriver.com).
2019-03-03 23:53:46 +00:00
For developers: How to make a release
-------------------------------------
2019-03-03 23:53:46 +00:00
To release Python:
2019-03-10 01:21:11 +00:00
rm -rf dist/*
python setup.py sdist
twine upload dist/*
2019-03-03 23:53:46 +00:00
2019-03-10 01:21:11 +00:00
To build the Windows installer, you first need to build the two executables
``i2ccl.exe`` and ``i2cgui.exe`` then use an NSIS script to create the installer.
2019-03-03 23:53:46 +00:00
On Linux cross-compile ``i2ccl``:
cd c
make -f win32/Makefile
On Windows first make sure that you can run the GUI on the command-line, e.g.
python python\samples\i2cgui.py
(You may need to install i2cdriver, wxPython and pySerial).
Then build the GUI executable using ``pyinstaller``:
2019-03-03 23:53:46 +00:00
cd python\samples
pyinstaller --onefile --windowed --icon=../../images/i2cdriver.ico i2cgui.py
This builds the executable in ``python\samples\dist\i2cgui.exe``.
The Windows installer is built with NSIS (Nullsoft Scriptable Install System). Download and install it.
Copy the two executables ``i2ccl.exe`` and ``i2cgui.exe`` into ``nsis/``.
2019-03-03 23:53:46 +00:00
Then build the installer with NSIS:
cd nsis
"C:\Program Files\NSIS\makensis.exe" i2cdriver.nsi
The script ``go.bat`` in ``nsis`` has an example complete flow.