Getting Started S32 Automotive Platform S32K1 Tech

ElecronicsV2: Arduino for Automotive DIY Projects

Table of Contents

Overview

In an era, where the automotive sector is at its prime and everyone desires to make their career advancements in the Automotive field, there is a need for a Microcontroller based development board that is of automotive grade, with automotive capabilities to do hands-on learning and gain knowledge on automotive skill sets. And in such a world, ElecronicsV2 boards make a grand entrance.

ElecronicsV2 is a development Board based on NXP Semiconductor S32K144 MCU. The development board has a rich set of onboard features and interfaces to make Automotive DIY projects. It is powered with S32K144 MCU, which is based on ARM Cortex M4 Core with Automotive peripherals like CAN, LIN, FlexIO, SAE-J2602, Half HSM, and advanced Timer peripheral.

ElecronicsV2 is not just a development board for Automotive, but it is also a prime candidate for students, working professionals, and hobbyists to learn embedded projects and learning in an industrial Microcontroller out of Arduino and ESP environment. ElecronicsV2 is based on the S32K144 Microcontroller.

S32K144 MCU is part of the S32 family of microcontrollers, for which NXP semiconductors provide a dedicated IDE for embedded software development and SDK for embedded application development. What makes the S32K144 apart, is its availability of SDK with Autosar standard!! Students and working professionals can do Autosar-based and hands-on learning using the Autosar MCAL SDK. All of this is possible/done via the ElecronicsV2 board.

Elecronics V2 Development Board

Elecronics V2: is a development board that is designed based on NXP Semiconductors S32K144 MCU by Gettobyte Community.

ElecronicsV2 is a breadboard-compatible board, which has all Input/Output pins exposed via male headers and can be expanded by embedding it into the breadboard for easy use and development. S32K144 microcontroller can be used for various industrial projects like Automotive, Industrial Automation, consumer electronics, and IoT. This board is cost-effective as compared to the original evaluation board of S32K144.

ElecronicsV2 Development Board

Documentation on ElecronicsV2 Board: User Manual of ElecronicsV2 Board

Getting Started with ElecronicsV2 Board: Getting started with ElecronicsV2 Board

…………………………………..

The major challenge people face is a lack of resources or scattered content to learn and do hands-on such Industrial microcontrollers. For learning the Embedded basics and firmware development on this board, viewers can refer to the tutorial blog series on the S32K144 microcontroller. Refer to this link for more info. 

S32K144 Content and Resources

Features of ElecronicsV2 Development Board

ElecronicsV1 is breadboard compatible development based on NXP Semiconductors S32K144 MCU. Which has following features:

Features of ElecronicsV2

Their are 2 Best Things about the design of the ElecronicsV2 Board:

  1. First is 2*40 male header pins, which exposes all the pins of the Microcontroller and it can be easily connected to a number of sensor/modules with neat and clean connections
  2. Another thing is the silkscreen present on the board. On the ElecronicsV2 you can see there is pin labeling for all the features present on the board, which makes it easy for users to do development on the board, instead of seeing pinouts/schematics again and again.

Pinout of ElecronicsV2

About S32K144 MCU

Refer to this blog, to know indepth features and specs of the S32K144 MCU:

Reasons for starting your journey with S32K144 MCU as students/hobbyiest

  1. The most important reason for selecting this microcontroller is it has Software stack/drivers for S32K144 MCU with Autosar complaint MCAL Layer, which will help students learn about Autosar at the college level using ElecronicsV1 by making DIY projects just like on Arduino. Autosar is one of the highly demanded skills set in embedded and automotive industry.
  2. S32K144 MCU has many Automotive communication protocols like: CAN, LIN, FlexIO, Motor control-based TIMER Peripheral, CSEc Hardware Security Module to implement Cryptography Application. So using this board will give students understanding and hands-on industrial level knowledge of automotive/embedded field.
  3. Based on ARM Cortex M4 processor running at 112MHz, students can explore and learn about ARM technology by doing hands-on via this controller and using its IDE: S32DS.

Debugger/Programmer

The board doesn’t have on-board debugger, so it has to be programmed using external debugger like: J-Link Debuggers or PEmicro OpenSDA debugger.

Original Jlink debugger and PEmicro debugger comes very expensive, so best and reliable alternate to those debuggers i to buy JLink V9 Debugger Emulator – ARM MCU Development Tool,  which comes at a cost of 2.5K around and using this debugger you can debug any ARM cortex M3/M4 chip. More details and how to use this debugger is here.

JlinkV9 Debugger is Chinese clone of the original Jlink Base Debugger which is best to use by students/hobbyists and affordable too.

Viewers can buy the debugger from here: Buy JLink V9 Debugger Emulator – ARM MCU Development Tool – KTRON India.

It comes at a cost of 2.5K around. Buying this debugger once and then it can be used with any ARM Cortex M based Microcontroller.

Other alternative for debuggers:

Target Audeince for the board

Audience for ElecronicsV2 Board

The board can be used by variety of audience and applications as follows:

  • It can be used by students and practise enginners for learning Embedded systems on Industrial Microcontrollers like that of NXP Semiconductors to come out of Arduino and ESP environment and making DIY projects for different Industries, giving them industrial exposure and skillsets. Thus, this microcontroller is perfect start for students to get hand-on exposure on industrial technologies. 
  • Not only for DIY projects but this board can be used for fast prototyping and development by automotive/EV based startups/companies for their product development. As S32K144 MCU is ARM cortex M4 based and has rich set of peripherals with automotive certified standards for developing products for body & control, powertrain and electrification domains of the car.

Buy the board

The board is priced at INR 4,999(Excluding GST and Shipping Charges).

For college students, ElecronicsV2 is of 2,999. For students, there is a  discount of INR 2000. They have to submit their student ID and government ID, after the verification from our end, their order will be processed.

The Kit will include, Jlink V9 debug Users can buy from above link:

  1. One ElecronicsV2 Development Board
  2. JTAG-SWD Debug Adaptor
  3. 10 Pin JTAG debug connecting wire

Getting Started with Board

For using the S32K144 MCU, NXP semiconductors provides S32Design Studio IDE and S32K1 Software Package. S32K1 Software package has all the peripheral drivers, example codes, middleware stacks for starting development/learning on S32K144 MCU. on Refer above video to get started with ElectronicsV1 board and how to setup S32K144 SDK.

Further viewers can refer to blog series on S32K144 MCU, to do hands-on learning on all of its peripherals and then do sensor-module/DIY Projects interfacing with using ElecronicsV1 board.

Chronological order to start with this board:

  1. Getting Started with S32Design Studio.
  2. Getting Started with Elecronics V1: S32K144 MCU Development board.
  3. Peripheral driver tutorials on ElecronicsV1.
  4. Sensor/Module Interfacing with ElecronicsV1.
  5. DIY projects using ElecronicsV1.

Peripheral Drivers(Non Autosar)
Kunal Gupta

ADC peripheral software stack explanation using NXP S32K144 MCU

Overview and motive To get to know what ADC driver and its features is is. To Understand How to use ADC Driver (software environment setup and chronology in software configuration)). ADC Driver GUI explanation for configuring ADC Peripheral. Relation of functions of ADC Driver functions via ADC peripheral features/registers. In Depth Understanding of ADC driver functions/data types, with questions like What and why? Chronology of APIs for using basic features of ADC Peripheral for doing CAN communication (How and When?) By basic features we mean the ADC conversion using Software trigger through interrupts. What is ADC Driver ADC Driver are set of libraries which are used for using ADC peripheral to do Analog to Digital values conversion via NXP S32K1xx Microcontrollers. Here by library, we mean a set of .h and .c files written in c language. These set of ADC libraries are: Library of ADC Peripheral Hardware registers. Library for ADC Peripheral Interrupt Handlers. Library for ADC peripheral API’s. Miscellaneous files for ADC. The first one contains the function and data types through which different features of FlexCAN peripheral are used. Features like of sending data, receiving data, configuring message id filter table and etc. It contains functions like: FlexCAN_IP_Send(). FlexCAN_IP_receive, FlexCAN_IP_RXFIFO and etc. The Second one also contains the functions and data types through which FlexCAN Peripheral registers. Are accessed. Kind of like Bare Metal codes of FlexCAN peripheral are written in this files. And the Functions of this file are used by FlexCAN_Ip.h/.c files. Third one contains the function definition and data types for for IRQ handler of FlexCAN Peripheral And the last one contains the misceeleneours Data types and macros for using flexCAN peripheral. In our application code, we are just going to add FlexCAN_Ip.h header file to access the FlexCAN Driver in our code. And these files are located in the root directory of S32 DS where software installtion of RTD package takes place. ADC Driver and Code Configuratin tool relation Software to install to use FlexCAN Peripheral Driver To use ADC Peripheral Driver, we need to install following things in your Host Desktop/PC: S32 Design Studio IDE 3.4 or 3.5 (any will work though here; we are going to use S32 Design Studio 3.4) S32K1 Real Time Drivers Version 1.0.0 S32 Design Studio 3.4 S32K1 Real Time Drivers Version 1.0.0 S32K1 RTD V1.0.0 is Software Stack for using NXP S32K1xx microcontrollers. It Contains Peripheral Driver library files for using the S32K1xx microcontroller peripherals. It supports all peripherals of S32K1xx MCU’s.  This Software Stack contains 2 packages: Autosaur MCAL layer complaint and standard based peripheral driver files for S32K1xx MCU’s. It is Autosar 4.4.0 complaint. Non-Autosar based peripheral driver files for S32K1xx MCU’s.  It is a collection of peripheral drivers designed to simplify and accelerate application development on NXP microcontrollers. From Learning point of view and long-term skill development, having handson with Autosaur MCAL layer based peripheral driver file would be a good starting point. But as a fresher it might be more challenging to start with autosar standard. So In this blog, we are going to explore Non-Autosar based peripheral driver for FlexCAN module.  Further once having basic Handson with Non-Autosar, will explore Autosar MCAL layer based peripheral driver. Refer to this blog/video to get to know how to install S32 Design Studio 3.4 and Install S32K1 Real Time Drivers v1.0.0. Also it is recommended to explore Code Configuration Tool and Project Creation Modules of S32 Design Studio IDE, so as to get understanding how to use S32 Design Studio throughout the learning cycle. How to use ADC Peripheral Driver GUI Configuration of FlexCAN Peripheral Driver ADC Important API’s Adc_Ip_Init(): Adc_Ip_DoCalibration(): Adc_Ip_StartConversion(): Adc_Ip_GetConvActiveFlag(): Adc_Ip_GetConvCompleteFlag(): Adc_Ip_GetConvData(): Adc_0_Isr (): ADC_CallBack() Author: Kunal Gupta

Read More »

Tigger MUX Control(TRGMUX) Peripheral in S32K144 MCU

What is TRGMUX peripheral? TRGMUC provides an extremely flexible mechanism for connecting various trigger sources to multiple pins/peripherals. The trigger multiplexer (TRGMUX) module allows software to configure the trigger inputs for various peripherals.   The TRGMUX module allows software to select the trigger source for peripherals.   TRGMUX is a peripheral which provides mechanisms for connecting various trigger sources to multiple pins/peripherals. Each peripheral that accepts external triggers usually has one specific 32-bit trigger control register. Each control register supports upto 4 triggers and each trigger can be selected from available trigger sources.   Author: Kunal Gupta

Read More »

PDB (Programmable Delay Block) Peripheral in automotive microcontroller (NXP S32K144)

What is Programmable Delay Block(PDB) peripheral? PDB provides controllable delays from either an internal or an external trigger, or a programmable interval tick, to the hardware trigger inputs of ADCs. PDB can also provide pulse outputs that are used as the sample window in the CMP block.   The PDB contains a counter whose output is compared to several different digital values. If the PDB is enabled, then a trigger input event will reset the PDB counter and make it start to count. A trigger input event is defined as a rising edge being detected on a selected trigger input source, or if a software trigger is selected and the Software Trigger bit (SC[SWTRIG]) is written with 1 Author: Kunal Gupta

Read More »

Add Your Heading Text Here

Kunal Gupta
Author: Kunal Gupta

Author

Kunal Gupta

Leave a comment

Stay Updated With Us

Error: Contact form not found.

      Blog