All copyright forms updated to 2020.
Major overhaul of the shell.A new configuration option allows to set the shell history length.
Updated AMiRo-LLD and applied to the new interface structure.
Makefile structure revised:- Module specific tests nor come with individual makefiles, which include the general test code.- Board configuration (e.g. connected breakout module) can now be set in Makefile or via CLI.
Merge branch 'master' into SSSPwoBLT
removed the CORTEX_VTOR_INIT macro from all chconf.h files since this setting is deprecated (information is now retrieved from linker files)
modified the structure of board.h and .c files to be consistent with ChibiOS
Renamed all GPIO related signals etc. from "...io..." to "...gpio..."
Shell is not implicitly enabled when tests are activated anymore.
All tests now come with a .mk file, so they can be included more easily for each module.
Several fixed to the recent SSSP overhaul
Major SSSP overhaul:- SSSP no works even without Bootloader (AMiRo-OS implements startup and shutdown phases)- MSI and calendar synchronization are currently not available (WIP)- lots of minor changes
Fixed a compatibility issue introduced by the recent modifications to the Makefiles
Makefiles revisedAMiRo-LLD updated
aosSysGetStdIntCallback() function renamed to aosSysGetStdExtiCallback()
slight cleanup to all chconf.h files
Massive overhaul:- updated to a new version of AMiRo-LLD- tests (formerly unit tests) are now split onto multiple parts: - there are "global" tests for each driver etc. - there is an individual part for each module, e.g. if there are multiple instances of the same periphery...
The TLC5947 unit test will now always take the same time, regardless the number of LEDs.Added the LIGHT_XLAT signal to LightRing v1.0 and v1.2 modules.
Introduced optional CH_CFG_ST_TIMEDELTA definition per module.If no value is specified by the module, a conservative fallback of 1000µs is set.
Enhanced the shell so that CTRL + arrow key will jump wordwise through the current input
Updated to AMiRo-LLD 1.1:- Implementation of periphAL has been modified accordingly.- GPIOs are not encoded as port/pad tuple, but as lines- Some unittests have been updated due to driver changes.
Fixed some erroneous module versions.
AMiRo-BLT and AMiRo-LLD updated as preparation for introduction of new AMiRo v1.2 modules.fixed typos.
removed some redundant GCC optimization parameters
Default shell configurations have been changed:Now the input line buffer can hold 128 characters (up from 64) and there can be up to 16 arguments per line (up from 4)
Changed the AMiRo-OS version back to 2.0.1 (from 2.1.0).This was done, because an increment in the minor version implies an API change, which is not present yet.
Enhanced the Makefiles to consistently use the BUIDDIR variable.
updated all aosconf.h files to AMiRo-OS 2.1
Fixed recently broken Makefiles (sry!)
Slightly optimized all Makefiles
ChibiOS updated to version stable_19.1.x.NOTE: ChibiOS 19.1.x seems to contain some issues as of now.
All preprocessor directives without arguments (e.g. #endif) are now followed by a comment, indicating where it belongs to (e.g. the preceding #if).
Reordered some configuration files.The BOARD_VERSION macro has been removed. Instead the version is now encoded in the other BOARD_XXX macros.
Enhanced the periphAL debug implementation to apply to tze new AMiRo-OS debug API
set the C standard to C17 (ISO), although this does not make any difference according to GCC documentation
Introduced the CORTEX_ENABLE_WFI_IDLE flag in all chconf.h files, so the MCUs will enter sleep mode whenever the system is idle.
updated AMiRo-LLD and applied all required changes to AMiRo-OS and all modules.
Enhanced and fixed several module specific files.
Enhanced the #include tree. 'amiroos.h' is now the central header, which includes all dependencies.
Changed all header guards so they will not use unserscores as pre- and postfix.
Makefiles slightly enhanced
Optimized the #include tree
Enhanced the AMiRo-OS configuration: When AMIROOS_CFG_TESTS_ENABLE is set, the shell is enabled implicitely by AMiRo-OS.Before, this logic was handled in the aosconf.h file.
Introduced a macro AOS_IOEVENT_FLAG() in aos_types.h.This macro acts similar to EVENT_MASK() and should help to simplify development.The new macro was applied to existing code wherever possible.
All board.mk files have been integrated into the module Makefiles.
Added C++ system calls to the build toolchain in order to make AMiRo-OS fully compatible with C++ code.
PowerManagement: Introduced a configuration (board.h) to select the attached sensor ring module.
Enhanced the main thread IO event configuration.Therefore a new macro AMIROOS_CFG_MAIN_LOOP_IOEVENT_MASK has been introduced.
updated all file headers to 2019
Removed modules/flash.mk since flashing procedures highly depend on hardware.
all halconf.h files: removed redundant HAL_USE_QEU settings
Introduced a switch to completely disable SSSP (thanks to S. Welzel)
Added ChibiOS license handling to the makefiles.
Minor fixes and enhancements.
removed ChibiOS dependencies from build-tree: C++ wrappers and shell
Removed the extension of the optional BUILDDIR variable in the module makefiles.
Minor optimizations regarding memory utilization.
Some minor fixes and enhancements.Most importantly, the expected jitter (CH_CFG_ST_TIMEDELTA) was increased form 20 to 50us.
removed the UWB module specific code from the LightRing
All contents of the os/ folder has been moved one directory up.
Reworked linker scripts.the os/hal/ directory was removed completely.Each module now has its own linker script, which again includes the fundamental liner scripts within ChibiOS.All makefiles have been adapted accordingly.
Review of the QEI driver patch (minor changes).
Added some basics to mask pads during GPIO initialization (wip)
add dw1000 unittest
Merge branch 'master' of http://openresearch.cit-ec.de/git/amiro-os.amiro-os
Reintroduced ChibiOS patch for non-DMA I2C access.Old patch could not be applied to latest version of ChibiOS anymore.
Doxygen file documentation and modules.
Major rework of the recent changes.- optimized interrupt system (removed aos_interrupt.h/c)- updated AMiRo-LLD submodule- updated all config files to match the latest templates by ChibiOS- fixed several issues regarding the new timer system (intervals)
Updated Chibi-OS to version 18.2 and adapted AMiRo-OS accordingly: - Switched to new time conversion macros - Use PAL for interrupts instead of the EXT Driver - Use new kernel tests
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
modified all relevant makefiles to adopt the new file structure
moved the /os/modles directory to /modules