Reference links:

Flutter Dart:

Flutter 3D Buttons:

https://medium.com/flutterpub/anatomy-of-material-buttons-in-flutter-first-part-40eb790979a6

Flutter Latest news:

https://medium.com/flutter/two-months-of-fluttergoodnewswednesday-a12e60bab782

Build flutter app:

https://www.youtube.com/watch?v=x0uinJvhNxIhttps://flutter.dev/docs/get-started/codelab

Flutter toggle color after click:

https://stackoverflow.com/questions/50863681/flutter-how-do-i-toggle-the-color-of-a-raisedbutton-upon-click

Flutter on codePen:

https://codepen.io/flutter

Flutter gridlist examples:

https://flutter.dev/docs/cookbook/lists/grid-lists

Fetch data from server in flutter:

https://flutter.dev/docs/cookbook/networking/background-parsing

https://medium.com/flutterdevs/parsing-complex-json-in-flutter-b7f991611d3e

UX Design in flutter:

https://uxdesign.cc/flutter-design-challenge-onboarding-concept-1f5774d55646

Get the data from API:

https://medium.com/flutter-community/parsing-complex-json-in-flutter-747c46655f51

Flutter time series:

https://stackoverflow.com/questions/51739064/flutter-json-and-time-series-charts

Flutter dart packages:

https://www.w3adda.com/dart-tutorial/dart-packages

Flutter dart introduction:

https://www.w3adda.com/dart-tutorial/dart-introduction

https://openlibrary.org/works/OL17556930W/Android_Fully_Loaded

https://archive.org/details/unlockingandroid0000able/page/n5?q=Build+android+os

Create mock server using postman:

https://learning.postman.com/docs/postman/mock-servers/setting-up-mock/

Web Socket examples:

https://www.websocket.org/echo.html

Energy consumption calculator:

https://www.rapidtables.com/calc/electric/energy-consumption-calculator.html

Git hub basic course:

https://www.udemy.com/course/git-and-github-crash-course-creating-a-repository-from-scratch/

Install svn on ubuntu:

https://linuxtechlab.com/simple-guide-to-install-svn-on-ubuntu

Flutter line chart,bar & pie chart:

https://pub.dev/packages/fl_chart

https://google.github.io/charts/flutter/example/bar_charts/simple.html

https://www.digitalocean.com/community/tutorials/flutter-bar-charts

https://github.com/imaNNeoFighT/fl_chart/blob/master/repo_files/documentations/pie_chart.md#sample-1-source-code

Flutter list & grid view link:

https://medium.com/@vignesh_prakash/flutter-listview-and-gridview-with-tabbar-221516518c75

Flutter Page color link:

https://medium.com/flutter-community/a-deep-dive-into-pageview-in-flutter-with-custom-transitions-581d9ea6dded

Flutter page control link:

https://api.flutter.dev/flutter/widgets/PageController-class.html

STM32 ABSTRACT

STM 32 MCU and MPU Roadmap contains:

1. MPU (STM32MP1):

– MPU with Arm Cortex-A7 650 MHz, Arm Cortex-M4 real-time coprocessor, TFT display, – Secure boot and Cryptography.

– Combination of audio and real time processing with cortex A and M architecture.

-STM32Cube AI tool running on cortex M4.

– Camera and audio interfaces to simplify input device integration.

Application: Used for real time and low power application and also graphic and communication high performance processing. Provide cloud based , making Smart home gateway with advance HMI and HD video.

2. High Performance MCUs(STM32F2, STM32F4, STM32FH7, STM32F7):

These MCUs are available in single core as well as dual core. A7 type having large of flash and Ram is provided.

STM32H7 having 280 Mhz embedding 2 MB flash ,1.4 MB RAM

Application: graphics applications, could connectivity, lot of security features.

Industry – Inverters, Communication gateway, Human Machine Interface

Health and Wellness- Individual assistance(hearing, Respiratory) , Measurements and Data logger.

Consumer – IOT gateway (Large Memory and rich communication peripherals), Access Control (Chrome-ART accelerator and display interfaces for TFT and MIPI-DSI), Drones(High Processing architecture with dual core option, advance timers and analog peripherals, small packages).

3. Mainstream MCUs(STM32F0,STM32G0,STM32F1,STM32F3,STM32G4):

– These are used for general purpose application having main feature as low power consumption which can take <100uA current.

– Main features is:

Efficient: Compact Cost,Best RAM/Flash Ratio, Smallest posiible package down to 8 pin,low power consumption, Accurate internal high speed clock best optimization

Robust: Low electromagnetic susceptibility, clock monitoring and 2 Watchdog, Error correct on flash, IOT ready with embedded security, Safe firmware upgrade/Install

Simple: Easy to configure with STM32CubeMx, Graphics, Easy to develop based on hardware abstraction library(HAL) or low layer library (LL).

Application:(STM32G0)

Lighting: High temperature, Advance timers, fast comparators ADC, DAC, AES and Security

Consumer Objects(Smart phones, IoT devices, Rechargeable connected devices,Drones,toys):

Low consumption in run and low power,USB type C power delivery, 64 Mhz CPU with DMA.

Smart Home(Home Appliances, Alarm and safety, Advance User Interfaces): High temp, safety monitoring feature, more RAM for flash , low consumption.

Industrial devices Motor control, Advance control(Air conditioning, E-bikes, Industrial Equipment): High temp, CANFD support, SPI,USART,I2C,Advance timers, RTC with backup register, AES and upgrade security

STM32G4: Having Se-curable memory area with configurable size, can be secured once exiting(no more access nor debug possible), Good fit to store critical data (critical routines, keys)

4. Ultra low power MCUs(STM32L0,STM32L1,STM32L5,STM32L4,STM32L4+):

STM32L0 (Cost Smart ULP champion):8/16 bit application,wide range of pin counts, 3 Product lines, Cost-effective, small packages, USB, LCD,Analog 8 to 192 kbytes of Flash, upto 20 kbytes of SRAM .

STM32L1(Broad Range Foundation): wide choice of memory sizes, 3 product lines, USB, LCD, AES rich analog EEPROM , Dual bank flash memory , 32-512 kbytes of flash up to 60 kbytes of SRAM.

STM32L4(ULP with performance) : High performance advance analog circuit, 5 product lines, 5 MSPS ADC, compare,DAC, Op-Amp,USB, OTG,LCD, AES, 64 kbytes to 1 mbyte up to 320 kbytes of SRAM.STM32L4+(ULP with More performance): Wide choice of memory size,3 product lines, 5 MSPS ADC, compare, DAC, Op-Amp,USB, OTG,LCD, AES, 1 to 2 mbyte of flash upto 640 kbytes of SRAM.

STM32L5(Advance Security): Wide choice of memory size,1 product lines, 5 MSPS ADC, compare, DAC, Op-Amp,USB type C, AES, 256 to 512 kbyte of flash upto 2560 kbytes of SRAM.

Type of Security:

Logical attack:

-malicious code injection

-Malware replacing the genuine program

-Man-in-the-middle attack

Board level attack:

-Cloning attack

-Fault injection

-Side channel attack

For such type of attack STM32L5 provided Hardware isolation, Secure key storage, Encryption, Authentication, IP protection, read out protection, active tempering, certified crypto library.

Application:

Smart peripherals ( fitnes tracker-wristband): ADC, OPAmp, DAC, SAI, SPI/UART, I2C, Display.

Smart peripherals (industrial sensors): High temp, SPI,UART, SPI/UART, I2C, TRNG and AES, FSMC, I/Os, CAN, Motor control, Display.

5. Wireless MCUs(STM32WL,STM32WB):

-Fully certified Bluetooth 5.0 radio

-2x faster speed with 2 mbps capable mode

-Extend network coverage with BLE mesh

-open Thread, zigbee 3.0

STM32WB:

Provides open 2.4 Ghz radio multi protocol, Dual core/ full cobtrol ultra power , IoT protection ready, Massive integration, cost saving, Advance RF tool, Energy control with C code generation.

Flash/RAM memory: 1 M/128 k

Application(LPWAN technology selection): Agriculture, Low value object tracking, lighting smart meter, utility maintenance, smart parking, smart building, smart grid, smart watch, High value object tracking, Connected Cars

STM32GO Architecture:

Why STM32G0 ?

1)Thinner technology,more integration & enhanced technologies.
2)Bigger flash in small packages.
3)1% internal clock.
4)1 power supply: Less external capacitors.
5)IO Maximization: smallest package eligible.

STM32G0 Subsystems::

Following are the features of STM32G0 :

1)Maximum speed upto 64Mbps
2)Flash memory interface of 1kb
3)32 timers each of 16 bit.
4)USB Power delivery.
5)Error code correction for 8 bits long for a 64-bit word.
6)12 bit ADC.
7)2 KBYTE of page granularity
8)Pre-fetch & instruction cache.(To improve performance)

Boot Pin configuration::

Boot configuration is selected as per areas given below:
1)Main flash memory
2)System memory
3)Embedded SRAM
4)Main Flash memory
5)System memory
6)Embedded SRAM.
7)Main Flash memory forced.

Note:It is possible to force booting from flash memory.

Reset Sources:

No external components are needed due to internal filter and power monitoring.System Reset sources can reset external components.

System Reset:

Resets all registers except certain RCC Registers and the RTC domain.
The reset Source flag is in the RCC_CSR register.

DMA Configuration :

1)DMA support for timers, ADC, and communication peripherals.
2)Offloads CPU from data transfer management.
3)Simple Integration.

ADC Overview :

1)12 bit ADC with 19 input channels.
2)Over-sampler.
3)2.5 Msample/sec max (12 bit resolution)
4)Interrupt generation.

Application benefits:
1)Ultra-low power consumption: 118uA @ 1 Msample/s.
2)Flexible trigger,data management to offload CPU.

System Clock :

1)Selected between HSI16,HSE,PLL,LSI and LSE.
2)System clock AHB nad APB maximum frequency:64 MHZ

RNG(Random Number Generator) overview:
1)Used when producing an unpredictable result is desirable.
2)32-bit Random number generator based on a noise source.

Application benefits:
1)Increase the randomness of numbers.
2)Strongly decrease the possibility of guessing values.

Application examples are :
Cryptography and games.

AES overview:

Transforms original text called plaintext to unreadable text called ciphertext using a secure encryption key.Supports many standard operation modes and two key sizes(128 or 256 bits).

Application benefits:
1)Protects confidentiality and /or authenticity of data.
2)Reduces cpu processing time.

Securable memory area:
The main purpose of securable memory area is to protect some part of the flash memory against undesired access.

USART

Can be configured as:
i)UART
ii)SPI master/slave
iii) Smartcard
iv)IrDA SIR
v)LIN
vi)Modbus

Application benefits:
1)Multipurpose communication peripheral.
2)Simple hardware,Only a few pins needed.
3)Wakes from low power mode.
4)Transmit and Receive FIFOs, with capability to transmit and receive in stop modes.

LPUART
Low Power Universal Asynchronous Receiver/Transmitter.Full UART communication at 9600 baud with wake up from stop modes capability when using the low speed 32.768kHz external oscillator. Higher baud rates are available with other clock sources.

Application benefits:
Inexpensive communication link between devices.
Simple hardware,only a few pins needed.
Wakes from low power STOP modes.
Transmit and receive FIFO’s ,with capability to transmit and receive in stop modes.

ART Accelerator:

Pefetch queue and branch cache principle:
Stores the first instruction and constant of branches and interrupts events.
Push them in the prefetch queue in the next time those events occur,with no execution penalty.

Chrome ART:

Provides hardware acceleration for graphical operations.

Application benefits:
Offloads CPU for graphical operations.
One pixel per cycle calculation.
Integrated pixel format converter and blender
Simple integration through graphical stack.

Batch Acquisition mode:
Only the needed communication peripheral + 1DMA +1 SRAM are configured with clock enables in sleep mode.
Flash memory is put in power down mode and flash clock is gated off during sleep mode.
Enter either sleep or Low-power sleep mode.

STM32 Cube IDE:

(Integrated Development Platform for STM32 Embedded Solutions)

STMicroelectronics is a semiconductor provider

• STM32 is μC & μP general purpose brand

• Arm© 32b CPU(s) based

• Part of worldwide top 3 μC vendors

• More than x32 μC unit sold per second

• STM32 devices are augmenting our daily life

• Kitchen appliances, power plugs, audio headsets,white appliances, car facilities, energy smart grid, E-city facilities, E-toys, E-cigarettes, E-bicycles, E-watches, …