Skip to content

Latest commit

 

History

History
2140 lines (1764 loc) · 98.2 KB

CHANGELOG.md

File metadata and controls

2140 lines (1764 loc) · 98.2 KB

CHANGELOG

All notable changes to this project shall be documented in this file.

VERSIONS:




v2.7.2

  • released: 2023-03-09

2.7.2 Changes

  1. New Features
  2. Improvements
  3. Fixes
  4. NEW HARDWARE
  5. Collaborators

2.7.2 New Features

  • mikroSDK logger modified
    • Added implementation for standard output to terminal
  • mikroSDK modified to include custom boards
    • Feature now allows users to add their own board definitions to mikroSDK seamlessly
    • Modified file
  • Graphic library improved
    • Ellipse added to draw objects

2.7.2 Improvements

  • ILI9341 setup build improved
    • Setup will now be buildable only for devices which have adequate pin connections

2.7.2 Fixes

  • Fixed HAL layer array initialization for 8-bit architectures
    • Previously, MCUs with only one pin per module didn't function correctly
    • Fixed for following modules:
      • ADC
      • I2C
      • PWM
      • SPI
      • UART
  • Fixed uart_configure_default API
    • stop_bits previosuly set incorrectly

2.7.2 NEW HARDWARE

Support added for following hardware:

2.7.2 Collaborators

We would like to thank the following people for contributing:


BACK TO TOP OF 2.7.2


BACK TO TOP


v2.7.1

  • released: 2022-12-28

2.7.1 Changes

  1. New Features
  2. Improvements
  3. Fixes
  4. NEW HARDWARE

2.7.1 New Features

  • One Wire implementation for AVR
    • Full module support
  • ILI9341 TFT implementation added
    • Added 8/16 bit implementation
  • MIKROE Touch Panel implementation added
    • Using transistor logic
  • API layer touch panel has reduced footprint if MIKROE Touch Panel implementation is used
  • Added header generation based on actual library name
    • For example, in order to include MikroSDK.Driver.OneWire library header, simply type
      • #include "MikroSDK.Driver.OneWire"
    • Implemented for whole SDK project for easier file access

2.7.1 Improvements

  • Uart write/read APIs changed to use actual byte sized data
  • AVR low level UART IVT
    • Added option to switch between IVT and ORG mapping/access for interrupt service routines
  • Timer/PWM code optimised for AVR MCUs
    • Improved code readability
    • Added check for NULL pointers
    • Surplus code moved to MCU specific definition files
  • AVR ATmega UART implementation optimized for high-speed baud rate settings
    • High-speed mode used if regular speed mode error exceeds 2.5% as defined in documentation
  • pin_af_t redefinition issues
    • Reorganized for all ARM and RISC-V MCUs
  • CMake now sets defaults ADC resolution based on specific MCU, not only architecture
  • Added stop bit generation for AVR software I2C implementation

2.7.1 Fixes

  • Fixed reported GITHUB ISSUE
    • Instance handler now set correctly
  • ./targets/avr_8bit/mikroe/avr/src/tim
    • Fixed register addresses
  • ./targets/avr_8bit/mikroe/avr/include
    • Pin maps are no longer linked as weak
  • Added additional ports and pins to AVR GPIO implementation
  • AVR GPIO implementation now functions correctly for all GPIO ports
    • Previously, all ports after H ( I, J, K ... ) didn't work
  • Removed 14 MCUs from mikroSDK due to insufficient memory issues
    • ATmega16
    • ATmega164A
    • ATmega164P
    • ATmega164PA
    • ATmega168
    • ATmega168A
    • ATmega168P
    • ATmega168PA
    • ATmega168PB
    • ATmega169A
    • ATmega169P
    • ATmega169PA
    • ATmega16A
    • ATmega16U4
  • IVT redefined properly for ATXmega E5 MCU series
    • Resulted in addition of another USART module (USART2)
  • Opening existing click tests from mikroSDK project for EasyAVR v8 and v7 resulted in error
  • Opening mikroSDK as a project using a designer setup disables the option to switch to a regular type project
    • Now able to switch freely
  • One-Wire implementation for ARM used to overwrite read data bits/bytes
    • Fix implemented for all ARM MCUs
  • Unable to open specific CMakeLists.txt files from mikroSDK project

2.7.1 NEW HARDWARE

Support added for following hardware:

All new hardware has adequate clock schemes set as well.


BACK TO TOP OF 2.7.1


BACK TO TOP


v2.7.0

  • released: 2022-12-01

2.7.0 Changes

  1. AVR low level hal support
  2. Improvements
  3. Fixes
  4. NEW HARDWARE
  5. PLANET DEBUG
  6. Collaborators

AVR

AVR MCUs supported!

MCU MCU MCU
AT90USB1286 AT90USB1287 AT90USB646
AT90USB647 ATmega128 ATmega1280
ATmega1281 ATmega1284 ATmega1284P
ATmega128A ATmega16 ATmega164A
ATmega164P ATmega164PA ATmega168
ATmega168A ATmega168P ATmega168PA
ATmega168PB ATmega16A ATmega16U4
ATmega2560 ATmega2561 ATmega32
ATmega324A ATmega324P ATmega324PA
ATmega324PB ATmega328 ATmega32A
ATmega32U4 ATmega64 ATmega640
ATmega644 ATmega644A ATmega644P
ATmega644PA ATmega64A ATxmega128A1U
ATxmega128A3 ATxmega128A3U ATxmega128A4U
ATxmega128B1 ATxmega128B3 ATxmega128D3
ATxmega128D4 ATxmega16A4 ATxmega16A4U
ATxmega16D4 ATxmega16E5 ATxmega192A3
ATxmega192A3U ATxmega192D3 ATxmega256A3
ATxmega256A3B ATxmega256A3BU ATxmega256A3U
ATxmega256D3 ATxmega32A4 ATxmega32A4U
ATxmega32D3 ATxmega32D4 ATxmega32E5
ATxmega384D3 ATxmega64A1U ATxmega64A3
ATxmega64A3U ATxmega64A4U ATxmega64B1
ATxmega64B3 ATxmega64D3 ATxmega64D4
ATmega328PB ATmega169A ATmega169P
ATmega169PA ATmega325 ATmega3250
ATmega3250A ATmega3250P ATmega3250PA
ATmega325A ATmega325P ATmega325PA
ATmega329 ATmega3290 ATmega3290A
ATmega3290P ATmega329A ATmega329P
ATmega329PA ATmega645 ATmega6450
ATmega6450A ATmega6450P ATmega645A
ATmega645P ATmega649 ATmega6490
ATmega6490A ATmega6490P ATmega649A
ATmega649P

Supported modules:

  • NEW Software I2C implemention for AVR MCUs
  • ADC (Full module support)
  • SPI (Full module support)
  • UART (Full module support)
  • I2C (Full module support)
  • PWM (Full module support)
  • GPIO (Full module support)

Files added:

2.7.0 Improvements

  • Improved Graphic Library implementation
    • Improvement for issue of bad conversion for special case
    • Added check if result is +Inf, or -Inf since cast to integer is undefined
    • Added max and min int instead
  • Added option to disable/enable whole module based on availability

2.7.0 Fixes

  • Fixed VTFT imlplementation for PIC18F57Q43
    • API now returns adequate active instance for further use
  • Fixed I2C implementation 2 for PIC 8bit devices
    • Restart signal is now generated adequatelly
    • Fix impacts following devices:
      • PIC18F25K42
      • PIC18F26K42
      • PIC18F27K42
      • PIC18F45K42
      • PIC18F46K42
      • PIC18F47K42
      • PIC18F55K42
      • PIC18F56K42
      • PIC18F57K42
      • PIC18LF25K42
      • PIC18LF26K42
      • PIC18LF27K42
      • PIC18LF45K42
      • PIC18LF46K42
      • PIC18LF47K42
      • PIC18LF55K42
      • PIC18LF56K42
      • PIC18LF57K42
      • PIC18F57Q43
  • Fixed GPIO implementation for RISC-V devices
    • Unlock routine fixed for SWJ pins
    • User is now available to use SWJ pins
    • Affects all GIGADEVICE MCUs
  • Fixed TFT port setting for:
    • MCU CARD 11 FOR PIC
      • Set to adequate 8bit port
  • Fixed inclusion of adequate mcu_definitions header file for following MCUs:
    • STM32L100C6_AUx
    • STM32L100R8_ATx
    • STM32L100RB_ATx
    • STM32L151C6_ATx
    • STM32L151C6_AUx
    • STM32L151C8_ATx
    • STM32L151C8_AUx
    • STM32L151CB_ATx
    • STM32L151CB_AUx
    • STM32L151R6_AHx
    • STM32L151R6_ATx
    • STM32L151R8_AHx
    • STM32L151R8_ATx
    • STM32L151RB_AHx
    • STM32L151RB_ATx
    • STM32L151RC_ATx
    • STM32L151V8_AHx
    • STM32L151V8_ATx
    • STM32L151VB_AHx
    • STM32L151VB_ATx
    • STM32L151VC_ATx
    • STM32L152C6_ATx
    • STM32L152C6_AUx
    • STM32L152C8_ATx
    • STM32L152C8_AUx
    • STM32L152CB_ATx
    • STM32L152CB_AUx
    • STM32L152R6_AHx
    • STM32L152R6_ATx
    • STM32L152R8_AHx
    • STM32L152R8_ATx
    • STM32L152RB_AHx
    • STM32L152RB_ATx
    • STM32L152RC_ATx
    • STM32L152V8_AHx
    • STM32L152V8_ATx
    • STM32L152VB_AHx
    • STM32L152VB_ATx
    • STM32L152VC_ATx
    • STM32L162RC_ATx
    • STM32L162VC_ATx

2.7.0 NEW HARDWARE

Support added for following hardware:

2.7.0 PLANET DEBUG

  • Incoming update with newly released AVR boards

2.7.0 Collaborators

We would like to thank the following people for contributing:


BACK TO TOP OF 2.7.0


BACK TO TOP


v2.6.0

  • released: 2022-06-16

2.6.0 Changes

  1. RISC-V low level hal support
  2. New Features
  3. NEW HARDWARE
  4. PLANET DEBUG
  5. Updated relevant development kit package
  6. Test examples

RISC-V SDK

RISV-V MCU architecture supported!

MCU MCU
GD32VF103C4T6 GD32VF103C6T6
GD32VF103C8T6 GD32VF103CBT6
GD32VF103R4T6 GD32VF103R6T6
GD32VF103R8T6 GD32VF103RBT6
GD32VF103T4U6 GD32VF103T6U6
GD32VF103T8U6 GD32VF103TBU6
GD32VF103V8T6 GD32VF103VBT6

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)

Files added:

2.6.0 New Features

  • CMake build system with automated functionalities:
    • Adding files
    • Removing files
    • Renaming files for the CMake project
    • Adding/removing libraries from the CMake project

With the addition of touch_controller libs, it is now possible to switch mid DESIGNER project to any of the supported displays. There is no need to create a new project. mikroSDK will take care of that for you.

Files added:

  • ./middleware/touch_controller/CMakeLists.txt
  • ./middleware/touch_controller/lib/CMakeLists.txt
  • ./middleware/touch_controller/lib/src/touch_controller.c
  • ./middleware/touch_controller/lib/include/touch_controller.h

2.6.0 NEW HARDWARE

Support added for following hardware:

2.6.0 PLANET DEBUG

  • All 80 PD systems updated
    • New setups added with CMake
    • Each PD system now has two separate setups
      • One for older NECTO Studio versions
      • One for NECTO Studio v2 and up

2.6.0 DEVELOPMENT KIT PACKAGE

  • With the introduction of CMake build system in NECTO Studio, there is no need for the development kit anymore
  • Removed from repository

2.6.0 Test examples

All test examples have been revamped to work with CMake build system.


BACK TO TOP OF 2.6.0


BACK TO TOP


v2.5.1

  • released: 2022-03-04

2.5.1 Changes

  1. NEW HARDWARE
  2. Updated relevant development kit package
  3. Improvements
  4. Fixes

2.5.1 NEW HARDWARE

Config files added for adequate NEW boards.

2.5.1 DEVELOPMENT KIT PACKAGE

  • Updated mikroSDK development kit to conform to newly added hardware stated in last paragraph
    • Added new hardware definitions

2.5.1 Improvements

Support added for Enhanced PWM pins in PIC architecture.

185 MCU's in total affected by this change.

You will now be able to utilize pins that are Enhanced PWM capable. Some PIC18 family devices have Enhanced Capture/Compare/PWM (ECCP) modules. These modules contain a 16-bit register, which can operate as a 16-bit Capture register, a 16-bit Compare register or a PWM Master/Slave Duty Cycle register. These Enhanced Capture/Compare/PWM modules are upward compatible with Standard Capture/Compare/PWM modules.

Note that all of this is done by the mikroSDK based on the pin selection.

List of MCU's affected:

MCU NAME MCU NAME MCU NAME MCU NAME MCU NAME
PIC18F24J11 PIC18F24J50 PIC18F24K50 PIC18F25J11 PIC18F25J50
PIC18F25K50 PIC18F25K80 PIC18F26J11 PIC18F26J13 PIC18F26J50
PIC18F26J53 PIC18F26K22 PIC18F26K80 PIC18F27J13 PIC18F27J53
PIC18F4455 PIC18F4458 PIC18F44J11 PIC18F44J50 PIC18F4515
PIC18F4525 PIC18F4550 PIC18F4553 PIC18F4585 PIC18F45J11
PIC18F45J50 PIC18F45K22 PIC18F45K50 PIC18F45K80 PIC18F4610
PIC18F4620 PIC18F4680 PIC18F4682 PIC18F4685 PIC18F46J11
PIC18F46J13 PIC18F46J50 PIC18F46J53 PIC18F46K22 PIC18F46K80
PIC18F47J13 PIC18F47J53 PIC18F6520 PIC18F6525 PIC18F6527
PIC18F6585 PIC18F65J10 PIC18F65J11 PIC18F65J15 PIC18F65J50
PIC18F65J94 PIC18F65K22 PIC18F65K80 PIC18F65K90 PIC18F6620
PIC18F6621 PIC18F6622 PIC18F6627 PIC18F6628 PIC18F6680
PIC18F66J10 PIC18F66J11 PIC18F66J15 PIC18F66J16 PIC18F66J50
PIC18F66J55 PIC18F66J60 PIC18F66J65 PIC18F66J94 PIC18F66K22
PIC18F66K80 PIC18F66K90 PIC18F6720 PIC18F6722 PIC18F6723
PIC18F67J10 PIC18F67J11 PIC18F67J50 PIC18F67J60 PIC18F67J94
PIC18F67K22 PIC18F67K90 PIC18F8520 PIC18F8525 PIC18F8527
PIC18F8585 PIC18F85J10 PIC18F85J11 PIC18F85J15 PIC18F85J50
PIC18F85J94 PIC18F85K22 PIC18F85K90 PIC18F8620 PIC18F8621
PIC18F8622 PIC18F8627 PIC18F8628 PIC18F8680 PIC18F86J10
PIC18F86J11 PIC18F86J15 PIC18F86J16 PIC18F86J50 PIC18F86J55
PIC18F86J60 PIC18F86J65 PIC18F86J94 PIC18F86K22 PIC18F86K90
PIC18F8720 PIC18F8722 PIC18F8723 PIC18F87J10 PIC18F87J11
PIC18F87J50 PIC18F87J60 PIC18F87J94 PIC18F87K22 PIC18F87K90
PIC18F95J94 PIC18F96J60 PIC18F96J65 PIC18F96J94 PIC18F97J60
PIC18F97J94 PIC18LF24J11 PIC18LF24J50 PIC18LF24K50 PIC18LF25J11
PIC18LF25J50 PIC18LF25K50 PIC18LF25K80 PIC18LF26J11 PIC18LF26J13
PIC18LF26J50 PIC18LF26J53 PIC18LF26K22 PIC18LF26K80 PIC18LF27J13
PIC18LF27J53 PIC18LF4455 PIC18LF4458 PIC18LF44J11 PIC18LF44J50
PIC18LF4515 PIC18LF4525 PIC18LF4550 PIC18LF4553 PIC18LF4585
PIC18LF45J11 PIC18LF45J50 PIC18LF45K22 PIC18LF45K50 PIC18LF45K80
PIC18LF4610 PIC18LF4620 PIC18LF4680 PIC18LF4682 PIC18LF4685
PIC18LF46J11 PIC18LF46J13 PIC18LF46J50 PIC18LF46J53 PIC18LF46K22
PIC18LF46K80 PIC18LF47J13 PIC18LF47J53 PIC18LF6520 PIC18LF6527
PIC18LF65K80 PIC18LF6622 PIC18LF6627 PIC18LF6628 PIC18LF66K80
PIC18LF6722 PIC18LF6723 PIC18LF8520 PIC18LF8527 PIC18LF8622
PIC18LF8627 PIC18LF8628 PIC18LF8720 PIC18LF8722 PIC18LF8723

2.5.1 Fixes


BACK TO TOP OF 2.5.1


BACK TO TOP


v2.5.0

  • released: 2022-02-01

2.5.0 Changes

  1. New Features
  2. Mikromedia shields
  3. NEW HARDWARE
  4. Updated relevant development kit package
  5. Improvements
  6. Test examples

2.5.0 New Features

Support added for One Wire protocol

1-Wire protocol utilizes only a single data line for communication, so don�t you worry about cluttering your project (your MCU as well) with multiple pins (Mikroe�s Click boards that are 1-Wire capable are predominately using PWM pin for this action). Devices that are 1-Wire capable have something unique to themselves � ROM address � which, in its core, is a 64-bit number, helping product designers create hardware products with serial numbers embedded in them, replacing traditional physical labels for product�s serial number.

2.5.0 Mikromedia shields

2.5.0 NEW HARDWARE

Config files added for adequate NEW boards.

2.5.0 DEVELOPMENT KIT PACKAGE

  • Updated mikroSDK development kit to conform to newly added hardware stated in last paragraph
    • Added all 3 new hardware definitions

2.5.0 Improvements

  • Added following calculated delays
    • 5 us
    • 6 us
    • 9 us
    • 10 us
    • 55 us
    • 60 us
    • 64 us
    • 70 us
    • 410 us
    • 480 us
  • Added common_macros.h header file
    • All macros shall be declared in one file

2.5.0 Test examples

  • Added following test examples
    • one_wire
      • General One Wire testing
    • clicks
      • one_wire
        • thermo_2_click
          • Test showcases current ambient temperature via UART terminal

BACK TO TOP OF 2.5.0


BACK TO TOP


v2.4.0

  • released: 2021-12-28

2.4.0 Changes

  1. Resistive displays
  2. Middleware
    1. STMPE811
    2. STMPE810
    3. STMPE610
    4. TSC2003
  3. Mikromedia shields
  4. NEW HARDWARE
  5. Updated relevant development kit package
  6. Fixes
  7. Improvements
  8. Recursive build automation
  9. Test examples
  10. Collaborators

2.4.0 Resistive displays

Support added for 4 resistive displays.

Displays have SSD1963 controller, which is already supported, and STMPE811 touch controller.

2.4.0 Middleware

STMPE811

STMPE811 Datasheet.

STMPE810

Added STMPE811 library is compatible with STMPE810.

For the sake of simplicity, STMPE810 devices will use STMPE811 library.

Please refer to STMPE811.

STMPE610

Added STMPE811 library is compatible with STMPE610.

For the sake of simplicity, STMPE610 devices will use STMPE811 library.

Please refer to STMPE811.

TSC2003

Support added for TI's TSC2003 touch controller.

Note:

Library is functional, but will be officialy added in Necto later.

2.4.0 Mikromedia shields

2.4.0 NEW HARDWARE

Config files added for adequate NEW boards.

2.4.0 DEVELOPMENT KIT PACKAGE

  • Updated mikroSDK development kit to conform to newly added hardware stated in last paragraph
    • Added all 11 new hardware definitions

2.4.0 Fixes

  • Fixed inadequate UART alternate function setting for STM32F1x chips
    • Inadequate alternate function setting for certain pins
  • Fixed all baud rate calculation return values
    • HAL_LL functions for calculating baud rates now all return actual baud set on hardware
  • Some MK22x chips didn't have all NVIC defined
    • 20 files in total
  • Fixed all issues with inadequate pin checking types
    • e.g trying to place a word value in a byte variable
  • Updated low level UART impelementations
    • Adequately sets stop bits, data bits and parity settings

2.4.0 Improvements

  • NXP High Speed ADC
    • All MKV5x chips now have a fully supported HSADC module
    • Results in High speed ADC (HSADC) adds faster and more precise measurements to any project
  • Touch Panel library no longer requires constant values for screen width and height
    • Done by memake python automation
  • The addition of shields for Mikromedia boards now allows for Click example building and testing
  • Removed unnecessary handle checking in low level implementations
    • Results in quicker code execution
  • Changed board macro naming convention for DIP connections

2.4.0 Recursive build automation

Updated powershell script for automated recursive SDK build.

Script now writes adequate progress level based on run settings.

Files changed:

For more information, please refer to main script DESCRIPTION

2.4.0 Test examples

Updated tft_touch_panel test example.

Example is updated to work with new resistive displays and touch controllers.

2.4.0 Collaborators

We would like to thank the following people for contributing:

BACK TO TOP OF 2.4.0


BACK TO TOP


v2.3.0

  • released: 2021-10-28

2.3.0 Changes

  1. TIVA low level hal support
  2. NEW HARDWARE
  3. Updated relevant manifest files
  4. Updated relevant development kit package
  5. Added adequate configuration files
  6. PLANET DEBUG
  7. Recursive build automation
  8. Test examples
  9. Collaborators

TIVA SDK

  • Support added for 71 Texas Instruments TIVA MCU's
CHIP NAME CHIP NAME CHIP NAME
TM4C1230C3PM TM4C1230D5PM TM4C1230E6PM
TM4C1230H6PM TM4C1231C3PM TM4C1231D5PM
TM4C1231D5PZ TM4C1231E6PM TM4C1231E6PZ
TM4C1231H6PGE TM4C1231H6PM TM4C1231H6PZ
TM4C1232C3PM TM4C1232D5PM TM4C1232E6PM
TM4C1232H6PM TM4C1233C3PM TM4C1233D5PM
TM4C1233D5PZ TM4C1233E6PM TM4C1233E6PZ
TM4C1233H6PGE TM4C1233H6PM TM4C1233H6PZ
TM4C1236D5PM TM4C1236E6PM TM4C1236H6PM
TM4C1237D5PM TM4C1237D5PZ TM4C1237E6PM
TM4C1237E6PZ TM4C1237H6PGE TM4C1237H6PM
TM4C1237H6PZ TM4C123AE6PM TM4C123AH6PM
TM4C123BE6PM TM4C123BE6PZ TM4C123BH6PGE
TM4C123BH6PM TM4C123BH6PZ TM4C123BH6ZRB
TM4C123FE6PM TM4C123FH6PM TM4C123GE6PM
TM4C123GE6PZ TM4C123GH6PGE TM4C123GH6PM
TM4C123GH6PZ TM4C123GH6ZRB TM4C123GH6ZXR
TM4C1290NCPDT TM4C1290NCZAD TM4C1292NCPDT
TM4C1292NCZAD TM4C1294KCPDT TM4C1294NCPDT
TM4C1294NCZAD TM4C1297NCZAD TM4C1299KCZAD
TM4C1299NCZAD TM4C129CNCPDT TM4C129CNCZAD
TM4C129DNCPDT TM4C129DNCZAD TM4C129EKCPDT
TM4C129ENCPDT TM4C129ENCZAD TM4C129LNCZAD
TM4C129XKCZAD TM4C129XNCZAD

Supported modules:

  1. ADC
    • Full module support
  2. SPI
    • Full module support
  3. UART
    • Full module support
    • Implemented using interrupts
  4. I2C
    • Full module support
  5. PWM
    • Full module support
  6. GPIO
    • Full module support

2.3.0 NEW HARDWARE

Config files added for adequate NEW boards.

2.3.0 DEVELOPMENT KIT PACKAGE

  • Updated mikroSDK development kit to conform to newly added hardware stated in last paragraph
    • Added all 17 new hardware definitions

2.3.0 Added adequate configuration files

Configuration files for following hardware has been added:

2.3.0 PLANET DEBUG

PLANET DEBUG setups updated with mikroSDK packages.

Now, all click examples can be run out of the box on PLANET DEBUG.

3 systems have been updated:

  • Fusion for TIVA v8 - 1
  • Fusion for TIVA v8 - 2
  • Fusion for TIVA v8 - 3

For more information on PLANET DEBUG please visit following LINK.

2.3.0 Recursive build automation

Updated powershell script for automated recursive SDK build.

Files changed:

For more information, please refer to main script DESCRIPTION

2.3.0 Test examples

Added following test examples:

  • clicks
    • SPI
      • click_magneto
    • UART
      • click_samltouch

Examples are used for testing mikroSDK specific module cases.

2.3.0 Collaborators

We would like to thank the following people for contributing:

BACK TO TOP OF 2.3.0


BACK TO TOP


v2.2.0

  • released: 2021-09-30

2.2.0 Changes

  1. NXP low level hal support
  2. NEW HARDWARE
  3. Updated relevant manifest files
  4. Updated relevant development kit package
  5. PLANET DEBUG
  6. Improvements
  7. Fixes
  8. GIT relevant updates
  9. Test examples
  10. Collaborators

NXP KINETIS SDK

  • Support added for 147 NXP Kinetis MCU's
CHIP NAME CHIP NAME CHIP NAME CHIP NAME CHIP NAME
MK20DN128VFM5 MK20DN128VFT5 MK20DN128VLF5 MK20DN128VLH5 MK20DN128VMP5
MK20DN32VFM5 MK20DN32VFT5 MK20DN32VLF5 MK20DN32VLH5 MK20DN32VMP5
MK20DN64VFM5 MK20DN64VFT5 MK20DN64VLF5 MK20DN64VLH5 MK20DN64VMP5
MK20DX128VFM5 MK20DX128VFT5 MK20DX128VLF5 MK20DX128VLH5 MK20DX32VFM5
MK20DX32VFT5 MK20DX32VLF5 MK20DX32VLH5 MK20DX32VMP5 MK20DX64VFM5
MK20DX64VFT5 MK20DX64VLF5 MK20DX64VLH5 MK20DX64VMP5 MK22FN128CAH12
MK22FN128VDC10 MK22FN128VLH10 MK22FN128VLL10 MK22FN128VMP10 MK22FN1M0AVLH12
MK22FN1M0AVLK12 MK22FN1M0AVLL12 MK22FN1M0AVLQ12 MK22FN1M0AVMC12 MK22FN1M0AVMD12
MK22FN1M0VLH12 MK22FN1M0VLK12 MK22FN1M0VLL12 MK22FN1M0VLQ12 MK22FN1M0VMC12
MK22FN1M0VMD12 MK22FN256CAH12 MK22FN256VDC12 MK22FN256VLH12 MK22FN256VLL12
MK22FN256VMP12 MK22FN512CAP12 MK22FN512VDC12 MK22FN512VFX12 MK22FN512VLH12
MK22FN512VLL12 MK22FN512VMP12 MK22FX512AVLH12 MK22FX512AVLK12 MK22FX512AVLL12
MK22FX512AVLQ12 MK22FX512AVMC12 MK22FX512AVMD12 MK22FX512VLH12 MK22FX512VLK12
MK22FX512VLL12 MK22FX512VLQ12 MK22FX512VMC12 MK22FX512VMD12 MK51DN256CLQ10
MK51DN256CMD10 MK51DN512CLL10 MK51DN512CLQ10 MK51DN512CMC10 MK51DN512CMD10
MK51DX256CLK10 MK51DX256CLL10 MK51DX256CMC10 MK53DN512CLQ10 MK53DN512CMD10
MK53DX256CLQ10 MK53DX256CMD10 MK60DN256VLL10 MK60DN256VLQ10 MK60DN256VMC10
MK60DN256VMD10 MK60DN512VLL10 MK60DN512VLQ10 MK60DN512VMC10 MK60DN512VMD10
MK60DX256VLL10 MK60DX256VLQ10 MK60DX256VMC10 MK60DX256VMD10 MK64FN1M0CAJ12
MK64FN1M0VDC12 MK64FN1M0VLL12 MK64FN1M0VLQ12 MK64FN1M0VMD12 MK64FX512VDC12
MK64FX512VLL12 MK64FX512VLQ12 MK64FX512VMD12 MK65FN2M0CAC18 MK65FN2M0VMI18
MK65FX1M0CAC18 MK65FX1M0VMI18 MK66FN2M0VLQ18 MK66FN2M0VMD18 MK66FX1M0VLQ18
MK66FX1M0VMD18 MK80FN256VDC15 MK80FN256VLL15 MK80FN256VLQ15 MK82FN256VDC15
MK82FN256VLL15 MK82FN256VLQ15 MKV42F128VLF16 MKV42F128VLH16 MKV42F128VLL16
MKV42F256VLH16 MKV42F256VLL16 MKV42F64VLF16 MKV42F64VLH16 MKV44F128VLF16
MKV44F128VLH16 MKV44F128VLL16 MKV44F256VLH16 MKV44F256VLL16 MKV44F64VLF16
MKV44F64VLH16 MKV46F128VLH16 MKV46F128VLL16 MKV46F256VLH16 MKV46F256VLL16
MKV56F1M0VLL24 MKV56F1M0VLQ24 MKV56F1M0VMD24 MKV56F512VLL24 MKV56F512VLQ24
MKV56F512VMD24 MKV58F1M0VLL24 MKV58F1M0VLQ24 MKV58F1M0VMD24 MKV58F512VLL24
MKV58F512VLQ24 MKV58F512VMD24

Supported modules:

  1. ADC
    • Full module support
  2. SPI
    • Full module support
  3. UART
    • Full module support
    • Implemented using interrupts
  4. I2C
    • Full module support
  5. PWM
    • Full module support
  6. GPIO
    • Full module support

2.2.0 NEW HARDWARE

Config files added for adequate NEW boards.

2.2.0 DEVELOPMENT KIT PACKAGE

  • Updated mikroSDK development kit to conform to newly added hardware stated in last paragraph
    • Added all 27 new hardware definitions

2.2.0 PLANET DEBUG

PLANET DEBUG setups updated with mikroSDK packages.

Now, all click examples can be run out of the box on PLANET DEBUG.

5 systems have been updated:

  • Fusion for KINETIS v8 - 1
  • Fusion for KINETIS v8 - 2
  • Fusion for KINETIS v8 - 3
  • Fusion for KINETIS v8 - 4
  • Fusion for ARM v8 - 5

For more information on PLANET DEBUG please visit following LINK.

2.2.0 Improvements

  • Added STM32G071R6Tx to mikroSDK
    • Full mikroBUS module support
  • Static global handler initial value added
    • SPI module; STM32 implementation
  • Added guard for HAL_PIN_NC pins
    • Code exits faster in case of undeclared pins
    • Implemented for 46 source files
  • Added definitions for USB_UART_TX and USB_UART_RX pins
    • Added for every board
    • All examples can now be successfuly built

2.2.0 Fixes

  • Removed following chips from mikroSDK
    • STM32H743AGIx
    • STM32H743VGHx
    • STM32L082KBTx
    • STM32L082KBUx

Chips were initially added by mistake.

They aren't supported in mikroC AI for ARM toolchain.

  • Added CPP guards to all board.h files

2.2.0 Git relevant updates

Workflow added.

  1. Automatic response to contribution;
  2. Automatic response to issue creation.

2.2.0 Test examples

Added following test examples:

  • mikrobus
    • adc
      • Reads raw adc data and outputs it via UART
    • gpio
      • Sets all mikroBUS pins as digital outputs and toggles them in defined interval
    • i2c
      • Writes data to EEPROM click, reads it and compares it
    • spi
      • Writes data to SRAM click, reads it and compares it
    • pwm
      • Tests all mikroBUS PWM pins by toggling duty cycle from max to min in defined steps
    • uart
      • Test all mikroBUS pins using a simple echo example

All examples test all mikroBUS pins defined in adequate board.h file.

Each example can be used to test a single pin/module as well.

For more information, please refer to each example and adequate ReadMe.txt file.

2.2.0 Collaborators

We would like to thank the following people for contributing:

BACK TO TOP OF 2.2.0


BACK TO TOP


v2.1.1

  • released: 2021-08-24

2.1.1 Changes

2.1.1 NEW HARDWARE

2.1.1 DEVELOPMENT KIT PACKAGE

  • Updated mikroSDK development kit to conform to newly added hardware stated in last paragraph
    • Added all 31 new hardware definitions

2.1.1 Fixes

  • Designer projects did not work for 8-bit data ports with higher nibble connections
    • e.g -> data port is PORTE pins 8:15
  • Added adequate defenders for SPI and ADC low level implementation for PIC devices
  • mikroSDK build tool description spelling fixed
  • PIC Q10 chips I2C baud rate setting
    • Sets correct baud rates now
    • Before the fix, setting 400K would result in 100K on HW
  • I2C busy bit was always high after clock init
    • Affects STM32F101 and STM32F103 series of chips
    • ERRATA page 23, paragraph 2.12.7
  • PIC32 Logger issue
    • Sending data immediatelly after logger initialization resulted in lost data
  • STM32 M7 Uart fix
    • Sending/receiving large amounts of data resulted in register overflow
  • Missing function declaration for PIC 8-bit chips
    • hal_ll_spi_master_hw_init added
  • Unable to edit ANCON3 register values for some PIC 8-bit chips if PPS Lock bit is set
  • UART general issue
    • Implemented waiting for buffers to be empty before reinitializing the module
    • UART now returns 0 if no data hs been written/read
      • Previously it returned -1
  • Fixed structure data access
    • Changed -> to . where necessary
  • Fixed pin check result variable size
  • Fixed setting pins as digital input for 50 PIC32MX chips
    • Fixed analog maps
  • STM32LxSy chips GPIO fix
    • PORTG pins didn't work as expected
  • Designer code generation was wrong for 4 inch bezel mikromedia boards
    • Touchpanel orientation was required

2.1.1 Improvements

  • Libraries are now separated per module
    • More efficient
    • Conserves memory
    • No need to include all libraries
      • Include only the one you need
  • Implemented selection per module
    • Now, if same set of pins is available on a different module, that module will be mapped
  • Implemented graphic library port mask selection
  • Designer template now depends on memake file and has unified code for TFT manipulation
  • SPI for PIC 8-bit chips now sets baud rate more precisely
    • Previously implemented by using hardware module dividers(2,4,8...)
  • Implemented adequate slew rate setting for PIC32 chips
    • Affects SPI module specifically
  • Removed slew rate setting for 8-bit PIC chips which don't need it
    • Code optimized further
  • SPI click board templates now include data sampling selection
    • 8-bit PIC chips
      • e.g middle,end...
  • SPI initial SCK line glitch on PIC32 chips fixed
  • Unified unused register naming in all low level sources
  • Removed excess verifications
    • Excess NULL pointer check
    • Excess pin name checks
  • Shared registers for some PIC 8-bit chips
    • Implemented for following chips
      • PIC18F65J50
      • PIC18F66J50
      • PIC18F66J55
      • PIC18F67J50
      • PIC18F85J50
      • PIC18F86J50
      • PIC18F86J55
      • PIC18F87J50
  • Added nibble control macros for all architectures
  • Added mikromedia support for PIC 32-bit chips
  • Added mikromedia support for PIC 8-bit chips

Git relevant updates

  • Added following files:
  • Added workflows ( CI/CD ):
    • Automated response to issue creation
    • Automated response to first contribution

2.1.1 Test examples

Added following test examples:

  • adc
    • Outputs AD conversion result on diodes or UART terminal
  • clicker_buttons
    • Defined test for MikroE™ clicker boards
  • gpio
    • Tests all GPIO functions
  • i2c
    • Tests all I2C functions
  • mikrobus
    • Tests all MikroE™ development board MikroBUS™ connections
  • pwm
    • Tests all PWM/TIM functions
  • spi
    • Tests all SPI functions
  • tft_jig
    • Test all TFT panel connections
  • tft_touch_panel
    • Tests TFT Touch panel with basic example
  • uart
    • Tests all UART functions
  • clicks
    • Tests all modules on specifically selected click boards
      • adc
        • click_ambient_7
        • click_force
        • click_hall_current_5
        • click_pressure_12
        • click_slider_2
      • gpio
        • click_4x4_rgb
        • click_cap_touch
        • click_opto_encoder_3
        • click_pll
        • click_sht1x
        • click_vibra_sense
      • i2c
        • click_6dof_imu_11
        • click_altitude_3
        • click_color_9
        • click_ecg_6
        • click_light_ranger_2
      • pwm
        • click_brushless
        • click_button_y
        • click_dc_motor_8
        • click_led_driver_6
        • click_stspin250
      • spi
        • click_bee
        • click_ccrf_2
        • click_eink_290_inch
        • click_magneto_2
        • click_oledc
      • uart
        • click_barcode
        • click_ble_8
        • click_fingerprint_2
        • click_iqrf_2
        • click_lte_iot_2

All examples have a minimum memory requirement, which is handled in each memake.txt file separately.

For more information, please refer to each example and a ReadMe.txt if existant.

2.1.1 Recursive build automation

Added powershell script for automated recursive SDK build.

Files added:

For more information, please refer to main script DESCRIPTION

BACK TO TOP OF 2.1.1


BACK TO TOP


v2.1.0

  • released: 2021-04-29

2.1.0 Changes

  1. PIC32 low level hal support
  2. NEW HARDWARE
  3. Updated relevant manifest files
  4. Updated relevant development kit package
  5. Fixes
  6. Improvements
  7. GIT relevant updates
  8. Collaborators

PIC32 SDK

  • Support added for 163 PIC32 MCU's

MX CHIPS:

CHIP NAME CHIP NAME CHIP NAME CHIP NAME CHIP NAME
PIC32MX110F016B PIC32MX210F016B PIC32MX320F032H PIC32MX440F256H PIC32MX570F512L
PIC32MX110F016C PIC32MX210F016C PIC32MX320F064H PIC32MX440F512H PIC32MX575F256H
PIC32MX110F016D PIC32MX210F016D PIC32MX320F128H PIC32MX450F128H PIC32MX575F256L
PIC32MX120F032B PIC32MX220F032B PIC32MX320F128L PIC32MX450F128L PIC32MX575F512H
PIC32MX120F032C PIC32MX220F032C PIC32MX330F064H PIC32MX450F256H PIC32MX575F512L
PIC32MX120F032D PIC32MX220F032D PIC32MX330F064L PIC32MX450F256HB PIC32MX664F064H
PIC32MX120F064H PIC32MX230F064B PIC32MX340F128H PIC32MX450F256L PIC32MX664F064L
PIC32MX130F064B PIC32MX230F064C PIC32MX340F128L PIC32MX460F256L PIC32MX664F128H
PIC32MX130F064C PIC32MX230F064D PIC32MX340F256H PIC32MX460F512L PIC32MX664F128L
PIC32MX130F064D PIC32MX230F128H PIC32MX340F512H PIC32MX470F512H PIC32MX675F256H
PIC32MX130F128H PIC32MX230F128L PIC32MX350F128H PIC32MX470F512L PIC32MX675F256L
PIC32MX130F128L PIC32MX230F256B PIC32MX350F128L PIC32MX470F512LB PIC32MX675F512H
PIC32MX130F256B PIC32MX230F256D PIC32MX350F256H PIC32MX530F128H PIC32MX675F512L
PIC32MX130F256D PIC32MX250F128B PIC32MX350F256L PIC32MX530F128L PIC32MX695F512H
PIC32MX150F128B PIC32MX250F128C PIC32MX360F256L PIC32MX534F064H PIC32MX695F512L
PIC32MX150F128C PIC32MX250F128D PIC32MX360F512L PIC32MX534F064L PIC32MX764F128H
PIC32MX150F128D PIC32MX250F256H PIC32MX370F512H PIC32MX550F256H PIC32MX764F128L
PIC32MX150F256H PIC32MX250F256L PIC32MX370F512L PIC32MX550F256L PIC32MX775F256H
PIC32MX150F256L PIC32MX270F256B PIC32MX420F032H PIC32MX564F064H PIC32MX775F256L
PIC32MX170F256B PIC32MX270F256D PIC32MX430F064H PIC32MX564F064L PIC32MX775F512H
PIC32MX170F256D PIC32MX270F256DB PIC32MX430F064L PIC32MX564F128H PIC32MX775F512L
PIC32MX170F512H PIC32MX270F512H PIC32MX440F128H PIC32MX564F128L PIC32MX795F512H
PIC32MX170F512L PIC32MX270F512L PIC32MX440F128L PIC32MX570F512H PIC32MX795F512L

MZ CHIPS:

CHIP NAME CHIP NAME CHIP NAME CHIP NAME
PIC32MZ0512EFE064 PIC32MZ1024EFE064 PIC32MZ1024EFH064 PIC32MZ2048EFG064
PIC32MZ0512EFE100 PIC32MZ1024EFE100 PIC32MZ1024EFH100 PIC32MZ2048EFG100
PIC32MZ0512EFE124 PIC32MZ1024EFE124 PIC32MZ1024EFH124 PIC32MZ2048EFG124
PIC32MZ0512EFE144 PIC32MZ1024EFE144 PIC32MZ1024EFH144 PIC32MZ2048EFG144
PIC32MZ0512EFF064 PIC32MZ1024EFF064 PIC32MZ1024EFK064 PIC32MZ2048EFH064
PIC32MZ0512EFF100 PIC32MZ1024EFF100 PIC32MZ1024EFK100 PIC32MZ2048EFH100
PIC32MZ0512EFF124 PIC32MZ1024EFF124 PIC32MZ1024EFK124 PIC32MZ2048EFH124
PIC32MZ0512EFF144 PIC32MZ1024EFF144 PIC32MZ1024EFK144 PIC32MZ2048EFH144
PIC32MZ0512EFK064 PIC32MZ1024EFG064 PIC32MZ1024EFM064 PIC32MZ2048EFM064
PIC32MZ0512EFK100 PIC32MZ1024EFG100 PIC32MZ1024EFM100 PIC32MZ2048EFM100
PIC32MZ0512EFK124 PIC32MZ1024EFG124 PIC32MZ1024EFM124 PIC32MZ2048EFM124
PIC32MZ0512EFK144 PIC32MZ1024EFG144 PIC32MZ1024EFM144 PIC32MZ2048EFM144

Supported modules:

  1. ADC
    • Full module support
    • Note --> PIC32 MX chips have a fixed resolution of 10-bit (hw specific)
  2. SPI
    • Full module support
  3. UART
    • Full module support
    • Implemented using interrupts
  4. I2C
    • Full module support
  5. PWM
    • Full module support
  6. GPIO
    • Full module support

2.1.0 NEW HARDWARE

  1. Fusion for PIC32 v8
    • Added adequate board definition files
    • Updated adequate manifest files
    • Configuration files updated
  2. EasyPIC Fusion v7
    • Added adequate board definition files
    • Updated adequate manifest files
    • Configuration files updated
  3. PIC32MX Clicker
    • Added adequate board definition files
    • Updated adequate manifest files
    • Configuration files updated
  4. PIC32MZ Clicker
    • Added adequate board definition files
    • Updated adequate manifest files
    • Configuration files updated
  5. Clicker 2 for PIC32MX
    • Added adequate board definition files
    • Updated adequate manifest files
    • Configuration files updated
  6. Clicker 2 for PIC32MZ
    • Added adequate board definition files
    • Updated adequate manifest files
    • Configuration files updated
  7. Flip&Click PIC32MZ
    • Added adequate board definition files
    • Updated adequate manifest files
    • Configuration files updated

Config files added for adequate NEW boards.

2.1.0 DEVELOPMENT KIT PACKAGE

Updated mikroSDK development kit to follow added hardware.

2.1.0 Fixes

  1. hal_ll_bit_control.h

2.1.0 Improvements

  1. Updated all ADC memake files
    • Default resolution is now dependent on adequate python regex
  2. Clicker 2 for PIC18FK
    • Default UART board pins changed to USB connector
    • Pins are now RC0 and RC1
  3. All ADC module resolutions are now set to hardware specific values

2.1.0 Git relevant updates

  1. CODE_OF_CONDUCT.md added
  2. CONTRIBUTING.md added
  3. AUTHORS.md updated( added contributors )
  4. Templates added

2.1.0 Collaborators

We would like to thank the following people for contributing:

BACK TO TOP OF 2.1.0


BACK TO TOP


v2.0.3

  • released: 2021-01-28

2.0.3 Changes

  • Added support for new hardware
  • Updated relevant manifest files
  • Updated relevant development kit package
  • Updated SPI, I2C and PPS libraries

Curiosity HPC is now supported in mikroSDK 2.0. Clicker 2 for STM32/PIC18FJ/PIC18FK is now supported in mikroSDK 2.0.

Added support for PIC18F47Q10 chip.

Added adequate board definition files for Curiosity HPC board. Added adequate board definition files for Clicker 2 for STM32. Added adequate board definition files for Clicker 2 for PIC18FJ. Added adequate board definition files for Clicker 2 for PIC18FK.

Config files added for adequate NEW boards.

Updated mikroSDK development kit to follow added hardware.

2.0.3 Fixes

  • UNI Clicker renamed to follow naming convention
  • low level PPS implementation ( PIC chips )
    • Applies to all PIC chips
    • Updated map sizes to 2 bytes
    • Some chips have more than 255 PPS pin functionalities, hence the map needs to be bigger

NOTE: PPS wasn't being set correctly for PIC18xxxK40 chips. Applied PPS fix covers this issue.

2.0.3 Improvements

  • low level SPI implementation ( PIC chips )

    • Setting SCK pin as both digital input/output is required
    • Documentation page 444 for more information
    • In Master mode the clock signal output to the SCK pin is also the clock signal input to the peripheral. The pin selected for output with the RxyPPS register must also be selected as the peripheral input with the SSPxCLKPPS register. The pin that is selected using the SSPxCLKPPS register should also be made a digital I/O. This is done by clearing the corresponding ANSEL bit.
  • low level I2C implementation ( PIC chips )

    • Bidirectional pins
    • Documentation page 289 for more information
      • PPS selections for peripherals with bidirectional signals on a single pin must be made so that the PPS input and PPS output select the same pin

BACK TO TOP OF 2.0.3


BACK TO TOP


v2.0.2

  • released: 2020-12-30

2.0.2 Changes

  • Added support for new hardware
  • Updated relevant manifest files
  • Updated relevant development kit package

Clicker 4 for STM32 is now supported in mikroSDK 2.0.

Added adequate board definition files for Clicker 4 for STM32.

Updated mikroSDK development kit to follow added hardware.

2.0.2 Fixes

  • mcu_definitions ( PIC chips )
    • Setting pins as digital/analog
    • Documentation page 431 is at fault
    • Changed setting ANCONx register bits appropriately
      • RA4 pin ( ANCON1 bit 4, not ANCON1 bit 6 )
      • RA5 pin ( ANCON1 bit 5, not ANCON1 bit 4 )
      • RF2 pin ( ANCON1 bit 6, not ANCON1 bit 7 )
      • RF5 pin ( ANCON2 bit 1, not ANCON2 bit 2 )
      • RF6 pin ( ANCON2 bit 2, not ANCON2 bit 3 )
      • RG4 pin ( ANCON2 bit 7, not ANCON3 bit 0 )

Fix applied to following chips:

  • PIC18F97J94
  • PIC18F87J94
  • PIC18F67J94
  • PIC18F96J94
  • PIC18F86J94
  • PIC18F66J94
  • PIC18F95J94
  • PIC18F85J94
  • PIC18F65J94

BACK TO TOP OF 2.0.2


BACK TO TOP


v2.0.1

  • released: 2020-12-11

2.0.1 Changes

  • Added support for new hardware
  • Updated relevant manifest files
  • Updated relevant development kit package

MCU CARD 11 FOR PIC is now supported in mikroSDK 2.0.

Added following PIC chips:

Added adequate board definition files for MCU CARD 11 FOR PIC.

Updated mikroSDK development kit to follow added hardware.

2.0.1 Fixes

  • HAL GPIO low level ( PIC chips )
    • HAL GPIO low level PIC implementation now doesn't change previous state of LATCH registers.

BACK TO TOP OF 2.0.1


BACK TO TOP


v2.0.0

  • released: 2020-10-02

INITIAL RELEASE.


BACK TO TOP