HamShield Arduino Library and Example Sketches
Go to file
morgan bdd06ce525 updated readme 2016-07-03 13:23:03 -07:00
examples updated kiss 2016-05-04 11:35:06 -07:00
AFSK.cpp Rewrite of framing to always be pure frames, no escapes. 2015-07-13 18:53:18 -06:00
AFSK.h Rewrite of framing to always be pure frames, no escapes. 2015-07-13 18:53:18 -06:00
DDS.cpp Allow refclkOffset to be set on the fly in DDS and the calibration tool. 2015-07-04 18:31:18 -06:00
DDS.h Default refclk now 9600, remove old table and serial debugging. 2015-07-13 18:50:48 -06:00
HamShield.cpp update for I2C 2016-06-30 20:09:11 -07:00
HamShield.h update for I2C 2016-06-30 20:09:11 -07:00
HamShield_comms.cpp update for I2C 2016-06-30 20:09:11 -07:00
HamShield_comms.h update for I2C 2016-06-30 20:09:11 -07:00
KISS.cpp Minor fixups to KISS, now append FCS. Remove 19200 refclk for now. 2015-07-13 21:16:22 -06:00
KISS.h updated for HS05 2015-11-23 08:54:10 -08:00
LICENSE Applying license 2015-07-06 16:55:28 -07:00
README.md updated readme 2016-07-03 13:23:03 -07:00
SimpleFIFO.h Initial import of the main code from https://github.com/slepp/AX25 2015-06-30 19:22:46 -06:00
keywords.txt Added RSSI parameter to waitForChannel to allow setting what should be defined as a clear channel. Updated FM Beacon example to use the settable parameter and print what the measured RSSI was in case of failure. 2015-06-20 15:22:33 -07:00

README.md

HamShield

Please note that I2C communications are not officially supported.

The RF transciever on the HamShield has trouble driving large I2C bus capacitances (over 40pF). What this means is that it works well if the transciever is on the same physical PCB as the microcontroller (assuming good layout), but works poorly as a daughterboard.

We recommend that you use the master branch, which uses a custom communications protocol. That custom protocol does not have the same bus capacitance limitation. You're welcome to play around with I2C if you want, but it may cause instability issues.

Hardware Changes Necessary

The i2c-comms branch is not intended for use with a stock HamShield.

To use i2c communications with a HamShield 09 or above, you must first make several hardware changes to the board.

  1. Remove R2
  2. Short the pads of R17 (either with a wire or a low value resistor).

Then make sure that you pull the nCS pin correctly. Changing nCS changes the I2C address of the HamShield:

  • nCS is logic high: A1846S_DEV_ADDR_SENHIGH 0b0101110
  • nCS is logic low: A1846S_DEV_ADDR_SENLOW 0b1110001

HamShield Arduino Library and Example Sketches

This repository is meant to be checked out into your Arduino application's libraries folder. After reloading the application, the library and example sketches should be available for use.

For overview, help, tricks, tips, and more, check out the wiki:

https://github.com/EnhancedRadioDevices/HamShield/wiki