<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>maximum baudrate nrf52 slower than BLE 5.0</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/29199/maximum-baudrate-nrf52-slower-than-ble-5-0</link><description>Hi, we&amp;#39;re starting to plan an update to BLE 5.0 (specifically the double bandwidth feature) on a product using the nRF521832 connected to an STM32.
We were just testing increasing our internal communication speed, and realised the nRF52 is limiting us</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 09 Jan 2018 12:40:51 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/29199/maximum-baudrate-nrf52-slower-than-ble-5-0" /><item><title>RE: maximum baudrate nrf52 slower than BLE 5.0</title><link>https://devzone.nordicsemi.com/thread/116112?ContentTypeID=1</link><pubDate>Tue, 09 Jan 2018 12:40:51 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:bcc6fe7f-cc63-49c0-a073-d48623b229e2</guid><dc:creator>ovrebekk</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;The radio surely wouldn&amp;#39;t work, since the carrier frequency would be far too high, and the flash memory would not be able to keep up at the higher speeds. Most likely the chip would crash completely because of some internal timing violations.&lt;br /&gt;
Usually devices like these are designed to tolerate a certain amount of drift (up to 10% for instance), but once you go beyond that various things on the device are bound to fail. Since we don&amp;#39;t test the chip under these conditions we can only guess what would happen.&lt;/p&gt;
&lt;p&gt;Try overclocking your desktop CPU to double the frequency, and I am sure you will see similar issues ;)&lt;/p&gt;
&lt;p&gt;I don&amp;#39;t know if we have tested with WiFi disabled in the settings, but I am pretty sure the ~670kbps limit is enforced by the phone regardless.&lt;br /&gt;
I would be happy to be proven wrong in this case :)&lt;/p&gt;
&lt;p&gt;Best regards&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: maximum baudrate nrf52 slower than BLE 5.0</title><link>https://devzone.nordicsemi.com/thread/116109?ContentTypeID=1</link><pubDate>Mon, 08 Jan 2018 20:39:59 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ffe6ba3a-76f2-41ff-a3fb-b5fda132df33</guid><dc:creator>thefool</dc:creator><description>&lt;p&gt;I see! too bad, I guess...
and the clock input is &amp;quot;hardwired&amp;quot; to 16M? and if not: which other peripherals would be affected (or effectively disabled) if it could be changed to 32M?&lt;/p&gt;
&lt;p&gt;Did you by any chance test the iPhone with Wifi turned off, and no classic bluetooth devices paired? (see if iOS is smart enough to then give BLE 100% radio time? ;-)
(PS: if you do still test that, remember that on iOS 11 Control center Wifi Off != Wifi Radio off! You have to go into the settings to really Disable the Wifi and/or Bluetooth hardware!)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: maximum baudrate nrf52 slower than BLE 5.0</title><link>https://devzone.nordicsemi.com/thread/116113?ContentTypeID=1</link><pubDate>Mon, 08 Jan 2018 14:48:30 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:bb38cdf0-ff9b-422a-a4f4-3923c92e07c7</guid><dc:creator>ovrebekk</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;For better or worse we design most of the serial interfaces ourselves, trying to enforce a unified look and feel (including the task/event registers that are used in all Nordic peripherals). This includes the UART, which sets the baudrate exclusively through the BAUDRATE register.&lt;/p&gt;
&lt;p&gt;Both the iPhone 8 and X support the high speed mode introduced by Bluetooth 5.&lt;br /&gt;
The connection interval when achieving the highest speed is 15ms.&lt;br /&gt;
The main limitation in the latest iPhones regarding speed is the event length, which is capped to 50% of the connection interval. This means you are only allowed to send packet for 50% of the available time, even if the connection interval is small.
This is probably done to ensure sufficient RF time for other RF protocols (like WiFi or classic Bluetooth), but also means that you will not achieve the highest possible speeds that Bluetooth 5 is capable of.&lt;/p&gt;
&lt;p&gt;Best regards&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: maximum baudrate nrf52 slower than BLE 5.0</title><link>https://devzone.nordicsemi.com/thread/116108?ContentTypeID=1</link><pubDate>Fri, 05 Jan 2018 16:34:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b85c70ed-5d9f-4a89-8829-e8579a01a4ef</guid><dc:creator>thefool</dc:creator><description>&lt;p&gt;&lt;em&gt;Unless I misunderstand your suggestions they would both require us to make hardware changes to the chip, it&amp;#39;s not something we can change in software. In other words I would disagree it&amp;#39;s an easy thing to do ;)&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;In my experience with other micro controllers, 8x oversampling is a very common setting for the uart peripheral, 16x being the default. That setting being a single bit in a register, on the STM32 it is the OVER8 bit in the USARTx_CR1 register. So if you have such a register, then it should be a simple solution, but yeah, if your peripheral hardware doesn&amp;#39;t have that, then I agree: not quite so easy :-)&lt;/p&gt;
&lt;p&gt;Same with the second suggestion: often it&amp;#39;s possible to configure what clock source the peripheral should use, or the other way round: what frequency the peripherals&amp;#39; clock should get. But since often several peripherals share a clock, I&amp;#39;d understand if this suggestion is more difficult...&lt;/p&gt;
&lt;p&gt;I get that to make sure the soft device runs 100% smooth it&amp;#39;s best not to expose every bit of hardware capability to the user, but the 8x Oversampling bit, if it exists, in my opinion should not cause any harm!&lt;/p&gt;
&lt;p&gt;That said: Good point and thanks for the info on the iPhone&amp;#39;s max speed: was that measured with the iPhone 8 or X (should both have BLE 5.0) and if yes, with what connection interval? 30ms, 15ms or including the &amp;quot;HID&amp;quot; trick to bring it down to 11.25ms?&lt;/p&gt;
&lt;p&gt;Thanks again&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: maximum baudrate nrf52 slower than BLE 5.0</title><link>https://devzone.nordicsemi.com/thread/116110?ContentTypeID=1</link><pubDate>Fri, 05 Jan 2018 15:51:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3820f6f0-bf50-4eb6-8a9b-47dab34c749e</guid><dc:creator>ovrebekk</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;&lt;em&gt;I did offer two suggestions for easy and reliable ways of doubling the maximum serial communication speed...&lt;/em&gt;&lt;br /&gt;
Unless I misunderstand your suggestions they would both require us to make hardware changes to the chip, it&amp;#39;s not something we can change in software. In other words I would disagree it&amp;#39;s an easy thing to do ;)&lt;/p&gt;
&lt;p&gt;&lt;em&gt;well, why offer double bandwidth, if you suggest not to use it? ;-)&lt;/em&gt;&lt;br /&gt;
Touché ;)&lt;br /&gt;
The high speed mode is just as much about reducing current consumption and coexistence issues, as it is about raw data rate.&lt;br /&gt;
Phone manufacturers are quick to adopt high speed for this reason, but so far the only phone confirmed to support data rates above 1M is the Samsung Galaxy S8 (and it&amp;#39;s variants). The iPhone tops out at around 670 kbps.
If you have Nordic devices in both ends, then this is not an issue of course, but if you are planning to talk to a phone then I wouldn&amp;#39;t expect to max out the bandwidth very often.&lt;/p&gt;
&lt;p&gt;If the CPU was doing nothing else you might have been able to bit bang the communication, but with a high speed BLE link in the background this won&amp;#39;t be possible.&lt;/p&gt;
&lt;p&gt;Maybe you could feed the UART signal from the STM into the SPI slave interface, and fake the SPI clock and CSN signal locally on the nRF52832, but I really wouldn&amp;#39;t recommend it unless you are willing to spend a lot of development time on it ;)&lt;/p&gt;
&lt;p&gt;Best regards
Torbjørn&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: maximum baudrate nrf52 slower than BLE 5.0</title><link>https://devzone.nordicsemi.com/thread/116111?ContentTypeID=1</link><pubDate>Fri, 05 Jan 2018 12:11:01 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:597bae7e-89ba-4591-8894-13d2cb6dcb2c</guid><dc:creator>thefool</dc:creator><description>&lt;p&gt;Hi, thanks for the reply.&lt;/p&gt;
&lt;p&gt;I did offer two suggestions for easy and reliable ways of doubling the maximum serial communication speed...&lt;/p&gt;
&lt;p&gt;well, why offer double bandwidth, if you suggest not to use it? ;-)&lt;/p&gt;
&lt;p&gt;Yes, we will need to use the maximum possible bandwidth continuously, such as transmitting a live video feed, as in this demo:
&lt;a href="https://devzone.nordicsemi.com/blogs/1106/bluetooth-5-2mbps-demo-with-nrf52-series-and-samsu/"&gt;devzone.nordicsemi.com/.../&lt;/a&gt;
only that the camera is attached to the STM.
Of course, in less than ideal cases, we won&amp;#39;t reach the maximum, but while we can, we&amp;#39;d like to make use of it!&lt;/p&gt;
&lt;p&gt;As I wrote in earlier comments, our PCBs are done and we only have UART and I2C connected between the two chips, so no chance to switch to SPI... and even if it were, that&amp;#39;s not the question here ;-)&lt;/p&gt;
&lt;p&gt;We&amp;#39;ll survive with 1M, but would still like to know if we can achieve 2M (or at least 1.4M)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: maximum baudrate nrf52 slower than BLE 5.0</title><link>https://devzone.nordicsemi.com/thread/116107?ContentTypeID=1</link><pubDate>Fri, 05 Jan 2018 10:16:43 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:af10d154-df7b-4eba-8da7-a2a4b61edf33</guid><dc:creator>ovrebekk</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;I can&amp;#39;t think of any easy and reliable way to achieve serial communication higher than 1MBaud if you only have 2 GPIO&amp;#39;s available.&lt;/p&gt;
&lt;p&gt;With 3 GPIO&amp;#39;s you could do uni-directional SPI up to 4MHz at least (bi-directional if you have 4 GPIO&amp;#39;s).&lt;/p&gt;
&lt;p&gt;Do you really need to transfer data continuously at a rate higher than 1Mbps?&lt;br /&gt;
Keep in mind that 1.4Mbps is the absolute maximum bandwidth, and in practical use the actual bandwidth is likely to be lower than this. By optimizing the application for a lower bandwidth you will have some bandwidth left over for retransmission, making the link more reliable and the data rate more consistent.&lt;/p&gt;
&lt;p&gt;Best regards&lt;br /&gt;
Torbjørn Øvrebekk&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: maximum baudrate nrf52 slower than BLE 5.0</title><link>https://devzone.nordicsemi.com/thread/116106?ContentTypeID=1</link><pubDate>Wed, 03 Jan 2018 23:15:24 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:71a09262-06d8-43e8-8b4c-c33fd61d86c9</guid><dc:creator>thefool</dc:creator><description>&lt;p&gt;good idea, but the PCBs are already done, the pins won&amp;#39;t be usable for SPI on the STM...&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: maximum baudrate nrf52 slower than BLE 5.0</title><link>https://devzone.nordicsemi.com/thread/116105?ContentTypeID=1</link><pubDate>Wed, 03 Jan 2018 18:06:37 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7ced4719-15b0-4f7b-8c42-4f4f7a4ab9e2</guid><dc:creator>Turbo J</dc:creator><description>&lt;p&gt;If your destination is another MCU, try using SPI.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>