xref: /btstack/port/stm32-wb55xx-nucleo-freertos/Drivers/STM32WBxx_HAL_Driver/Release_Notes.html (revision 0561b2d8d5dba972c7daa57d5e677f7a1327edfd)
1*0561b2d8STREFOU Felix<!DOCTYPE html>
2*0561b2d8STREFOU Felix<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
3*0561b2d8STREFOU Felix<head>
4*0561b2d8STREFOU Felix  <meta charset="utf-8" />
5*0561b2d8STREFOU Felix  <meta name="generator" content="pandoc" />
6*0561b2d8STREFOU Felix  <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
7*0561b2d8STREFOU Felix  <title>Release Notes for STM32WBxx HAL Drivers</title>
8*0561b2d8STREFOU Felix  <style type="text/css">
9*0561b2d8STREFOU Felix      code{white-space: pre-wrap;}
10*0561b2d8STREFOU Felix      span.smallcaps{font-variant: small-caps;}
11*0561b2d8STREFOU Felix      span.underline{text-decoration: underline;}
12*0561b2d8STREFOU Felix      div.column{display: inline-block; vertical-align: top; width: 50%;}
13*0561b2d8STREFOU Felix  </style>
14*0561b2d8STREFOU Felix  <link rel="stylesheet" href="_htmresc/mini-st.css" />
15*0561b2d8STREFOU Felix  <!--[if lt IE 9]>
16*0561b2d8STREFOU Felix    <script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
17*0561b2d8STREFOU Felix  <![endif]-->
18*0561b2d8STREFOU Felix</head>
19*0561b2d8STREFOU Felix<body>
20*0561b2d8STREFOU Felix<div class="row">
21*0561b2d8STREFOU Felix<div class="col-sm-12 col-lg-4">
22*0561b2d8STREFOU Felix<div class="card fluid">
23*0561b2d8STREFOU Felix<div class="sectione dark">
24*0561b2d8STREFOU Felix<center>
25*0561b2d8STREFOU Felix<h1 id="release-notes-for-stm32wbxx-hal-drivers"><small>Release Notes for</small> STM32WBxx HAL Drivers</h1>
26*0561b2d8STREFOU Felix<p>Copyright © 2019 STMicroelectronics<br />
27*0561b2d8STREFOU Felix</p>
28*0561b2d8STREFOU Felix<a href="https://www.st.com" class="logo"><img src="_htmresc/st_logo.png" alt="ST logo" /></a>
29*0561b2d8STREFOU Felix</center>
30*0561b2d8STREFOU Felix</div>
31*0561b2d8STREFOU Felix</div>
32*0561b2d8STREFOU Felix<h1 id="license">License</h1>
33*0561b2d8STREFOU Felix<p>This software component is licensed by ST under BSD 3-Clause license, the “License”; You may not use this component except in compliance with the License. You may obtain a copy of the License at:</p>
34*0561b2d8STREFOU Felix<p><a href="https://opensource.org/licenses/BSD-3-Clause">https://opensource.org/licenses/BSD-3-Clause</a></p>
35*0561b2d8STREFOU Felix<h1 id="purpose">Purpose</h1>
36*0561b2d8STREFOU Felix<p>The STM32Cube HAL and LL, an STM32 abstraction layer embedded software, ensure maximized portability across STM32 portfolio.</p>
37*0561b2d8STREFOU Felix<p>The Portable APIs layer provides a generic, multi instanced and simple set of APIs to interact with the upper layer (application, libraries and stacks). It is composed of native and extended APIs set. It is directly built around a generic architecture and allows the build-upon layers, like the middleware layer, to implement its functions without knowing in-depth the used STM32 device. This improves the library code reusability and guarantees an easy portability on other devices and STM32 families.</p>
38*0561b2d8STREFOU Felix<p>The Low Layer (LL) drivers are part of the STM32Cube firmware HAL that provide basic set of optimized and one shot services. The Low layer drivers, contrary to the HAL ones are not Fully Portable across the STM32 families; the availability of some functions depend on the physical availability of the relative features on the product. The Low Layer (LL) drivers are designed to offer the following features:</p>
39*0561b2d8STREFOU Felix<ul>
40*0561b2d8STREFOU Felix<li>New set of inline function for direct and atomic register access</li>
41*0561b2d8STREFOU Felix<li>One-shot operations that can be used by the HAL drivers or from application level.</li>
42*0561b2d8STREFOU Felix<li>Fully Independant from HAL and can be used in standalone usage (without HAL drivers)</li>
43*0561b2d8STREFOU Felix<li>Full features coverage of the all the supported peripherals.</li>
44*0561b2d8STREFOU Felix</ul>
45*0561b2d8STREFOU Felix</div>
46*0561b2d8STREFOU Felix<div class="col-sm-12 col-lg-8">
47*0561b2d8STREFOU Felix<h1 id="update-history">Update History</h1>
48*0561b2d8STREFOU Felix<div class="collapse">
49*0561b2d8STREFOU Felix<input type="checkbox" id="collapse-section4" checked aria-hidden="true"> <label for="collapse-section4" aria-hidden="true">v1.3.0 / 11-September-2019</label>
50*0561b2d8STREFOU Felix<div>
51*0561b2d8STREFOU Felix<h2 id="main-changes">Main Changes</h2>
52*0561b2d8STREFOU Felix<h3 id="maitenance-release">Maitenance release</h3>
53*0561b2d8STREFOU Felix<table>
54*0561b2d8STREFOU Felix<thead>
55*0561b2d8STREFOU Felix<tr class="header">
56*0561b2d8STREFOU Felix<th>Peripheral</th>
57*0561b2d8STREFOU Felix<th style="text-align: left;">Headline</th>
58*0561b2d8STREFOU Felix</tr>
59*0561b2d8STREFOU Felix</thead>
60*0561b2d8STREFOU Felix<tbody>
61*0561b2d8STREFOU Felix<tr class="odd">
62*0561b2d8STREFOU Felix<td>CRYP</td>
63*0561b2d8STREFOU Felix<td style="text-align: left;">Document a restriction regarding size field on HAL_CRYP_Encrypt_DMA, HAL_CRYP_Decrypt_DMA API.</td>
64*0561b2d8STREFOU Felix</tr>
65*0561b2d8STREFOU Felix<tr class="even">
66*0561b2d8STREFOU Felix<td>CRYP</td>
67*0561b2d8STREFOU Felix<td style="text-align: left;">Correct several MISRA C:2012 and Code Sonar compliancy improvements.</td>
68*0561b2d8STREFOU Felix</tr>
69*0561b2d8STREFOU Felix<tr class="odd">
70*0561b2d8STREFOU Felix<td>FLASH</td>
71*0561b2d8STREFOU Felix<td style="text-align: left;">Move FLASH_SIZE define from hal flash. h to cmsis device file</td>
72*0561b2d8STREFOU Felix</tr>
73*0561b2d8STREFOU Felix<tr class="even">
74*0561b2d8STREFOU Felix<td>FLASH</td>
75*0561b2d8STREFOU Felix<td style="text-align: left;">Correct ECC management in HAL FLASH driver</td>
76*0561b2d8STREFOU Felix</tr>
77*0561b2d8STREFOU Felix<tr class="odd">
78*0561b2d8STREFOU Felix<td>FLASH</td>
79*0561b2d8STREFOU Felix<td style="text-align: left;">Correct #define in stm32wbxx_hal_flash.h - FLASH_PAGE_NB</td>
80*0561b2d8STREFOU Felix</tr>
81*0561b2d8STREFOU Felix<tr class="even">
82*0561b2d8STREFOU Felix<td>RCC</td>
83*0561b2d8STREFOU Felix<td style="text-align: left;">Correct PLL characteristics</td>
84*0561b2d8STREFOU Felix</tr>
85*0561b2d8STREFOU Felix<tr class="odd">
86*0561b2d8STREFOU Felix<td>TIMER</td>
87*0561b2d8STREFOU Felix<td style="text-align: left;">Add assertion check inside HAL_TIMEx_MasterConfigSynchronization</td>
88*0561b2d8STREFOU Felix</tr>
89*0561b2d8STREFOU Felix<tr class="even">
90*0561b2d8STREFOU Felix<td>TIMER</td>
91*0561b2d8STREFOU Felix<td style="text-align: left;">Make LL_TIM_SetETRSource in line with RM0434</td>
92*0561b2d8STREFOU Felix</tr>
93*0561b2d8STREFOU Felix<tr class="odd">
94*0561b2d8STREFOU Felix<td>WWDG</td>
95*0561b2d8STREFOU Felix<td style="text-align: left;">Correct typical frequency computation description inside the header file</td>
96*0561b2d8STREFOU Felix</tr>
97*0561b2d8STREFOU Felix<tr class="even">
98*0561b2d8STREFOU Felix<td>IRDA</td>
99*0561b2d8STREFOU Felix<td style="text-align: left;">Improve the description of the APIs</td>
100*0561b2d8STREFOU Felix</tr>
101*0561b2d8STREFOU Felix<tr class="odd">
102*0561b2d8STREFOU Felix<td>SMARTCARD</td>
103*0561b2d8STREFOU Felix<td style="text-align: left;">Fix GCC compilation warning</td>
104*0561b2d8STREFOU Felix</tr>
105*0561b2d8STREFOU Felix<tr class="even">
106*0561b2d8STREFOU Felix<td>UART</td>
107*0561b2d8STREFOU Felix<td style="text-align: left;">Correct possible overflow with wordlength = 9bits and NO parity in HAL_UART_Transmit() and HAL_IRDA_Transmit()</td>
108*0561b2d8STREFOU Felix</tr>
109*0561b2d8STREFOU Felix<tr class="odd">
110*0561b2d8STREFOU Felix<td>UART</td>
111*0561b2d8STREFOU Felix<td style="text-align: left;">Fix GCC compilation warning</td>
112*0561b2d8STREFOU Felix</tr>
113*0561b2d8STREFOU Felix<tr class="even">
114*0561b2d8STREFOU Felix<td>USART</td>
115*0561b2d8STREFOU Felix<td style="text-align: left;">Correct possible overflow with wordlength = 9bits and NO parity in HAL_UART_Transmit() and HAL_IRDA_Transmit()</td>
116*0561b2d8STREFOU Felix</tr>
117*0561b2d8STREFOU Felix<tr class="odd">
118*0561b2d8STREFOU Felix<td>USART</td>
119*0561b2d8STREFOU Felix<td style="text-align: left;">Fix GCC compilation warning</td>
120*0561b2d8STREFOU Felix</tr>
121*0561b2d8STREFOU Felix</tbody>
122*0561b2d8STREFOU Felix</table>
123*0561b2d8STREFOU Felix<h2 id="backward-compatibility">Backward Compatibility</h2>
124*0561b2d8STREFOU Felix<p>This release is compatible with the previous versions.</p>
125*0561b2d8STREFOU Felix<h2 id="dependencies">Dependencies</h2>
126*0561b2d8STREFOU Felix<p>This software release is compatible with:</p>
127*0561b2d8STREFOU Felix<p>STM32CubeMX V5.4.0</p>
128*0561b2d8STREFOU Felix</div>
129*0561b2d8STREFOU Felix</div>
130*0561b2d8STREFOU Felix<div class="collapse">
131*0561b2d8STREFOU Felix<input type="checkbox" id="collapse-section3" aria-hidden="true"> <label for="collapse-section3" aria-hidden="true">V1.2.0 / 26-June-2019</label>
132*0561b2d8STREFOU Felix<div>
133*0561b2d8STREFOU Felix<h2 id="main-changes-1">Main Changes</h2>
134*0561b2d8STREFOU Felix<h3 id="stm32wb50xx-introduction-and-maintenance-release">STM32WB50xx introduction and maintenance release</h3>
135*0561b2d8STREFOU Felix<p>First release for STM32WBxx HAL drivers introducing <strong>stm32wb50xx</strong> devices.</p>
136*0561b2d8STREFOU Felix<table>
137*0561b2d8STREFOU Felix<thead>
138*0561b2d8STREFOU Felix<tr class="header">
139*0561b2d8STREFOU Felix<th>Peripheral</th>
140*0561b2d8STREFOU Felix<th style="text-align: left;">Headline</th>
141*0561b2d8STREFOU Felix</tr>
142*0561b2d8STREFOU Felix</thead>
143*0561b2d8STREFOU Felix<tbody>
144*0561b2d8STREFOU Felix<tr class="odd">
145*0561b2d8STREFOU Felix<td>RCC</td>
146*0561b2d8STREFOU Felix<td style="text-align: left;">Add capabilty to configure RNG clock in one step.</td>
147*0561b2d8STREFOU Felix</tr>
148*0561b2d8STREFOU Felix<tr class="even">
149*0561b2d8STREFOU Felix<td></td>
150*0561b2d8STREFOU Felix<td style="text-align: left;">Before two steps were required: USB clock then RNG clock.</td>
151*0561b2d8STREFOU Felix</tr>
152*0561b2d8STREFOU Felix<tr class="odd">
153*0561b2d8STREFOU Felix<td></td>
154*0561b2d8STREFOU Felix<td style="text-align: left;">Two step method is still supported and compatible.</td>
155*0561b2d8STREFOU Felix</tr>
156*0561b2d8STREFOU Felix<tr class="even">
157*0561b2d8STREFOU Felix<td>IRDA</td>
158*0561b2d8STREFOU Felix<td style="text-align: left;">Avoid using macros with function calls as argument</td>
159*0561b2d8STREFOU Felix</tr>
160*0561b2d8STREFOU Felix<tr class="odd">
161*0561b2d8STREFOU Felix<td>LPTIM</td>
162*0561b2d8STREFOU Felix<td style="text-align: left;">Add polling mechanims to check xxOK flags</td>
163*0561b2d8STREFOU Felix</tr>
164*0561b2d8STREFOU Felix<tr class="even">
165*0561b2d8STREFOU Felix<td></td>
166*0561b2d8STREFOU Felix<td style="text-align: left;">Add new EXTI macros to manage LPTIM wakeup EXTI interrupts</td>
167*0561b2d8STREFOU Felix</tr>
168*0561b2d8STREFOU Felix<tr class="odd">
169*0561b2d8STREFOU Felix<td>USB</td>
170*0561b2d8STREFOU Felix<td style="text-align: left;">Improve ep OUT interrupt handler</td>
171*0561b2d8STREFOU Felix</tr>
172*0561b2d8STREFOU Felix<tr class="even">
173*0561b2d8STREFOU Felix<td></td>
174*0561b2d8STREFOU Felix<td style="text-align: left;">Ensure 16 bit access to USB PMA</td>
175*0561b2d8STREFOU Felix</tr>
176*0561b2d8STREFOU Felix<tr class="odd">
177*0561b2d8STREFOU Felix<td></td>
178*0561b2d8STREFOU Felix<td style="text-align: left;">Enable BCD</td>
179*0561b2d8STREFOU Felix</tr>
180*0561b2d8STREFOU Felix<tr class="even">
181*0561b2d8STREFOU Felix<td>RNG</td>
182*0561b2d8STREFOU Felix<td style="text-align: left;">Add new error definitions</td>
183*0561b2d8STREFOU Felix</tr>
184*0561b2d8STREFOU Felix<tr class="odd">
185*0561b2d8STREFOU Felix<td>SAI</td>
186*0561b2d8STREFOU Felix<td style="text-align: left;">Correct SAI frequency calculation in case of SPDIF output</td>
187*0561b2d8STREFOU Felix</tr>
188*0561b2d8STREFOU Felix<tr class="even">
189*0561b2d8STREFOU Felix<td>SMARTCARD</td>
190*0561b2d8STREFOU Felix<td style="text-align: left;">Avoid using macros with function calls as argument</td>
191*0561b2d8STREFOU Felix</tr>
192*0561b2d8STREFOU Felix<tr class="odd">
193*0561b2d8STREFOU Felix<td>UART</td>
194*0561b2d8STREFOU Felix<td style="text-align: left;">Avoid using macros with function calls as argument</td>
195*0561b2d8STREFOU Felix</tr>
196*0561b2d8STREFOU Felix<tr class="even">
197*0561b2d8STREFOU Felix<td>USART</td>
198*0561b2d8STREFOU Felix<td style="text-align: left;">Avoid using macros with function calls as argument</td>
199*0561b2d8STREFOU Felix</tr>
200*0561b2d8STREFOU Felix</tbody>
201*0561b2d8STREFOU Felix</table>
202*0561b2d8STREFOU Felix<h2 id="backward-compatibility-1">Backward Compatibility</h2>
203*0561b2d8STREFOU Felix<p>This release is compatible with the previous versions.</p>
204*0561b2d8STREFOU Felix<h2 id="dependencies-1">Dependencies</h2>
205*0561b2d8STREFOU Felix<p>This software release is compatible with:</p>
206*0561b2d8STREFOU Felix<p>STM32CubeMX V5.3.0</p>
207*0561b2d8STREFOU Felix</div>
208*0561b2d8STREFOU Felix</div>
209*0561b2d8STREFOU Felix<div class="collapse">
210*0561b2d8STREFOU Felix<input type="checkbox" id="collapse-section2" aria-hidden="true"> <label for="collapse-section2" aria-hidden="true">V1.1.0 / 05-April-2019</label>
211*0561b2d8STREFOU Felix<div>
212*0561b2d8STREFOU Felix<h2 id="main-changes-2">Main Changes</h2>
213*0561b2d8STREFOU Felix<h3 id="maintenance-release">Maintenance release</h3>
214*0561b2d8STREFOU Felix<p>Maintenance release of HAL and Low layers drivers supporting STM32WB55xx devices.</p>
215*0561b2d8STREFOU Felix<table>
216*0561b2d8STREFOU Felix<caption>Fixed bugs list</caption>
217*0561b2d8STREFOU Felix<thead>
218*0561b2d8STREFOU Felix<tr class="header">
219*0561b2d8STREFOU Felix<th>Peripheral</th>
220*0561b2d8STREFOU Felix<th style="text-align: left;">Headline</th>
221*0561b2d8STREFOU Felix</tr>
222*0561b2d8STREFOU Felix</thead>
223*0561b2d8STREFOU Felix<tbody>
224*0561b2d8STREFOU Felix<tr class="odd">
225*0561b2d8STREFOU Felix<td>COMP</td>
226*0561b2d8STREFOU Felix<td style="text-align: left;">Only cosmetic changes</td>
227*0561b2d8STREFOU Felix</tr>
228*0561b2d8STREFOU Felix<tr class="even">
229*0561b2d8STREFOU Felix<td>CRYP</td>
230*0561b2d8STREFOU Felix<td style="text-align: left;">Only changes related to documentation</td>
231*0561b2d8STREFOU Felix</tr>
232*0561b2d8STREFOU Felix<tr class="odd">
233*0561b2d8STREFOU Felix<td>EXTI</td>
234*0561b2d8STREFOU Felix<td style="text-align: left;">Only changes related to documentation</td>
235*0561b2d8STREFOU Felix</tr>
236*0561b2d8STREFOU Felix<tr class="even">
237*0561b2d8STREFOU Felix<td>FLASH</td>
238*0561b2d8STREFOU Felix<td style="text-align: left;">Improve code efficiency</td>
239*0561b2d8STREFOU Felix</tr>
240*0561b2d8STREFOU Felix<tr class="odd">
241*0561b2d8STREFOU Felix<td>GPIO</td>
242*0561b2d8STREFOU Felix<td style="text-align: left;">Improve HAL_GPIO_TogglePin efficiency</td>
243*0561b2d8STREFOU Felix</tr>
244*0561b2d8STREFOU Felix<tr class="even">
245*0561b2d8STREFOU Felix<td>IWDG</td>
246*0561b2d8STREFOU Felix<td style="text-align: left;">Only changes related to documentation</td>
247*0561b2d8STREFOU Felix</tr>
248*0561b2d8STREFOU Felix<tr class="odd">
249*0561b2d8STREFOU Felix<td>RCC</td>
250*0561b2d8STREFOU Felix<td style="text-align: left;">Only changes related to documentation</td>
251*0561b2d8STREFOU Felix</tr>
252*0561b2d8STREFOU Felix<tr class="even">
253*0561b2d8STREFOU Felix<td>RTC</td>
254*0561b2d8STREFOU Felix<td style="text-align: left;">LL_RTC_BAK_GetRegister generates warning on GCC 6.3.1 20170620</td>
255*0561b2d8STREFOU Felix</tr>
256*0561b2d8STREFOU Felix<tr class="odd">
257*0561b2d8STREFOU Felix<td>TIM</td>
258*0561b2d8STREFOU Felix<td style="text-align: left;">Only changes related to documentation</td>
259*0561b2d8STREFOU Felix</tr>
260*0561b2d8STREFOU Felix<tr class="even">
261*0561b2d8STREFOU Felix<td>TSC</td>
262*0561b2d8STREFOU Felix<td style="text-align: left;">Correct __HAL_TSC_GET_GROUP_STATUS which was checking only TSC_GROUP1_IDX</td>
263*0561b2d8STREFOU Felix</tr>
264*0561b2d8STREFOU Felix</tbody>
265*0561b2d8STREFOU Felix</table>
266*0561b2d8STREFOU Felix<h2 id="backward-compatibility-2">Backward Compatibility</h2>
267*0561b2d8STREFOU Felix<p>This release is compatible with the previous versions.</p>
268*0561b2d8STREFOU Felix<h2 id="dependencies-2">Dependencies</h2>
269*0561b2d8STREFOU Felix<p>This software release is compatible with:</p>
270*0561b2d8STREFOU Felix<p>STM32CubeMX V5.2.0</p>
271*0561b2d8STREFOU Felix</div>
272*0561b2d8STREFOU Felix</div>
273*0561b2d8STREFOU Felix<div class="collapse">
274*0561b2d8STREFOU Felix<input type="checkbox" id="collapse-section1"  aria-hidden="true"> <label for="collapse-section1" aria-hidden="true">V1.0.0 / 06-February-2019</label>
275*0561b2d8STREFOU Felix<div>
276*0561b2d8STREFOU Felix<h2 id="main-changes-3">Main Changes</h2>
277*0561b2d8STREFOU Felix<h3 id="first-release">First release</h3>
278*0561b2d8STREFOU Felix<p>First official release of HAL (Hardware Abstraction Layer) and LL (Low layers) drivers to support STM32WB55xx.</p>
279*0561b2d8STREFOU Felix</div>
280*0561b2d8STREFOU Felix</div>
281*0561b2d8STREFOU Felix</div>
282*0561b2d8STREFOU Felix</div>
283*0561b2d8STREFOU Felix<footer class="sticky">
284*0561b2d8STREFOU Felix<p>For complete documentation on STM32WBxx, visit: [<a href="http://www.st.com/stm32wb">www.st.com/stm32wb</a>]</p>
285*0561b2d8STREFOU Felix<em>This release note uses up to date web standards and, for this reason, should not be opened with Internet Explorer but preferably with popular browsers such as Google Chrome, Mozilla Firefox, Opera or Microsoft Edge.</em>
286*0561b2d8STREFOU Felix</footer>
287*0561b2d8STREFOU Felix</body>
288*0561b2d8STREFOU Felix</html>
289