3.0.x stable branch

Stable and Unstable release events. This forum is NOT for support.
User avatar
Giovanni
Site Admin
Posts: 12742
Joined: Wed May 27, 2009 8:48 am
Location: Salerno, Italy
Has thanked: 693 times
Been thanked: 572 times
Contact:

3.0.x stable branch

Postby Giovanni » Sun Jul 12, 2015 12:46 pm

Hello,

Finally, after 3 years of development, ChibiOS 3.0.0 is here. The list of enhancements is huge.

ChibiOS 3.0 is now composed of several independent but inter-operable sub-projects: RT, NIL, HAL.

ChibiOS 3.0 general highlights

- New files tree organization makes the system more modular.
- A community-contributed code area is now part of the files architecture, it will allow for easier integration of contributed code without much screening.
- Improved startup files, scatter files and build system.
- New licensing options.
- Free ChibiStudio IDE support.

What's new in RT 3.0

- MISRA 2012 compliant.
- Entirely static for enhanced safety.
- System data is now encapsulated in a single "ch" global structure for enhanced safety.
- System integrity check runtime functionality for enhanced safety.
- Tick-less kernel mode helps implement ultra-low-power devices.
- High Resolution Virtual Timers module allows to specify very short intervals.
- High Resolution system time.
- Clock-cycle accurate Time Measurement module.
- Clock-cycle accurate polled delays.
- Statistic module provides high resolution measurement of threads, ISRs and critical zones.
- New recursive locks in addition to the classical critical zone primitives.
- New recursive mode for Mutexes.
- Enhanced suspend/resume mechanism for threads.
- CMSIS-compliant ARM Cortex-Mx port.
- CMSIS RTOS API available.
- Multi-compilers architecture for ports.
- Codebase now compatible with GCC link time optimizations.

What's new in HAL 3.0

- MISRA 2012 compliant.
- HAL is now entirely licensed under Apache 2.0 license.
- HAL has been decoupled from RT. It can now be adapted to any reasonable RTOS or even used with no RTOS at all thanks to a new abstraction layer named OSAL. OSAL implementations are provided for RT, NIL, bare metal ARM Cortex-Mx cores, bare metal Power e200z cores.
- New driver models for ST, I2S, DAC.
- Revamped ADC, ICU, PWM, RTC, SDC, USB drivers.
- Greatly improved STM32 family support, all sub-families have been added.
- Support for new families expanding (Kinetis, Tiva, SPC5xx, RL78, RX62N).
- Streams, channels, files and block devices abstract interfaces.

New addition NIL 1.0

- MISRA 2012 compliant.
- Entirely static for enhanced safety.
- No linked lists anywhere in the code for enhanced safety.
- System data is encapsulated in a single "nil" global structure for enhanced safety.
- Tick-less kernel mode helps implement ultra-low-power devices.
- Ultra compact kernel, well below 1kB in its maximum configuration.
- Upward compatible with RT, it implements a subset of the RT API.
- Reduced RAM usage, 20-28 bytes for task and just 4 bytes for a semaphore on 32 bits architectures, half of that on 8/16 bits architectures.
- ARM Cortex-Mx port based on CMSIS architecture.
- Multi-compilers architecture for ports.


Enjoy,
Giovanni

User avatar
Giovanni
Site Admin
Posts: 12742
Joined: Wed May 27, 2009 8:48 am
Location: Salerno, Italy
Has thanked: 693 times
Been thanked: 572 times
Contact:

Re: 3.0.0 stable branch

Postby Giovanni » Sun Aug 09, 2015 9:28 am

Hello,

ChibiOS 3.0.1 has been released. First maintenance release for 3.0x branch, his version fixes several minor bugs in STM32 support and in lwIP support code.

Code: Select all

*** 3.0.1 ***
- HAL: Fixed CEC clock cannot be disabled on STM32F0xx (bug #628).
- VAR: Fixed lwIP arch code breaks with a 16-bit systick timer (bug #627).
- HAL: Fixed broken MAC driver for STM32F107 (bug #626).
- NIL: Fixed missing configuration options from NIL PPC port (bug #625).
- HAL: Fixed wrong offset in STM32 DAC driver (bug #624).
- HAL: Fixed crash on STM32F030x4/6 devices (bug #623).
- HAL: Fixed duplicated doxygen tag in STM32F4xx hal_lld.h file (bug #621).
- HAL: Fixed STM32F042 registry error (bug #620).
- HAL: Fixed wrong check in canReceive() (bug #619).
- HAL: Fixed wrong EXTI[18] vector number on STM32F373 (bug #618).
- HAL: Fixed wrong check on STM32_LSE_ENABLED definition in STM32L1xx HAL port
       (bug #617).


Giovanni

User avatar
Giovanni
Site Admin
Posts: 12742
Joined: Wed May 27, 2009 8:48 am
Location: Salerno, Italy
Has thanked: 693 times
Been thanked: 572 times
Contact:

Re: 3.0.0 stable branch

Postby Giovanni » Sun Sep 20, 2015 10:46 am

Hello,

ChibiOS 3.0.2 has been released. Maintenance release, all known bugs have been fixed.

Code: Select all

*** 3.0.2 ***
- HAL: Fixed RT dependency in STM32 SDCv1 driver (bug #643).
- VAR: Fixed incorrect working area size in LwIP creation in demos (bug #642).
- HAL: Fixed error in hal_lld_f100.h checks (bug #641).
- HAL: Fixed volatile variable issue in I/O queues, both RT and HAL (bug #640).
- HAL: Fixed wrong DMA assignment for I2C1 in STM32F302xC registry (bug #637).
- HAL: Fixed missing timers 5, 6, 7, 10 & 11 from STM32L1 HAL port (bug #636).
- VAR: Fixed CRT0_CALL_DESTRUCTORS not utilized in crt0_v7m.s (bug #635).
- DEM: Fixed wrong ld file in STM32F072xB USB CDC demo (bug #634).
- NIL: Fixed wrong assertion in NIL chSemResetI() and NIL OSAL
       osalThreadDequeueAllI() (bug #633).
- RT:  Fixed problem with RT mutexes involving priority inheritance (bug #632).
- HAL: Fixed HAL to RT dependency in STM32 DAC driver (bug #631).
- HAL: Fixed problem with STM32 I2S driver restart (bug #630).
- NIL: Added polled delays required to fix bug #629.
- HAL: Fixed STM32F3xx ADC driver uses US2RTC directly (bug #629).


Giovanni

User avatar
Giovanni
Site Admin
Posts: 12742
Joined: Wed May 27, 2009 8:48 am
Location: Salerno, Italy
Has thanked: 693 times
Been thanked: 572 times
Contact:

Re: 3.0.0 stable branch

Postby Giovanni » Sun Nov 08, 2015 5:00 pm

Hello,

ChibiOS 3.0.3 has been released. Maintenance release, all known bugs have been fixed.

Code: Select all

*** 3.0.3 ***
- HAL: Fixed differences in STM32F3 ADC macro definitions (bug #665).
- HAL: Fixed RTC module loses day of week when converting (bug #664).
- HAL: Fixed invalid class type for sdPutWouldBlock() and sdGetWouldBlock()
       functions (bug #659).
- HAL: Fixed STM32L1xx HAL errors in comments (bug #657).
- HAL: Fixed STM32 USBv1 wrong buffer alignment (bug #656).
- HAL: Fixed Wrong vector name for STM32F3xx EXTI33 (bug #655).
- HAL: Fixed nvicEnableVector broken for Cortex-M0 (bug #654).
- HAL: Fixed missing RCC and ISR definitions for STM32F0xx timers (bug #651).
- HAL: Fixed incorrect compiler check in STM32 RTCv1 driver (bug #650).
- HAL: Fixed STM32F3xx HAL checking for non-existing macros (bug #648).
- HAL: Fixed error in STM32F030 EXT driver (bug #647).
- RT:  Fixed problem with chTimeIsWithin() (bug #646).
- VAR: Fixed _sbrk_r with incr == 0 should be valid (bug #645).
- RT:  Fixed issues in CMSIS RTOS interface (bug #644).
- HAL: Fixed rtcConvertDateTimeToFAT() incorrect conversion (bug #615).


Giovanni

User avatar
Giovanni
Site Admin
Posts: 12742
Joined: Wed May 27, 2009 8:48 am
Location: Salerno, Italy
Has thanked: 693 times
Been thanked: 572 times
Contact:

Re: 3.0.0 stable branch

Postby Giovanni » Sun Dec 13, 2015 10:02 am

Hello,

ChibiOS 3.0.4 has been released. Maintenance release, fixed several bugs in STM32 drivers.

Code: Select all

*** 3.0.4 ***
- HAL: Fixed STM32 ICU driver uses chSysLock and chSysUnlock (bug #681).
- HAL: Fixed wrong DMA priority assigned to STM32F3 ADC3&4 (bug #680).
- HAL: Fixed invalid DMA settings in STM32 DACv1 driver in dual mode
      (bug #677).
- HAL: Fixed usbStop() hangs in STM32 OTGv1 driver (bug #674).
- HAL: Fixed STM32 I2Cv2 driver fails on transfers greater than 255 bytes
       (bug #673).
- HAL: Fixed STM32 I2Cv2 DMA conflict (bug #671).
- HAL: Fixed invalid macro in STM32F0xx registry (bug #668).
- HAL: Fixed I2S clock selection not working in STM32F4xx HAL (bug #667).
- HAL: Fixed STM32 USBv1 broken isochronous endpoints (bug #662).
- HAL: Fixed STM32 USBv1 wrong multiplier when calculating descriptor address
       in BTABLE (bug #661).
- HAL: Fixed STM32 USBv1 does not make use of BTABLE_ADDR define(bug #660).


Giovanni

User avatar
Giovanni
Site Admin
Posts: 12742
Joined: Wed May 27, 2009 8:48 am
Location: Salerno, Italy
Has thanked: 693 times
Been thanked: 572 times
Contact:

Re: 3.0.0 stable branch

Postby Giovanni » Sat Jan 23, 2016 10:07 am

Hello,

Service Pack for branch 3.0.x. All known bugs have been fixed.

Code: Select all

*** 3.0.5 ***
- VAR: Fixed missing time convesion in lwIP arch module (bug #696).
- NIL: NIL_CFG_USE_EVENTS not properly checked in NIL (bug #694).
- RT:  Fixed ISR statistics are not updated from a critical zone in RT
       (bug #693).
- NIL: Fixed NIL test suite calls I and S functions outside critical zone
       (bug #692).
- NIL: Fixed protocol violation in NIL OSAL (bug #691).
- HAL: Fixed STM32 CAN driver always broadcasts tx complete for mailbox 1
       (bug #690).
- RT:  Fixed tm_stop - best case bug (bug #688).
- RT:  Fixed ARM port enforcing THUMB mode (bug #687).
- HAL: Fixed HAL drivers still calling RT functions (bug #686).
- HAL: Fixed Serial_USB improperly resets queues on stop (bug #685).
- HAL: Fixed chprintf() still calling RT functions (bug #684).
- ALL: Several minor documentation/formatting-related fixes.


Giovanni


Return to “Releases”

Who is online

Users browsing this forum: No registered users and 3 guests