FOAT Pre
FOAT Pre
FOAT Pre
FOTA
( Firmware Over-The-Air )
Supervised by
Why FOTA?
Project Overview
Project Overview
OTA Implementation
OTA Implementation
System Overview
Firmware & Software Update
where the users Release Provides the products
can get new with Firmware system
updates for their
systems or send
diagnostics to get
problems solved.
Communication Protocols
OEM Firmware
CAN Bus
Firmware Updates Update Provider
sent to devices
System Overview
ECU
ESP32 STM32 F4
ECU
Mobile Application
Telematics Unit
Target MCU
It’s the bridge
connecting the server
and the whole system
allowing to send and
receive multiple data
through it.
Hardware Selection
1. Which Hardware Supports Dual-Bank Flash Memory?
Hardware Selection
Choice 1 Choice 2
2. Why Dual-Bank Flash Memory?
Download Activation
0x080F FFFF 0x081F FFFF
Hardware Selection
Active Bank Inactive Bank
0x0810 0000
0x0800 0000
Bank 1 Bank 1
Hardware Selection
CAN Controller
FOTA Video
Flash Memory Map
Sector 0 Sector 12
Branching Unit Branching Unit
Sector 1 Sector 13
Wait CAN frame to process Bootloader Bootloader
RTOS
Drivers
GPIO UART CAN Flash
Target MCU
Dynamic Architectural Design
Different Scenarios
Sequence of Events
Sequence Diagram 2: Telematics unit & Target synchronization
Sequence of Events
Sequence Diagram 3: GET Version
Sequence of Events
Our way to the Internet
Our way to the Internet
Node-MCU Architecture
Application Code
Node-MCU Architecture
Libraries and APIs
Hardware Abstraction
Layer
Wi-Fi and
Bluetooth stack
File System
Bootloader
Telematics Unit Workflow
Web Application
▪ Interface to upload files
Download it
Connect to Monitor Server Send file
into its
server for Updates through CAN
memory
Mobile Application
❑ Mobile App Role.
Mobile Application
❑ Created using React Native.
Future Work
Future Security Measures
Developments
Live Diagnostics
Secure FW update
Future Work
• Firmware Integrity & Authenticity
• Firmware Confidentiality
• Avoid firmware version downgrading