# Frequency hopping with S132 v3

asked 2017-03-20 16:26:27 +0200

Hello! I'd like to know if S132 v3 implements the frequency hopping scheme defined by BLE.

I've read some documentation on Gazell, but from what I understood, that is a completely different protocol, not a superset of BLE. I require BLE communication, so If my understanding is correct, Gazell is not an option.

edit retag close delete

## 3 answers

Sort by » oldest newest most voted

answered 2017-03-21 14:04:32 +0200

@amiguels : S132 is a qualified BLE stack, of course it use the hopping channel algorithm defined by BLE spec.

We were part of the group who made BLE so actually there are many features in Gazell were brought into BLE, channel hopping was one of them. But channel hopping on Gazell is little simpler compare to BLE legacy channel hopping (the channel hopping was upgraded from BLE v5.0 )

You can find the channel hopping algorithm in the document pointed by Endnode. Basically each channel is only used for one single connection event. Next connection event we use the next channel, and continue like that. There is no measurement of failure rate on a channel to black list it in our stack.

more

## Comments

@hungbuiThere is no measurement of failure rate on a channel to black list it in our stack. This the information I was looking for. Thank you.

( 2017-03-21 14:27:53 +0200 )editconvert to answer

answered 2017-03-20 17:12:10 +0200

Yes, Nordic's "Soft Device" implements so-called BLE stack which manages all lower layers including LL with channel hopping during connection. Note that you don't need to go with Nordic's stack, you can seek some Open Source projects such as Zephyr or Mynewt if you want... however developing your custom stack seems like pretty wasting of energy unless you are sure what and why.

more

answered 2017-03-20 16:49:07 +0200

Of course it does implement frequency hopping. You don't have to think about such a low layers - this (among other features) is what softdevice is written for. You can however control which channels are used for advertisements.

Yes, Gazell is something completely different.

more

## Comments

@wojtek I'm asking this because the behavior I'm seeing does not match what I expected to happen when frequency hopping is used. I may have the wrong idea though. I have two BLE devices and a strong Wi-Fi signal that overlaps some the of the BLE channels. What I observe is that sometimes I get huge interference from the Wi-Fi signal. This expected when the channels are overlapped. However, I expected the hopping to solve this issue by moving the BLE connection to a different channel, and that doesn't seem to be happening.

( 2017-03-20 18:42:47 +0200 )editconvert to answer

Well frequency hopping is kind of "dumb" property of BLE link layer on up to 37 channels used for PDU exchange during connection. You have right to exclude some channels if you suspect some interference there but this is not done automatically. Moreover embedded chips such as nRF5x don't have any specific indication of noisy channels so you can only try to observe and then use channel map functions of stack (SD) API... so you see initial channel map and hopping pattern in CONNECT_REQ (from GAP Central = master) and then only channel map can change. In the worst case you leave all 37 channels and during hopping patter some packets will drop but that's nothing serious until this will happen systematically on most of the channels for longer time. More about BLE frequency hopping (and BLE overall) here (slides 65-70 and 126-145).

( 2017-03-20 21:13:35 +0200 )editconvert to answer

## Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer. Do not ask a new question or reply to an answer here.

[hide preview]

or sign up

## Recent blog posts

• ### The complete tutorial for developing and debugging nRF52 applications on a Mac

Posted 2017-05-11 04:13:06 by Mohammad Afaneh
• ### Bluetooth 5 2Mbps Demo with nRF52 Series and Samsung Galaxy S8

Posted 2017-05-09 14:20:22 by John Leonard
• ### Setting up Segger on a mac or pc and debug - step by step for humans

Posted 2017-05-05 14:03:35 by Lola
• ### FreeRTOS threads preview with J-Link, GDB/Eclipse

Posted 2017-04-11 11:49:17 by Radosław Koppel
• ### Taking a deeper dive into Bluetooth 5

Posted 2017-04-07 14:53:51 by John Leonard

## Recent questions

• ### BLE GATT_INTERNAL_ERROR 129

Posted 2017-05-30 14:53:16 by Mrunali
• ### Data storing in flash based on timer.

Posted 2017-05-30 13:54:41 by Prashant Singh
• ### Testing coded PHY with UART?

Posted 2017-05-30 13:45:39 by slowhand
• ### Multilink Peripheral NRF51422

Posted 2017-05-30 13:42:58 by Martin Kulessa
• ### How to create a whitelist on the Central device

Posted 2017-05-30 12:40:07 by purgoufr

## Stats

Asked: 2017-03-20 16:26:27 +0200

Seen: 144 times

Last updated: Mar 21