Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 11 additions & 1 deletion Firmware/radio/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,17 @@ main(void)
feature_opportunistic_resend = param_get(PARAM_OPPRESEND)?true:false;
feature_golay = param_get(PARAM_ECC)?true:false;
feature_rtscts = param_get(PARAM_RTSCTS)?true:false;

g_board_frequency= param_get(PARAM_MAIN_FREQUENCY);
switch (g_board_frequency)
{
case FREQ_433:
case FREQ_470:
case FREQ_868:
case FREQ_915:
break;
default:
g_board_frequency = FREQ_433;
}
// Do hardware initialisation.
hardware_init();

Expand Down
5 changes: 3 additions & 2 deletions Firmware/radio/parameters.c
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@
/// with an 8-bit XOR checksum appended to the end of the flash range.
///


#include "board_info.h"
#include "radio.h"
#include "tdm.h"
#include <flash_layout.h>
Expand All @@ -65,7 +65,8 @@ __code const struct parameter_info {
{"LBT_RSSI", 0},
{"MANCHESTER", 0},
{"RTSCTS", 0},
{"MAX_WINDOW", 131}
{"MAX_WINDOW", 131},
{"Main_FREQ", FREQ_433}
};

/// In-RAM parameter store.
Expand Down
2 changes: 2 additions & 0 deletions Firmware/radio/parameters.h
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,8 @@ enum ParamID {
PARAM_MANCHESTER, // enable manchester encoding
PARAM_RTSCTS, // enable hardware flow control
PARAM_MAX_WINDOW, // The maximum window size allowed
PARAM_MAIN_FREQUENCY, // Main Frquenct FREQ_433 FREQ_470 FREQ_868 FREQ_915 FREQ_NONE

PARAM_MAX // must be last
};

Expand Down
31 changes: 31 additions & 0 deletions README.markdown
Original file line number Diff line number Diff line change
@@ -1,5 +1,36 @@
# SiK - Firmware for SiLabs Si1000 ISM radios

=====================================================
Change Main Frequency Feature:
I added parameter #16 where you can change the frequency of Telemetry using AT commands only. No need to upgrade Firmware.

Please make sure to use proper Antenna for the selected frequency.


The AT commands of the Telemetry can be found here http://copter.ardupilot.com/wiki/common-using-the-3dr-radio-for-telemetry-with-apm-and-px4/
The new commands is #16 called "Main_Freq".

Values that should be set there are:


FREQ_433 = 0x43,
FREQ_470 = 0x47,
FREQ_868 = 0x86,
FREQ_915 = 0x91,

i.e. ATS16=145 sets frequency to 915 MHz.


Typical steps to change frequency are:
+++ to enter AT commands mode.
ATS16=67 to change to 433 MHz
AT&W to save settings
ATZ to reboot (Mandatory)

=====================================================



For user documentation please see this site:

http://code.google.com/p/ardupilot-mega/wiki/3DRadio
Expand Down