Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AT86RF215: How to increase increase TX power on OpenMote-b #1

Open
JohaYuuki opened this issue Nov 23, 2021 · 10 comments
Open

AT86RF215: How to increase increase TX power on OpenMote-b #1

JohaYuuki opened this issue Nov 23, 2021 · 10 comments

Comments

@JohaYuuki
Copy link

Hello, I am working with OpenMote-b modules with the at86rf215 chip, in mr-fsk modulation according to the IEEE 802.15.4 standard. I have been trying to change the Tx power to use it at 14 dBm, in the MakeFile I have used the statement

CFLAGS + = -DCONFIG_IEEE802154_DEFAULT_TXPOWER = 14

however the TX power does not increase by 3dBm. I attach the Makefile that I use
Makefile.txt

@benpicco
Copy link
Owner

benpicco commented Nov 23, 2021

Yea the dBm value displayed by RIOT is bogus. Since the TX power depends on the chosen modulation and frequency (see AT86RF215 data sheet, chapter 11.1 "Output Power at Several Modulations") we would need to maintain several tables in ROM just to display the right value.

Instead, dBm displayed is just TXPWR - 31 dBm. (It would of course be possible to implement it so that the proper calculation could be enabled with a compile-time option if desired - patches welcome!)

The added 3 dBm are then achieved by the 3 possible states of the PACUR value, which sets the operating current of the power amplifier. (Each step adds ~1dBm so this is not that far off).

That means that +3 dBm in RIOT are equal to PACUR = 3 and TXPWR = 31 which is the highest possible output power (which should yield +14 dBm with (MR)-O-QPSK)

@JohaYuuki
Copy link
Author

I understand.
We performed tests with OpenMote devices at various distances with the different modulations allowed, but we could not reach 200 meters. Even with modulation (MR) -O-QPSK.

@benpicco
Copy link
Owner

Huh that's odd - did you have the right antennas attached? On the sub-GHz band you should be able to get 500m with the low bit rate MR-O-QPSK modulations.

@JohaYuuki
Copy link
Author

Hello, I've been trying to reach 14 dBm, however as you said I think it's bogus because I haven't managed to reach more than 100 meters. Do you know where the registry or file is located where the power is increased?

@benpicco
Copy link
Owner

benpicco commented Dec 9, 2021

The register is written here.
Which frequency and modulation did you use?
What antennas are connected to the OpenMote-B?

@JohaYuuki
Copy link
Author

JohaYuuki commented Dec 9, 2021

I use MR-FSK with 863.125 GHz as the center frequency.
With SubGhz antennas on the SubGhz interface

@benpicco
Copy link
Owner

benpicco commented Dec 9, 2021

Hm can you try with MR-O-QPSK, this generally has the best performance on this chip.
Select rate mode 0, 100k Chip/s with

ifconfig 6 set phy mr-o-qpsk
ifconfig 6 set chips 100
ifconfig 6 set rate_mode 0

if you are using an interactive shell (and change the interface ID if necessary)

@JohaYuuki
Copy link
Author

Hello again,
I have been working with the same OpenMote B module, configuring a Fan Mesh network with a border router(gnrc_border_router) and two sensor nodes(emcute_mqttsn). I have a problem when trying to connect the border router and the tap interface with ethos, many packets are lost between the ethernet interface and the tap interface. That is, when trying to connect from the border router to the tap and vice versa. Would you know why it happens or something would be configuring wrong?
image

@benpicco
Copy link
Owner

benpicco commented Jun 7, 2022

I think some more information is needed. How much data is being sent and in which intervals?
Do you see the data in Wireshark? And what is sending to what?

If you need more performance, try a higher UART baudrate and switch to SLIP instead of ethos (UPLINK=slip with the border router example).

Also I think a forum post would get you some more exposure with your issue.

@JohaYuuki
Copy link
Author

First I send a ping between the ethernet interface and tap interface and some of the packets are lost
image

Then I Send some data on UDP protocolo and some packets are lost or malformed. The data is sent in a intervals of approximately 15 seconds.
image

If I use 3.0 ports for the connection of the Open Mote B module, could it be the causeof the losing?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants