Introduced an mechanism to measure clock skew during operation phase, if AMIROOS_CFG_PROFILE is enabled (non-master modules only).The low-pass filtered skew is printed via the module:info shell command.
RTC date/time is now synchronized on startup from the SSSP master module.Further changes: - several enhancements to the newly introduced module stack initialization procedure - several minor enhancements to core functionality
Introduced SSSP stage 3 of the startup phase (module stack initialization).
Several enhancements to memory structure, naming and code quality.AMiRo-OS is now prepared so the SSSP startup stage 3 (module stack initialization can be implemented).
Introduced the capability to set and get a date&time value via the shell.
prepended several macros with the 'AOS_' prefix
moved the /os/modles directory to /modules
cleaned up include tree
Added APPS- variables to all source types in the makefiles of all modules
PHONY added to relevant Makefiles
shell thread priority can now be configured via aosconf.h
enhanced hooks in aos_main.cpp: - INIT_HOOK_0 now supports optional arguments like all other hooks - new hook introduced to add custom includes - new hook introduced to add custom static variables - renamed hook for custom thread variables
The main.c was renamed to aos_main.cpp and will compiled as C++ file from now on.This allows to use full C++ capabilities when using any hooks.
1) enhancements of the makefiles: - replaced all absolute paths by relative paths - include directories now consistently do not have a trailing slash - it is now possible to specify a custom build directory by setting the BUILDDIR variable - updated C/C++ standard to C11 and C17 respectively (igrnore warnings caused by ChibiOS for now)...
FIX: AosShellChannel was not known in main.c if shell was disabled.
Introduced a common aos_chconf.h file, which is included by each chconf.h.The smart build feature was deactivated since it caused issues with this new structure.
AosShellChannel now contains a pointer to a BaseAsynchronousChannel instead of a AosIOCHannel.Fixed an issue with AosIOStreams as well as AosShellStreams regarding multiple reading/writing from/to channels.
Major overhaul to the I/O functionality:
The SequentialStremMultiplexer (SSM) has been replaced by AosIOStream.The AosIOStream class acts like a BaseSequentialStream but consists of multiple AosIOChannels.Each AosIOChannel again implements a BaseAsynchronousChannel and thus is a derived class of BaseSequentialStream as well....
Modified aos_unittest.h/.c files to prevent unnecessary includes.
slightly enhanced some of the makefiles
removed module specific configurations from the makefiles
Major overhaul to AMiRo-OS version 2.0.0