Setup

Hardware to Have

You will need the following hardware:

  • A laptop running Microsoft Windows XP SP3 or Microsoft Windows 7 (64-bit has been tested).
  • One of the supported hardware platforms.
  • A programmer for this platform, for example:
    • the MSP430 USB-Debug-Interface MSP-FET430UIF for TI MSP430-based platforms
    • the I-jet for Cortex-M-based plaforms

If you feel comfortable going through these steps with a laptop running an operating system different from the ones listed above, feel free to use that one, but understand that we might not be able to provide support.

Software to Install

Please make sure to complete the following steps. This should not take more than 30 minutes.

Step 1: TortoiseGit

The source code is stored in a public repository on the Internet. To download it to your computer, you need a Git client. We recommend TortoiseGit.


The OpenWSN source code is hosted by GitHub, so you're free to use any Git client.

Installing.

  1. Download and Install PuTTy.
  2. Create a pair of ssh keys (public/private) by executing PuttyGen.
  3. Save both keys in a folder.
  4. Optional: disable your Windows firewall or antivirus. It may warn you during the install process of Git.
  5. Download and Install TortoiseGit.
  6. Download and Install msysgit.
  7. visit GitHub at: https://github.com/openwsn-berkeley.
  8. Create a GitHub account if you don't have one.
  9. Login into your Github account and upload your ssh Public Key (generated at step 3)
    • Go to Account Settings - SSH Keys and copy your key there.
    • Your key should look like:
      ssh-rsa AAAABXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX123412341234123
      (if words ssh-rsa are not in your key you need to add them manually)

  10. Create a folder where OpenWSN will be cloned. For example C:\Users\my_username\Documents\openwsn. Enter that folder.
  11. Go to C:\Users\my_username\Documents\openwsn and right-click in the (empty) directory. Select Git Clone.
  12. Configure Git. Set the OpenWSN git repository url: 
    1. https://github.com/openwsn-berkeley/openwsn-fw
    2. https://github.com/openwsn-berkeley/openwsn-sw
    3. https://github.com/openwsn-berkeley/openwsn-hw
    4. https://github.com/openwsn-berkeley/openwsn-docs
    5. https://github.com/openwsn-berkeley/openwsn-utils
  13. Check Load Putty Key and browse to the private key generate by PuttyGen.
  14. Press OK.

Testing.

Your openwsn/ directory should now contain a number of sub-directories. Congratulations, you just downloaded the entire OpenWSN source code!

Step 2: Silicon Labs Drivers

This step is only required if you are using a platform (e.g. GINA) which uses a Silicon labs for serial communication.

The GINA-Basestation board uses the Silicon Labs CP2102 UART-to-USB bridge chip to interface to your computer's USB port. You need to install the corresponding drivers for the CP2102 on your computer to enable this communication.

Installing.

  1. Go to the SiLabs CP2102 support page and download the drivers (for Windows XP/S2K3/Vista/7 users: CP210x_VCP_Win_XP_S2K3_Vista_7.exe|6.6MB);
  2. Install the drivers, leaving the default options;

Testing.

If you open up Windows Program Manager (Control PanelPrograms and Features), you should see two programs referring to the Silicon Labs drivers:

Silicon Laboratories CP320x USB to UART Bridge (Driver Removal)
Silicon Laboratories CP320x VCP Drivers for Windows XP/2003 Server/Vista/7

Step 3: Python

Python is the programming language used to create the graphical user interface which runs on the laptop and displays information to the user coming from the GINA eco-system

Installation instructions.

Install Python 2.7 from http://www.python.org/ and install with default settings.

Step 4: PySerial

PySerial is the extension Python needs to be able to communicate with the GINA-Basestation board over a (virtual) serial port.

Installation instructions.

Install Pyserial 2.6. While other versions might work, this version is known to work well with Python 2.7

Step 6: Some Toolchain

If you wish to develop custom firmware, you need one of the toolchains listed in Toolchains.