Changes

Installing ChipWhisperer/Required Tools - Linux

3,206 bytes added, 16:45, 10 February 2017
Created page with "== Python == On Linux, installing Python & all the associated packages is much easier than on Windows. Typically you can install them from a package manager, if you are us..."
== Python ==
On Linux, installing Python & all the associated packages is much easier than on Windows. Typically you can install them from a package manager, if you are using Fedora Core or similar, just type:

<pre>$ sudo yum install python27 python27-devel python27-libs python-pyside numpy scipy python-configobj pyusb
$ sudo pip install pyqtgraph</pre>
On Ubuntu or similar:

<pre>$ sudo apt-get install python2.7 python2.7-dev python2.7-libs python-numpy python-scipy python-pyside python-configobj python-setuptools python-pip
$ sudo pip install pyusb
$ sudo pip install pyqtgraph
</pre>

== Getting the AVR Toolchain ==
Many of the tutorials use the AVR XMEGA microcontrollers as a target. In order to compile code for these targets, you'll need the AVR toolchain. This is easy to set up:
<pre>
sudo apt-get install avr-libc gcc-avr
</pre>

== Hardware Drivers ==

The ''driver'' for Linux is built in, however you need to allow your user account to access the peripheral. To do so, you'll have to make a file called <code>/etc/udev/rules.d/99-newae.rules</code> . The contents of this file should be:

<pre># CW-Lite
SUBSYSTEM=="usb", ATTRS{idVendor}=="2b3e", ATTRS{idProduct}=="ace2", MODE="0664", GROUP="plugdev"

# CW-1200
SUBSYSTEM=="usb", ATTRS{idVendor}=="2b3e", ATTRS{idProduct}=="ace3", MODE="0664", GROUP="plugdev"

# CW-305 (Artix Target)
SUBSYSTEM=="usb", ATTRS{idVendor}=="2b3e", ATTRS{idProduct}=="c305", MODE="0664", GROUP="plugdev"

# CW-CR2
SUBSYSTEM=="usb", ATTRS{idVendor}=="04b4", ATTRS{idProduct}=="8613", MODE="0664", GROUP="plugdev"
SUBSYSTEM=="usb", ATTRS{idVendor}=="221a", ATTRS{idProduct}=="0100", MODE="0664", GROUP="plugdev"
</pre>
Then add your username to the plugdev group:

<pre>$ sudo usermod -a -G plugdev YOUR-USERNAME</pre>
And reset the udev system:

<pre>$ sudo udevadm control --reload-rules</pre>
Finally log out &amp; in again for the group change to take effect.

You can always find the latest version of this file in [https://app.assembla.com/spaces/chipwhisperer/git/source/master/hardware/99-newae.rules GIT].


== FTDI Hardware Driver (SASEBO-W, SAKURA-G, SASEBO-GII) ==

'''This is only required for supporting FTDI-connected hardware''' such as the SASEBO-W, SAKURA-G, SASEBO-GII. This is NOT required for the ChipWhisperer Capture Rev2.

First, you need to install the D2XX drivers &amp; python module. See the section [[#Optional_Packages]].

Currently, there is a bit of a hack needed. You have to create (or modify if it exists) the file <code>/etc/udev/rules.d/99-libftdi.rules</code> . The following modifications will cause '''any FTDI-serial device to stop working''', so backup the existing file! The contents of this file should be:

<pre>SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6010", MODE="0664", GROUP="plugdev"
ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6010", RUN+="/bin/sh -c 'echo $kernel &gt; /sys/bus/usb/drivers/ftdi_sio/unbind'"</pre>
Then add your username to the plugdev group (if not already done):

<pre>$ sudo usermod -a -G plugdev YOUR-USERNAME</pre>
And reset the udev system:

<pre>$ sudo udevadm control --reload-rules</pre>
Finally log out &amp; in again for the group change to take effect.
Approved_users
510
edits