-
Notifications
You must be signed in to change notification settings - Fork 38
/
Copy pathRelease_Notes.html
353 lines (353 loc) · 11.8 KB
/
Release_Notes.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<meta charset="utf-8" />
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<title>Release Notes for Open Bootloader Middleware</title>
<style>
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
span.underline{text-decoration: underline;}
div.column{display: inline-block; vertical-align: top; width: 50%;}
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
ul.task-list{list-style: none;}
</style>
<link rel="stylesheet" href="_htmresc/mini-st_2020.css" />
<!--[if lt IE 9]>
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
<![endif]-->
<link rel="icon" type="image/x-icon" href="_htmresc/favicon.png" />
</head>
<body>
<div class="row">
<div class="col-sm-12 col-lg-4">
<center>
<h1 id="release-notes-for-open-bootloader-middleware">Release Notes for Open Bootloader Middleware</h1>
<p>Copyright © 2020 STMicroelectronics<br />
</p>
<a href="https://www.st.com" class="logo"><img src="_htmresc/st_logo_2020.png" alt="ST logo" /></a>
</center>
<h1 id="purpose">Purpose</h1>
<p>The <strong>Open Bootloader</strong> package provides an example of an IAP Bootloader that supports all ST Standard Bootloader commands.</p>
<p>The Open Bootloader protocols commands were developed in a manner to be compatible with the Standard Bootloader protocols commands that is programmed by default in the system memory of STM32 devices.</p>
<p>The Open Bootloader is also compatible with STM32CubeProgrammer tool.</p>
<p>In the current release, the Open Bootloader supports USART, FDCAN, I2C, USB and SPI protocols.</p>
<p>Here is the list of references to the user documents:</p>
<ul>
<li><a href="https://www.st.com/resource/en/application_note/CD00264342.pdf">AN3155</a> : USART protocol used in the STM32 bootloader</li>
<li><a href="https://www.st.com/resource/en/application_note/dm00660346.pdf">AN5405</a> : FDCAN protocol used in the STM32 bootloader</li>
<li><a href="https://www.st.com/resource/en/application_note/DM00072315.pdf">AN4221</a> : I2C protocol used in the STM32 bootloader</li>
<li><a href="https://www.st.com/resource/en/application_note/cd00264379.pdf">AN3156</a> : USB DFU protocol used in the STM32 bootloader</li>
<li><a href="https://www.st.com/resource/en/application_note/DM00081379.pdf">AN4286</a> : SPI protocol used in the STM32 bootloader</li>
</ul>
</div>
<section id="update-history" class="col-sm-12 col-lg-8">
<h1>Update history</h1>
<div class="collapse">
<input type="checkbox" id="collapse-section7" checked aria-hidden="true"> <label for="collapse-section7" aria-hidden="true"><strong>V6.0.1 / 26-January-2022</strong></label>
<div>
<h2 id="main-changes">Main changes</h2>
<p>This is a patch release of Open Bootloader Middleware that fixes a regression in USB protocol introduced with the official release v6.0.0.</p>
<p>Nothing new in this release, only fixes to USB regression were made:</p>
<ul>
<li>Fix compilation issue due to use of wrong include file</li>
<li>Restore removed functions:
<ul>
<li>Jump function</li>
<li>Write Unprotect function</li>
<li>Write Protect function</li>
<li>Read Protect function</li>
<li>Read Unprotect function</li>
</ul></li>
</ul>
<h2 id="known-limitations">Known limitations</h2>
<ul>
<li>List of missing commands on USB protocol:
<ul>
<li>Get command</li>
<li>Mass erase</li>
</ul></li>
</ul>
<h2 id="backward-compatibility">Backward compatibility</h2>
<ul>
<li>Compatible with previous release.</li>
</ul>
<h2 id="dependencies">Dependencies</h2>
<ul>
<li>None.</li>
</ul>
</div>
</div>
<div class="collapse">
<input type="checkbox" id="collapse-section6" aria-hidden="true"> <label for="collapse-section6" aria-hidden="true"><strong>V6.0.0 / 11-October-2021</strong></label>
<div>
<h2 id="main-changes-1">Main changes</h2>
<h3 id="sixth-release">Sixth release</h3>
<p>This is the sixth official release of Open Bootloader Middleware that adds some improvements to the code and adds support for special commands and CAN interface.</p>
<p>New in this release:</p>
<ul>
<li>Add support for Special Commands</li>
<li>Add support for CAN interface</li>
</ul>
<p><strong>There is a compatibility break with previous release due to the below changes:</strong></p>
<ul>
<li>Removed dependencies with FLASH interface
<ul>
<li>No more direct include of “flash_interface.h”</li>
<li>Read out get/set protection functions are now generic</li>
<li>Option bytes management is now generic and managed in application side</li>
</ul></li>
<li>The user can now redefine the list of supported commands by interface in application side</li>
<li>Changed the I2C busy state management API by removing dependencies with FLASH interface</li>
</ul>
<h2 id="known-limitations-1">Known limitations</h2>
<ul>
<li>List of missing commands on USB protocol:
<ul>
<li>Get command</li>
<li>Mass erase</li>
</ul></li>
</ul>
<h2 id="backward-compatibility-1">Backward compatibility</h2>
<ul>
<li>Not Compatible with previous release.</li>
</ul>
<h2 id="dependencies-1">Dependencies</h2>
<ul>
<li>None.</li>
</ul>
</div>
</div>
<div class="collapse">
<input type="checkbox" id="collapse-section5" aria-hidden="true"> <label for="collapse-section5" aria-hidden="true"><strong>V5.0.0 / 03-June-2021</strong></label>
<div>
<h2 id="main-changes-2">Main changes</h2>
<h3 id="fifth-release">Fifth release</h3>
<p>This is the fifth official release of Open Bootloader Middleware that adds support for USBX stack</p>
<ul>
<li>List of implemented commands on USB protocol:
<ul>
<li>Get version</li>
<li>Get ID</li>
<li>Read memory</li>
<li>Write memory</li>
<li>Go command</li>
<li>Erase FLASH</li>
<li>Read protect</li>
<li>Read unprotect</li>
<li>Write protect</li>
<li>Write unprotect</li>
</ul></li>
</ul>
<h2 id="known-limitations-2">Known limitations</h2>
<ul>
<li>List of missing commands on USART, FDCAN, I2C and SPI protocols:
<ul>
<li>Special read command</li>
<li>Special write command</li>
</ul></li>
<li>List of missing commands on USB protocol:
<ul>
<li>Get command</li>
<li>Mass erase</li>
</ul></li>
</ul>
<h2 id="backward-compatibility-2">Backward compatibility</h2>
<ul>
<li>Compatible with previous release.</li>
</ul>
<h2 id="dependencies-2">Dependencies</h2>
<ul>
<li>None.</li>
</ul>
</div>
</div>
<div class="collapse">
<input type="checkbox" id="collapse-section4" aria-hidden="true"> <label for="collapse-section4" aria-hidden="true"><strong>V4.0.0 / 20-April-2021</strong></label>
<div>
<h2 id="main-changes-3">Main changes</h2>
<h3 id="forth-release">Forth release</h3>
<p>This is the forth official release of Open Bootloader Middleware that adds support for SPI protocol</p>
<p>The Open Bootloader SPI commands are compatible with the Standard Bootloader SPI commands.</p>
<ul>
<li>List of implemented commands on SPI protocol:
<ul>
<li>Get commands</li>
<li>Get version</li>
<li>Get ID</li>
<li>Read memory</li>
<li>Write memory</li>
<li>Go command</li>
<li>Erase FLASH</li>
<li>Read protect</li>
<li>Read unprotect</li>
<li>Write protect</li>
<li>Write unprotect</li>
</ul></li>
</ul>
<h2 id="known-limitations-3">Known limitations</h2>
<ul>
<li>List of missing commands on USART, FDCAN, I2C and SPI protocols:
<ul>
<li>Special read command</li>
<li>Special write command</li>
</ul></li>
<li>List of missing commands on USB protocol:
<ul>
<li>Get command</li>
<li>Read unprotect</li>
<li>Mass erase</li>
</ul></li>
</ul>
<h2 id="backward-compatibility-3">Backward compatibility</h2>
<ul>
<li>Compatible with previous release.</li>
</ul>
<h2 id="dependencies-3">Dependencies</h2>
<ul>
<li>None.</li>
</ul>
</div>
</div>
<div class="collapse">
<input type="checkbox" id="collapse-section3" aria-hidden="true"> <label for="collapse-section3" aria-hidden="true"><strong>V3.0.0 / 23-October-2020</strong></label>
<div>
<h2 id="main-changes-4">Main changes</h2>
<h3 id="third-release">Third release</h3>
<p>This is the third official release of Open Bootloader Middleware that adds support for USB DFU protocol</p>
<p>The Open Bootloader USB commands are compatible with the Standard Bootloader USB commands except get command, read unprotect, mass erase, go commands</p>
<ul>
<li>List of implemented commands on USB protocol:
<ul>
<li>Read memory</li>
<li>Write memory</li>
<li>Set Address Pointer</li>
<li>Erase FLASH</li>
</ul></li>
</ul>
<h2 id="known-limitations-4">Known limitations</h2>
<ul>
<li>List of missing commands on USART, FDCAN and I2C protocols:
<ul>
<li>Special read command</li>
<li>Special write command</li>
</ul></li>
<li>List of missing commands on USB protocol:
<ul>
<li>Get command</li>
<li>Read unprotect</li>
<li>Mass erase</li>
</ul></li>
</ul>
<h2 id="backward-compatibility-4">Backward compatibility</h2>
<ul>
<li>Compatible with previous release.</li>
</ul>
<h2 id="dependencies-4">Dependencies</h2>
<ul>
<li>None.</li>
</ul>
</div>
</div>
<div class="collapse">
<input type="checkbox" id="collapse-section2" aria-hidden="true"> <label for="collapse-section2" aria-hidden="true"><strong>V2.0.0 / 12-May-2020</strong></label>
<div>
<h2 id="main-changes-5">Main Changes</h2>
<h3 id="second-release">Second release</h3>
<p>This is the second official release of Open Bootloader Middleware that adds support for I2C protocol.</p>
<p>The Open Bootloader I2C commands are compatible with the Standard Bootloader I2C commands</p>
<ul>
<li>List of implemented commands on I2C protocol:
<ul>
<li>Get commands</li>
<li>Get version</li>
<li>Get ID</li>
<li>Read memory</li>
<li>Write memory</li>
<li>Non stretch write memory</li>
<li>Go command</li>
<li>Erase FLASH</li>
<li>Non stretch erase FLASH</li>
<li>Read protect</li>
<li>Non stretch read protect</li>
<li>Read unprotect</li>
<li>Non stretch read unprotect</li>
<li>Write protect</li>
<li>Non stretch write protect</li>
<li>Write unprotect</li>
<li>Non stretch write unprotect</li>
</ul></li>
</ul>
<h2 id="known-limitations-5">Known Limitations</h2>
<ul>
<li>List of missing commands on USART, FDCAN and I2C protocols:
<ul>
<li>Special read command</li>
<li>Special write command</li>
</ul></li>
</ul>
<h2 id="backward-compatibility-5">Backward Compatibility</h2>
<ul>
<li>Compatible with previous release.</li>
</ul>
<h2 id="dependencies-5">Dependencies</h2>
<ul>
<li>None.</li>
</ul>
</div>
</div>
<div class="collapse">
<input type="checkbox" id="collapse-section1" aria-hidden="true"> <label for="collapse-section1" aria-hidden="true"><strong>V1.0.0 / 01-August-2019</strong></label>
<div>
<h2 id="main-changes-6">Main Changes</h2>
<h3 id="first-release">First release</h3>
<p>This is the first official release of Open Bootloader Middleware that supports USART and FDCAN protocols.</p>
<p>The Open Bootloader USART and FDCAN commands are compatible with the Standard Bootloader commands.</p>
<ul>
<li>List of implemented commands on USART and FDCAN protocols:
<ul>
<li>Get commands</li>
<li>Get version</li>
<li>Get ID</li>
<li>Read memory</li>
<li>Write memory</li>
<li>Go command</li>
<li>Erase FLASH</li>
<li>Read protect</li>
<li>Read unprotect</li>
<li>Write protect</li>
<li>Write unprotect</li>
</ul></li>
</ul>
<h2 id="known-limitations-6">Known Limitations</h2>
<ul>
<li>List of missing commands on USART and FDCAN protocols:
<ul>
<li>Special read command</li>
<li>Special write command</li>
</ul></li>
</ul>
<h2 id="backward-compatibility-6">Backward Compatibility</h2>
<ul>
<li>None.</li>
</ul>
<h2 id="dependencies-6">Dependencies</h2>
<ul>
<li>None.</li>
</ul>
</div>
</div>
</section>
</div>
<footer class="sticky">
<div class="columns">
<div class="column" style="width:95%;">
<p>For complete documentation on <strong>STM32 Microcontrollers</strong> , visit: <a href="http://www.st.com/STM32">www.st.com/STM32</a></p>
</div><div class="column" style="width:5%;">
<p><abbr title="Based on template cx566953 version 3.0">Info</abbr></p>
</div>
</div>
</footer>
</body>
</html>