User Manual
Version 1.1
2011-07-15
deRFnode and deRFgateway
dresden elektronik
ingenieurtechnik gmbh
Enno-Heidebroek-Str. 12
12 7 Dr
n
rm  n
Tel.: +49 351 31 85 00
Fax: +49 351 3 18 50 10
wireless@dresden-elektronik.de
www. r
n- l k r nik.
Page 50 of 56
(3) Power down the radio transceiver:
This step depends on the radio module used. If you have a deRFmega128module, the
respective power-reduction register is to be used:
#include <power.h>
PRR1 |= (1<
// power down transceiver
Any other Atmel radio transceiver (e.g AT86RF212 on deRFarm7 series radio modules)
has a internal state machine which may be switched to sleep state by toggling the levels
on the SLP_TR and /RST lines:
-     SLP_TR L, /RST L ?/SPAN> force RESET state
-     wait 1?/SPAN>s, then set /RST H ?/SPAN> TRX_OFF state
-     put SLP_TR H ?/SPAN> SLEEP state
-     leave SLP_TR H (setting it back to L would result in transition back to TRX_OFF)
The following diagram (taken from AT86RF212s datasheet) illustrates the procedure:
Figure 36: State control (source: ATMEL" datasheet of AT86RF212 transceiver datasheet)
(4) Remove any unneeded external cabling such as a level shifter or your JTAG program-
ming adapter (if your application allows).
(5) Switch off the onboard LEDs.
(6) Put the onboard Flash to Deep-Power-Down-Mode.
(7) Disable the onboard USB FIFO (only deRFnode/gateway for AVR):
On boards equipped with a FTDI USB FIFO, the USB transceiver may be disabled only
by physically disconnecting the USB cable. Due to a hardware issue it may still happen,
that the octal driver (IC9) energizes back the FIFO (IC8). To avoid that, ensure, that (in
contrast to (8)), RD and WR always drive high current.
(8) Ensure that the MCU GPIO pins do not drive current.
Due to circuit design, some GPIO pins are set to GND, others have external pull-ups or
pull downs applied which are required for proper operation, but when sleeping, they still
drive unnecessary current. Regardless of the used MCU, this may be achieved by first
setting the pins to be outputs; internal pull-ups enabled. Then read back the level on
each pin - if it differs from the expected state (being H due to enabled pull-ups), disable