Skip to content

Releases: MikroElektronika/mikrosdk_v2

mikroSDK v2.13.1 released

26 Dec 14:56
664f7e0
Compare
Choose a tag to compare

v2.13.1

  • released: 2024-12-27

Changes

Fixes

mikroSDK

  • Fixed LCD implementation for all architectures
    • Issue with timing after optimizing (speeding up) SDK

mikroSDK v2.13.0 released

23 Dec 13:08
Compare
Choose a tag to compare

v2.13.0

  • released: 2024-12-24

Changes

SAM

SAM MCUs supported!

MCU MCU MCU
ATSAME70J19A ATSAMS70J21A ATSAMV70Q19A
ATSAME70J19B ATSAMS70J21B ATSAMV70Q19B
ATSAME70J20A ATSAMS70N19A ATSAMV70Q20A
ATSAME70J20B ATSAMS70N19B ATSAMV70Q20B
ATSAME70J21A ATSAMS70N20A ATSAMV71J19A
ATSAME70J21B ATSAMS70N20B ATSAMV71J19B
ATSAME70N19A ATSAMS70N21A ATSAMV71J20A
ATSAME70N19B ATSAMS70N21B ATSAMV71J20B
ATSAME70N20A ATSAMS70Q19A ATSAMV71J21A
ATSAME70N20B ATSAMS70Q19B ATSAMV71J21B
ATSAME70N21A ATSAMS70Q20A ATSAMV71N19A
ATSAME70N21B ATSAMS70Q20B ATSAMV71N19B
ATSAME70Q19A ATSAMS70Q21A ATSAMV71N20A
ATSAME70Q19B ATSAMS70Q21B ATSAMV71N20A
ATSAME70Q20A ATSAMV70J19A ATSAMV71N21A
ATSAME70Q20B ATSAMV70J19B ATSAMV71N21B
ATSAME70Q21A ATSAMV70J20A ATSAMV71Q19A
ATSAME70Q21B ATSAMV70J20B ATSAMV71Q19B
ATSAMS70J19A ATSAMV70N19A ATSAMV71Q20A
ATSAMS70J19B ATSAMV70N19B ATSAMV71Q20B
ATSAMS70J20A ATSAMV70N20A ATSAMV71Q21A
ATSAMS70J20B ATSAMV70N20B ATSAMV71Q21B

Supported modules:

  • ADC (Full module support)
  • SPI (Full module support)
  • UART (Full module support)
  • I2C (Full module support)
  • PWM (Full module support)
  • GPIO (Full module support)
  • OW (Full module support)

Files updated:

Files added:

mikroSDK v2.12.2 released

10 Dec 14:13
4447365
Compare
Choose a tag to compare

v2.12.2

  • released: 2024-12-11

Changes

Improvements

mikroSDK

mikroSDK has been reworked to fit in all SDK supported PIC MCUs for XC8 toolchain.

In the XC8 compiler, there are some known considerations and potential issues when working with pointers and data widths greater than 8 bits, especially when working on 8-bit microcontrollers like the PIC series.

This is why the approach had to be modified. The modified approach bypasses this limitation by
splitting complex pieces of code into more simple steps.
The simpler steps result in XC8 toolchain generating appropriate assembly
instructions and therefore in working pieces of code.

New features

mikroSDK

Added following macro patterns:

  • GPIO_Pxy
    • Replaces Pxy
  • GPIO_PIN_x
    • Replaces PIN_xy
  • GPIO_PORT_x
    • Replaces PORT_xy

All use of the old macros has been changed by new ones. This affects all board and mcu packages as well.

Note that old macros shall be left in the SDK for a couple of upcoming versions, giving users time to make adequate changes to any code they might have.

CORE

All mcu.h header file for XC8 supported MCUs have the following change applied:

  • Changed all occurrences of Pxy to _Pxy
    • Where x i a letter from A to Z and y is a number from 0 to 9

Note that these changes shall be reverted once the old pin definitions are removed from the SDK.


mikroSDK v2.12.1 released

03 Dec 12:42
17a98c5
Compare
Choose a tag to compare

v2.12.1

  • released: 2024-12-03

Changes

Improvements

mikroSDK

mikroSDK LVGL now has the option to build either LIGHT or HEAVY LVGL configurations.

HEAVY configuration shall have all features of LIGHT configuration, with the addition of below listed features.

Additional options added for HEAVY configuration:

  • CANVAS
  • TABLE
  • ANIMIMG
  • CALENDAR
  • CHART
  • IMGBTN
  • LIST
  • MENU
  • METER
  • MSGBOX
  • SPAN
  • TABVIEW
  • TILEVIEW
  • WIN
  • FLEX
  • GRID

Note that this feature is chosen by NECTO based on MCU memory (RAM/FLASH).

i.e. if MCU has at least 128K RAM and 512K FLASH, heavy configuration will be built.

Fixes

mikroSDK

  • Fixed a stray space character before closing a comment
    • This caused build issues for FS if FF_USE_LFN was defined

mikroSDK v2.12.0 released

07 Nov 10:40
7932334
Compare
Choose a tag to compare

v2.12.0

  • released: 2024-11-08

Changes

Improvements

mikroSDK

mikroSDK now has the option to skip DRV to HAL layer jumps completely.

Note that this feature is enabled by default in NECTO.

Fixes

  • Fixed PIC XC8 SPI module so the code can be generated
    • Previous code was too complex for XC8 compiler, so it has been simplified
  • Fixed all timer module number definitions for all STM32L1x MCUs
    • Previously, timer/pwm was not working correctly as these values were incorrect

mikroSDK v2.11.5 released

31 Oct 11:49
bd5b622
Compare
Choose a tag to compare

v2.11.5

  • released: 2024-11-01

Changes

Improvements

mikroSDK

New STM32L4 MCUs supported!

MCU MCU MCU
STM32L412C8 STM32L412CB STM32L422CB
STM32L412K8 STM32L412KB STM32L422KB
STM32L412R8 STM32L412RB STM32L422RB
STM32L412T8 STM32L412TB STM32L422TB

Supported modules:

  • ADC (Full module support)

  • SPI (Full module support)

  • UART (Full module support)

  • I2C (Full module support)

  • PWM (Full module support)

  • GPIO (Full module support)

  • OW (Full module support)

  • RTC (Full module support)

  • DMA (Full module support)

  • Third party modules supported

    • TinyUSB (An open source cross-platform USB stack for embedded system)
    • FatFs (Generic FAT Filesystem Module)

Files added:

  • ./mcu_name/mcu_definitions.h - https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/arm/mikroe/common/include/mcu_definitions/STM32/mcu_name/mcu_definitions.h
  • ./mcu_name/can_definitions.h - https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/arm/mikroe/common/include/mcu_definitions/STM32/mcu_name/can_definitions.h
  • ./mcu_name/dma_definitions.h - https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/arm/mikroe/common/include/mcu_definitions/STM32/mcu_name/dma_definitions.h
    • Added for all new MCUs in mikroSDK where mcu_name is actual chip full name with package, i.e. STM32L412C8Tx etc.
  • ./mcu_name/mcu_reg_addresses.h.h - https://github.com/MikroElektronika/mikrosdk_v2/blob/master/targets/arm/mikroe/common/include/mcu_reg_addresses/STM32/mcu_name/mcu_reg_addresses.h
    • Added for all new MCUs in mikroSDK where mcu_name is actual chip full name, i.e. STM32L412C8 etc.

CORE

  • Added USB Clock schemes for the newly supported STM32L4 MCUs:
    • STM32L412C8
    • STM32L412K8
    • STM32L412R8
    • STM32L412T8
    • STM32L412CB
    • STM32L412KB
    • STM32L412RB
    • STM32L412TB
    • STM32L422CB
    • STM32L422KB
    • STM32L422RB
    • STM32L422TB

mikroSDK v2.11.4 released

17 Oct 11:39
70660f5
Compare
Choose a tag to compare

v2.11.4

  • released: 2024-10-18

Changes

Improvements

mikroSDK

  • Updated logger library error handling
    • log_init now returns an error (-1) if any of the configuration API calls used in it failed

CORE

  • Removed READONLY option from linker scripts for following MCUs (CLANG)
    • STM32H7S3A8
    • STM32H7S3I8
    • STM32H7S3L8
    • STM32H7S3R8
    • STM32H7S3V8
    • STM32H7S3Z8
    • STM32H7S7A8
    • STM32H7S7I8
    • STM32H7S7L8
    • STM32H7S7Z8
    • STM32U083CC
    • STM32U083HC
    • STM32U083KC
    • STM32U083MC
    • STM32U083RC
  • Updated project templates to report better errors
    • Case when openning designer project without a setup with TFT
      • Now reports error in the output

Fixes

mikroSDK

CORE

  • Removed CAN schema file (clock configuration) for PIC32MZ1024EFE144
    • Added by mistake initially

mikroSDK v2.11.3 released

03 Oct 07:07
Compare
Choose a tag to compare

v2.11.3

  • released: 2024-10-03

Changes

Fixes

  • Fixed touch panel implementation and TSC2003 library to recognize touch on TSC2003 RESISTIVE Displays while using LVGL projects
  • Fixed TP_ROTATION value to be "180" for all 4" CAPACITIVE Mikromedia Boards with PIC32MZ so touch position can be detected correctly

Improvements

  • Updated CMakeLists.txt to include MCU Cards headers differently
    • Headers are now included with new path with MCU_NAME
  • Clock schemas added for PIC32 mikromedia boards

mikroSDK v2.11.2 released

26 Aug 06:46
Compare
Choose a tag to compare

v2.11.2

  • released: 2024-08-23

Changes

NEW HARDWARE

Support added for following hardware:

mikroSDK v2.11.1 released

09 Aug 11:21
Compare
Choose a tag to compare

v2.11.1

  • released: 2024-06-27

Changes

  1. STM32 low level hal support
  2. dsPIC XC16 USB support
  3. PIC32 XC32 ETHERNET support
  4. Fixes
  5. Improvements
  6. NEW HARDWARE

STM32

STM32 MCUs supported!

MCU MCU MCU MCU MCU
STM32C011D6 STM32C011F6 STM32L4P5ZG STM32G431RB STM32C011J6
STM32C011F4 STM32C011J4 STM32L4P5AE STM32L4P5AG STM32L4P5CE
STM32L4P5QE STM32L4P5QG STM32L4P5RE STM32L4P5RG STM32L4P5VE
STM32L4P5ZE STM32G431C6 STM32G431C8 STM32G431CB STM32G431K6
STM32G431KB STM32G431M6 STM32G431M8 STM32G431MB STM32G431R6
STM32G431V6 STM32G431V8 STM32G431VB STM32G441CB STM32G441KB
STM32G441RB STM32G441VB STM32G473CB STM32G473CC STM32G473CE
STM32G473MC STM32G473ME STM32G473PB STM32G473PC STM32G473PE
STM32G473QC STM32G473QE STM32G473RB STM32G473RC STM32G473RE
STM32G473VC STM32G473VE STM32G474CB STM32G474CC STM32G474CE
STM32G474MC STM32G474ME STM32G474PB STM32G474PC STM32G474PE
STM32G474QC STM32G474QE STM32G474RB STM32G474RC STM32G474RE
STM32G474VC STM32G474VE STM32G483CE STM32G483ME STM32G483PE
STM32G483RE STM32G483VE STM32G484CE STM32G484ME STM32G484PE
STM32G484RE STM32G484VE STM32G491CC STM32G491CE STM32G491KC
STM32G491MC STM32G491ME STM32G491RC STM32G491RE STM32G491VC
STM32G4A1CE STM32G4A1KE STM32G4A1ME STM32G4A1RE STM32G4A1VE
STM32L4Q5CG STM32L4Q5QG STM32L4Q5RG STM32L4Q5VG STM32L4Q5ZG
STM32C031C6 STM32C031F4 STM32C031F6 STM32C031G4 STM32C031G6
STM32C031K6 STM32G051C6 STM32G051C8 STM32G051F6 STM32G051F8
STM32G051G8 STM32G051K6 STM32G051K8 STM32G061C6 STM32G061C8
STM32G061F8 STM32G061G6 STM32G061G8 STM32G061K6 STM32G061K8
STM32G0B1CC STM32G0B1CE STM32G0B1KB STM32G0B1KC STM32G0B1KE
STM32G0B1MC STM32G0B1ME STM32G0B1NE STM32G0B1RB STM32G0B1RC
STM32G0B1VB STM32G0B1VC STM32G0B1VE STM32G0C1CC STM32G0C1CE
STM32G0C1KE STM32G0C1MC STM32G0C1ME STM32G0C1NE STM32G0C1RC
STM32G0C1VC STM32G0C1VE STM32L4P5CG STM32L4P5VG STM32G431K8
STM32G431R8 STM32G441MB STM32G473MB STM32G473QB STM32G473VB
STM32G474MB STM32G474QB STM32G474VB STM32G483QE STM32G484QE
STM32G491KE STM32G491VE STM32L4Q5AG STM32C031C4 STM32C031K4
STM32G051G6 STM32G061F6 STM32G0B1CB STM32G0B1MB STM32G0B1RE
STM32G0C1KC STM32G0C1RE

Supported modules:

  • ADC (Full module support)
  • SPI (Full module support)
  • UART (Full module support)
  • I2C (Full module support)
  • PWM (Full module support)
  • GPIO (Full module support)
  • OW (Full module support)
  • DMA (Full module support)
  • CAN (Full module support)

XC16 USB

  • Third party modules supported
    • TinyUSB (An open source cross-platform USB stack for embedded systems)

XC32 ETHERNET

  • Third party modules supported
    • CycloneTCP (An open source cross-platform USB stack for embedded systems)
    • Support added for XC32 compiler

Fixes

  • Added PD0 and PD1 pins connection for all GD32VF103 MCUs
  • Fixed pin configuration for pins with indexes below 8 in hal_ll_one_wire.c implementation for GD32VF103 MCUs
  • Set default CAN baudrate to 125K for all architectures that have CAN module supported
  • Modified error handling in ADC implementation for MKV58x MCUs to detect and notify when an unsupported resolution is attempted to be set
  • Modified low-level GPIO implementation for STM32 so now PORT G pins on STM32L4Rxx MCUs can be set as inputs or outputs
  • Resistive mikromedias naming fixed according to the product names
    • Mikromedia 3 for STM32 Resistive changed to Mikromedia 3 for STM32F4 Resistive
    • Mikromedia 3 for STM32 Resistive FPI changed to Mikromedia 3 for STM32F4 Resistive FPI
    • Mikromedia 4 for STM32 Resistive changed to Mikromedia 4 for STM32F4 Resistive
    • Mikromedia 5 for STM32 Resistive changed to Mikromedia 5 for STM32F4 Resistive
  • Fixed values for display configuration so now it is configured as an 800x480 display istead of 480x800
    • Mikromedia 5 for Kinetis Resistive
    • Mikromedia 5 for Kinetis Resistive FPI
  • Fixed regex for including an appropriate dip28 header files for the boards that have this socket

Improvements

  • Added helper function in ./tp.c for simplifying code operations on PIC architecture.
  • Added default CAN receive FIFO number and default filter bank number for all architectures that have CAN module supported
  • Added CAN_RX and CAN_TX pins for EasyPIC v8, EasyPIC v8 for dsPIC30 and EasyPIC v8 for PIC24/dsPIC33 boards
  • Added mapping for LCD pins in board.h, lcd.h now uses these pins instead of TFT
  • Changed the approach to adding new BSP
    • BSP files are now included as separate cmake files per board
  • Implemented an option to add all header files that are used in LVGL project into the LVGL library
  • Structure typecast for GPIO changed to match other architectures

NEW HARDWARE

Support added for following hardware: