FREAKDUINO 900 MHz Long Range Wireless Arduino-Compatible
Transcript of FREAKDUINO 900 MHz Long Range Wireless Arduino-Compatible
FreakLabs FREAKDUINO 900 MHz Long Range
Wireless Arduino-Compatible Prototyping Platform v2.1a
Datasheet
Page 1FREAKDUINO 900 MHz Long Range v2.1A
Document Revision HistoryDate Description2013-09-25 v2.1A
Document release
Page 2FREAKDUINO 900 MHz Long Range v2.1A
SpecificationsThe FreakLabs Freakduino 900 MHz long range wireless board is designed for communicating over long distances as well as rapid pro-totyping, evaluation, and deployment of wireless devices at low cost. It combines the ease-of-use of the Arduino IDE and toolchain, compat-ibility with a rich assortment of peripherals in the Arduino shield form factor, and an integrated, amplified 802.15.4 wireless radio for inexpen-sive prototyping and testing of a wireless device.
The base board has all the functionality of an Arduino-based system with a wireless radio and is an inexpensive way to start playing with Arduino designs and wireless communications. This board also has additional amplifiers on the radio to boost both the transmitted and received signal. The result is a total increase of over 30 dB for the total link budget which means the range is drastically increased compared to a bare radio.
It also has optional features such as battery regulation circuitry, a low-cost bottom-mounted battery case, or a ruggedized enclosure with integrated battery case.
QuicK SpecS
MCU: ATMega328P
Memory: 32 kB Flash/2 kB RAM
Communications: 802.15.4 wireless, USB
Radio Amplifiers: Tx: 500 mW (27 dBm), Rx: 11 dB
Expansion: Ardu-ino-compatible shield connector
Power: Ext 5VDC, USB, Battery (op-tional)
Current Con-sumption: Sleep: ~350 uA, Active: 70 mA
Options: Rugge-dized enclosure, battery regulation circuit, standalone battery case
Page 2
Page 3FREAKDUINO 900 MHz Long Range v2.1A
This board is designed to introduce people to wireless sensor networking inexpensively and with-out having to deal with complex toolchains, protocol stacks, and software. It’s fully compatible with the Arduino IDE and toolchain which offers a single click compile and download and a rich ecosystem of open source software and tutorials available on the internet. The electrical specifica-tions and connector form factor are also compatible with the original Arduino hardware so that the board can interface with the large assortment of Arduino peripheral shields. The availability of third party peripheral shields and open source software allows this board to be used for many diverse applications.
Enhancements were also added to this board to increase functionality. The addition of an inte-grated wireless radio based on the 802.15.4 protocol (same radio protocol as the XBee) allows for wireless control of devices or wireless sensor data collection. Battery circuitry was added so that it could function as a true wireless node without any external power cables. The board is also fitted to a ruggedized enclosure so that the design can be transported safely or deployed in remote set-tings without worrying about damaging the circuit.
The design has also been optimized for low power. It consumes approximately 200 uA in power down/sleep mode at 3.0V which is the voltage supplied by 2 AA alkaline batteries. It consumes approximately 300 uA at 2.4V which is the voltage supplied by 2 AA NiMH rechargeable batter-ies. With proper power management, it’s possible to have the device live for months on a single pair of batteries.
RadioThe main addition to this board is the integrated wireless radio. The radio is based on the 802.15.4 wireless protocol and is the same protocol used by XBee modules and Zigbee devices. The radio operates at 900 MHz and also contains an on-board RF front end for amplification. The transmit amplifier boosts the transmit signal from 10 mW with the bare radio to 500 mW. The receiver amplifier boosts the received signal by 11.7 dB, although there’s typically a 6 dB gain when noise figure and other factors are taken into account.
It comes with an RP-SMA antenna connector which is a standard antenna connector commonly
Page 4FREAKDUINO 900 MHz Long Range v2.1A
found on Wi-Fi routers. An external antenna was chosen over other options such as a chip anten-na or printed antenna because of the improved range and variety of available antennas.
The radio driver software and protocol stack are fully open source and available as an Arduino library. The protocol stack is simplified to three main library functions to make wireless commu-nications as simple as possible. Those functions are: init, send, and receive. This makes it easy to use the radio as a simple extension of a serial port or to set up a peer-to-peer star network where each device can talk with any other device within listening range.
There are also many benefits to using 802.15.4 for communications. At 900 MHz, the signal is able to travel long distances and penetrate thick walls. There are a large variety of antennas in different sizes, shapes, and power for both frequencies. Omnidirectional antennas such as the standard whip antennas on Wi-Fi routers give moderate range and allow transmission from all directions. Directional antennas can also be used for greatly improved range if the direction of communications is fixed. The 900 MHz radio also has allows other ways to boost range such as changing the modulation from OQPSK to BPSK.
Some other benefits of using IEEE 802.15.4 is robustness such as automatic acknowledge and retries and functionality such as auto-discard of frames that don’t match the particular network address, node address, or have their data corrupted. Auto retry means that if the receiver doesn’t acknowledge that it received a packet, the transmitter will retry sending the packet up to some maximum number specified by the user. The auto checking of addresses and checksum means that the radio does most of the heavy lifting to ensure the packet arrives uncorrupted and the user doesn’t have to do manual filtering.
The chipset used also has a hardware accelerator for AES-128 encryption. AES-128 is a strong encryption standard used by many government agencies to secure communications, especially wireless communications. The system also supports a true random number generator based on ambient RF signal levels. The chibi library includes support for AES-128 encryption using the on-board encryption engine as well as random number generation using the radio hardware.
Since 802.15.4 is also used for many communications protocols including Zigbee and 6LoW-PAN, the Freakduino can be configured as a wireless protocol sniffer and used in conjunction with Wireshark to form a wireless protocol analyzer for 802.15.4 based protocols. This application is very useful to debug software for these protocols such as smart meter communications or for security testing of 802.15.4 based communications.
Since all software and hardware is open source, all registers and all features are available to the user. It allows for more flexibility for advanced users and a convenient prototyping and test plat-form for users that are considering an 802.15.4 wireless design of their own.
Page 5FREAKDUINO 900 MHz Long Range v2.1A
PowerThere are three options to provide power to the board. The most common is via the USB, how-ever the board can also be powered via an external adapter connected to the DC jack. This is especially useful when more power is needed than can be provided by the USB. Finally, when no external power is available, the board can also be battery powered.
The USB connector provides up to 500 mA of current at 5V and can directly power the board for most applications. It’s convenient when the device is connected to a PC since the USB to serial converter also allows for communications with the PC.
For designs with higher current requirements, such as driving motors or high power LEDs, an ex-ternal DC adapter can be used. The adapter should be a minimum of 6V and a maximum of 14V.
Note: The power input is determined by the position of the jumper below the DC input jack. The markings on the jumper indicate whether the USB or DC input is being used.
The board also has two separate connectors for batteries. One of the connectors allows a battery case to be mounted on the bottom side of the board. This is convenient since the battery case is directly mounted to the board and allows for battery operation in tight spaces.
The other connector is located near the bottom of the board and is a 2-wire connector that fea-tures mating and polarization. It’s technically called a JST XH series connector and was chosen to allow easy attachment of external battery cables without worrying about reversing the positive and negative connections. It also makes connecting and disconnecting the battery case of the enclo-sure to the board much easier.
Page 6FREAKDUINO 900 MHz Long Range v2.1A
There is also a battery regulation circuit on the board. The reason this is needed is because the battery voltage varies based on the battery type and amount of charge left. The voltage regulation allows either standard alkaline or rechargeable NiMH batteries to be connected to the board and will generate a stable 5V output. The battery regulation circuit has up to two parallel stages. Each stage can provide current output of 200 mA for a maximum of 400 mA. This is fine for most sensors, however power-hungry devices like motors and power LEDs may exceed the maximum current output.
It’s also possible to monitor the battery voltage through one of the analog input pins on the MCU. When combined with wireless communications, its possible to get early warning when the battery starts to get low.
There is a power switch on the board that selects between external line power or battery power. The switch can also be used as an OFF switch if either line power or battery power is not present.
There is also a 2-pin DIP switch on the board that enables or disables the LED indicators. If the board is externally powered, then it’s fine to enable both LEDs, but when the board is battery powered, the LEDs will cause the battery to drain faster and should be disabled. The DIP switch allows the user to easily disable the LEDs during battery operation.
Page 7FREAKDUINO 900 MHz Long Range v2.1A
Connectors, Jumpers and SwitchesThe board contains a number of connectors, jumpers, and switches:
1. Power Input Jumper. The power input jumper is used to select between using the external DC jack or the USB to power the board.
2. Main Power Switch. The main power switch toggles between using line power or battery power. When no battery is connected, this would also serve as the OFF position. The opposite is true when no line power is attached.
3. LED Enable Switch. The LED enable DIP switch is used to enable or disable the main power LEDs for 5V and 3.3V supplies. LEDs may consume unecessary power during battery operation so the DIP switch allows the user to enable/disable them when needed.
4. External Antenna Connector. The external antenna connector is an RP-SMA con-nector that attaches to a compatible antenna.
5. Battery Connector. The battery connector is optionally installed and comes with the battery boost kit.
6. Voltage Converter Output Disable. This is only used when programming the bootloader on the board to prevent collisions on the SPI bus. This jumper should rarely be used and only when flashing the bootloader or using an in-system programmer (ISP).
Page 8FREAKDUINO 900 MHz Long Range v2.1A
Due to having three ways to power the board, the power switch and power jumper settings need to be configured for your desired input. The switch and jumper is labeled to make things easy, but here’s a quick reference chart on how to configure the power input. The positions in the table cor-respond to the labels on the board.
Main Power Switch Power Input JumperUSB Power USB/DC USB PWRExternal DC Power USB/DC DC PWRBattery Power BATT Ignored
Page 9FREAKDUINO 900 MHz Long Range v2.1A
Installing the chibiArduino LibraryOnce you have the board configured properly, it’s time to install the library. The first thing you need to do is get the Arduino IDE and install it. It can be found at the Arduino site. From there, it becomes OS specific:Download the chibiArduino library. You can get it from the FreakLabs website: http://www.freaklabs.org/index.php/chibiArduino.html
From there, it’s OS-specific:
Windows1. Copy the chibiArduino library zip file. Go to the Arduino root directory and then go into the libraries directory:
2. Create a folder called chibiArduino. Paste the chibiArduino library zip file in the folder you just cre-ated. Then unzip the chibiArduino library.
Page 10FREAKDUINO 900 MHz Long Range v2.1A
3. The library should now be installed. We’re going to verify that it’s in there properly. Start up the Arduino IDE. If it is already open, close it and re-start it. It only checks for new folders and libraries on startup so this is required. Once it starts up, go to the File/Examples menu item and look at the exam-ples listing. You should see the chibiArduino examples:
Page 11FREAKDUINO 900 MHz Long Range v2.1A
Linux1. Download the chibiArduino library zip file. Go to your <ARDUINO_ROOT>/libraries folder and cre-ate a folder called chibiArduino inside. Move the chibiArduino zip file into the chibiArduino folder and unzip.
2. Once the file is unzipped inside the chibiArduino folder, the library should be installed. Now we’re going to check to make sure it’s seen properly. Start up the Arduino IDE. If it’s already open, restart the IDE since it only scans for new folders and libraries on startup. Go to the Files/Examples menu item and look at the examples listing. You should see the chibiArduino examples. Select any of the exam-ples to open.
Page 12FREAKDUINO 900 MHz Long Range v2.1A
Mac OSX1. Create a folder called “libraries” in the /Documents/Arduino folder on your system. Make sure the Arduino IDE is installed first. Create a folder called “chibiArduino” in the Documents/Arduino/libraries directory. Unzip the chibiArduino library in this folder.
Page 13FREAKDUINO 900 MHz Long Range v2.1A
2. Once the chibiArduino library is installed, then we can check to make sure the Arduino IDE sees it. Start the Arduino IDE. If it’s already open, restart the Arduino IDE. It only scans for new folders and libraries on startup so this step is important. Then go to the Files/Examples menu item and check the Examples listings. You should see the chibiArduino examples.
Page 14FREAKDUINO 900 MHz Long Range v2.1A
Installing the Board Support PackageAlong with installing the library, a board support package is also required to be installed. This extra step makes it possible to identify which board is being used, which is especially useful since there are multiple variations on the Freakduino design depending on features.
Windows1. First download the FreakLabs board support package located here:
http://www.freaklabsstore.com/pub/freaklabs_hw.zip
2. In Windows, go to the Arduino root directory. You should see the “hardware” directory in the root.
3. Put the board support package in the “<ARDUINO_ROOT>/hardware/arduino” directory. It’s best to also make a backup of your “boards.txt” file.
4. Unzip the file from the board support zip file into its the directory. It should overwrite the current “boards.txt” file which is why its best to backup the current boards.txt file before performing this op-eration.
Page 15FREAKDUINO 900 MHz Long Range v2.1A
5. It will also add the following two directories to the “variants” directory. These board variants are for the “freakduino” and “freakduino-lr” and contain information that will allow the Arduino IDE to add the particular boards to the Tools/Board menu. This is the view inside the “<ARDUINO_ROOT>/hard-ware/arduino/variants” directory.
6. Verify that the boards are installed properly. Open the Arduino IDE, go to the Tools/Board menu option and check to see that the boards are installed properly. You can also remove any unwanted boards from the “boards.txt” file to avoid cluttering the Tools/Board menu.
Linux1. Download the FreakLabs board support package located here:
http://www.freaklabsstore.com/pub/freaklabs_hw.zip
Page 16FREAKDUINO 900 MHz Long Range v2.1A
2. Go to the Arduino IDE root directory. You should see the “hardware” folder.
3. Put the board support package in the “<ARDUINO_ROOT>/hardware/arduino” directory. It’s best to also make a backup of your “boards.txt” file. Unzip the board support zip file in this directory. It will overwrite the the current “boards.txt” file so its best to have this backed up.
4. It will also add the following two directories to the “variants” directory. These board variants are for the “freakduino” and “freakduino-lr” and contain information that will allow the Arduino IDE to add the particular boards to the Tools/Board menu. This is the view inside the “<ARDUINO_ROOT>/hard-ware/arduino/variants” directory.
Page 17FREAKDUINO 900 MHz Long Range v2.1A
5. Verify that the boards are installed properly. Open the Arduino IDE, go to the Tools/Board menu option and check to see that the boards are installed properly. You can also remove any unwanted boards from the “boards.txt” file to avoid cluttering the Tools/Board menu.
Mac OSX1. First download the FreakLabs board support package located here:
http://www.freaklabsstore.com/pub/freaklabs_hw.zip
2. In Mac OSX, right-click or ctrl-click on the Arduino icon to get the context menu. Choose “Show Package Contents” and navigate to the “Contents/Resources/Java” menu. This will take you to the Arduino IDE root directory.
Page 18FREAKDUINO 900 MHz Long Range v2.1A
3. In the Arduino IDE root directory, navigate to the “<ARDUINO_ROOT>/hardware/arduino” direc-tory.
4. Put the board support package in the “<ARDUINO_ROOT>/hardware/arduino” directory. It’s best to also make a backup of your “boards.txt” file. Unzip the board support zip file in this directory. It will create a new directory with the name of the zip file. Inside that directory, you should find the “boards.txt” file and a folder called “variants”.
5. While inside the newly created directory, copy the new “boards.txt” file into the “<ARDUINO_
Page 19FREAKDUINO 900 MHz Long Range v2.1A
ROOT>/hardware/arduino” directory. Go into the variants directory and copy the folders “freakduino” and “freakduino-lr”. Paste those folders into the “<ARDUINO_ROOT>/hardware/arduino/variants” directory. It should look like the following.
6. Verify that the boards are installed properly. Open the Arduino IDE, go to the Tools/Board menu option and check to see that the boards are installed properly. You can also remove any unwanted boards from the “boards.txt” file to avoid cluttering the Tools/Board menu.
Page 20FREAKDUINO 900 MHz Long Range v2.1A
Uploading CodeAt this point, you should be able to upload code to the board. This is the procedure.
1. Open the IDE and add code. We’re going to take a shortcut and open up one of the default examples that comes with the Arduino software. Go to the “File/Examples/chibiArduino” menu and select “chibi_ex04_cmdline”.
2. Select the board. Go to the “Tools/Board” menu and select “Freakduino Long Range, 5.0V, 8MHz, w/ATMega328P”.
Page 21FREAKDUINO 900 MHz Long Range v2.1A
3. Select the serial port. Plug the USB connector into the Freakduino board and se-lect the serial port that it’s connected to.
4. Click on the “Upload” icon. The code should compile and start uploading. You’ll also see the serial port’s TX and RX LEDs blinking on the Freakduino Long Range board.
Page 22FREAKDUINO 900 MHz Long Range v2.1A
Congratulations! You just uploaded your code to the Freakduino Long Range board :)
Page 23FREAKDUINO 900 MHz Long Range v2.1A
CompatibilityThe FREAKDUINO 900 MHz Long Range board is essentially an Arduino-based system and a shield integrated together. This means that the peripheral will require using some dedicated pins for the wireless functionality.
Two pins on the analog input connector are not available for use except for standard digital I/O. These are pins Analog 2 and Analog 3. Analog 2 controls the sleep mode and Analog 3 controls the chip select for communications between the microcontroller and radio IC. If the wireless functionality is not used, these pins are available as standard digital I/O but not as analog inputs. If possible, its best to avoid using these pins.
If the wireless functionality is being used, the SPI bus is also required to communicate with the radio. That means that digital pins 10-12 (PB3 to PB5 or MOSI, MISO, and SCLK) will be dedi-cated SPI pins. Please be especially careful when using the AUX LED on the board. It is located on the SCLK pin required by the SPI. If the radio will be used, then the AUX LED should not be used in the sketch.
If there is any question about compatibility with a particular shield, please post to the FreakLabs forums or email [email protected].
LicenseThe FREAKDUINO 900 MHz Long Range hardware design is licensed under the Creative Com-mons Attribution-ShareAlike license v3.0. Attribution is an option and not a requirement. If you do attribute any derivatives of this design to FreakLabs, I’ll think you’re really cool, though :)
DisclaimerThe FREAKDUINO 900 MHz Long Range board is NOT FCC approved. It is designed to comply with FCC Part 15 rules. However this board is not in a finished product form and is only intended for experimental and research/development purposes. If you wish to use this board in an actual product, you will need to attain certification with the appropriate local regulatory body for the complete system. Additionally, please use the wireless equipment in a responsible manner with regard for others and your surroundings.
TroubleshootingThere are some common problems that people run into when using the Freakduino board. The following is a list of issues people have had and the fixes for them:
1. Serial port does not work at speed specified in Arduino sketch. This is most likely
Page 24FREAKDUINO 900 MHz Long Range v2.1A
due to having the wrong “Board” setting in the Arduino IDE. Make sure the board “Freak-duino Long Range, 5.0V, 8 MHz, w/ATMega328P” is selected in the Tools/Board menu.
2. Radio is not working or displays “RADIO NOT INITIALIZED PROPERLY” on serial terminal. First, make sure that the voltage converter disable jumper is not mounted. It should not be on in normal operation. The next thing to try when you see that message is to load the example sketch “chibi_ex4_cmdline” with nothing connected to the Freakduino. If the error message disappears, then its likely that some pins needed for radio communications (like the SPI pins) are also being used in the sketch. One of the main culprits of this issue is when a sketch uses the AUX LED on the board. The LED is standard on Arduinos but is unfortunately connected to the SCLK pin required by SPI. If the radio is going to be used, the AUX LED should not be used. Please see the “Compat-ibility” section of this document.
If the error message still shows with the example sketch, then there is likely a hardware problem. Please contact me through the FreakLabs website, email me at chris(at)freaklabs(dot)org, or post on the forums.
SchematicsSchematics can be found on the following page:
Page 25FREAKDUINO 900 MHz Long Range v2.1A
55
44
33
22
11
DD
CC
BB
AA
RESET_NAREF
RESET_N
PB2/SSEL_N/OC1B
PB3/MO
SI/OC2A
PB4/MISO
PB1/OC1A
PB0/ICP1
PD2/INT0PD3/INT1/O
C2BPD4/T0PD5/T1/O
C0BPD6/O
C0A/AIN0PD7/AIN1
PC1/ADC1PC2/ADC2PC3/ADC3PC4/ADC4/SDAPC5/ADC5/SCL
PC0/ADC0
PB4/MISO
PB5/SCLKPB3/M
OSI/O
C2A
RESET_NPB5/SCLKPB4/M
ISOPB3/M
OSI/O
C2A
PB1/OC1A
PB0/ICP1
PC0/ADC0PC1/ADC1PC2/ADC2PC3/ADC3PC4/ADC4/SDAPC5/ADC5/SCL
PD0/RXDPD1/TXDPD2/INT0PD3/INT1/O
C2BPD4/T0PD5/T1/O
C0BPD6/O
C0A/AIN0PD7/AIN1
PD0/RXDPD1/TXD
DTR_N
PB5/SCLKPB5/SCLK
PB2/SSEL_N/OC1B
VCC5_LED
VCC3_LED
5VLED
3VLED
AREF
PB5/SCLK
LOG
IC_OE_N
PB4/MISO
PB3/MO
SI/OC2A
VBAT
PB5/SCLK
RADIO_INT
PC3/ADC3
RADIO_INT
PC2/ADC2
VBUSRVBATR
VCC3VCC_IN
VCC5
VCC5
VCC5
VCC5
VCC5
VCC5
VCC5
VCC5
VCC5VCC3
VCC3
VCC5VCC3
VCC3
VBUS
MCU_RX
MCU_TX
DTR_N
SCLKSLP_TR
MISO
INTM
OSI
RADIO_SEL_N
VBAT
RESET_N
HGM
Project Title:Size
Rev
Date:Sheet
of
Page Title: v2.1a
FREAKDUINO CHIBI 900 M
HZ LONG
RANGE
B
15
Friday, August 02, 2013
MCU
Project Title:Size
Rev
Date:Sheet
of
Page Title: v2.1a
FREAKDUINO CHIBI 900 M
HZ LONG
RANGE
B
15
Friday, August 02, 2013
MCU
Project Title:Size
Rev
Date:Sheet
of
Page Title: v2.1a
FREAKDUINO CHIBI 900 M
HZ LONG
RANGE
B
15
Friday, August 02, 2013
MCU
ISP CONNECTORLOGIC CONVERSION FOR3.3V/5V INTERFACE
LED CONTROL - THIS MAKESIT POSSIBLE TO TURN OFFTHE LEDS. ESPECIALLYIMPORTANT WHEN RUNNING ONBATTERIES.
USE JUMPER ONLY FORINITIAL PROGRAMMING
CHANGES:1. HGM NEEDS TO GO TO LOGIC LEVEL TRANSLATOR
R11220R11220
C300.1 uFC300.1 uF
D1BLUED1BLUE
R13
10k
R13
10k
C340.1 uFC340.1 uF
R1220R1220
JP5
JP6/THRU
JP5
JP6/THRU
3 2 1456
R10
10k
R10
10k
JP41X2JP41X2
21
SW1
DIPSWITCH4/DIP
SW1
DIPSWITCH4/DIP
12 3
4
C3322uF/6.3VC3322uF/6.3V
R14
10k
R14
10kR15100k
R15100kH3H3X2
H3H3X2
12
34
56
JP2JP2
3 2 1456
S2PUSHBUTTON/SM
D
S2PUSHBUTTON/SM
D
13
24
D6REDD6RED
C320.1 uFC320.1 uF
C310.1 uFC310.1 uF
U7
ATMEG
A328-QFP32
U7
ATMEG
A328-QFP32
PD3/OC2B/INT1
1PD4/XCK/T0
2
GND3 VCC 4GND5 VCC 6
PB6/XTAL1/TOSC1
7
PB7/XTAL2/TOSC2
8
PD5/OC0B/T1
9PD6/O
C0A/AIN010
PD7/AIN111
PB0/CLKO/ICP1
12PB1/O
C1A13
PB2/SS/OC1B
14PB3/O
C2A/MO
SI15
PB4/MISO
16PB5/SCK
17
AVCC 18
ADC619
AREF20
GND21
ADC722
PC0/ADC023
PC1/ADC124
PC2/ADC225
PC3/ADC326
PC4/ADC4/SDA27
PC5/ADC5/SCL28
PC6/RESET29
PD0/RXD30
PD1/TXD31
PD2/INT032
JP6
JP8/THRU
JP6
JP8/THRU
3 2 145678
C160.1 uFC160.1 uF
R71k
R71k
R2220R2220
U6
FXMA108 U6
FXMA108
VCCA 1
A02
A13
A24
A35
A46
A57
A68
A79
GND10
OE
11
B712
B613
B514
B415
B316
B217
B118
B019
VCCB 20GND21
JP3
JP8/THRU
JP3
JP8/THRU
3 2 145678
R16100k
R16100k
R61k
R61k
D2REDD2RED
Page 26FREAKDUINO 900 MHz Long Range v2.1A
55
44
33
22
11
DD
CC
BB
AA
Project Title:
Size
Rev
Date:
Sheet
of
Page Title:
v2.1aFR
EA
KD
UIN
O C
HIB
I 900 MH
Z LON
G R
AN
GE
A
25
Friday, August 02, 2013
MIS
CP
roject Title:S
izeR
ev
Date:
Sheet
of
Page Title:
v2.1aFR
EA
KD
UIN
O C
HIB
I 900 MH
Z LON
G R
AN
GE
A
25
Friday, August 02, 2013
MIS
CP
roject Title:S
izeR
ev
Date:
Sheet
of
Page Title:
v2.1aFR
EA
KD
UIN
O C
HIB
I 900 MH
Z LON
G R
AN
GE
A
25
Friday, August 02, 2013
MIS
C
GND TESTPOINTS FOR DEBUGGING
H2
MO
UN
T_HO
LE/M
OU
NT_H
OLE
H2
MO
UN
T_HO
LE/M
OU
NT_H
OLE
1
H4
MO
UN
T_HO
LE/M
OU
NT_H
OLE
H4
MO
UN
T_HO
LE/M
OU
NT_H
OLE
1
JP7
1X2
JP7
1X2
21
H5
MO
UN
T_HO
LE/M
OU
NT_H
OLE
H5
MO
UN
T_HO
LE/M
OU
NT_H
OLE
1
H1
MO
UN
T_HO
LE/M
OU
NT_H
OLE
H1
MO
UN
T_HO
LE/M
OU
NT_H
OLE
1
Page 27FREAKDUINO 900 MHz Long Range v2.1A
55
44
33
22
11
DD
CC
BB
AA
VCC_INDC_IN
VBAT
BOO
ST_OUT
VCC5_IN
DIODE_IN0
DIODE_IN1
VCC_IN
VBUS
VCC5
VCC3
VBAT
Project Title:Size
Rev
Date:Sheet
of
Page Title: v2.1a
FREAKDUINO CHIBI 900 M
HZ LONG
RANGE
B
35
Friday, August 02, 2013
POW
ERProject Title:
SizeRev
Date:Sheet
of
Page Title: v2.1a
FREAKDUINO CHIBI 900 M
HZ LONG
RANGE
B
35
Friday, August 02, 2013
POW
ERProject Title:
SizeRev
Date:Sheet
of
Page Title: v2.1a
FREAKDUINO CHIBI 900 M
HZ LONG
RANGE
B
35
Friday, August 02, 2013
POW
ER
+C13
100uF/16V+
C13100uF/16V
C1922uF, 6.3VC1922uF, 6.3V
D5DO
-35D5
DO-35
S1
SWITCH_SLIDE/THRU-3
S1
SWITCH_SLIDE/THRU-3
VR1
NJM2391- 5.0
NJM2845-5.0
LP-2950, DK#LP2950CDT-5.0-ND
VR1
NJM2391- 5.0
NJM2845-5.0
LP-2950, DK#LP2950CDT-5.0-ND
VIN1
GND2 VOUT
3
JP1JP3/THRU_VERTJP1JP3/THRU_VERT
BATT2
BH321-1P
BATT2
BH321-1P
+2
-1
L647 uH
L647 uH
12
L547 uH
L547 uH
12
U3
TC1264
U3
TC1264
VIN1
GND2
VOUT
3
GND4
+C14100 uF
+C14100 uF
D7DO
-35D7
DO-35
+C20
100 uF +C20
100 uF
U8
HT7750A U8
HT7750A
GND1 VOUT
2LX
3
U5
HT7750A U5
HT7750A
GND1 VOUT
2LX
3
BATT1JST-XH2P
BATT1JST-XH2P
+ 2
- 1
J2
POW
ERJACK/THRU-3
J2
POW
ERJACK/THRU-3
123
Page 28FREAKDUINO 900 MHz Long Range v2.1A
55
44
33
22
11
DD
CC
BB
AA
TX_EN/DIG3
RX_EN/DIG4
SMA
TX
UNBALLNA_IN
TR_SW
RX
TRX
RFN_BAL
RFP_BAL
RFN
RFP
XTAL2XTAL1
AVCC3VCC3
AVCC3
VCC3
AVCC3
AVCC3
VCC3AVCC3
AVCC3
INT
SLP_TR
SCLKRADIO
_SEL_N
MISO
MO
SI
RESET_N HGM
Project Title:Size
Rev
Date:Sheet
of
Page Title: v2.1a
FREAKDUINO CHIBI 900 M
HZ LONG
RANGE
B
45
Friday, August 02, 2013
RADIOProject Title:
SizeRev
Date:Sheet
of
Page Title: v2.1a
FREAKDUINO CHIBI 900 M
HZ LONG
RANGE
B
45
Friday, August 02, 2013
RADIOProject Title:
SizeRev
Date:Sheet
of
Page Title: v2.1a
FREAKDUINO CHIBI 900 M
HZ LONG
RANGE
B
45
Friday, August 02, 2013
RADIO
SPRINKLE THESE AROUNDGROUND SEPARATION. CANALSO USE 12 PF CAPS IFNEEDED.
C712 pF
C712 pF
C2812 pFC2812 pF
C25
0.1 uF
C25
0.1 uF
R170 R170
C1112 pF
C1112 pF
FB1
FB/0805
FB1
FB/0805
12
C11 uF
C11 uF
BLN1
RF BALUN-0900BL18B100 BLN1
RF BALUN-0900BL18B100
GND
1
UNBAL2
GND
3BAL1
4
NC5
BAL26
C2912 pFC2912 pF
R9
DNI R9
DNIU2CC1190
U2CC1190
GND1
PA_OUT
2
GND3
TR_SW4
LNA_IN5
HGM
6LNA_EN
7PA_EN
8
GND9
LNA_OUT
10
PA_IN11
GND12
VDD_LNA 13
BIAS14
VDD_PA2 15VDD_PA1 16
GND17
ANT1SM
AANT1
SMA
11
GND2 GND3
GND4 GND5
C2268 pF
C2268 pF
C3
DNI
C3
DNI
GND
Y1
NX3225SA, 15PPM
GND
Y1
NX3225SA, 15PPM
124 3
C947 pF
C947 pF
C50.1 uF
C50.1 uF
U4
AT86RF212
U4
AT86RF212
DIG3
1DIG
42
AVSS3
RFP4
RFN5
AVSS6
DVSS7
RST8
DIG1
9DIG
210
SLP_TR11
DVSS12 DVDD 13DVDD 14
DEVDD 15
DVSS16
CLKM17
DVSS18
SCLK19
MISO
20
DVSS21
MO
SI22
SEL23
IRQ24
XTAL225
XTAL126
AVSS27 EVDD 28AVDD 29AVSS30
AVSS31AVSS32
DVSS33
C812 pF
C812 pF
L13.3 nH
L13.3 nH
12
R200 R200
C2168 pF
C2168 pF
C26
0.1 uF
C26
0.1 uF
R53.3kR53.3k
C24
0.1 uF
C24
0.1 uF
R190 R190
L41.5 nH
L41.5 nH
12
L310 nHL310 nH
1 2
L27.5 nH
L27.5 nH
12
C15
0.1 uF
C15
0.1 uF
C23
0.1 uF
C23
0.1 uF
C1022uF/6.3VC1022uF/6.3V
C27
0.1 uF
C27
0.1 uF
C4
3.0 pF
C4
3.0 pF
C18
12 pF
C18
12 pF
R180 R180
C12
12 pF
C12
12 pF
R12
DNI
R12
DNI
C60.001 uF
C60.001 uF
Page 29FREAKDUINO 900 MHz Long Range v2.1A
55
44
33
22
11
DD
CC
BB
AA
RX
LED
_N
DMDP
TXLE
D_N
VB
US
VB
US
VB
US
VB
US
VB
US
MC
U_R
XM
CU
_TX
DTR
_N
Project Title:
Size
Rev
Date:
Sheet
of
Page Title:
v2.1aFR
EA
KD
UIN
O C
HIB
I 900 MH
Z LON
G R
AN
GE
A
55
Friday, August 02, 2013
US
BP
roject Title:S
izeR
ev
Date:
Sheet
of
Page Title:
v2.1aFR
EA
KD
UIN
O C
HIB
I 900 MH
Z LON
G R
AN
GE
A
55
Friday, August 02, 2013
US
BP
roject Title:S
izeR
ev
Date:
Sheet
of
Page Title:
v2.1aFR
EA
KD
UIN
O C
HIB
I 900 MH
Z LON
G R
AN
GE
A
55
Friday, August 02, 2013
US
B
D8
GR
EE
ND
8G
RE
EN
U9FT231X
S
U9FT231X
S
DTR
_N1
RTS
_N2
VCCIO 3
RX
D4
RI_N
5
GND6
DS
R_N
7D
CD
_N8
CTS
_N9
CB
US
210
US
BD
+11
US
BD
-12
3V3O
UT
13
RE
SE
T_N14
VCC 15GND16
CB
US
117
CB
US
018
CB
US
319
TXD
20
C36
0.1 uF
C36
0.1 uF
J3U
SB
-Mini-A
BJ3
US
B-M
ini-AB
D+
3D
-2
+5V1
GN
D5
ID4
SHLD6 SHLD7 SHLD8 SHLD9
C35
0.1 uF
C35
0.1 uF
R23
330R
23330
R22
330R
22330
D9
GR
EE
ND
9G
RE
EN
Page 30FREAKDUINO 900 MHz Long Range v2.1A
PCB LayoutPCB layout file order:
1. Mechanical Dimensions
2. Top Layer
3. Bottom Layer
4. Assembly Drawing - Silkscreen View
5. Assembly drawing - Reference Designator View
Page 33FREAKDUINO 900 MHz Long Range v2.1A
Bill of MaterialsQuan-tity
Reference Manufacturer Part Number Description
1 ANT1 ChangHong SMA-02-113-TGG RP-SMA Connector
1 BATT1 JST JST-XH2P 2-pin mated, polarized connector, male
1 BATT2 COMF BH321-1P 2-AA battery case
1 BLN1 Johanson Technol-ogy
0900BL18B100E 900 MHz, 100/50 ohm balun
1 C1 Various 1 uF 1 uF/50V3 C3,R9,R12 DNI1 C4 Various 3.0 pF/50V, 0603 RF
14
C5, C15, C16, C23, C24, C25, C26, C27, C30, C31, C32, C34, C35, C36
Various 0.1 uF/50V, 0603
1 C6 Various 0.001 uF/50V, 0603
7 C7, C8, C11, C12, C18, C28,
Various 12 pF/50V, 0603
C291 C9 Various 47 pF/50V, 06032 C10, C19, C33 Various 22uF/6.3V, 08051 C13 Various 100uF/16V, electrolytic2 C14, C20 Various 100 uF/35V, electrolytic2 C21, C22 AVX 06035A680JAT2A 68 pF/50V, 0603, RF1 D1 Various Blue LED, 06032 D2, D6 Various Red LED, 06032 D5, D7 Vishay BAT43 Schottky Diode2 D8, D9 Various Green LED, 06031 FB1 Various Ferrite Bead, 0603
1 H3 Various H3X2 3x2 Straight male header, 0.100”
1 JP1 Various JP3/THRU_VERT 1x3 Straight male header, 0.100”
2 JP3, JP6 Various JP8/THRU 1x8 Straight female header, 0.100”
2 JP4, JP7 Various JP2/THRU 1x2 Straight male header, 0.100”
1 JP2, JP5 Various JP6/THRU 1x6 Straight female header, 0.100”
Page 34FREAKDUINO 900 MHz Long Range v2.1A
1 J2 4UCON 5537 DC Power Jack, 2.0 mm center conductor
1 J3 4UCON 9558 USB Mini-AB connector
1 L1 Johanson Tech-nology
L-14C3N3SV4T 3.3 nH RF inductor
1 L2 Taiyo Yuden HK10057N5J-T 7.5 nH1 L3 Panasonic ELJ-RE10NGFA 10 nH1 L4 Panasonic ELJ-RE1N5DFA 1.5 nH2 L5, L6 Various 47 uH inductor, 200 mA
3 R1, R2, R11, R22, R23
Various 220 ohms, 0603
1 R5 Various 3.3 kohm, 06032 R6, R7 Various 1 kohm, 06033 R10, R13, R14 Various 10 kohms, 06032 R15,R16 Various 100 kohms, 06034 R17, R18, R19, R20 Various 0 ohms, 06031 SW1 Various 2-input DIP switch1 S1 Various Right angle slide switch
1 S2 Various SMD SPST Tactile Switch/Pushbutton
1 U2 TI CC1190 900 MHz RF Front End IC
1 U3 Microchip TC1264-3.3 3.3V Regulator1 U4 Atmel AT86RF212 900 MHz, 802.15.4 radio2 U5, U8 Holtek HT7750A Voltage level converter1 U6 Fairchild Semi FXMA108 5V Boost Converter
1 U7 Atmel ATMEGA328-QFP32
AVR Microcontroller
1 U9 FTDI FT231XS USB to Serial Converter1 VR1 NJRC NJM2391- 5.0 5.0V Regulator
1 Y1 NDK NX3225SA, 15PPM
16 MHz crystal, 15 ppm