diff --git a/src/ch1_00_introduction.md b/src/ch1_00_introduction.md
index 8e5362e62656d387effd009228fb6a25b6942af1..a9862da9edaeaa08fb7aacbd20e8266f618d1363 100644
--- a/src/ch1_00_introduction.md
+++ b/src/ch1_00_introduction.md
@@ -21,6 +21,7 @@ Use-cases ranges from heavy industry to tiny sensors in your everyday life.
 [Rust-Embedded book](https://rust-embedded.github.io/book/) contains thorough instructions for getting going with embedded.
 This resource is a tiny subset of the Embedded book.
 
+[RTFM Book](https://rtfm.rs/) contains examples and usage for the rust implementation of the RTFM framework.
 # Overview
 ![Embedded workflow](images/workflow_chart.png "Flowchart")
 
diff --git a/src/ch1_01_hardware.md b/src/ch1_01_hardware.md
index 44cc8635e150d9f8d532fdf1e6a8c602fc6f3181..9ef90eef071fd4192c440032c1afeb49c95acd47 100644
--- a/src/ch1_01_hardware.md
+++ b/src/ch1_01_hardware.md
@@ -1,5 +1,12 @@
 # Introduction to the hardware
 
+<img src="images/st-logo.svg" width="500">
+
+In this course we will use the [STM32F401](https://www.st.com/en/microcontrollers-microprocessors/stm32f401.html) sponsored by ST Microelectronics. 
+
+A big thanks to STM for this contribution!
+
+
 ## ARM
 
 While your laptop/stationary computer most likely runs some `x86_64` CPU architecture,
diff --git a/src/images/st-logo.svg b/src/images/st-logo.svg
new file mode 100644
index 0000000000000000000000000000000000000000..43eeaf3662e9a68676c092af7b560cdcd613370f
--- /dev/null
+++ b/src/images/st-logo.svg
@@ -0,0 +1,132 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 23.0.6, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.1" id="Calque_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+	 viewBox="0 0 467 118.9" style="enable-background:new 0 0 467 118.9;" xml:space="preserve">
+<style type="text/css">
+	.st0{fill:#FFFFFF;}
+	.st1{fill:#001C54;}
+	.st2{fill:#27AAE1;}
+	.st3{fill:url(#SVGID_1_);}
+	.st4{fill:url(#SVGID_2_);}
+	.st5{fill:url(#SVGID_3_);}
+	.st6{fill:url(#SVGID_4_);}
+	.st7{fill:url(#SVGID_5_);}
+	.st8{fill:url(#SVGID_6_);}
+	.st9{opacity:0.1;}
+	.st10{fill:none;}
+</style>
+<g>
+	<path class="st0" d="M229.6,0H72.9l0,0C60.6,0,49.4,7.3,44.5,18.5L4.9,113.9c-0.2,0.5-0.3,0.9-0.3,1.4c0,2,1.7,3.6,3.7,3.6h158
+		l1.7-0.1c11.4-1,21.4-8.2,25.8-18.8L233,5.1c0.2-0.4,0.3-0.9,0.3-1.4C233.3,1.6,231.6,0,229.6,0"/>
+</g>
+<g>
+	<g>
+		<path class="st1" d="M301.2,94.4c-3.7,0-6.4-2.7-6.4-6.4c0-4.3,3.2-6.5,6.4-6.5c3.5,0,6.3,2.9,6.3,6.5
+			C307.5,91.5,304.7,94.4,301.2,94.4 M307.4,82.4c-1.9-2.7-4.9-3-6.2-3c-5.5,0-8.7,4.3-8.7,8.5c0,4.8,3.8,8.6,8.7,8.6
+			c1.2,0,4.3-0.3,6.2-3v2.7h2.3V79.9h-2.3V82.4z"/>
+		<path class="st1" d="M326.1,88.4c0,2.9-0.8,3.9-1.6,4.7c-0.8,0.8-1.9,1.3-3.3,1.3c-1.5,0-2.8-0.5-3.6-1.5
+			c-0.8-0.9-1.1-2.3-1.1-4.1v-8.9h-2.3v9c0,2.3,0.5,4.1,1.4,5.2c0.7,0.9,2.4,2.4,5.6,2.4s4.6-1.8,5.1-2.6v2.2h2.2V79.8h-2.3v8.6
+			H326.1z"/>
+		<path class="st1" d="M339.5,94.4c-3.4,0-6.2-2.9-6.2-6.4c0-3.6,2.8-6.5,6.2-6.5c3.4,0,6.2,2.9,6.2,6.5
+			C345.7,90.5,343.7,94.4,339.5,94.4 M345.6,82.5c-2-2.8-4.9-3.1-6.1-3.1c-4.1,0-8.5,3.3-8.5,8.6c0,5.2,4.4,8.4,8.5,8.4
+			c2,0,4.8-0.8,6.1-3.1v1.1c0,4.3-3.1,5.9-5.7,5.9c-3.9,0-5.4-2.8-5.9-4v-0.1h-2.4v0.2c1.6,5.5,6.8,6,8.3,6c0.4,0,4.4-0.1,6.5-3
+			c1.5-2,1.5-4.2,1.5-5.9V79.9h-2.3V82.5z"/>
+		<path class="st1" d="M368.7,79.4c-1.4,0-4.1,0.6-5.4,2.9c-1.3-2.3-4-2.9-5.4-2.9c-1.5,0-3.3,0.6-4.2,2v-1.6h-2.3v16.3h2.3v-9.4
+			c0-1.7,0.3-2.5,0.7-3.3c0.7-1.2,2-1.9,3.5-1.9c1.6,0,2.8,0.7,3.5,1.9c0.4,0.8,0.7,1.6,0.7,3.3v9.4h2.3v-9.4c0-1.7,0.3-2.5,0.7-3.3
+			c0.7-1.2,2-1.9,3.5-1.9c1.6,0,2.8,0.7,3.5,1.9c0.4,0.8,0.7,1.6,0.7,3.3v9.4h2.3v-9.6C375.2,80.9,371.1,79.4,368.7,79.4"/>
+		<path class="st1" d="M380.3,86.7c0.6-3.4,3.5-5.2,6.1-5.2c2.5,0,5.5,1.6,6.1,5.2H380.3z M386.4,79.4c-4.7,0.1-8.4,3.9-8.4,8.6
+			s3.8,8.5,8.5,8.5c3.6,0,6.8-2.3,8-5.7l0.1-0.2H392v0.1c-0.6,1.7-2.5,3.6-5.6,3.7c-3.1,0-5.9-2.6-6.1-5.6h14.6v-0.1
+			c0.1-1.9-0.3-3.6-1.2-5.1C392.5,81.6,390,79.4,386.4,79.4"/>
+		<path class="st1" d="M405.1,79.4c-2.4,0-4.1,1.2-4.9,2.3v-1.9h-2.3v16.3h2.3v-8.9c0-1.8,0.5-3.4,1.5-4.3c1.3-1.2,2.9-1.3,3.4-1.3
+			s2.1,0.1,3.4,1.3c1,0.9,1.5,2.5,1.5,4.3v8.9h2.3v-8.9c0-2.5-0.7-4.5-2-5.7C408.9,80,407.3,79.4,405.1,79.4"/>
+		<polygon class="st1" points="420.5,74.1 418.2,74.1 418.2,79.8 414.8,79.8 414.8,81.9 418.2,81.9 418.2,96.1 420.5,96.1 
+			420.5,81.9 424.3,81.9 424.3,79.8 420.5,79.8 		"/>
+		<path class="st1" d="M428,86.7c0.6-3.4,3.5-5.2,6.1-5.2c2.5,0,5.5,1.6,6.1,5.2H428z M434.1,79.4c-4.7,0.1-8.4,3.9-8.4,8.6
+			s3.8,8.5,8.5,8.5c3.6,0,6.8-2.3,8-5.7l0.1-0.2h-2.4v0.1c-0.6,1.7-2.5,3.6-5.6,3.7c-3.1,0-5.9-2.6-6.1-5.6h14.6v-0.1
+			c0.1-1.9-0.3-3.6-1.2-5.1C440.2,81.5,437.7,79.4,434.1,79.4"/>
+		<path class="st1" d="M453.6,94.4c-3.7,0-6.4-2.7-6.4-6.4c0-4.3,3.2-6.5,6.4-6.5c3.5,0,6.3,2.9,6.3,6.5S457.1,94.4,453.6,94.4
+			 M459.8,74.1v8.2c-2.1-2.8-5.2-3-6.2-3c-5.5,0-8.7,4.3-8.7,8.5c0,4.8,3.8,8.6,8.7,8.6c2,0,4.6-0.8,6.2-3V96h2.3V74.1H459.8z"/>
+	</g>
+	<g>
+		<rect x="242.9" y="73.6" class="st2" width="2.2" height="3.3"/>
+		<polygon class="st2" points="235.5,74.1 230.7,74.1 230.7,76.2 233.3,76.2 233.3,94 230.5,94 230.5,96.1 238,96.1 238,94 
+			235.5,94 		"/>
+		<polygon class="st2" points="245.6,79.8 240.8,79.8 240.8,81.9 243.4,81.9 243.4,94 240.8,94 240.8,96.1 248.2,96.1 248.2,94 
+			245.6,94 		"/>
+		<path class="st2" d="M254.5,75.2c-1.4,1.3-1.5,2.7-1.5,4.5v0.1h-2.6v2.1h2.6V94h-2.6v2.1h7.4V94h-2.6V81.9h2.6v-2.1h-2.6v-0.3
+			c0-1.2,0.1-2.2,1-2.9c0.5-0.4,1.2-0.7,2.1-0.7h0.1v-2h-0.1C256.6,73.9,255.4,74.4,254.5,75.2"/>
+		<path class="st2" d="M263.1,87c0.4-2.9,3.1-5.2,5.9-5.2c3.2,0,5.8,2.2,6.3,5.2H263.1z M269.1,79.8c-4.5,0-8.2,3.8-8.2,8.4
+			c0,4.5,3.7,8.2,8.3,8.2c3.3,0,6.2-1.9,7.6-4.9l0.1-0.2h-2.3v0.1c-1.1,1.9-3,3-5.3,3c-3.2,0-5.8-2.4-6-5.5h14.3v-0.7
+			C277.4,83.5,273.7,79.8,269.1,79.8"/>
+		<path class="st2" d="M284.8,96.5c1.6,0,2.8-1.3,2.8-2.8c0-1.6-1.3-2.8-2.8-2.8c-1.6,0-2.8,1.3-2.8,2.8S283.3,96.5,284.8,96.5"/>
+	</g>
+</g>
+<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="124.6967" y1="120.698" x2="120.8813" y2="-9.1167" gradientTransform="matrix(1 0 0 -1 0 120.476)">
+	<stop  offset="0" style="stop-color:#559FBE"/>
+	<stop  offset="0.1365" style="stop-color:#004E67"/>
+	<stop  offset="0.3613" style="stop-color:#1583B2"/>
+	<stop  offset="0.4452" style="stop-color:#559FBE"/>
+	<stop  offset="0.5402" style="stop-color:#1583B2"/>
+	<stop  offset="0.6439" style="stop-color:#004E67"/>
+	<stop  offset="0.7108" style="stop-color:#276685"/>
+</linearGradient>
+<path class="st3" d="M229.6,2H72.9l0,0C61,2,50.8,9.1,46.3,19.2L15.4,93.7c-0.1,0.2-0.1,0.4-0.1,0.6c0,0.9,0.7,1.6,1.6,1.6h70.8
+	c5,0,7.2-4.8,3.3-8.7L65,63c-13.7-13.3-7.8-44.4,20.5-44.4H224c0.7,0,1.3-0.5,1.6-1.1l5.5-13.2c0.1-0.2,0.1-0.4,0.1-0.6
+	C231.2,2.8,230.5,2,229.6,2z"/>
+<radialGradient id="SVGID_2_" cx="170.0121" cy="84.8322" r="150.7058" gradientTransform="matrix(0.9381 0 0 -0.9246 -10.1139 88.5378)" gradientUnits="userSpaceOnUse">
+	<stop  offset="0" style="stop-color:#559FBE"/>
+	<stop  offset="0.3865" style="stop-color:#1583B2"/>
+	<stop  offset="0.9939" style="stop-color:#164E66"/>
+</radialGradient>
+<path class="st4" d="M85.5,16.2h138.1l5-12h-152l0,0H73c-10.8,0-20.4,6.3-24.6,16L17.9,93.6h69.8c1.4,0,2.5-0.5,2.8-1.4
+	c0.4-1,0-2.2-1.1-3.3l-26-24.4c-7.7-7.6-9.9-20.4-5.4-31.2C62.5,22.4,72.5,16.2,85.5,16.2z"/>
+<linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="206.0699" y1="83.408" x2="154.1613" y2="-11.8581" gradientTransform="matrix(1 0 0 -1 0 120.476)">
+	<stop  offset="0" style="stop-color:#559FBE"/>
+	<stop  offset="0.2301" style="stop-color:#004E67"/>
+	<stop  offset="0.3613" style="stop-color:#1583B2"/>
+	<stop  offset="0.4452" style="stop-color:#559FBE"/>
+	<stop  offset="0.5402" style="stop-color:#1583B2"/>
+	<stop  offset="0.6439" style="stop-color:#004E67"/>
+	<stop  offset="0.7108" style="stop-color:#276685"/>
+</linearGradient>
+<path class="st5" d="M214,40h-26.6c-1.8,0-3.3,1.1-4,2.6l-29.8,72c-0.1,0.2-0.2,0.5-0.2,0.7c0,0.9,0.7,1.6,1.6,1.6h9.9l0,0
+	c12.1,0,22.5-7.3,26.8-17.7l0,0L215.4,42c0.1-0.2,0.1-0.4,0.1-0.6C215.6,40.7,214.9,40,214,40z"/>
+<radialGradient id="SVGID_4_" cx="181.5946" cy="84.8248" r="141.4337" gradientTransform="matrix(0.9381 0 0 -0.9246 -10.1139 88.5378)" gradientUnits="userSpaceOnUse">
+	<stop  offset="0" style="stop-color:#559FBE"/>
+	<stop  offset="0.3865" style="stop-color:#1583B2"/>
+	<stop  offset="0.9939" style="stop-color:#164E66"/>
+</radialGradient>
+<path class="st6" d="M161.2,114.9h3.6c10.7,0,20.2-6.2,24.5-15.8l23.6-57h-25.6c-0.8,0-1.5,0.5-1.8,1.2l-29.6,71.6L161.2,114.9
+	L161.2,114.9z"/>
+<linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="120.7096" y1="80.7156" x2="117.2263" y2="1.271419e-02" gradientTransform="matrix(1 0 0 -1 0 120.476)">
+	<stop  offset="0" style="stop-color:#559FBE"/>
+	<stop  offset="0.1365" style="stop-color:#004E67"/>
+	<stop  offset="0.3613" style="stop-color:#1583B2"/>
+	<stop  offset="0.4452" style="stop-color:#559FBE"/>
+	<stop  offset="0.5402" style="stop-color:#1583B2"/>
+	<stop  offset="0.6439" style="stop-color:#004E67"/>
+	<stop  offset="0.7108" style="stop-color:#276685"/>
+</linearGradient>
+<path class="st7" d="M161.7,41.6c0-0.9-0.7-1.6-1.6-1.6H84.7c-4.1,0-7.7,5-3.3,9l24.9,23.2c0,0,10.1,9.3,7.9,22.6
+	c-1.9,11.7-9.9,18.9-15.7,21.5l0,0c-0.1,0.1-0.2,0.2-0.2,0.4s0.2,0.4,0.4,0.4h29.1c1.8,0,3.3-1.1,4-2.6l29.9-72.2
+	C161.6,42,161.7,41.8,161.7,41.6z"/>
+<radialGradient id="SVGID_6_" cx="181.9592" cy="84.8242" r="141.4391" gradientTransform="matrix(0.9381 0 0 -0.9246 -10.1139 88.5378)" gradientUnits="userSpaceOnUse">
+	<stop  offset="0" style="stop-color:#559FBE"/>
+	<stop  offset="0.3865" style="stop-color:#1583B2"/>
+	<stop  offset="0.9939" style="stop-color:#164E66"/>
+</radialGradient>
+<path class="st8" d="M105,114.9c5.3-4.3,10-11.2,11.4-19.9c2.3-14.4-8.2-24.2-8.6-24.6L82.9,47.2c-0.8-0.7-1.6-1.8-1.1-3.1
+	c0.4-1.1,1.6-1.9,2.8-1.9H159l-29.7,71.6c-0.3,0.7-1,1.2-1.8,1.2l0,0L105,114.9L105,114.9z"/>
+<g class="st9">
+	<path class="st0" d="M161.7,41.6c0,0.2,0,0.4-0.1,0.6l-14,33.8c-10.4,1.1-21.2,1.7-32.4,1.7c-1.6,0-3.2,0-4.8,0
+		c-2.1-3.5-4.2-5.4-4.2-5.4L81.3,49c-4.3-4-0.7-9,3.3-9H160C160.9,40,161.7,40.7,161.7,41.6z"/>
+	<path class="st0" d="M215.6,41.6c0,0.2,0,0.4-0.1,0.6l-8.3,20.1c-10.8,4.2-23,7.6-36.1,10.2l12.3-29.9c0.6-1.6,2.2-2.6,4-2.6H214
+		C214.9,40,215.6,40.7,215.6,41.6z"/>
+	<path class="st0" d="M231.2,3.7c0,0.2,0,0.4-0.1,0.6l-5.5,13.2c-0.2,0.6-0.8,1.1-1.6,1.1H85.5C57.2,18.6,51.3,49.7,65,63l13.2,12.4
+		C59.7,73.1,42.6,69.2,27.8,64l18.5-44.7C50.8,9.2,61,2.1,72.9,2.1l0,0h156.7C230.5,2,231.2,2.8,231.2,3.7z"/>
+</g>
+<rect x="233.3" y="-21.4" class="st10" width="21.5" height="21.4"/>
+<rect x="-17" y="-21.4" class="st10" width="21.5" height="21.4"/>
+<rect x="462" y="17.1" class="st10" width="21.5" height="21.4"/>
+<rect x="233.2" y="119" class="st10" width="21.5" height="21.4"/>
+</svg>