2836 lines
183 KiB
HTML
2836 lines
183 KiB
HTML
<!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 X-CUBE-TOF1 Software Pack for STM32</title>
|
||
<style type="text/css">
|
||
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%;}
|
||
</style>
|
||
<style type="text/css">@charset "UTF-8";
|
||
|
||
|
||
|
||
:root {
|
||
--fore-color: #03234b;
|
||
--secondary-fore-color: #03234b;
|
||
--back-color: #ffffff;
|
||
--secondary-back-color: #ffffff;
|
||
--blockquote-color: #e6007e;
|
||
--pre-color: #e6007e;
|
||
--border-color: #3cb4e6;
|
||
--secondary-border-color: #3cb4e6;
|
||
--heading-ratio: 1.2;
|
||
--universal-margin: 0.5rem;
|
||
--universal-padding: 0.25rem;
|
||
--universal-border-radius: 0.075rem;
|
||
--background-margin: 1.5%;
|
||
--a-link-color: #3cb4e6;
|
||
--a-visited-color: #8c0078; }
|
||
html {
|
||
font-size: 13.5px; }
|
||
a, b, del, em, i, ins, q, span, strong, u {
|
||
font-size: 1em; }
|
||
html, * {
|
||
font-family: -apple-system, BlinkMacSystemFont, Helvetica, arial, sans-serif;
|
||
line-height: 1.25;
|
||
-webkit-text-size-adjust: 100%; }
|
||
* {
|
||
font-size: 1rem; }
|
||
body {
|
||
margin: 0;
|
||
color: var(--fore-color);
|
||
@background: var(--back-color);
|
||
background: var(--back-color) linear-gradient(#ffd200, #ffd200) repeat-y left top;
|
||
background-size: var(--background-margin);
|
||
}
|
||
details {
|
||
display: block; }
|
||
summary {
|
||
display: list-item; }
|
||
abbr[title] {
|
||
border-bottom: none;
|
||
text-decoration: underline dotted; }
|
||
input {
|
||
overflow: visible; }
|
||
img {
|
||
max-width: 100%;
|
||
height: auto; }
|
||
h1, h2, h3, h4, h5, h6 {
|
||
line-height: 1.25;
|
||
margin: calc(1.5 * var(--universal-margin)) var(--universal-margin);
|
||
font-weight: 400; }
|
||
h1 small, h2 small, h3 small, h4 small, h5 small, h6 small {
|
||
color: var(--secondary-fore-color);
|
||
display: block;
|
||
margin-top: -0.25rem; }
|
||
h1 {
|
||
font-size: calc(1rem * var(--heading-ratio) * var(--heading-ratio) * var(--heading-ratio)); }
|
||
h2 {
|
||
font-size: calc(1rem * var(--heading-ratio) * var(--heading-ratio) );
|
||
border-style: none none solid none ; border-width: thin;
|
||
border-color: var(--border-color); }
|
||
h3 {
|
||
font-size: calc(1rem * var(--heading-ratio) ); }
|
||
h4 {
|
||
font-size: calc(1rem * var(--heading-ratio)); }
|
||
h5 {
|
||
font-size: 1rem; }
|
||
h6 {
|
||
font-size: calc(1rem / var(--heading-ratio)); }
|
||
p {
|
||
margin: var(--universal-margin); }
|
||
ol, ul {
|
||
margin: var(--universal-margin);
|
||
padding-left: calc(3 * var(--universal-margin)); }
|
||
b, strong {
|
||
font-weight: 700; }
|
||
hr {
|
||
box-sizing: content-box;
|
||
border: 0;
|
||
line-height: 1.25em;
|
||
margin: var(--universal-margin);
|
||
height: 0.0714285714rem;
|
||
background: linear-gradient(to right, transparent, var(--border-color) 20%, var(--border-color) 80%, transparent); }
|
||
blockquote {
|
||
display: block;
|
||
position: relative;
|
||
font-style: italic;
|
||
color: var(--secondary-fore-color);
|
||
margin: var(--universal-margin);
|
||
padding: calc(3 * var(--universal-padding));
|
||
border: 0.0714285714rem solid var(--secondary-border-color);
|
||
border-left: 0.3rem solid var(--blockquote-color);
|
||
border-radius: 0 var(--universal-border-radius) var(--universal-border-radius) 0; }
|
||
blockquote:before {
|
||
position: absolute;
|
||
top: calc(0rem - var(--universal-padding));
|
||
left: 0;
|
||
font-family: sans-serif;
|
||
font-size: 2rem;
|
||
font-weight: 800;
|
||
content: "\201c";
|
||
color: var(--blockquote-color); }
|
||
blockquote[cite]:after {
|
||
font-style: normal;
|
||
font-size: 0.75em;
|
||
font-weight: 700;
|
||
content: "\a— " attr(cite);
|
||
white-space: pre; }
|
||
code, kbd, pre, samp {
|
||
font-family: Menlo, Consolas, monospace;
|
||
font-size: 0.85em; }
|
||
code {
|
||
background: var(--secondary-back-color);
|
||
border-radius: var(--universal-border-radius);
|
||
padding: calc(var(--universal-padding) / 4) calc(var(--universal-padding) / 2); }
|
||
kbd {
|
||
background: var(--fore-color);
|
||
color: var(--back-color);
|
||
border-radius: var(--universal-border-radius);
|
||
padding: calc(var(--universal-padding) / 4) calc(var(--universal-padding) / 2); }
|
||
pre {
|
||
overflow: auto;
|
||
background: var(--secondary-back-color);
|
||
padding: calc(1.5 * var(--universal-padding));
|
||
margin: var(--universal-margin);
|
||
border: 0.0714285714rem solid var(--secondary-border-color);
|
||
border-left: 0.2857142857rem solid var(--pre-color);
|
||
border-radius: 0 var(--universal-border-radius) var(--universal-border-radius) 0; }
|
||
sup, sub, code, kbd {
|
||
line-height: 0;
|
||
position: relative;
|
||
vertical-align: baseline; }
|
||
small, sup, sub, figcaption {
|
||
font-size: 0.75em; }
|
||
sup {
|
||
top: -0.5em; }
|
||
sub {
|
||
bottom: -0.25em; }
|
||
figure {
|
||
margin: var(--universal-margin); }
|
||
figcaption {
|
||
color: var(--secondary-fore-color); }
|
||
a {
|
||
text-decoration: none; }
|
||
a:link {
|
||
color: var(--a-link-color); }
|
||
a:visited {
|
||
color: var(--a-visited-color); }
|
||
a:hover, a:focus {
|
||
text-decoration: underline; }
|
||
|
||
.container {
|
||
margin: 0 auto;
|
||
padding: 0 calc(1.5 * var(--universal-padding)); }
|
||
.row {
|
||
box-sizing: border-box;
|
||
display: flex;
|
||
flex: 0 1 auto;
|
||
flex-flow: row wrap;
|
||
margin: 0 0 0 var(--background-margin); }
|
||
.col-sm,
|
||
[class^='col-sm-'],
|
||
[class^='col-sm-offset-'],
|
||
.row[class*='cols-sm-'] > * {
|
||
box-sizing: border-box;
|
||
flex: 0 0 auto;
|
||
padding: 0 calc(var(--universal-padding) / 2); }
|
||
.col-sm,
|
||
.row.cols-sm > * {
|
||
max-width: 100%;
|
||
flex-grow: 1;
|
||
flex-basis: 0; }
|
||
.col-sm-1,
|
||
.row.cols-sm-1 > * {
|
||
max-width: 8.3333333333%;
|
||
flex-basis: 8.3333333333%; }
|
||
.col-sm-offset-0 {
|
||
margin-left: 0; }
|
||
.col-sm-2,
|
||
.row.cols-sm-2 > * {
|
||
max-width: 16.6666666667%;
|
||
flex-basis: 16.6666666667%; }
|
||
.col-sm-offset-1 {
|
||
margin-left: 8.3333333333%; }
|
||
.col-sm-3,
|
||
.row.cols-sm-3 > * {
|
||
max-width: 25%;
|
||
flex-basis: 25%; }
|
||
.col-sm-offset-2 {
|
||
margin-left: 16.6666666667%; }
|
||
.col-sm-4,
|
||
.row.cols-sm-4 > * {
|
||
max-width: 33.3333333333%;
|
||
flex-basis: 33.3333333333%; }
|
||
.col-sm-offset-3 {
|
||
margin-left: 25%; }
|
||
.col-sm-5,
|
||
.row.cols-sm-5 > * {
|
||
max-width: 41.6666666667%;
|
||
flex-basis: 41.6666666667%; }
|
||
.col-sm-offset-4 {
|
||
margin-left: 33.3333333333%; }
|
||
.col-sm-6,
|
||
.row.cols-sm-6 > * {
|
||
max-width: 50%;
|
||
flex-basis: 50%; }
|
||
.col-sm-offset-5 {
|
||
margin-left: 41.6666666667%; }
|
||
.col-sm-7,
|
||
.row.cols-sm-7 > * {
|
||
max-width: 58.3333333333%;
|
||
flex-basis: 58.3333333333%; }
|
||
.col-sm-offset-6 {
|
||
margin-left: 50%; }
|
||
.col-sm-8,
|
||
.row.cols-sm-8 > * {
|
||
max-width: 66.6666666667%;
|
||
flex-basis: 66.6666666667%; }
|
||
.col-sm-offset-7 {
|
||
margin-left: 58.3333333333%; }
|
||
.col-sm-9,
|
||
.row.cols-sm-9 > * {
|
||
max-width: 75%;
|
||
flex-basis: 75%; }
|
||
.col-sm-offset-8 {
|
||
margin-left: 66.6666666667%; }
|
||
.col-sm-10,
|
||
.row.cols-sm-10 > * {
|
||
max-width: 83.3333333333%;
|
||
flex-basis: 83.3333333333%; }
|
||
.col-sm-offset-9 {
|
||
margin-left: 75%; }
|
||
.col-sm-11,
|
||
.row.cols-sm-11 > * {
|
||
max-width: 91.6666666667%;
|
||
flex-basis: 91.6666666667%; }
|
||
.col-sm-offset-10 {
|
||
margin-left: 83.3333333333%; }
|
||
.col-sm-12,
|
||
.row.cols-sm-12 > * {
|
||
max-width: 100%;
|
||
flex-basis: 100%; }
|
||
.col-sm-offset-11 {
|
||
margin-left: 91.6666666667%; }
|
||
.col-sm-normal {
|
||
order: initial; }
|
||
.col-sm-first {
|
||
order: -999; }
|
||
.col-sm-last {
|
||
order: 999; }
|
||
@media screen and (min-width: 500px) {
|
||
.col-md,
|
||
[class^='col-md-'],
|
||
[class^='col-md-offset-'],
|
||
.row[class*='cols-md-'] > * {
|
||
box-sizing: border-box;
|
||
flex: 0 0 auto;
|
||
padding: 0 calc(var(--universal-padding) / 2); }
|
||
.col-md,
|
||
.row.cols-md > * {
|
||
max-width: 100%;
|
||
flex-grow: 1;
|
||
flex-basis: 0; }
|
||
.col-md-1,
|
||
.row.cols-md-1 > * {
|
||
max-width: 8.3333333333%;
|
||
flex-basis: 8.3333333333%; }
|
||
.col-md-offset-0 {
|
||
margin-left: 0; }
|
||
.col-md-2,
|
||
.row.cols-md-2 > * {
|
||
max-width: 16.6666666667%;
|
||
flex-basis: 16.6666666667%; }
|
||
.col-md-offset-1 {
|
||
margin-left: 8.3333333333%; }
|
||
.col-md-3,
|
||
.row.cols-md-3 > * {
|
||
max-width: 25%;
|
||
flex-basis: 25%; }
|
||
.col-md-offset-2 {
|
||
margin-left: 16.6666666667%; }
|
||
.col-md-4,
|
||
.row.cols-md-4 > * {
|
||
max-width: 33.3333333333%;
|
||
flex-basis: 33.3333333333%; }
|
||
.col-md-offset-3 {
|
||
margin-left: 25%; }
|
||
.col-md-5,
|
||
.row.cols-md-5 > * {
|
||
max-width: 41.6666666667%;
|
||
flex-basis: 41.6666666667%; }
|
||
.col-md-offset-4 {
|
||
margin-left: 33.3333333333%; }
|
||
.col-md-6,
|
||
.row.cols-md-6 > * {
|
||
max-width: 50%;
|
||
flex-basis: 50%; }
|
||
.col-md-offset-5 {
|
||
margin-left: 41.6666666667%; }
|
||
.col-md-7,
|
||
.row.cols-md-7 > * {
|
||
max-width: 58.3333333333%;
|
||
flex-basis: 58.3333333333%; }
|
||
.col-md-offset-6 {
|
||
margin-left: 50%; }
|
||
.col-md-8,
|
||
.row.cols-md-8 > * {
|
||
max-width: 66.6666666667%;
|
||
flex-basis: 66.6666666667%; }
|
||
.col-md-offset-7 {
|
||
margin-left: 58.3333333333%; }
|
||
.col-md-9,
|
||
.row.cols-md-9 > * {
|
||
max-width: 75%;
|
||
flex-basis: 75%; }
|
||
.col-md-offset-8 {
|
||
margin-left: 66.6666666667%; }
|
||
.col-md-10,
|
||
.row.cols-md-10 > * {
|
||
max-width: 83.3333333333%;
|
||
flex-basis: 83.3333333333%; }
|
||
.col-md-offset-9 {
|
||
margin-left: 75%; }
|
||
.col-md-11,
|
||
.row.cols-md-11 > * {
|
||
max-width: 91.6666666667%;
|
||
flex-basis: 91.6666666667%; }
|
||
.col-md-offset-10 {
|
||
margin-left: 83.3333333333%; }
|
||
.col-md-12,
|
||
.row.cols-md-12 > * {
|
||
max-width: 100%;
|
||
flex-basis: 100%; }
|
||
.col-md-offset-11 {
|
||
margin-left: 91.6666666667%; }
|
||
.col-md-normal {
|
||
order: initial; }
|
||
.col-md-first {
|
||
order: -999; }
|
||
.col-md-last {
|
||
order: 999; } }
|
||
@media screen and (min-width: 1280px) {
|
||
.col-lg,
|
||
[class^='col-lg-'],
|
||
[class^='col-lg-offset-'],
|
||
.row[class*='cols-lg-'] > * {
|
||
box-sizing: border-box;
|
||
flex: 0 0 auto;
|
||
padding: 0 calc(var(--universal-padding) / 2); }
|
||
.col-lg,
|
||
.row.cols-lg > * {
|
||
max-width: 100%;
|
||
flex-grow: 1;
|
||
flex-basis: 0; }
|
||
.col-lg-1,
|
||
.row.cols-lg-1 > * {
|
||
max-width: 8.3333333333%;
|
||
flex-basis: 8.3333333333%; }
|
||
.col-lg-offset-0 {
|
||
margin-left: 0; }
|
||
.col-lg-2,
|
||
.row.cols-lg-2 > * {
|
||
max-width: 16.6666666667%;
|
||
flex-basis: 16.6666666667%; }
|
||
.col-lg-offset-1 {
|
||
margin-left: 8.3333333333%; }
|
||
.col-lg-3,
|
||
.row.cols-lg-3 > * {
|
||
max-width: 25%;
|
||
flex-basis: 25%; }
|
||
.col-lg-offset-2 {
|
||
margin-left: 16.6666666667%; }
|
||
.col-lg-4,
|
||
.row.cols-lg-4 > * {
|
||
max-width: 33.3333333333%;
|
||
flex-basis: 33.3333333333%; }
|
||
.col-lg-offset-3 {
|
||
margin-left: 25%; }
|
||
.col-lg-5,
|
||
.row.cols-lg-5 > * {
|
||
max-width: 41.6666666667%;
|
||
flex-basis: 41.6666666667%; }
|
||
.col-lg-offset-4 {
|
||
margin-left: 33.3333333333%; }
|
||
.col-lg-6,
|
||
.row.cols-lg-6 > * {
|
||
max-width: 50%;
|
||
flex-basis: 50%; }
|
||
.col-lg-offset-5 {
|
||
margin-left: 41.6666666667%; }
|
||
.col-lg-7,
|
||
.row.cols-lg-7 > * {
|
||
max-width: 58.3333333333%;
|
||
flex-basis: 58.3333333333%; }
|
||
.col-lg-offset-6 {
|
||
margin-left: 50%; }
|
||
.col-lg-8,
|
||
.row.cols-lg-8 > * {
|
||
max-width: 66.6666666667%;
|
||
flex-basis: 66.6666666667%; }
|
||
.col-lg-offset-7 {
|
||
margin-left: 58.3333333333%; }
|
||
.col-lg-9,
|
||
.row.cols-lg-9 > * {
|
||
max-width: 75%;
|
||
flex-basis: 75%; }
|
||
.col-lg-offset-8 {
|
||
margin-left: 66.6666666667%; }
|
||
.col-lg-10,
|
||
.row.cols-lg-10 > * {
|
||
max-width: 83.3333333333%;
|
||
flex-basis: 83.3333333333%; }
|
||
.col-lg-offset-9 {
|
||
margin-left: 75%; }
|
||
.col-lg-11,
|
||
.row.cols-lg-11 > * {
|
||
max-width: 91.6666666667%;
|
||
flex-basis: 91.6666666667%; }
|
||
.col-lg-offset-10 {
|
||
margin-left: 83.3333333333%; }
|
||
.col-lg-12,
|
||
.row.cols-lg-12 > * {
|
||
max-width: 100%;
|
||
flex-basis: 100%; }
|
||
.col-lg-offset-11 {
|
||
margin-left: 91.6666666667%; }
|
||
.col-lg-normal {
|
||
order: initial; }
|
||
.col-lg-first {
|
||
order: -999; }
|
||
.col-lg-last {
|
||
order: 999; } }
|
||
|
||
:root {
|
||
--card-back-color: #3cb4e6;
|
||
--card-fore-color: #03234b;
|
||
--card-border-color: #03234b; }
|
||
.card {
|
||
display: flex;
|
||
flex-direction: column;
|
||
justify-content: space-between;
|
||
align-self: center;
|
||
position: relative;
|
||
width: 100%;
|
||
background: var(--card-back-color);
|
||
color: var(--card-fore-color);
|
||
border: 0.0714285714rem solid var(--card-border-color);
|
||
border-radius: var(--universal-border-radius);
|
||
margin: var(--universal-margin);
|
||
overflow: hidden; }
|
||
@media screen and (min-width: 320px) {
|
||
.card {
|
||
max-width: 320px; } }
|
||
.card > .sectione {
|
||
background: var(--card-back-color);
|
||
color: var(--card-fore-color);
|
||
box-sizing: border-box;
|
||
margin: 0;
|
||
border: 0;
|
||
border-radius: 0;
|
||
border-bottom: 0.0714285714rem solid var(--card-border-color);
|
||
padding: var(--universal-padding);
|
||
width: 100%; }
|
||
.card > .sectione.media {
|
||
height: 200px;
|
||
padding: 0;
|
||
-o-object-fit: cover;
|
||
object-fit: cover; }
|
||
.card > .sectione:last-child {
|
||
border-bottom: 0; }
|
||
|
||
@media screen and (min-width: 240px) {
|
||
.card.small {
|
||
max-width: 240px; } }
|
||
@media screen and (min-width: 480px) {
|
||
.card.large {
|
||
max-width: 480px; } }
|
||
.card.fluid {
|
||
max-width: 100%;
|
||
width: auto; }
|
||
.card.warning {
|
||
--card-back-color: #e5b8b7;
|
||
--card-fore-color: #3b234b;
|
||
--card-border-color: #8c0078; }
|
||
.card.error {
|
||
--card-back-color: #464650;
|
||
--card-fore-color: #ffffff;
|
||
--card-border-color: #8c0078; }
|
||
.card > .sectione.dark {
|
||
--card-back-color: #3b234b;
|
||
--card-fore-color: #ffffff; }
|
||
.card > .sectione.double-padded {
|
||
padding: calc(1.5 * var(--universal-padding)); }
|
||
|
||
|
||
:root {
|
||
--form-back-color: #ffe97f;
|
||
--form-fore-color: #03234b;
|
||
--form-border-color: #3cb4e6;
|
||
--input-back-color: #ffffff;
|
||
--input-fore-color: #03234b;
|
||
--input-border-color: #3cb4e6;
|
||
--input-focus-color: #0288d1;
|
||
--input-invalid-color: #d32f2f;
|
||
--button-back-color: #e2e2e2;
|
||
--button-hover-back-color: #dcdcdc;
|
||
--button-fore-color: #212121;
|
||
--button-border-color: transparent;
|
||
--button-hover-border-color: transparent;
|
||
--button-group-border-color: rgba(124, 124, 124, 0.54); }
|
||
form {
|
||
background: var(--form-back-color);
|
||
color: var(--form-fore-color);
|
||
border: 0.0714285714rem solid var(--form-border-color);
|
||
border-radius: var(--universal-border-radius);
|
||
margin: var(--universal-margin);
|
||
padding: calc(2 * var(--universal-padding)) var(--universal-padding); }
|
||
fieldset {
|
||
border: 0.0714285714rem solid var(--form-border-color);
|
||
border-radius: var(--universal-border-radius);
|
||
margin: calc(var(--universal-margin) / 4);
|
||
padding: var(--universal-padding); }
|
||
legend {
|
||
box-sizing: border-box;
|
||
display: table;
|
||
max-width: 100%;
|
||
white-space: normal;
|
||
font-weight: 500;
|
||
padding: calc(var(--universal-padding) / 2); }
|
||
label {
|
||
padding: calc(var(--universal-padding) / 2) var(--universal-padding); }
|
||
.input-group {
|
||
display: inline-block; }
|
||
.input-group.fluid {
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: center; }
|
||
.input-group.fluid > input {
|
||
max-width: 100%;
|
||
flex-grow: 1;
|
||
flex-basis: 0px; }
|
||
@media screen and (max-width: 499px) {
|
||
.input-group.fluid {
|
||
align-items: stretch;
|
||
flex-direction: column; } }
|
||
.input-group.vertical {
|
||
display: flex;
|
||
align-items: stretch;
|
||
flex-direction: column; }
|
||
.input-group.vertical > input {
|
||
max-width: 100%;
|
||
flex-grow: 1;
|
||
flex-basis: 0px; }
|
||
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
|
||
height: auto; }
|
||
[type="search"] {
|
||
-webkit-appearance: textfield;
|
||
outline-offset: -2px; }
|
||
[type="search"]::-webkit-search-cancel-button,
|
||
[type="search"]::-webkit-search-decoration {
|
||
-webkit-appearance: none; }
|
||
input:not([type]), [type="text"], [type="email"], [type="number"], [type="search"],
|
||
[type="password"], [type="url"], [type="tel"], [type="checkbox"], [type="radio"], textarea, select {
|
||
box-sizing: border-box;
|
||
background: var(--input-back-color);
|
||
color: var(--input-fore-color);
|
||
border: 0.0714285714rem solid var(--input-border-color);
|
||
border-radius: var(--universal-border-radius);
|
||
margin: calc(var(--universal-margin) / 2);
|
||
padding: var(--universal-padding) calc(1.5 * var(--universal-padding)); }
|
||
input:not([type="button"]):not([type="submit"]):not([type="reset"]):hover, input:not([type="button"]):not([type="submit"]):not([type="reset"]):focus, textarea:hover, textarea:focus, select:hover, select:focus {
|
||
border-color: var(--input-focus-color);
|
||
box-shadow: none; }
|
||
input:not([type="button"]):not([type="submit"]):not([type="reset"]):invalid, input:not([type="button"]):not([type="submit"]):not([type="reset"]):focus:invalid, textarea:invalid, textarea:focus:invalid, select:invalid, select:focus:invalid {
|
||
border-color: var(--input-invalid-color);
|
||
box-shadow: none; }
|
||
input:not([type="button"]):not([type="submit"]):not([type="reset"])[readonly], textarea[readonly], select[readonly] {
|
||
background: var(--secondary-back-color); }
|
||
select {
|
||
max-width: 100%; }
|
||
option {
|
||
overflow: hidden;
|
||
text-overflow: ellipsis; }
|
||
[type="checkbox"], [type="radio"] {
|
||
-webkit-appearance: none;
|
||
-moz-appearance: none;
|
||
appearance: none;
|
||
position: relative;
|
||
height: calc(1rem + var(--universal-padding) / 2);
|
||
width: calc(1rem + var(--universal-padding) / 2);
|
||
vertical-align: text-bottom;
|
||
padding: 0;
|
||
flex-basis: calc(1rem + var(--universal-padding) / 2) !important;
|
||
flex-grow: 0 !important; }
|
||
[type="checkbox"]:checked:before, [type="radio"]:checked:before {
|
||
position: absolute; }
|
||
[type="checkbox"]:checked:before {
|
||
content: '\2713';
|
||
font-family: sans-serif;
|
||
font-size: calc(1rem + var(--universal-padding) / 2);
|
||
top: calc(0rem - var(--universal-padding));
|
||
left: calc(var(--universal-padding) / 4); }
|
||
[type="radio"] {
|
||
border-radius: 100%; }
|
||
[type="radio"]:checked:before {
|
||
border-radius: 100%;
|
||
content: '';
|
||
top: calc(0.0714285714rem + var(--universal-padding) / 2);
|
||
left: calc(0.0714285714rem + var(--universal-padding) / 2);
|
||
background: var(--input-fore-color);
|
||
width: 0.5rem;
|
||
height: 0.5rem; }
|
||
:placeholder-shown {
|
||
color: var(--input-fore-color); }
|
||
::-ms-placeholder {
|
||
color: var(--input-fore-color);
|
||
opacity: 0.54; }
|
||
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
|
||
border-style: none;
|
||
padding: 0; }
|
||
button, html [type="button"], [type="reset"], [type="submit"] {
|
||
-webkit-appearance: button; }
|
||
button {
|
||
overflow: visible;
|
||
text-transform: none; }
|
||
button, [type="button"], [type="submit"], [type="reset"],
|
||
a.button, label.button, .button,
|
||
a[role="button"], label[role="button"], [role="button"] {
|
||
display: inline-block;
|
||
background: var(--button-back-color);
|
||
color: var(--button-fore-color);
|
||
border: 0.0714285714rem solid var(--button-border-color);
|
||
border-radius: var(--universal-border-radius);
|
||
padding: var(--universal-padding) calc(1.5 * var(--universal-padding));
|
||
margin: var(--universal-margin);
|
||
text-decoration: none;
|
||
cursor: pointer;
|
||
transition: background 0.3s; }
|
||
button:hover, button:focus, [type="button"]:hover, [type="button"]:focus, [type="submit"]:hover, [type="submit"]:focus, [type="reset"]:hover, [type="reset"]:focus,
|
||
a.button:hover,
|
||
a.button:focus, label.button:hover, label.button:focus, .button:hover, .button:focus,
|
||
a[role="button"]:hover,
|
||
a[role="button"]:focus, label[role="button"]:hover, label[role="button"]:focus, [role="button"]:hover, [role="button"]:focus {
|
||
background: var(--button-hover-back-color);
|
||
border-color: var(--button-hover-border-color); }
|
||
input:disabled, input[disabled], textarea:disabled, textarea[disabled], select:disabled, select[disabled], button:disabled, button[disabled], .button:disabled, .button[disabled], [role="button"]:disabled, [role="button"][disabled] {
|
||
cursor: not-allowed;
|
||
opacity: 0.75; }
|
||
.button-group {
|
||
display: flex;
|
||
border: 0.0714285714rem solid var(--button-group-border-color);
|
||
border-radius: var(--universal-border-radius);
|
||
margin: var(--universal-margin); }
|
||
.button-group > button, .button-group [type="button"], .button-group > [type="submit"], .button-group > [type="reset"], .button-group > .button, .button-group > [role="button"] {
|
||
margin: 0;
|
||
max-width: 100%;
|
||
flex: 1 1 auto;
|
||
text-align: center;
|
||
border: 0;
|
||
border-radius: 0;
|
||
box-shadow: none; }
|
||
.button-group > :not(:first-child) {
|
||
border-left: 0.0714285714rem solid var(--button-group-border-color); }
|
||
@media screen and (max-width: 499px) {
|
||
.button-group {
|
||
flex-direction: column; }
|
||
.button-group > :not(:first-child) {
|
||
border: 0;
|
||
border-top: 0.0714285714rem solid var(--button-group-border-color); } }
|
||
|
||
button.primary, [type="button"].primary, [type="submit"].primary, [type="reset"].primary, .button.primary, [role="button"].primary {
|
||
--button-back-color: #1976d2;
|
||
--button-fore-color: #f8f8f8; }
|
||
button.primary:hover, button.primary:focus, [type="button"].primary:hover, [type="button"].primary:focus, [type="submit"].primary:hover, [type="submit"].primary:focus, [type="reset"].primary:hover, [type="reset"].primary:focus, .button.primary:hover, .button.primary:focus, [role="button"].primary:hover, [role="button"].primary:focus {
|
||
--button-hover-back-color: #1565c0; }
|
||
button.secondary, [type="button"].secondary, [type="submit"].secondary, [type="reset"].secondary, .button.secondary, [role="button"].secondary {
|
||
--button-back-color: #d32f2f;
|
||
--button-fore-color: #f8f8f8; }
|
||
button.secondary:hover, button.secondary:focus, [type="button"].secondary:hover, [type="button"].secondary:focus, [type="submit"].secondary:hover, [type="submit"].secondary:focus, [type="reset"].secondary:hover, [type="reset"].secondary:focus, .button.secondary:hover, .button.secondary:focus, [role="button"].secondary:hover, [role="button"].secondary:focus {
|
||
--button-hover-back-color: #c62828; }
|
||
button.tertiary, [type="button"].tertiary, [type="submit"].tertiary, [type="reset"].tertiary, .button.tertiary, [role="button"].tertiary {
|
||
--button-back-color: #308732;
|
||
--button-fore-color: #f8f8f8; }
|
||
button.tertiary:hover, button.tertiary:focus, [type="button"].tertiary:hover, [type="button"].tertiary:focus, [type="submit"].tertiary:hover, [type="submit"].tertiary:focus, [type="reset"].tertiary:hover, [type="reset"].tertiary:focus, .button.tertiary:hover, .button.tertiary:focus, [role="button"].tertiary:hover, [role="button"].tertiary:focus {
|
||
--button-hover-back-color: #277529; }
|
||
button.inverse, [type="button"].inverse, [type="submit"].inverse, [type="reset"].inverse, .button.inverse, [role="button"].inverse {
|
||
--button-back-color: #212121;
|
||
--button-fore-color: #f8f8f8; }
|
||
button.inverse:hover, button.inverse:focus, [type="button"].inverse:hover, [type="button"].inverse:focus, [type="submit"].inverse:hover, [type="submit"].inverse:focus, [type="reset"].inverse:hover, [type="reset"].inverse:focus, .button.inverse:hover, .button.inverse:focus, [role="button"].inverse:hover, [role="button"].inverse:focus {
|
||
--button-hover-back-color: #111; }
|
||
button.small, [type="button"].small, [type="submit"].small, [type="reset"].small, .button.small, [role="button"].small {
|
||
padding: calc(0.5 * var(--universal-padding)) calc(0.75 * var(--universal-padding));
|
||
margin: var(--universal-margin); }
|
||
button.large, [type="button"].large, [type="submit"].large, [type="reset"].large, .button.large, [role="button"].large {
|
||
padding: calc(1.5 * var(--universal-padding)) calc(2 * var(--universal-padding));
|
||
margin: var(--universal-margin); }
|
||
|
||
|
||
:root {
|
||
--header-back-color: #03234b;
|
||
--header-hover-back-color: #ffd200;
|
||
--header-fore-color: #ffffff;
|
||
--header-border-color: #3cb4e6;
|
||
--nav-back-color: #ffffff;
|
||
--nav-hover-back-color: #ffe97f;
|
||
--nav-fore-color: #e6007e;
|
||
--nav-border-color: #3cb4e6;
|
||
--nav-link-color: #3cb4e6;
|
||
--footer-fore-color: #ffffff;
|
||
--footer-back-color: #03234b;
|
||
--footer-border-color: #3cb4e6;
|
||
--footer-link-color: #3cb4e6;
|
||
--drawer-back-color: #ffffff;
|
||
--drawer-hover-back-color: #ffe97f;
|
||
--drawer-border-color: #3cb4e6;
|
||
--drawer-close-color: #e6007e; }
|
||
header {
|
||
height: 2.75rem;
|
||
background: var(--header-back-color);
|
||
color: var(--header-fore-color);
|
||
border-bottom: 0.0714285714rem solid var(--header-border-color);
|
||
padding: calc(var(--universal-padding) / 4) 0;
|
||
white-space: nowrap;
|
||
overflow-x: auto;
|
||
overflow-y: hidden; }
|
||
header.row {
|
||
box-sizing: content-box; }
|
||
header .logo {
|
||
color: var(--header-fore-color);
|
||
font-size: 1.75rem;
|
||
padding: var(--universal-padding) calc(2 * var(--universal-padding));
|
||
text-decoration: none; }
|
||
header button, header [type="button"], header .button, header [role="button"] {
|
||
box-sizing: border-box;
|
||
position: relative;
|
||
top: calc(0rem - var(--universal-padding) / 4);
|
||
height: calc(3.1875rem + var(--universal-padding) / 2);
|
||
background: var(--header-back-color);
|
||
line-height: calc(3.1875rem - var(--universal-padding) * 1.5);
|
||
text-align: center;
|
||
color: var(--header-fore-color);
|
||
border: 0;
|
||
border-radius: 0;
|
||
margin: 0;
|
||
text-transform: uppercase; }
|
||
header button:hover, header button:focus, header [type="button"]:hover, header [type="button"]:focus, header .button:hover, header .button:focus, header [role="button"]:hover, header [role="button"]:focus {
|
||
background: var(--header-hover-back-color); }
|
||
nav {
|
||
background: var(--nav-back-color);
|
||
color: var(--nav-fore-color);
|
||
border: 0.0714285714rem solid var(--nav-border-color);
|
||
border-radius: var(--universal-border-radius);
|
||
margin: var(--universal-margin); }
|
||
nav * {
|
||
padding: var(--universal-padding) calc(1.5 * var(--universal-padding)); }
|
||
nav a, nav a:visited {
|
||
display: block;
|
||
color: var(--nav-link-color);
|
||
border-radius: var(--universal-border-radius);
|
||
transition: background 0.3s; }
|
||
nav a:hover, nav a:focus, nav a:visited:hover, nav a:visited:focus {
|
||
text-decoration: none;
|
||
background: var(--nav-hover-back-color); }
|
||
nav .sublink-1 {
|
||
position: relative;
|
||
margin-left: calc(2 * var(--universal-padding)); }
|
||
nav .sublink-1:before {
|
||
position: absolute;
|
||
left: calc(var(--universal-padding) - 1 * var(--universal-padding));
|
||
top: -0.0714285714rem;
|
||
content: '';
|
||
height: 100%;
|
||
border: 0.0714285714rem solid var(--nav-border-color);
|
||
border-left: 0; }
|
||
nav .sublink-2 {
|
||
position: relative;
|
||
margin-left: calc(4 * var(--universal-padding)); }
|
||
nav .sublink-2:before {
|
||
position: absolute;
|
||
left: calc(var(--universal-padding) - 3 * var(--universal-padding));
|
||
top: -0.0714285714rem;
|
||
content: '';
|
||
height: 100%;
|
||
border: 0.0714285714rem solid var(--nav-border-color);
|
||
border-left: 0; }
|
||
footer {
|
||
background: var(--footer-back-color);
|
||
color: var(--footer-fore-color);
|
||
border-top: 0.0714285714rem solid var(--footer-border-color);
|
||
padding: calc(2 * var(--universal-padding)) var(--universal-padding);
|
||
font-size: 0.875rem; }
|
||
footer a, footer a:visited {
|
||
color: var(--footer-link-color); }
|
||
header.sticky {
|
||
position: -webkit-sticky;
|
||
position: sticky;
|
||
z-index: 1101;
|
||
top: 0; }
|
||
footer.sticky {
|
||
position: -webkit-sticky;
|
||
position: sticky;
|
||
z-index: 1101;
|
||
bottom: 0; }
|
||
.drawer-toggle:before {
|
||
display: inline-block;
|
||
position: relative;
|
||
vertical-align: bottom;
|
||
content: '\00a0\2261\00a0';
|
||
font-family: sans-serif;
|
||
font-size: 1.5em; }
|
||
@media screen and (min-width: 500px) {
|
||
.drawer-toggle:not(.persistent) {
|
||
display: none; } }
|
||
[type="checkbox"].drawer {
|
||
height: 1px;
|
||
width: 1px;
|
||
margin: -1px;
|
||
overflow: hidden;
|
||
position: absolute;
|
||
clip: rect(0 0 0 0);
|
||
-webkit-clip-path: inset(100%);
|
||
clip-path: inset(100%); }
|
||
[type="checkbox"].drawer + * {
|
||
display: block;
|
||
box-sizing: border-box;
|
||
position: fixed;
|
||
top: 0;
|
||
width: 320px;
|
||
height: 100vh;
|
||
overflow-y: auto;
|
||
background: var(--drawer-back-color);
|
||
border: 0.0714285714rem solid var(--drawer-border-color);
|
||
border-radius: 0;
|
||
margin: 0;
|
||
z-index: 1110;
|
||
right: -320px;
|
||
transition: right 0.3s; }
|
||
[type="checkbox"].drawer + * .drawer-close {
|
||
position: absolute;
|
||
top: var(--universal-margin);
|
||
right: var(--universal-margin);
|
||
z-index: 1111;
|
||
width: 2rem;
|
||
height: 2rem;
|
||
border-radius: var(--universal-border-radius);
|
||
padding: var(--universal-padding);
|
||
margin: 0;
|
||
cursor: pointer;
|
||
transition: background 0.3s; }
|
||
[type="checkbox"].drawer + * .drawer-close:before {
|
||
display: block;
|
||
content: '\00D7';
|
||
color: var(--drawer-close-color);
|
||
position: relative;
|
||
font-family: sans-serif;
|
||
font-size: 2rem;
|
||
line-height: 1;
|
||
text-align: center; }
|
||
[type="checkbox"].drawer + * .drawer-close:hover, [type="checkbox"].drawer + * .drawer-close:focus {
|
||
background: var(--drawer-hover-back-color); }
|
||
@media screen and (max-width: 320px) {
|
||
[type="checkbox"].drawer + * {
|
||
width: 100%; } }
|
||
[type="checkbox"].drawer:checked + * {
|
||
right: 0; }
|
||
@media screen and (min-width: 500px) {
|
||
[type="checkbox"].drawer:not(.persistent) + * {
|
||
position: static;
|
||
height: 100%;
|
||
z-index: 1100; }
|
||
[type="checkbox"].drawer:not(.persistent) + * .drawer-close {
|
||
display: none; } }
|
||
|
||
|
||
:root {
|
||
--table-border-color: #03234b;
|
||
--table-border-separator-color: #03234b;
|
||
--table-head-back-color: #03234b;
|
||
--table-head-fore-color: #ffffff;
|
||
--table-body-back-color: #ffffff;
|
||
--table-body-fore-color: #03234b;
|
||
--table-body-alt-back-color: #f4f4f4; }
|
||
table {
|
||
border-collapse: separate;
|
||
border-spacing: 0;
|
||
margin: 0;
|
||
display: flex;
|
||
flex: 0 1 auto;
|
||
flex-flow: row wrap;
|
||
padding: var(--universal-padding);
|
||
padding-top: 0; }
|
||
table caption {
|
||
font-size: 1rem;
|
||
margin: calc(2 * var(--universal-margin)) 0;
|
||
max-width: 100%;
|
||
flex: 0 0 100%; }
|
||
table thead, table tbody {
|
||
display: flex;
|
||
flex-flow: row wrap;
|
||
border: 0.0714285714rem solid var(--table-border-color); }
|
||
table thead {
|
||
z-index: 999;
|
||
border-radius: var(--universal-border-radius) var(--universal-border-radius) 0 0;
|
||
border-bottom: 0.0714285714rem solid var(--table-border-separator-color); }
|
||
table tbody {
|
||
border-top: 0;
|
||
margin-top: calc(0 - var(--universal-margin));
|
||
border-radius: 0 0 var(--universal-border-radius) var(--universal-border-radius); }
|
||
table tr {
|
||
display: flex;
|
||
padding: 0; }
|
||
table th, table td {
|
||
padding: calc(0.5 * var(--universal-padding));
|
||
font-size: 0.9rem; }
|
||
table th {
|
||
text-align: left;
|
||
background: var(--table-head-back-color);
|
||
color: var(--table-head-fore-color); }
|
||
table td {
|
||
background: var(--table-body-back-color);
|
||
color: var(--table-body-fore-color);
|
||
border-top: 0.0714285714rem solid var(--table-border-color); }
|
||
table:not(.horizontal) {
|
||
overflow: auto;
|
||
max-height: 100%; }
|
||
table:not(.horizontal) thead, table:not(.horizontal) tbody {
|
||
max-width: 100%;
|
||
flex: 0 0 100%; }
|
||
table:not(.horizontal) tr {
|
||
flex-flow: row wrap;
|
||
flex: 0 0 100%; }
|
||
table:not(.horizontal) th, table:not(.horizontal) td {
|
||
flex: 1 0 0%;
|
||
overflow: hidden;
|
||
text-overflow: ellipsis; }
|
||
table:not(.horizontal) thead {
|
||
position: sticky;
|
||
top: 0; }
|
||
table:not(.horizontal) tbody tr:first-child td {
|
||
border-top: 0; }
|
||
table.horizontal {
|
||
border: 0; }
|
||
table.horizontal thead, table.horizontal tbody {
|
||
border: 0;
|
||
flex: .2 0 0;
|
||
flex-flow: row nowrap; }
|
||
table.horizontal tbody {
|
||
overflow: auto;
|
||
justify-content: space-between;
|
||
flex: .8 0 0;
|
||
margin-left: 0;
|
||
padding-bottom: calc(var(--universal-padding) / 4); }
|
||
table.horizontal tr {
|
||
flex-direction: column;
|
||
flex: 1 0 auto; }
|
||
table.horizontal th, table.horizontal td {
|
||
width: auto;
|
||
border: 0;
|
||
border-bottom: 0.0714285714rem solid var(--table-border-color); }
|
||
table.horizontal th:not(:first-child), table.horizontal td:not(:first-child) {
|
||
border-top: 0; }
|
||
table.horizontal th {
|
||
text-align: right;
|
||
border-left: 0.0714285714rem solid var(--table-border-color);
|
||
border-right: 0.0714285714rem solid var(--table-border-separator-color); }
|
||
table.horizontal thead tr:first-child {
|
||
padding-left: 0; }
|
||
table.horizontal th:first-child, table.horizontal td:first-child {
|
||
border-top: 0.0714285714rem solid var(--table-border-color); }
|
||
table.horizontal tbody tr:last-child td {
|
||
border-right: 0.0714285714rem solid var(--table-border-color); }
|
||
table.horizontal tbody tr:last-child td:first-child {
|
||
border-top-right-radius: 0.25rem; }
|
||
table.horizontal tbody tr:last-child td:last-child {
|
||
border-bottom-right-radius: 0.25rem; }
|
||
table.horizontal thead tr:first-child th:first-child {
|
||
border-top-left-radius: 0.25rem; }
|
||
table.horizontal thead tr:first-child th:last-child {
|
||
border-bottom-left-radius: 0.25rem; }
|
||
@media screen and (max-width: 499px) {
|
||
table, table.horizontal {
|
||
border-collapse: collapse;
|
||
border: 0;
|
||
width: 100%;
|
||
display: table; }
|
||
table thead, table th, table.horizontal thead, table.horizontal th {
|
||
border: 0;
|
||
height: 1px;
|
||
width: 1px;
|
||
margin: -1px;
|
||
overflow: hidden;
|
||
padding: 0;
|
||
position: absolute;
|
||
clip: rect(0 0 0 0);
|
||
-webkit-clip-path: inset(100%);
|
||
clip-path: inset(100%); }
|
||
table tbody, table.horizontal tbody {
|
||
border: 0;
|
||
display: table-row-group; }
|
||
table tr, table.horizontal tr {
|
||
display: block;
|
||
border: 0.0714285714rem solid var(--table-border-color);
|
||
border-radius: var(--universal-border-radius);
|
||
background: #ffffff;
|
||
padding: var(--universal-padding);
|
||
margin: var(--universal-margin);
|
||
margin-bottom: calc(1 * var(--universal-margin)); }
|
||
table th, table td, table.horizontal th, table.horizontal td {
|
||
width: auto; }
|
||
table td, table.horizontal td {
|
||
display: block;
|
||
border: 0;
|
||
text-align: right; }
|
||
table td:before, table.horizontal td:before {
|
||
content: attr(data-label);
|
||
float: left;
|
||
font-weight: 600; }
|
||
table th:first-child, table td:first-child, table.horizontal th:first-child, table.horizontal td:first-child {
|
||
border-top: 0; }
|
||
table tbody tr:last-child td, table.horizontal tbody tr:last-child td {
|
||
border-right: 0; } }
|
||
table tr:nth-of-type(2n) > td {
|
||
background: var(--table-body-alt-back-color); }
|
||
@media screen and (max-width: 500px) {
|
||
table tr:nth-of-type(2n) {
|
||
background: var(--table-body-alt-back-color); } }
|
||
:root {
|
||
--table-body-hover-back-color: #90caf9; }
|
||
table.hoverable tr:hover, table.hoverable tr:hover > td, table.hoverable tr:focus, table.hoverable tr:focus > td {
|
||
background: var(--table-body-hover-back-color); }
|
||
@media screen and (max-width: 500px) {
|
||
table.hoverable tr:hover, table.hoverable tr:hover > td, table.hoverable tr:focus, table.hoverable tr:focus > td {
|
||
background: var(--table-body-hover-back-color); } }
|
||
|
||
|
||
:root {
|
||
--mark-back-color: #3cb4e6;
|
||
--mark-fore-color: #ffffff; }
|
||
mark {
|
||
background: var(--mark-back-color);
|
||
color: var(--mark-fore-color);
|
||
font-size: 0.95em;
|
||
line-height: 1em;
|
||
border-radius: var(--universal-border-radius);
|
||
padding: calc(var(--universal-padding) / 4) var(--universal-padding); }
|
||
mark.inline-block {
|
||
display: inline-block;
|
||
font-size: 1em;
|
||
line-height: 1.4;
|
||
padding: calc(var(--universal-padding) / 2) var(--universal-padding); }
|
||
:root {
|
||
--toast-back-color: #424242;
|
||
--toast-fore-color: #fafafa; }
|
||
.toast {
|
||
position: fixed;
|
||
bottom: calc(var(--universal-margin) * 3);
|
||
left: 50%;
|
||
transform: translate(-50%, -50%);
|
||
z-index: 1111;
|
||
color: var(--toast-fore-color);
|
||
background: var(--toast-back-color);
|
||
border-radius: calc(var(--universal-border-radius) * 16);
|
||
padding: var(--universal-padding) calc(var(--universal-padding) * 3); }
|
||
:root {
|
||
--tooltip-back-color: #212121;
|
||
--tooltip-fore-color: #fafafa; }
|
||
.tooltip {
|
||
position: relative;
|
||
display: inline-block; }
|
||
.tooltip:before, .tooltip:after {
|
||
position: absolute;
|
||
opacity: 0;
|
||
clip: rect(0 0 0 0);
|
||
-webkit-clip-path: inset(100%);
|
||
clip-path: inset(100%);
|
||
transition: all 0.3s;
|
||
z-index: 1010;
|
||
left: 50%; }
|
||
.tooltip:not(.bottom):before, .tooltip:not(.bottom):after {
|
||
bottom: 75%; }
|
||
.tooltip.bottom:before, .tooltip.bottom:after {
|
||
top: 75%; }
|
||
.tooltip:hover:before, .tooltip:hover:after, .tooltip:focus:before, .tooltip:focus:after {
|
||
opacity: 1;
|
||
clip: auto;
|
||
-webkit-clip-path: inset(0%);
|
||
clip-path: inset(0%); }
|
||
.tooltip:before {
|
||
content: '';
|
||
background: transparent;
|
||
border: var(--universal-margin) solid transparent;
|
||
left: calc(50% - var(--universal-margin)); }
|
||
.tooltip:not(.bottom):before {
|
||
border-top-color: #212121; }
|
||
.tooltip.bottom:before {
|
||
border-bottom-color: #212121; }
|
||
.tooltip:after {
|
||
content: attr(aria-label);
|
||
color: var(--tooltip-fore-color);
|
||
background: var(--tooltip-back-color);
|
||
border-radius: var(--universal-border-radius);
|
||
padding: var(--universal-padding);
|
||
white-space: nowrap;
|
||
transform: translateX(-50%); }
|
||
.tooltip:not(.bottom):after {
|
||
margin-bottom: calc(2 * var(--universal-margin)); }
|
||
.tooltip.bottom:after {
|
||
margin-top: calc(2 * var(--universal-margin)); }
|
||
:root {
|
||
--modal-overlay-color: rgba(0, 0, 0, 0.45);
|
||
--modal-close-color: #e6007e;
|
||
--modal-close-hover-color: #ffe97f; }
|
||
[type="checkbox"].modal {
|
||
height: 1px;
|
||
width: 1px;
|
||
margin: -1px;
|
||
overflow: hidden;
|
||
position: absolute;
|
||
clip: rect(0 0 0 0);
|
||
-webkit-clip-path: inset(100%);
|
||
clip-path: inset(100%); }
|
||
[type="checkbox"].modal + div {
|
||
position: fixed;
|
||
top: 0;
|
||
left: 0;
|
||
display: none;
|
||
width: 100vw;
|
||
height: 100vh;
|
||
background: var(--modal-overlay-color); }
|
||
[type="checkbox"].modal + div .card {
|
||
margin: 0 auto;
|
||
max-height: 50vh;
|
||
overflow: auto; }
|
||
[type="checkbox"].modal + div .card .modal-close {
|
||
position: absolute;
|
||
top: 0;
|
||
right: 0;
|
||
width: 1.75rem;
|
||
height: 1.75rem;
|
||
border-radius: var(--universal-border-radius);
|
||
padding: var(--universal-padding);
|
||
margin: 0;
|
||
cursor: pointer;
|
||
transition: background 0.3s; }
|
||
[type="checkbox"].modal + div .card .modal-close:before {
|
||
display: block;
|
||
content: '\00D7';
|
||
color: var(--modal-close-color);
|
||
position: relative;
|
||
font-family: sans-serif;
|
||
font-size: 1.75rem;
|
||
line-height: 1;
|
||
text-align: center; }
|
||
[type="checkbox"].modal + div .card .modal-close:hover, [type="checkbox"].modal + div .card .modal-close:focus {
|
||
background: var(--modal-close-hover-color); }
|
||
[type="checkbox"].modal:checked + div {
|
||
display: flex;
|
||
flex: 0 1 auto;
|
||
z-index: 1200; }
|
||
[type="checkbox"].modal:checked + div .card .modal-close {
|
||
z-index: 1211; }
|
||
:root {
|
||
--collapse-label-back-color: #03234b;
|
||
--collapse-label-fore-color: #ffffff;
|
||
--collapse-label-hover-back-color: #3cb4e6;
|
||
--collapse-selected-label-back-color: #3cb4e6;
|
||
--collapse-border-color: var(--collapse-label-back-color);
|
||
--collapse-selected-border-color: #ceecf8;
|
||
--collapse-content-back-color: #ffffff;
|
||
--collapse-selected-label-border-color: #3cb4e6; }
|
||
.collapse {
|
||
width: calc(100% - 2 * var(--universal-margin));
|
||
opacity: 1;
|
||
display: flex;
|
||
flex-direction: column;
|
||
margin: var(--universal-margin);
|
||
border-radius: var(--universal-border-radius); }
|
||
.collapse > [type="radio"], .collapse > [type="checkbox"] {
|
||
height: 1px;
|
||
width: 1px;
|
||
margin: -1px;
|
||
overflow: hidden;
|
||
position: absolute;
|
||
clip: rect(0 0 0 0);
|
||
-webkit-clip-path: inset(100%);
|
||
clip-path: inset(100%); }
|
||
.collapse > label {
|
||
flex-grow: 1;
|
||
display: inline-block;
|
||
height: 1.25rem;
|
||
cursor: pointer;
|
||
transition: background 0.2s;
|
||
color: var(--collapse-label-fore-color);
|
||
background: var(--collapse-label-back-color);
|
||
border: 0.0714285714rem solid var(--collapse-selected-border-color);
|
||
padding: calc(1.25 * var(--universal-padding)); }
|
||
.collapse > label:hover, .collapse > label:focus {
|
||
background: var(--collapse-label-hover-back-color); }
|
||
.collapse > label + div {
|
||
flex-basis: auto;
|
||
height: 1px;
|
||
width: 1px;
|
||
margin: -1px;
|
||
overflow: hidden;
|
||
position: absolute;
|
||
clip: rect(0 0 0 0);
|
||
-webkit-clip-path: inset(100%);
|
||
clip-path: inset(100%);
|
||
transition: max-height 0.3s;
|
||
max-height: 1px; }
|
||
.collapse > :checked + label {
|
||
background: var(--collapse-selected-label-back-color);
|
||
border-color: var(--collapse-selected-label-border-color); }
|
||
.collapse > :checked + label + div {
|
||
box-sizing: border-box;
|
||
position: relative;
|
||
width: 100%;
|
||
height: auto;
|
||
overflow: auto;
|
||
margin: 0;
|
||
background: var(--collapse-content-back-color);
|
||
border: 0.0714285714rem solid var(--collapse-selected-border-color);
|
||
border-top: 0;
|
||
padding: var(--universal-padding);
|
||
clip: auto;
|
||
-webkit-clip-path: inset(0%);
|
||
clip-path: inset(0%);
|
||
max-height: 100%; }
|
||
.collapse > label:not(:first-of-type) {
|
||
border-top: 0; }
|
||
.collapse > label:first-of-type {
|
||
border-radius: var(--universal-border-radius) var(--universal-border-radius) 0 0; }
|
||
.collapse > label:last-of-type:not(:first-of-type) {
|
||
border-radius: 0 0 var(--universal-border-radius) var(--universal-border-radius); }
|
||
.collapse > label:last-of-type:first-of-type {
|
||
border-radius: var(--universal-border-radius); }
|
||
.collapse > :checked:last-of-type:not(:first-of-type) + label {
|
||
border-radius: 0; }
|
||
.collapse > :checked:last-of-type + label + div {
|
||
border-radius: 0 0 var(--universal-border-radius) var(--universal-border-radius); }
|
||
|
||
mark.tertiary {
|
||
--mark-back-color: #3cb4e6; }
|
||
mark.tag {
|
||
padding: calc(var(--universal-padding)/2) var(--universal-padding);
|
||
border-radius: 1em; }
|
||
|
||
|
||
:root {
|
||
--progress-back-color: #3cb4e6;
|
||
--progress-fore-color: #555; }
|
||
progress {
|
||
display: block;
|
||
vertical-align: baseline;
|
||
-webkit-appearance: none;
|
||
-moz-appearance: none;
|
||
appearance: none;
|
||
height: 0.75rem;
|
||
width: calc(100% - 2 * var(--universal-margin));
|
||
margin: var(--universal-margin);
|
||
border: 0;
|
||
border-radius: calc(2 * var(--universal-border-radius));
|
||
background: var(--progress-back-color);
|
||
color: var(--progress-fore-color); }
|
||
progress::-webkit-progress-value {
|
||
background: var(--progress-fore-color);
|
||
border-top-left-radius: calc(2 * var(--universal-border-radius));
|
||
border-bottom-left-radius: calc(2 * var(--universal-border-radius)); }
|
||
progress::-webkit-progress-bar {
|
||
background: var(--progress-back-color); }
|
||
progress::-moz-progress-bar {
|
||
background: var(--progress-fore-color);
|
||
border-top-left-radius: calc(2 * var(--universal-border-radius));
|
||
border-bottom-left-radius: calc(2 * var(--universal-border-radius)); }
|
||
progress[value="1000"]::-webkit-progress-value {
|
||
border-radius: calc(2 * var(--universal-border-radius)); }
|
||
progress[value="1000"]::-moz-progress-bar {
|
||
border-radius: calc(2 * var(--universal-border-radius)); }
|
||
progress.inline {
|
||
display: inline-block;
|
||
vertical-align: middle;
|
||
width: 60%; }
|
||
:root {
|
||
--spinner-back-color: #ddd;
|
||
--spinner-fore-color: #555; }
|
||
@keyframes spinner-donut-anim {
|
||
0% {
|
||
transform: rotate(0deg); }
|
||
100% {
|
||
transform: rotate(360deg); } }
|
||
.spinner {
|
||
display: inline-block;
|
||
margin: var(--universal-margin);
|
||
border: 0.25rem solid var(--spinner-back-color);
|
||
border-left: 0.25rem solid var(--spinner-fore-color);
|
||
border-radius: 50%;
|
||
width: 1.25rem;
|
||
height: 1.25rem;
|
||
animation: spinner-donut-anim 1.2s linear infinite; }
|
||
|
||
progress.primary {
|
||
--progress-fore-color: #1976d2; }
|
||
progress.secondary {
|
||
--progress-fore-color: #d32f2f; }
|
||
progress.tertiary {
|
||
--progress-fore-color: #308732; }
|
||
.spinner.primary {
|
||
--spinner-fore-color: #1976d2; }
|
||
.spinner.secondary {
|
||
--spinner-fore-color: #d32f2f; }
|
||
.spinner.tertiary {
|
||
--spinner-fore-color: #308732; }
|
||
|
||
span[class^='icon-'] {
|
||
display: inline-block;
|
||
height: 1em;
|
||
width: 1em;
|
||
vertical-align: -0.125em;
|
||
background-size: contain;
|
||
margin: 0 calc(var(--universal-margin) / 4); }
|
||
span[class^='icon-'].secondary {
|
||
-webkit-filter: invert(25%);
|
||
filter: invert(25%); }
|
||
span[class^='icon-'].inverse {
|
||
-webkit-filter: invert(100%);
|
||
filter: invert(100%); }
|
||
span.icon-alert {
|
||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2303234b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12' y2='16'%3E%3C/line%3E%3C/svg%3E"); }
|
||
span.icon-bookmark {
|
||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2303234b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 21l-7-5-7 5V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z'%3E%3C/path%3E%3C/svg%3E"); }
|
||
span.icon-calendar {
|
||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2303234b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='16' y1='2' x2='16' y2='6'%3E%3C/line%3E%3Cline x1='8' y1='2' x2='8' y2='6'%3E%3C/line%3E%3Cline x1='3' y1='10' x2='21' y2='10'%3E%3C/line%3E%3C/svg%3E"); }
|
||
span.icon-credit {
|
||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2303234b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='1' y='4' width='22' height='16' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='1' y1='10' x2='23' y2='10'%3E%3C/line%3E%3C/svg%3E"); }
|
||
span.icon-edit {
|
||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2303234b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 14.66V20a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h5.34'%3E%3C/path%3E%3Cpolygon points='18 2 22 6 12 16 8 16 8 12 18 2'%3E%3C/polygon%3E%3C/svg%3E"); }
|
||
span.icon-link {
|
||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2303234b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6'%3E%3C/path%3E%3Cpolyline points='15 3 21 3 21 9'%3E%3C/polyline%3E%3Cline x1='10' y1='14' x2='21' y2='3'%3E%3C/line%3E%3C/svg%3E"); }
|
||
span.icon-help {
|
||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2303234b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3'%3E%3C/path%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='17' x2='12' y2='17'%3E%3C/line%3E%3C/svg%3E"); }
|
||
span.icon-home {
|
||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2303234b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z'%3E%3C/path%3E%3Cpolyline points='9 22 9 12 15 12 15 22'%3E%3C/polyline%3E%3C/svg%3E"); }
|
||
span.icon-info {
|
||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2303234b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='16' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='8' x2='12' y2='8'%3E%3C/line%3E%3C/svg%3E"); }
|
||
span.icon-lock {
|
||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2303234b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='11' width='18' height='11' rx='2' ry='2'%3E%3C/rect%3E%3Cpath d='M7 11V7a5 5 0 0 1 10 0v4'%3E%3C/path%3E%3C/svg%3E"); }
|
||
span.icon-mail {
|
||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2303234b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z'%3E%3C/path%3E%3Cpolyline points='22,6 12,13 2,6'%3E%3C/polyline%3E%3C/svg%3E"); }
|
||
span.icon-location {
|
||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2303234b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'%3E%3C/path%3E%3Ccircle cx='12' cy='10' r='3'%3E%3C/circle%3E%3C/svg%3E"); }
|
||
span.icon-phone {
|
||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2303234b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z'%3E%3C/path%3E%3C/svg%3E"); }
|
||
span.icon-rss {
|
||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2303234b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 11a9 9 0 0 1 9 9'%3E%3C/path%3E%3Cpath d='M4 4a16 16 0 0 1 16 16'%3E%3C/path%3E%3Ccircle cx='5' cy='19' r='1'%3E%3C/circle%3E%3C/svg%3E"); }
|
||
span.icon-search {
|
||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2303234b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E"); }
|
||
span.icon-settings {
|
||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2303234b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='3'%3E%3C/circle%3E%3Cpath d='M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z'%3E%3C/path%3E%3C/svg%3E"); }
|
||
span.icon-share {
|
||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2303234b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='18' cy='5' r='3'%3E%3C/circle%3E%3Ccircle cx='6' cy='12' r='3'%3E%3C/circle%3E%3Ccircle cx='18' cy='19' r='3'%3E%3C/circle%3E%3Cline x1='8.59' y1='13.51' x2='15.42' y2='17.49'%3E%3C/line%3E%3Cline x1='15.41' y1='6.51' x2='8.59' y2='10.49'%3E%3C/line%3E%3C/svg%3E"); }
|
||
span.icon-cart {
|
||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2303234b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='21' r='1'%3E%3C/circle%3E%3Ccircle cx='20' cy='21' r='1'%3E%3C/circle%3E%3Cpath d='M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6'%3E%3C/path%3E%3C/svg%3E"); }
|
||
span.icon-upload {
|
||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2303234b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'%3E%3C/path%3E%3Cpolyline points='17 8 12 3 7 8'%3E%3C/polyline%3E%3Cline x1='12' y1='3' x2='12' y2='15'%3E%3C/line%3E%3C/svg%3E"); }
|
||
span.icon-user {
|
||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2303234b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'%3E%3C/path%3E%3Ccircle cx='12' cy='7' r='4'%3E%3C/circle%3E%3C/svg%3E"); }
|
||
|
||
span.icon-st-update {
|
||
background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMDAgMjAwIj48ZyBmaWxsPSIjMDMyMzRiIj48cGF0aCBkPSJNMTcwLjkzNCA2NC41NjlsLS4wNC0uMDU1LTI5LjA0OSA0MC4wMzgtLjA1Ny4wNzloMTQuODY3YTU5LjM2NiA1OS4zNjYgMCAwIDEtMS40ODggMTUuNjE1Yy0xLjE1OCA1LjMxOC0zLjgwNyAxMy40NDgtOS44NDggMjEuOTc3LTIuNzY2IDQuMTE4LTYuMzc1IDcuNzI2LTkuMjA4IDEwLjQwOC0zLjQyNiAyLjg1Ny03LjQ2MSA2LjA5NS0xMiA4LjM3Ni04LjEyMSA0LjU2OC0xNy44ODEgNy4xMzgtMjguMjI1IDcuNDMyLTEwLjkwNy4yNDgtMjAuMjAxLTIuNjEtMjYuMDcyLTUuMDUyLTguMjgzLTMuNDc5LTE0LjExMS03LjgwNy0xNi44NS0xMC4wNzgtMS4yNTQtLjk1Ni0yLjI1LTEuOTA3LTMuMDU3LTIuNjc2YTI4LjY2MiAyOC42NjIgMCAwIDAtMS4xNTctMS4wNjkgMTU4Ljg3NCAxNTguODc0IDAgMCAwLTEuNDc5LTEuMzYybC00LjQzNS0zLjk1NiAzLjU2OSA0LjgxLjE4My4yNDNjLjIuMjYzLjU0OC43MjIgMS4wNDggMS4zODkuMjc2LjMzNC41NzkuNzQ3LjkzIDEuMjI2bC4wMDguMDFjLjY4OS45MzkgMS41NDYgMi4xMDcgMi42NjQgMy4zMjIgMyAzLjUzNiA4LjE3OCA4LjgwMSAxNS44MDggMTMuODAxIDUuOTY5IDMuODY2IDE1LjY3MiA4LjkwMSAyOC4wMDEgMTAuOTM1YTc5LjA1IDc5LjA1IDAgMCAwIDEyLjQ4NS45OThjNy45NyAwIDE1LjY1MS0xLjIyOCAyMi44MjgtMy42NDkgNi4zNjYtMS44NzcgMTIuMTkyLTQuOTgxIDE3LjA1My03Ljc3MSA2LjE2LTMuOTM2IDEwLjgxNy03LjU4NiAxNC42NTQtMTEuNDg4IDguMDg0LTcuODk5IDE0Ljg4NC0xNy45MTMgMTkuMTUtMjguMTk5IDMuMjU5LTcuNTk0IDUuNDU2LTE1LjcyNyA2LjUyOS0yNC4xNzVsLjA1NS0uNDI1LjA4My0uNjQxSDIwMGwtMjkuMDY2LTQwLjA2M3pNNTguMTU5IDk5LjIzMmwtMTIuNjU1LjU2M2MtLjA5Ny0uODgxLS4xNTktMS45ODYtLjIyNy0zLjQ3NGE1OS4xODQgNTkuMTg0IDAgMCAxIDEuNDQ2LTE2LjU2YzEuMTU3LTUuMzE2IDMuODA0LTEzLjQ0NCA5Ljg0OC0yMS45NzcgMi4xNjgtMy4yMjggNS4wMDktNi40NCA5LjIwOC0xMC40MTUgMy40MS0yLjg0OSA3LjQzMi02LjA4IDEyLjAwNS04LjM3NSA4LjExNC00LjU2OCAxNy44Ny03LjEzOCAyOC4yMTMtNy40MzIgMTAuOS0uMjUgMjAuMTk2IDIuNjA3IDI2LjA3MiA1LjA0NSA4LjI1OCAzLjQ3MyAxNC4xMDUgNy44MTIgMTYuODU3IDEwLjA5MSAxLjI1Ny45NTEgMi4yNTMgMS45MDQgMy4wNTcgMi42NzNsLjAxNy4wMTZjLjQzLjQxMS44MDEuNzY2IDEuMTM2IDEuMDUxLjQ3NS40MzguODQxLjc3NyAxLjA5MSAxLjAxbC4xMzguMTI4LjI0OC4yMjkgNC4wNCAzLjYxMy0zLjE2NS00LjQ1NmMtLjA1OC0uMDgzLS4zMTItLjQxNy0uNzMtLjk3MWwtLjUwNy0uNjdhMjguOTIyIDI4LjkyMiAwIDAgMS0uOTAxLTEuMTkybC0uMDItLjAyN2MtLjY5LS45NDUtMS41NDgtMi4xMjEtMi42NzctMy4zNDYtMy4wMDItMy41MzctOC4xODItOC44MDMtMTUuODEzLTEzLjgwMS01Ljk2NC0zLjg2NS0xNS42NjItOC45LTI3Ljk5Ny0xMC45MzUtOC40ODQtMS4zNjMtMjEuNDk2LTIuMDA5LTM1LjMxMyAyLjY1MS02LjM1NSAxLjg4LTEyLjE4NiA0Ljk4My0xNy4wNTQgNy43NzItNi4xNjMgMy45NDQtMTAuODIgNy41OTUtMTQuNjU0IDExLjQ4OC04LjA3OSA3Ljg5NC0xNC44ODIgMTcuOTA5LTE5LjE1NSAyOC4yLTMuMjY4IDcuNjI0LTUuNDYzIDE1Ljc1Ny02LjUyMyAyNC4xNzMtLjQzNiAzLjI4MS0uNjQyIDUuNDIxLS42NjQgNi45MjZMMCAxMDEuODMxbDMwLjY4MyAzOC43MjcuMDQyLjA1MyAyNy4zOC00MS4yOTguMDU0LS4wODF6IiBzdHlsZT0iZmlsbDogI2U2MDA3ZTsiLz48L2c+PC9zdmc+Cg==); }
|
||
span.icon-st-add {
|
||
background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMDAgMjAwIj48ZyBmaWxsPSIjMTMyNTRhIj48cGF0aCBkPSJNMTAwIC4yMTJDNDQuODY4LjIxMiAwIDQ0Ljg4OSAwIDk5Ljc4OGMwIDU1LjEzMiA0NC44NjggMTAwIDEwMCAxMDBzMTAwLTQ0Ljg2OCAxMDAtMTAwQzIwMCA0NC44ODkgMTU1LjEzMi4yMTIgMTAwIC4yMTJ6bTAgMTgxLjE2NGMtNDQuOTc0IDAtODEuNTg3LTM2LjYxNC04MS41ODctODEuNTg3IDAtNDQuNzYyIDM2LjYxNC04MS4xNjQgODEuNTg3LTgxLjE2NCA0NC45OTUgMCA4MS41ODcgMzYuNDAyIDgxLjU4NyA4MS4xNjQgMCA0NC45NzMtMzYuNTkyIDgxLjU4Ny04MS41ODcgODEuNTg3eiIgc3R5bGU9ImZpbGw6ICNlNjAwN2U7Ii8+PHBhdGggZD0iTTE0MS4xIDg4LjEyN2gtMjkuNDM5VjU4LjY4OGMwLTYuMzkyLTUuMTg1LTExLjU5OC0xMS41OTgtMTEuNTk4LTYuNDEzIDAtMTEuNjE5IDUuMjA2LTExLjYxOSAxMS41OTh2MjkuNDM5SDU4LjQ3NmMtNi4zOTIgMC0xMS41OTggNS4xODUtMTEuNTk4IDExLjU5OCAwIDYuNDEzIDUuMjA2IDExLjYxOSAxMS41OTggMTEuNjE5aDI5Ljk2OHYyOS45NjhjMCA2LjM5MiA1LjIwNiAxMS41OTggMTEuNjE5IDExLjU5OCA2LjQxMyAwIDExLjU5OC01LjIwNiAxMS41OTgtMTEuNTk4di0yOS45NjhIMTQxLjFjNi4zOTIgMCAxMS41OTgtNS4yMDYgMTEuNTk4LTExLjYxOSAwLTYuNDEzLTUuMjA2LTExLjU5OC0xMS41OTgtMTEuNTk4eiIgc3R5bGU9ImZpbGw6ICNlNjAwN2U7Ii8+PC9nPjwvc3ZnPgo=); }
|
||
|
||
|
||
:root {
|
||
--generic-border-color: rgba(0, 0, 0, 0.3);
|
||
--generic-box-shadow: 0 0.2857142857rem 0.2857142857rem 0 rgba(0, 0, 0, 0.125), 0 0.1428571429rem 0.1428571429rem -0.1428571429rem rgba(0, 0, 0, 0.125); }
|
||
.hidden {
|
||
display: none !important; }
|
||
.visually-hidden {
|
||
position: absolute !important;
|
||
width: 1px !important;
|
||
height: 1px !important;
|
||
margin: -1px !important;
|
||
border: 0 !important;
|
||
padding: 0 !important;
|
||
clip: rect(0 0 0 0) !important;
|
||
-webkit-clip-path: inset(100%) !important;
|
||
clip-path: inset(100%) !important;
|
||
overflow: hidden !important; }
|
||
.bordered {
|
||
border: 0.0714285714rem solid var(--generic-border-color) !important; }
|
||
.rounded {
|
||
border-radius: var(--universal-border-radius) !important; }
|
||
.circular {
|
||
border-radius: 50% !important; }
|
||
.shadowed {
|
||
box-shadow: var(--generic-box-shadow) !important; }
|
||
.responsive-margin {
|
||
margin: calc(var(--universal-margin) / 4) !important; }
|
||
@media screen and (min-width: 500px) {
|
||
.responsive-margin {
|
||
margin: calc(var(--universal-margin) / 2) !important; } }
|
||
@media screen and (min-width: 1280px) {
|
||
.responsive-margin {
|
||
margin: var(--universal-margin) !important; } }
|
||
.responsive-padding {
|
||
padding: calc(var(--universal-padding) / 4) !important; }
|
||
@media screen and (min-width: 500px) {
|
||
.responsive-padding {
|
||
padding: calc(var(--universal-padding) / 2) !important; } }
|
||
@media screen and (min-width: 1280px) {
|
||
.responsive-padding {
|
||
padding: var(--universal-padding) !important; } }
|
||
@media screen and (max-width: 499px) {
|
||
.hidden-sm {
|
||
display: none !important; } }
|
||
@media screen and (min-width: 500px) and (max-width: 1279px) {
|
||
.hidden-md {
|
||
display: none !important; } }
|
||
@media screen and (min-width: 1280px) {
|
||
.hidden-lg {
|
||
display: none !important; } }
|
||
@media screen and (max-width: 499px) {
|
||
.visually-hidden-sm {
|
||
position: absolute !important;
|
||
width: 1px !important;
|
||
height: 1px !important;
|
||
margin: -1px !important;
|
||
border: 0 !important;
|
||
padding: 0 !important;
|
||
clip: rect(0 0 0 0) !important;
|
||
-webkit-clip-path: inset(100%) !important;
|
||
clip-path: inset(100%) !important;
|
||
overflow: hidden !important; } }
|
||
@media screen and (min-width: 500px) and (max-width: 1279px) {
|
||
.visually-hidden-md {
|
||
position: absolute !important;
|
||
width: 1px !important;
|
||
height: 1px !important;
|
||
margin: -1px !important;
|
||
border: 0 !important;
|
||
padding: 0 !important;
|
||
clip: rect(0 0 0 0) !important;
|
||
-webkit-clip-path: inset(100%) !important;
|
||
clip-path: inset(100%) !important;
|
||
overflow: hidden !important; } }
|
||
@media screen and (min-width: 1280px) {
|
||
.visually-hidden-lg {
|
||
position: absolute !important;
|
||
width: 1px !important;
|
||
height: 1px !important;
|
||
margin: -1px !important;
|
||
border: 0 !important;
|
||
padding: 0 !important;
|
||
clip: rect(0 0 0 0) !important;
|
||
-webkit-clip-path: inset(100%) !important;
|
||
clip-path: inset(100%) !important;
|
||
overflow: hidden !important; } }
|
||
|
||
img[alt="ST logo"] { display: block; margin: auto; width: 75%; max-width: 250px; min-width: 71px; }
|
||
img[alt="Cube logo"] { float: right; width: 30%; max-width: 10rem; min-width: 8rem; padding-right: 1rem;}
|
||
.figure {
|
||
display: block;
|
||
margin-left: auto;
|
||
margin-right: auto;
|
||
text-align: center;
|
||
}</style>
|
||
<!--[if lt IE 9]>
|
||
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
|
||
<![endif]-->
|
||
<link href="data:image/png;base64,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" rel="icon" type="image/x-icon" />
|
||
</head>
|
||
<body>
|
||
<div class="row">
|
||
<div class="col-sm-12 col-lg-4">
|
||
<center>
|
||
<h1 id="release-notes-for-x-cube-tof1">Release Notes for <mark>X-CUBE-TOF1</mark></h1>
|
||
<p>Copyright © 2023 STMicroelectronics<br />
|
||
</p>
|
||
<a href="https://www.st.com" class="logo"><img src="data:image/png;base64,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" alt="ST logo" /></a>
|
||
</center>
|
||
<h1 id="purpose">Purpose</h1>
|
||
<p>The <mark>X-CUBE-TOF1</mark> software pack is an expansion for STM32Cube. This software is gathering ranging sensor drivers for VL53L1CB, VL53L3CX, VL53L4CX, VL53L4CD, VL53L4ED, VL53L5CX, VL53L7CX and VL53L8CX running on STM32. It is built on top of STM32Cube software technology that eases portability across different STM32 microcontrollers.</p>
|
||
<p><strong>X-CUBE-TOF1</strong> software features:</p>
|
||
<ul>
|
||
<li>Complete software to build applications using VL53L1CB, VL53L3CX, VL53L4CX, VL53L4CD, VL53L4ED, VL53L5CX, VL53L7CX or VL53L8CX</li>
|
||
<li>Easy portability across different MCU families thanks to STM32Cube</li>
|
||
<li>Example implementation available on the board X-NUCLEO-53L1A2, X-NUCLEO-53L3A2, X-NUCLEO-53L4A2, X-NUCLEO-53L4A3, X-NUCLEO-53L4A1, X-NUCLEO-53L5A1, X-NUCLEO-53L7A1 , X-NUCLEO-53L8A1 STM32 expansion boards plugged on top of one NUCLEO-F401RE or NUCLEO-L476RG</li>
|
||
</ul>
|
||
<p><img src="data:image/png;base64,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" alt="The X-CUBE-TOF1 package contents" /><br />
|
||
</p>
|
||
<p>Here is the list of references to user documents:</p>
|
||
<ul>
|
||
<li><a href="https://www.st.com/content/st_com/en/stm32cube-ecosystem.html">STM32Cube</a></li>
|
||
<li><a href="https://www.st.com/en/evaluation-tools/stm32-nucleo-boards.html">STM32 Nucleo boards</a></li>
|
||
<li><a href="https://www.st.com/en/evaluation-tools/stm32-nucleo-expansion-boards.html">STM32 Nucleo expansion boards</a></li>
|
||
</ul>
|
||
</div>
|
||
<section id="update-history" class="col-sm-12 col-lg-8">
|
||
<h1 id="update-history">Update history</h1>
|
||
<div class="collapse">
|
||
<input type="checkbox" id="collapse-section9" checked aria-hidden="true"> <label for="collapse-section9" aria-hidden="true">V3.4.1 / 25-January-2024</label>
|
||
<div>
|
||
<h2 id="main-changes">Main Changes</h2>
|
||
<ul>
|
||
<li>Clean up release versions in documents</li>
|
||
<li>Fix issues in examples (RTC enabled but useless, non existing pin assignement for VL53L8)</li>
|
||
</ul>
|
||
<h3 id="product-update">Product Update</h3>
|
||
<table>
|
||
<thead>
|
||
<tr class="header">
|
||
<th style="text-align: left;">Headline</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">Reworked examples to remove RTC (badly enabled but no use)</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">Removed erroneous I2C_RST pin assignment in VL53L8 examples</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<h2 id="contents">Contents</h2>
|
||
<p><small>The components flagged by “<span class="icon-st-update"></span>” have changed since the previous release. “<span class="icon-st-add"></span>” are new.</small></p>
|
||
<p>Components</p>
|
||
<table>
|
||
<thead>
|
||
<tr class="header">
|
||
<th style="text-align: left;">Name</th>
|
||
<th style="text-align: left;">Version</th>
|
||
<th style="text-align: left;">Release note</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L4A3 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.0</td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L4A3/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L4ED BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.0</td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l4ed/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L8A1 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.1</td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L8A1/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L8CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.2</td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l8cx/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L7A1 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.2</td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L7A1/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L7CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.2</td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l7cx/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L4A1 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.3</td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L4A1/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L4CD BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.2</td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l4cd/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L4A2 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.3</td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L4A2/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L4CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.3</td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l4cx/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L1A2 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.3</td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L1A2/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L1CB BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.4</td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l1cb/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L3A2 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V2.0.4</td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L3A2/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L3CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V2.0.5</td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l3cx/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L5A1 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.6</td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L5A1/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L5CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.7</td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l5cx/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<p>Note: in the table above, components <strong>highlighted</strong> have changed since previous release.</p>
|
||
<h2 id="known-limitations">Known Limitations</h2>
|
||
<table>
|
||
<thead>
|
||
<tr class="header">
|
||
<th style="text-align: left;">Headline</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">The 53L3A2_MultiSensorRanging, 53L4A2_MultiSensorRanging and 53L1A2_MultiSensorRanging sample applications don’t support multi target detection</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">When generating projects for STM32U5, user may encounter compilation errors related to missing BUS_I2C1_SDA_GPIO_PORT and BUS_I2C1_SDA_GPIO_PIN symbols in custom_bus.h. When manually adding BUS_I2C1_SDA_GPIO_PORT and BUS_I2C1_SDA_GPIO_PIN the application compiles without errors.</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<h2 id="development-toolchains-and-compilers">Development toolchains and compilers</h2>
|
||
<ul>
|
||
<li>IAR System Workbench V9.20.1</li>
|
||
<li>ARM Keil V5.37</li>
|
||
<li>STM32CubeIDE v1.14.0</li>
|
||
</ul>
|
||
<h2 id="supported-devices-and-boards">Supported devices and boards</h2>
|
||
<ul>
|
||
<li>NUCLEO-F401RE MB1136 rev.C</li>
|
||
<li>NUCLEO-L476RG MB1136 rev.C</li>
|
||
<li>VL53L1CB / X-NUCLEO-53L1A2 / VL53L1-SATEL</li>
|
||
<li>VL53L3CX / X-NUCLEO-53L3A2 / VL53L3CX-SATEL</li>
|
||
<li>VL53L4CD / X-NUCLEO-53L4A1 / SATEL-VL53L4CD</li>
|
||
<li>VL53L4CX / X-NUCLEO-53L4A2 / SATEL-VL53L4CX</li>
|
||
<li>VL53L4ED / X-NUCLEO-53L4A3 / SATEL-VL53L4ED</li>
|
||
<li>VL53L5CX / X-NUCLEO-53L5A1 / VL53L5CX-SATEL</li>
|
||
<li>VL53L7CX / X-NUCLEO-53L7A1 / SATEL-VL53L7CX</li>
|
||
<li>VL53L8CX / X-NUCLEO-53L8A1 / SATEL-VL53L8</li>
|
||
</ul>
|
||
<h2 id="backward-compatibility">Backward compatibility</h2>
|
||
<p>N/A</p>
|
||
<h2 id="dependencies">Dependencies</h2>
|
||
<p>This software release is compatible with:</p>
|
||
<ul>
|
||
<li>STM32CubeHAL F4 V1.8.2</li>
|
||
<li>STM32CubeHAL L4 V1.13.4</li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
<div class="collapse">
|
||
<input type="checkbox" id="collapse-section8" aria-hidden="true"> <label for="collapse-section8" aria-hidden="true">V3.4.0 / 25-September-2023</label>
|
||
<div>
|
||
<h2 id="main-changes-1">Main Changes</h2>
|
||
<ul>
|
||
<li>Added VL53L4ED and X-NUCLEO-53L4A3 support</li>
|
||
<li>BSP drivers update</li>
|
||
</ul>
|
||
<h3 id="product-update-1">Product Update</h3>
|
||
<table>
|
||
<thead>
|
||
<tr class="header">
|
||
<th style="text-align: left;">Headline</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">Add X-NUCLEO-53L4A3 BSP Driver V1.0.0</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">Add VL53L4ED BSP Component V1.0.0</td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">Update VL53L1CB BSP Component to v1.0.4</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">Update VL53L3CX BSP Component to v2.0.5</td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">Update VL53L4CX BSP Component to v1.0.3</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">Update X-NUCLEO-53L1A2 BSP Driver to v1.0.3</td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">Update X-NUCLEO-53L3A2 BSP Driver to v2.0.4</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">Update X-NUCLEO-53L4A1 BSP Driver to v1.0.3</td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">Update X-NUCLEO-53L4A2 BSP Driver to v1.0.3</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">Update X-NUCLEO-53L5A1 BSP Driver to v1.0.6</td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">Update X-NUCLEO-53L7A1 BSP Driver to v1.0.2</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">Update X-NUCLEO-53L8A1 BSP Driver to v1.0.1</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<h2 id="contents-1">Contents</h2>
|
||
<p><small>The components flagged by “<span class="icon-st-update"></span>” have changed since the previous release. “<span class="icon-st-add"></span>” are new.</small></p>
|
||
<p>Components</p>
|
||
<table>
|
||
<thead>
|
||
<tr class="header">
|
||
<th style="text-align: left;">Name</th>
|
||
<th style="text-align: left;">Version</th>
|
||
<th style="text-align: left;">Release note</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L4A3 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.0<span class="icon-st-add"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L4A3/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L4ED BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.0<span class="icon-st-add"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l4ed/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L8A1 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.1<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L8A1/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L8CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.2<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l8cx/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L7A1 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.2<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L7A1/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L7CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.2<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l7cx/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L4A1 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.3<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L4A1/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L4CD BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.2<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l4cd/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L4A2 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.3<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L4A2/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L4CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.3<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l4cx/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L1A2 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.3<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L1A2/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L1CB BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.4<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l1cb/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L3A2 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V2.0.4<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L3A2/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L3CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V2.0.5<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l3cx/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L5A1 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.6<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L5A1/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L5CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.7<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l5cx/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<p>Note: in the table above, components <strong>highlighted</strong> have changed since previous release.</p>
|
||
<h2 id="known-limitations-1">Known Limitations</h2>
|
||
<table>
|
||
<thead>
|
||
<tr class="header">
|
||
<th style="text-align: left;">Headline</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">The 53L3A2_MultiSensorRanging, 53L4A2_MultiSensorRanging and 53L1A2_MultiSensorRanging sample applications don’t support multi target detection</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">When generating projects for STM32U5, user may encounter compilation errors related to missing BUS_I2C1_SDA_GPIO_PORT and BUS_I2C1_SDA_GPIO_PIN symbols in custom_bus.h. When manually adding BUS_I2C1_SDA_GPIO_PORT and BUS_I2C1_SDA_GPIO_PIN the application compiles without errors.</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<h2 id="development-toolchains-and-compilers-1">Development toolchains and compilers</h2>
|
||
<ul>
|
||
<li>IAR System Workbench V9.20.1</li>
|
||
<li>ARM Keil V5.37</li>
|
||
<li>STM32CubeIDE v1.13.0</li>
|
||
</ul>
|
||
<h2 id="supported-devices-and-boards-1">Supported devices and boards</h2>
|
||
<ul>
|
||
<li>NUCLEO-F401RE MB1136 rev.C</li>
|
||
<li>NUCLEO-L476RG MB1136 rev.C</li>
|
||
<li>VL53L1CB / X-NUCLEO-53L1A2 / VL53L1-SATEL</li>
|
||
<li>VL53L3CX / X-NUCLEO-53L3A2 / VL53L3CX-SATEL</li>
|
||
<li>VL53L4CD / X-NUCLEO-53L4A1 / SATEL-VL53L4CD</li>
|
||
<li>VL53L4CX / X-NUCLEO-53L4A2 / SATEL-VL53L4CX</li>
|
||
<li>VL53L4ED / X-NUCLEO-53L4A3 / SATEL-VL53L4ED</li>
|
||
<li>VL53L5CX / X-NUCLEO-53L5A1 / VL53L5CX-SATEL</li>
|
||
<li>VL53L7CX / X-NUCLEO-53L7A1 / SATEL-VL53L7CX</li>
|
||
<li>VL53L8CX / X-NUCLEO-53L8A1 / SATEL-VL53L8</li>
|
||
</ul>
|
||
<h2 id="backward-compatibility-1">Backward compatibility</h2>
|
||
<p>N/A</p>
|
||
<h2 id="dependencies-1">Dependencies</h2>
|
||
<p>This software release is compatible with:</p>
|
||
<ul>
|
||
<li>STM32CubeHAL F4 V1.8.0</li>
|
||
<li>STM32CubeHAL L4 V1.13.4</li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
<div class="collapse">
|
||
<input type="checkbox" id="collapse-section7" aria-hidden="true"> <label for="collapse-section7" aria-hidden="true">V3.3.1 / 24-May-2023</label>
|
||
<div>
|
||
<h2 id="main-changes-2">Main Changes</h2>
|
||
<ul>
|
||
<li>Added example selector</li>
|
||
<li>components drivers update</li>
|
||
</ul>
|
||
<h3 id="product-update-2">Product Update</h3>
|
||
<table>
|
||
<thead>
|
||
<tr class="header">
|
||
<th style="text-align: left;">Headline</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">Update VL53L1CB BSP Component to v1.0.3</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">Update VL53L3CX BSP Component to v2.0.4</td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">Update VL53L4CD BSP Component to v1.0.2</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">Update VL53L4CX BSP Component to v1.0.2</td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">Update VL53L5CX BSP Component to v1.0.7</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">Update VL53L7CX BSP Component to v1.0.2</td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">Update VL53L8CX BSP Component to v1.0.2</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<h2 id="contents-2">Contents</h2>
|
||
<p><small>The components flagged by “<span class="icon-st-update"></span>” have changed since the previous release. “<span class="icon-st-add"></span>” are new.</small></p>
|
||
<p>Components</p>
|
||
<table>
|
||
<thead>
|
||
<tr class="header">
|
||
<th style="text-align: left;">Name</th>
|
||
<th style="text-align: left;">Version</th>
|
||
<th style="text-align: left;">Release note</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L8A1 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.0<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L8A1/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L8CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.2<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l8cx/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L7A1 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.1<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L7A1/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L7CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.2<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l7cx/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L4A1 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.2<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L4A1/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L4CD BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.2<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l4cd/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L4A2 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.2<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L4A2/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L4CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.2<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l4cx/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L1A2 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.2<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L1A2/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L1CB BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.3<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l1cb/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L3A2 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V2.0.3<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L3A2/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L3CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V2.0.4<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l3cx/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L5A1 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.5<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L5A1/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L5CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.7<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l5cx/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<p>Note: in the table above, components <strong>highlighted</strong> have changed since previous release.</p>
|
||
<h2 id="known-limitations-2">Known Limitations</h2>
|
||
<table>
|
||
<thead>
|
||
<tr class="header">
|
||
<th style="text-align: left;">Headline</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">The 53L3A2_MultiSensorRanging, 53L4A2_MultiSensorRanging and 53L1A2_MultiSensorRanging sample applications don’t support multi target detection</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">When generating projects for STM32U5 it is possible that you will encounter compilation errors related to missing BUS_I2C1_SDA_GPIO_PORT and BUS_I2C1_SDA_GPIO_PIN symbols in custom_bus.h. When manually adding BUS_I2C1_SDA_GPIO_PORT and BUS_I2C1_SDA_GPIO_PIN the application compiles without errors.</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<h2 id="development-toolchains-and-compilers-2">Development toolchains and compilers</h2>
|
||
<ul>
|
||
<li>IAR System Workbench V9.20.1</li>
|
||
<li>ARM Keil V5.37</li>
|
||
<li>STM32CubeIDE v1.12.0</li>
|
||
</ul>
|
||
<h2 id="supported-devices-and-boards-2">Supported devices and boards</h2>
|
||
<ul>
|
||
<li>NUCLEO-F401RE MB1136 rev.C</li>
|
||
<li>NUCLEO-L476RG MB1136 rev.C</li>
|
||
<li>VL53L1CB / X-NUCLEO-53L1A2 / VL53L1-SATEL</li>
|
||
<li>VL53L3CX / X-NUCLEO-53L3A2 / VL53L3CX-SATEL</li>
|
||
<li>VL53L4CD / X-NUCLEO-53L4A1 / SATEL-VL53L4CD</li>
|
||
<li>VL53L4CX / X-NUCLEO-53L4A2 / SATEL-VL53L4CX</li>
|
||
<li>VL53L5CX / X-NUCLEO-53L5A1 / VL53L5CX-SATEL</li>
|
||
<li>VL53L7CX / X-NUCLEO-53L7A1 / VL53L7CX-SATEL</li>
|
||
<li>VL53L8CX / X-NUCLEO-53L8A1 / VL53L8CX-SATEL</li>
|
||
</ul>
|
||
<h2 id="backward-compatibility-2">Backward compatibility</h2>
|
||
<p>N/A</p>
|
||
<h2 id="dependencies-2">Dependencies</h2>
|
||
<p>This software release is compatible with:</p>
|
||
<ul>
|
||
<li>STM32CubeHAL F4 V1.8.0</li>
|
||
<li>STM32CubeHAL L4 V1.13.2</li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
<div class="collapse">
|
||
<input type="checkbox" id="collapse-section6" aria-hidden="true"> <label for="collapse-section6" aria-hidden="true">V3.3.0 / 03-February-2023</label>
|
||
<div>
|
||
<h2 id="main-changes-3">Main Changes</h2>
|
||
<h3 id="product-update-3">Product Update</h3>
|
||
<table>
|
||
<thead>
|
||
<tr class="header">
|
||
<th style="text-align: left;">Headline</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">Add X-NUCLEO-53L8A1 BSP Driver V1.0.0</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">Add VL53L8CX BSP Component V1.0.0</td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">Update VL53L1CB BSP Component to v1.0.2</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">Update VL53L3CX BSP Component to v2.0.3</td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">Update VL53L4CD BSP Component to v1.0.1</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">Update VL53L4CX BSP Component to v1.0.1</td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">Update VL53L5CX BSP Component to v1.0.4</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">Update VL53L7CX BSP Component to v1.0.1</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<h2 id="contents-3">Contents</h2>
|
||
<p><small>The components flagged by “<span class="icon-st-update"></span>” have changed since the previous release. “<span class="icon-st-add"></span>” are new.</small></p>
|
||
<p>Components</p>
|
||
<table>
|
||
<thead>
|
||
<tr class="header">
|
||
<th style="text-align: left;">Name</th>
|
||
<th style="text-align: left;">Version</th>
|
||
<th style="text-align: left;">Release note</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L8A1 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.0<span class="icon-st-add"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L8A1/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L8CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.0<span class="icon-st-add"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l8cx/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L7A1 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.1<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L7A1/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L7CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.1<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l7cx/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L4A1 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.2<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L4A1/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L4CD BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.1<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l4cd/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L4A2 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.2<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L4A2/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L4CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.1<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l4cx/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L1A2 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.2<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L1A2/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L1CB BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.2<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l1cb/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L3A2 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V2.0.3<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L3A2/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L3CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V2.0.3<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l3cx/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L5A1 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.5<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L5A1/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L5CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.4<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l5cx/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<p>Note: in the table above, components <strong>highlighted</strong> have changed since previous release.</p>
|
||
<h2 id="known-limitations-3">Known Limitations</h2>
|
||
<table>
|
||
<thead>
|
||
<tr class="header">
|
||
<th style="text-align: left;">Headline</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">The 53L3A2_MultiSensorRanging, 53L4A2_MultiSensorRanging and 53L1A2_MultiSensorRanging sample applications don’t support multi target detection</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">When generating projects for STM32U5 it is possible that you will encounter compilation errors related to missing BUS_I2C1_SDA_GPIO_PORT and BUS_I2C1_SDA_GPIO_PIN symbols in custom_bus.h. When manually adding BUS_I2C1_SDA_GPIO_PORT and BUS_I2C1_SDA_GPIO_PIN the application compiles without errors.</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<h2 id="development-toolchains-and-compilers-3">Development toolchains and compilers</h2>
|
||
<ul>
|
||
<li>IAR System Workbench V9.20.1</li>
|
||
<li>ARM Keil V5.37</li>
|
||
<li>STM32CubeIDE v1.11.0</li>
|
||
</ul>
|
||
<h2 id="supported-devices-and-boards-3">Supported devices and boards</h2>
|
||
<ul>
|
||
<li>NUCLEO-F401RE MB1136 rev.C</li>
|
||
<li>NUCLEO-L476RG MB1136 rev.C</li>
|
||
<li>VL53L1CB / X-NUCLEO-53L1A2 / VL53L1-SATEL</li>
|
||
<li>VL53L3CX / X-NUCLEO-53L3A2 / VL53L3CX-SATEL</li>
|
||
<li>VL53L4CD / X-NUCLEO-53L4A1 / SATEL-VL53L4CD</li>
|
||
<li>VL53L4CX / X-NUCLEO-53L4A2 / SATEL-VL53L4CX</li>
|
||
<li>VL53L5CX / X-NUCLEO-53L5A1 / VL53L5CX-SATEL</li>
|
||
<li>VL53L7CX / X-NUCLEO-53L7A1 / VL53L7CX-SATEL</li>
|
||
<li>VL53L8CX / X-NUCLEO-53L8A1 / VL53L8CX-SATEL</li>
|
||
</ul>
|
||
<h2 id="backward-compatibility-3">Backward compatibility</h2>
|
||
<p>N/A</p>
|
||
<h2 id="dependencies-3">Dependencies</h2>
|
||
<p>This software release is compatible with:</p>
|
||
<ul>
|
||
<li>STM32CubeHAL F4 V1.8.0</li>
|
||
<li>STM32CubeHAL L4 V1.13.2</li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
<div class="collapse">
|
||
<input type="checkbox" id="collapse-section5" aria-hidden="true"> <label for="collapse-section5" aria-hidden="true">V3.2.0 / September 25th 2022</label>
|
||
<div>
|
||
<h2 id="main-changes-4">Main Changes</h2>
|
||
<h3 id="product-update-4">Product Update</h3>
|
||
<table>
|
||
<thead>
|
||
<tr class="header">
|
||
<th style="text-align: left;">Headline</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">Add X-NUCLEO-53L7A1 BSP Driver V1.0.0</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">Add VL53L7CX BSP Component V1.0.0</td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">Update X-NUCLEO-53L5A1 BSP to v1.0.4</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">Update VL53L5CX BSP Component to v1.0.3</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<h2 id="contents-4">Contents</h2>
|
||
<p><small>The components flagged by “<span class="icon-st-update"></span>” have changed since the previous release. “<span class="icon-st-add"></span>” are new.</small></p>
|
||
<p>Components</p>
|
||
<table>
|
||
<thead>
|
||
<tr class="header">
|
||
<th style="text-align: left;">Name</th>
|
||
<th style="text-align: left;">Version</th>
|
||
<th style="text-align: left;">Release note</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L7A1 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.0<span class="icon-st-add"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L7A1/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L7CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.0<span class="icon-st-add"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l7cx/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L4A1 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.1<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L4A1/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L4CD BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.0<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l4cd/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L4A2 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.1<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L4A2/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L4CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.0<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l4cx/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L1A2 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.1<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L1A2/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L1CB BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.1<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l1cb/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L3A2 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V2.0.2<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L3A2/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L3CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V2.0.2<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l3cx/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L5A1 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.4<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L5A1/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L5CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.3<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l5cx/Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<p>Note: in the table above, components <strong>highlighted</strong> have changed since previous release.</p>
|
||
<h2 id="known-limitations-4">Known Limitations</h2>
|
||
<table>
|
||
<thead>
|
||
<tr class="header">
|
||
<th style="text-align: left;">Headline</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">The pack doesn’t prevent multiple devices selection in Custom ranging examples generation. This will be fixed in a next release.</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">The combination Custom / RANGING SENSOR + Board Part Ranging without Application selected shall not be used even if the pack doesn’t prevent it. This will be fixed in a next release</td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">The 53L3A2_MultiSensorRanging, 53L4A2_MultiSensorRanging and 53L1A2_MultiSensorRanging sample applications don’t support multi target detection</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">When generating projects for STM32U5 it is possible that you will encounter compilation errors related to missing BUS_I2C1_SDA_GPIO_PORT and BUS_I2C1_SDA_GPIO_PIN symbols in custom_bus.h. When manually adding BUS_I2C1_SDA_GPIO_PORT and BUS_I2C1_SDA_GPIO_PIN the application compiles without errors.</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<h2 id="development-toolchains-and-compilers-4">Development toolchains and compilers</h2>
|
||
<ul>
|
||
<li>IAR System Workbench V9.20.1</li>
|
||
<li>ARM Keil V5.37</li>
|
||
<li>STM32CubeIDE v1.10.1</li>
|
||
</ul>
|
||
<h2 id="supported-devices-and-boards-4">Supported devices and boards</h2>
|
||
<ul>
|
||
<li>NUCLEO-F401RE MB1136 rev.C</li>
|
||
<li>NUCLEO-L476RG MB1136 rev.C</li>
|
||
<li>VL53L1CB / X-NUCLEO-53L1A2 / VL53L1-SATEL</li>
|
||
<li>VL53L3CX / X-NUCLEO-53L3A2 / VL53L3CX-SATEL</li>
|
||
<li>VL53L4CD / X-NUCLEO-53L4A1 / SATEL-VL53L4CD</li>
|
||
<li>VL53L4CX / X-NUCLEO-53L4A2 / SATEL-VL53L4CX</li>
|
||
<li>VL53L5CX / X-NUCLEO-53L5A1 / VL53L5CX-SATEL</li>
|
||
<li>VL53L7CX / X-NUCLEO-53L7A1 / VL53L7CX-SATEL</li>
|
||
</ul>
|
||
<h2 id="backward-compatibility-4">Backward compatibility</h2>
|
||
<p>N/A</p>
|
||
<h2 id="dependencies-4">Dependencies</h2>
|
||
<p>This software release is compatible with:</p>
|
||
<ul>
|
||
<li>STM32CubeHAL F4 V1.8.0</li>
|
||
<li>STM32CubeHAL L4 V1.13.2</li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
<div class="collapse">
|
||
<input type="checkbox" id="collapse-section4" aria-hidden="true"> <label for="collapse-section4" aria-hidden="true">V3.1.0 / May 11th 2022</label>
|
||
<div>
|
||
<h2 id="main-changes-5">Main Changes</h2>
|
||
<h3 id="product-update-5">Product Update</h3>
|
||
<table>
|
||
<thead>
|
||
<tr class="header">
|
||
<th style="text-align: left;">Headline</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">Add X-NUCLEO-53L4A1 BSP Driver V1.0.1</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">Add VL53L4CD BSP Component V1.0.0</td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">Add X-NUCLEO-53L4A2 BSP Driver V1.0.1</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">Add VL53L4CX BSP Component V1.0.0</td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">Update X-NUCLEO-53L1A2 BSP v1.0.1</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">Update VL53L1CB BSP Component v1.0.1</td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">Update X-NUCLEO-53L3A2 BSP to v2.0.2</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">Update VL53L3CX BSP Component to v2.0.2</td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">Update X-NUCLEO-53L5A1 BSP to v1.0.3</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">Update VL53L5CX BSP Component to v1.0.2</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<h2 id="contents-5">Contents</h2>
|
||
<p><small>The components flagged by “<span class="icon-st-update"></span>” have changed since the previous release. “<span class="icon-st-add"></span>” are new.</small></p>
|
||
<p>Components</p>
|
||
<table>
|
||
<thead>
|
||
<tr class="header">
|
||
<th style="text-align: left;">Name</th>
|
||
<th style="text-align: left;">Version</th>
|
||
<th style="text-align: left;">Release note</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L4A1 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.1<span class="icon-st-add"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L4A1/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L4CD BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.0<span class="icon-st-add"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l4cd/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L4A2 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.1<span class="icon-st-add"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L4A2/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L4CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.0<span class="icon-st-add"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l4cx/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L1A2 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.1<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L1A2/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L1CB BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.1<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l1cb/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L3A2 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V2.0.2<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L3A2/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L3CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V2.0.2<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l3cx/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L5A1 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.3<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L5A1/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L5CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.2<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l5cx/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<p>Note: in the table above, components <strong>highlighted</strong> have changed since previous release.</p>
|
||
<h2 id="known-limitations-5">Known Limitations</h2>
|
||
<table>
|
||
<thead>
|
||
<tr class="header">
|
||
<th style="text-align: left;">Headline</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">The pack doesn’t prevent multiple devices selection in Custom ranging examples generation. This will be fixed in a next release.</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">The combination Custom / RANGING SENSOR + Board Part Ranging without Application selected shall not be used even if the pack doesn’t prevent it. This will be fixed in a next release</td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">The 53L3A2_MultiSensorRanging, 53L4A2_MultiSensorRanging and 53L1A2_MultiSensorRanging sample applications don’t support multi target detection</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">When generating projects for STM32U5 it is possible that you will encounter compilation errors related to missing BUS_I2C1_SDA_GPIO_PORT and BUS_I2C1_SDA_GPIO_PIN symbols in custom_bus.h. When manually adding BUS_I2C1_SDA_GPIO_PORT and BUS_I2C1_SDA_GPIO_PIN the application compiles without errors.</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<h2 id="development-toolchains-and-compilers-5">Development toolchains and compilers</h2>
|
||
<ul>
|
||
<li>IAR System Workbench V9.20.1</li>
|
||
<li>ARM Keil V5.32</li>
|
||
<li>STM32CubeIDE v1.9.0</li>
|
||
</ul>
|
||
<h2 id="supported-devices-and-boards-5">Supported devices and boards</h2>
|
||
<ul>
|
||
<li>NUCLEO-F401RE MB1136 rev.C</li>
|
||
<li>NUCLEO-L476RG MB1136 rev.C</li>
|
||
<li>VL53L1CB / X-NUCLEO-53L1A2 / VL53L1-SATEL</li>
|
||
<li>VL53L3CX / X-NUCLEO-53L3A2 / VL53L3CX-SATEL</li>
|
||
<li>VL53L4CD / X-NUCLEO-53L4A1 / SATEL-VL53L4CD</li>
|
||
<li>VL53L4CX / X-NUCLEO-53L4A2 / SATEL-VL53L4CX</li>
|
||
<li>VL53L5CX / X-NUCLEO-53L5A1 / VL53L5CX-SATEL</li>
|
||
</ul>
|
||
<h2 id="backward-compatibility-5">Backward compatibility</h2>
|
||
<p>N/A</p>
|
||
<h2 id="dependencies-5">Dependencies</h2>
|
||
<p>This software release is compatible with:</p>
|
||
<ul>
|
||
<li>STM32CubeHAL F4 V1.7.12</li>
|
||
<li>STM32CubeHAL L4 V1.13.0</li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
<div class="collapse">
|
||
<input type="checkbox" id="collapse-section3" aria-hidden="true"> <label for="collapse-section3" aria-hidden="true">V3.0.0 / January 12th 2022</label>
|
||
<div>
|
||
<h2 id="main-changes-6">Main Changes</h2>
|
||
<h3 id="product-update-6">Product Update</h3>
|
||
<table>
|
||
<thead>
|
||
<tr class="header">
|
||
<th style="text-align: left;">Headline</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">Add X-NUCLEO-53L1A2 BSP v1.0.0</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">Add VL53L1CB BSP Component v1.0.0</td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">Update X-NUCLEO-53L3A2 BSP to v2.0.1</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">Update VL53L3CX BSP Component to v2.0.1</td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">Update X-NUCLEO-53L5A1 BSP to v1.0.1</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">Update VL53L5CX BSP Component to v1.0.1</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<h2 id="contents-6">Contents</h2>
|
||
<p><small>The components flagged by “<span class="icon-st-update"></span>” have changed since the previous release. “<span class="icon-st-add"></span>” are new.</small></p>
|
||
<p>Components</p>
|
||
<table>
|
||
<thead>
|
||
<tr class="header">
|
||
<th style="text-align: left;">Name</th>
|
||
<th style="text-align: left;">Version</th>
|
||
<th style="text-align: left;">Release note</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L1A2 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.0<span class="icon-st-add"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L1A2/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L1CB BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.0<span class="icon-st-add"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l1cb/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L3A2 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V2.0.1<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L3A2/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L3CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V2.0.1<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l3cx/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L5A1 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.1<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L5A1/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L5CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.1<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l5cx/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<p>Note: in the table above, components <strong>highlighted</strong> have changed since previous release.</p>
|
||
<h2 id="known-limitations-6">Known Limitations</h2>
|
||
<table>
|
||
<thead>
|
||
<tr class="header">
|
||
<th style="text-align: left;">Headline</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">The 53L3A2_MultiSensorRanging and 53L1A2_MultiSensorRanging sample applications don’t support multi target detection</td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;">When generating projects for STM32U5 it is possible that you will encounter compilation errors related to missing BUS_I2C1_SDA_GPIO_PORT and BUS_I2C1_SDA_GPIO_PIN symbols in custom_bus.h. When manually adding BUS_I2C1_SDA_GPIO_PORT and BUS_I2C1_SDA_GPIO_PIN the application compiles without errors.</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<h2 id="development-toolchains-and-compilers-6">Development toolchains and compilers</h2>
|
||
<ul>
|
||
<li>IAR System Workbench V8.50.9</li>
|
||
<li>ARM Keil V5.32</li>
|
||
<li>STM32CubeIDE v1.8.0</li>
|
||
</ul>
|
||
<h2 id="supported-devices-and-boards-6">Supported devices and boards</h2>
|
||
<ul>
|
||
<li>NUCLEO-F401RE MB1136 rev.C</li>
|
||
<li>NUCLEO-L476RG MB1136 rev.C</li>
|
||
<li>VL53L1CB / X-NUCLEO-53L1A2 / VL53L1-SATEL</li>
|
||
<li>VL53L3CX / X-NUCLEO-53L3A2 / VL53L3CX-SATEL</li>
|
||
<li>VL53L5CX / X-NUCLEO-53L5A1 / VL53L5CX-SATEL</li>
|
||
</ul>
|
||
<h2 id="backward-compatibility-6">Backward compatibility</h2>
|
||
<p>N/A</p>
|
||
<h2 id="dependencies-6">Dependencies</h2>
|
||
<p>This software release is compatible with:</p>
|
||
<ul>
|
||
<li>STM32CubeHAL F4 V1.7.12</li>
|
||
<li>STM32CubeHAL L4 V1.13.0</li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
<div class="collapse">
|
||
<input type="checkbox" id="collapse-section2" aria-hidden="true"> <label for="collapse-section2" aria-hidden="true">V2.0.0 / July 1st 2021</label>
|
||
<div>
|
||
<h2 id="main-changes-7">Main Changes</h2>
|
||
<h3 id="product-update-7">Product Update</h3>
|
||
<ul>
|
||
<li>Add X-NUCLEO-53L5A1 BSP v1.0.0</li>
|
||
<li>Add VL53L5CX BSP Component v1.0.0</li>
|
||
<li><p>Add 53L5A1_MultiSensorRanging, 53L5A1_SimpleRanging and 53L5A1_ThresholdDetection sample applications</p></li>
|
||
<li>Update X-NUCLEO-53L3A2 BSP to v2.0.0</li>
|
||
<li><p>Update VL53L3CX BSP Component to v2.0.0</p></li>
|
||
</ul>
|
||
<h2 id="contents-7">Contents</h2>
|
||
<p><small>The components flagged by “<span class="icon-st-update"></span>” have changed since the previous release. “<span class="icon-st-add"></span>” are new.</small></p>
|
||
<p>Components</p>
|
||
<table>
|
||
<thead>
|
||
<tr class="header">
|
||
<th style="text-align: left;">Name</th>
|
||
<th style="text-align: left;">Version</th>
|
||
<th style="text-align: left;">Release note</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L3A2 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V2.0.0<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L3A2/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L3CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V2.0.0<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l3cx/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L5A1 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.0<span class="icon-st-add"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L5A1/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L5CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.0<span class="icon-st-add"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l5cx/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>53L3A2_MultiSensorRanging Example</strong></td>
|
||
<td style="text-align: left;">V1.0.0<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Projects/NUCLEO-F401RE/Examples/53L3A2/53L3A2_MultiSensorRanging/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>53L3A2_SimpleRanging Example</strong></td>
|
||
<td style="text-align: left;">V1.0.0<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Projects/NUCLEO-F401RE/Examples/53L3A2/53L3A2_SimpleRanging/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>53L5A1_MultiSensorRanging Example</strong></td>
|
||
<td style="text-align: left;">V1.0.0<span class="icon-st-add"></span></td>
|
||
<td style="text-align: left;"><a href="./Projects/NUCLEO-F401RE/Examples/53L5A1/53L5A1_MultiSensorRanging/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>53L5A1_SimpleRanging Example</strong></td>
|
||
<td style="text-align: left;">V1.0.0<span class="icon-st-add"></span></td>
|
||
<td style="text-align: left;"><a href="./Projects/NUCLEO-F401RE/Examples/53L5A1/53L5A1_SimpleRanging/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>53L5A1_ThresholdDetection Example</strong></td>
|
||
<td style="text-align: left;">V1.0.0<span class="icon-st-add"></span></td>
|
||
<td style="text-align: left;"><a href="./Projects/NUCLEO-F401RE/Examples/53L5A1/53L5A1_ThresholdDetection/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L3CX_SimpleRanging Example</strong></td>
|
||
<td style="text-align: left;">V1.0.0<span class="icon-st-update"></span></td>
|
||
<td style="text-align: left;"><a href="./Projects/NUCLEO-F401RE/Examples/CUSTOM/VL53L3CX_SimpleRanging/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>VL53L5CX_SimpleRanging Example</strong></td>
|
||
<td style="text-align: left;">V1.0.0<span class="icon-st-add"></span></td>
|
||
<td style="text-align: left;"><a href="./Projects/NUCLEO-F401RE/Examples/CUSTOM/VL53L5CX_SimpleRanging/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<p>Note: in the table above, components <strong>highlighted</strong> have changed since previous release.</p>
|
||
<h2 id="known-limitations-7">Known Limitations</h2>
|
||
<table>
|
||
<thead>
|
||
<tr class="header">
|
||
<th style="text-align: left;">Headline</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">The 53L3A2_MultiSensorRanging sample application doesn’t support multi target detection</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<h2 id="development-toolchains-and-compilers-7">Development toolchains and compilers</h2>
|
||
<ul>
|
||
<li>IAR System Workbench V8.50.9</li>
|
||
<li>ARM Keil V5.32</li>
|
||
<li>STM32CubeIDE v1.6.1</li>
|
||
</ul>
|
||
<h2 id="supported-devices-and-boards-7">Supported devices and boards</h2>
|
||
<ul>
|
||
<li>NUCLEO-F401RE MB1136 rev.C</li>
|
||
<li>NUCLEO-L476RG MB1136 rev.C</li>
|
||
<li>VL53L3CX / X-NUCLEO-53L3A2 / VL53L3CX-SATEL</li>
|
||
<li>VL53L5CX / X-NUCLEO-53L5A1 / VL53L5CX-SATEL</li>
|
||
</ul>
|
||
<h2 id="backward-compatibility-7">Backward compatibility</h2>
|
||
<p>N/A</p>
|
||
<h2 id="dependencies-7">Dependencies</h2>
|
||
<p>This software release is compatible with:</p>
|
||
<ul>
|
||
<li>STM32CubeHAL F4 V1.7.12</li>
|
||
<li>STM32CubeHAL L4 V1.13.0</li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
<div class="collapse">
|
||
<input type="checkbox" id="collapse-section1" aria-hidden="true"> <label for="collapse-section1" aria-hidden="true">V1.0.0 / March 15th 2021</label>
|
||
<div>
|
||
<h2 id="main-changes-8">Main Changes</h2>
|
||
<h3 id="first-release">First release</h3>
|
||
<p>This is the first release of the <strong>X-CUBE-TOF1</strong>. This release supports the <strong>X-NUCLEO-53L3A2</strong> and the <strong>VL53L3CX</strong> sensors embedded on it through the BSP ranging sensor class. The <strong>VL53L3CX-SATEL</strong> board part is also supported through the custom ranging sensor class.</p>
|
||
<h2 id="contents-8">Contents</h2>
|
||
<p><small>The components flagged by “<span class="icon-st-update"></span>” have changed since the previous release. “<span class="icon-st-add"></span>” are new.</small></p>
|
||
<p>Components</p>
|
||
<table>
|
||
<thead>
|
||
<tr class="header">
|
||
<th style="text-align: left;">Name</th>
|
||
<th style="text-align: left;">Version</th>
|
||
<th style="text-align: left;">Release note</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>X-NUCLEO-53L3A2 BSP Driver</strong></td>
|
||
<td style="text-align: left;">V1.0.0<span class="icon-st-add"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/53L3A2/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="even">
|
||
<td style="text-align: left;"><strong>VL53L3CX BSP Component</strong></td>
|
||
<td style="text-align: left;">V1.0.0<span class="icon-st-add"></span></td>
|
||
<td style="text-align: left;"><a href="./Drivers/BSP/Components/vl53l3cx/Release_notes.html">release note URL</a></td>
|
||
</tr>
|
||
<tr class="odd">
|
||
<td style="text-align: left;"><strong>VL53LX Driver</strong></td>
|
||
<td style="text-align: left;">V1.2.3<span class="icon-st-add"></span></td>
|
||
<td style="text-align: left;"><a href=".\Release_Notes.html">release note URL</a></td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<p>Note: in the table above, components <strong>highlighted</strong> have changed since previous release.</p>
|
||
<h2 id="known-limitations-8">Known Limitations</h2>
|
||
<table>
|
||
<thead>
|
||
<tr class="header">
|
||
<th style="text-align: left;">Headline</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="odd">
|
||
<td style="text-align: left;">No known limitations</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<h2 id="development-toolchains-and-compilers-8">Development toolchains and compilers</h2>
|
||
<ul>
|
||
<li>IAR System Workbench V8.50.5</li>
|
||
<li>ARM Keil V5.31</li>
|
||
<li>STM32CubeIDE v1.6.0</li>
|
||
</ul>
|
||
<h2 id="supported-devices-and-boards-8">Supported devices and boards</h2>
|
||
<ul>
|
||
<li>NUCLEO-F401RE MB1136 rev.C</li>
|
||
<li>NUCLEO-L476RG MB1136 rev.C</li>
|
||
<li>X-NUCLEO-53L3A2</li>
|
||
<li>VL53L3CX-SATEL</li>
|
||
</ul>
|
||
<h2 id="backward-compatibility-8">Backward compatibility</h2>
|
||
<p>N/A</p>
|
||
<h2 id="dependencies-8">Dependencies</h2>
|
||
<p>This software release is compatible with:</p>
|
||
<ul>
|
||
<li>STM32CubeHAL F4 V1.7.11</li>
|
||
<li>STM32CubeHAL L4 V1.13.0</li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
</div>
|
||
<footer class="sticky">
|
||
<div class="columns">
|
||
<div class="column" style="width:95%;">
|
||
<p>For complete documentation on <strong>STM32Cube Expansion Packages</strong> , visit: <a href="https://www.st.com/en/embedded-software/stm32cube-expansion-packages.html">STM32Cube Expansion Packages</a></p>
|
||
</div><div class="column" style="width:5%;">
|
||
<p><abbr title="Based on template cx566953 version 2.0">Info</abbr></p>
|
||
</div>
|
||
</div>
|
||
</footer>
|
||
</body>
|
||
</html>
|