Download Latest Version openfhss_sourceforge-2011-09-25.zip (23.0 MB)
Email in envelope

Get an email when there's a new version of OpenFHSS

Home
Name Modified Size InfoDownloads / Week
openfhss_sourceforge-firmware-only-snapshot-2011-10-09.tgz 2011-10-09 2.0 MB
openfhss_sourceforge-2011-09-25.zip 2011-09-25 23.0 MB
README 2011-07-05 6.9 kB
emc_testing_plots.zip 2011-04-02 1.1 MB
Totals: 4 Items   26.1 MB 3
/////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2010, Valhalla Wireless, Todd Elliott  http://valhalla-wireless.com/
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are met:
//     * Redistributions of source code must retain the above copyright
//       notice, this list of conditions and the following disclaimer.
//     * Redistributions in binary form must reproduce the above copyright
//       notice, this list of conditions and the following disclaimer in the
//       documentation and/or other materials provided with the distribution.
//     * Neither the name of the Valhalla Wireless nor the
//       names of its contributors may be used to endorse or promote products
//       derived from this software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
// DISCLAIMED. IN NO EVENT SHALL Valhalla Wireless BE LIABLE FOR ANY
// DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
// ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// History
// creation t.elliott 2010
//


What is OpenFHSS?
------------------------------------------------------------


Project Development Site For Valhalla Wireless OpenFHSS. 
OpenFHSS is a community-based effort that includes hardware, 
firmware, and documentation for a 902-928MHz ISM, 50-channel, 
FHSS frequency hopping spread spectrum modem.

Features:

    * High Performance, Long-Range Frequency Hopping Spread Spectrum Modem
    * Synchronous, Multi-Hop Repeater Chains
    * Ethernet Bridge Mode
    * Automatic, over-the-air firmware updates. Master updates all slaves simultaneously
    * 4uA MCU initiated sleep current
    * 2ppm stability for frequency and system timing reference.
    * Industrial quality enclosure, connectors
    * Real-Time Data Collection System with user defined scripts
    * LM3S6965 32-Bit Stellaris ARM-core MCU, CC1101 transceiver, CC1190 LNA/PA
    * Highly immune to multipath fading, interference
    * 5mS Channel Dwell Time
    * -107dBm sensitivity, 27.1dBm output power enables communications range in tens of kilometers. Depending on installation, ranges of >50km are easy to achieve
    * Applications include battery-powered data collection, long-range internet communications. Quality Skype phone calls have been achieved with point-to-points links.


Donations:
To donate via paypal, please follow this link:
http://sourceforge.net/project/project_donations.php?group_id=513759

To donate using Bitcoin (BTC), please use the following address:
1LfnFyk55PGgymLAaWPWoeTWYasYiYbJQA

We really appreciate contributions to the project.  Thanks!



Related Links:
------------------------------------------------------------
OpenFHSS: https://sourceforge.net/projects/openfhss/
Valhalla Wireless:  http://valhalla-wireless.com/
News: http://valhalla-wireless.com/blog/
Support: http://valhalla-wireless.com/forums/viewforum.php?f=3
------------------------------------------------------------


LATEST VERSION - Please use subversion
-----------------------------------------

To download code from subversion: 
svn co https://openfhss.svn.sourceforge.net/svnroot/openfhss openfhss 


JTAG / IN-CIRCUIT-DEBUGGER
-----------------------------------------
We use the ICD board that comes with the Stellaris LM3S9b92 general development board
Connectors on the VikingXE design are compatible with ribbon cables on this dev board.


PREPARING DEV ENVIRONMENT
-----------------------------------------

Links

crosstool-ng  (building the toolchain made easy..  very nice!.)

http://ymorin.is-a-geek.org/projects/crosstool

OpenOCD project  (debugger / flashing).  Need the latest from GIT repository to get the interface and target definitions for the Stellaris parts.   This is done with git clone  (see below)

http://developer.berlios.de/projects/openocd

Open FTDI driver for accessing the FT2232 on the Stellaris boards

http://www.intra2net.com/en/developer/libftdi/download.php

#install crosstool-ng
bzip2 -d crosstool-ng-1.8.1.tar.bz2
tar -xf crosstool-ng-1.8.1.tar
cd crosstool-ng-1.8.1/
sudo apt-get install awk
sudo apt-get install gawk
sudo apt-get install bison
sudo apt-get install flex
sudo apt-get install automake
sudo apt-get install libtool
sudo apt-get install libncurses-dev
sudo apt-get install zlib1g-dev
./configure
make
sudo make install
mkdir /home/user1/arm-eabi/
cd /home/user1/arm-eabi/
#copy sample file for baremetal build to new directory
cp /home/user1/downloads/crosstool-ng-1.8.1/samples/arm-bare_newlib_cortex_m3_nommu-eabi/crosstool.config .config
#build the entire toolchain
ct-ng build

#install open FTDI drivers
tar -xzf libftdi-0.18.tar.gz
cd libftdi-0.18/
sudo apt-get install libusb-dev
./configure
make
sudo make install
ldconfig

#install latest OpenOCD
git clone git://openocd.git.sourceforge.net/gitroot/openocd/openocd openocd-git
cd openocd-git/
./bootstrap
./configure --enable-ft2232_libftdi
make
sudo make install

#add toolchain built by crosstool-ng to path
PATH="/home/user1/x-tools/arm-bare_newlib_cortex_m3_nommu-eabi/bin:${PATH}"
export PATH

#edit PREFIX in StellarisWare/makedefs to use new toolchain
PREFIX=arm-bare_newlib_cortex_m3_nommu-eabi

#build entire StellarisWare distribution
cd StellarisWare
make clean
make

#start openocd with stellaris configuration

#lm3s9b9x with external FTDI ICD board
#sudo openocd -f openocd-git/tcl/interface/luminary-icdi.cfg -f openocd-git/tcl/target/stellaris.cfg

#lm3s6965 with on-board FTDI
sudo openocd -f openocd-git/tcl/interface/luminary.cfg -f openocd-git/tcl/target/stellaris.cfg

#flash mcu with some code at address 0x00000 and execute
telnet localhost 4444
halt
flash write_image erase /tmp/main.bin 0
reset


COMPILING
-----------------------------------------
The OpenFHSS project in its current form is written to run on the TI Stellaris family of MCU.  It depends on the TI StellarisWare driverlib.

You will need to download StellarisWare from here:  http://www.luminarymicro.com/products/software_updates.html

To compile with GNU GCC, move the OpenFHSS folder to a project subdirectory within StellarisWare such as:   StellarisWare/boards/ek-lm3s6965/openfhss

From within the openfhss project directory:

make clean
make

Source: README, updated 2011-07-05