CondVar timeout feature deactivated by default.
Further removed any dependencies on thread registry in favor of thread hierarchy.
Disabled the ChibiOS thread registry API.Code that required the thread registry before could be adapted to use the thread hierarchy instead.
AMiRo Modules: real-time capabilities analysed and timings set accordingly tight
Introduced a new system shell command 'module:spuload' to read out CPU load
All copyright forms updated to 2020.
Major overhaul of the shell.A new configuration option allows to set the shell history length.
introduced a new hook 'AMIROOS_CFG_SYSINFO_HOOK' to add module specific code when printing system information
introduced a switch test for the PowerManagement v1.2 module.
Moved the aos_alldconf.h file to the modules/ folder.
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.
MSI implemented
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
minor code optimizations to get rid or clang warnings
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
Introduced a new (preliminary) test for the new DW1000v2 driver (WIP!).
Makefiles revisedAMiRo-LLD updated
added DW1000 test and demo on top of Light Ring module
moved hardware pacific function reset_DW1000() to module
Merge branch 'master' of http://openresearch.cit-ec.de/git/amiro-os.amiro-os
fixed some typos in comments
aosSysGetStdIntCallback() function renamed to aosSysGetStdExtiCallback()
Broken LightRing 1.2 module fixed (DW1000 test has been removed for now)
add DW1000 test
adapt sample of DW1000 with current format on NUCLEO_F103RB
slight cleanup to all chconf.h files
Updated AMiRo-BLT submodule and removed any code which was meant to ignore PAL initialization.Since all periphery (AHBx, APBx) is reset on startup of ChibiOS, any previous pin configuration is lost and can not be recovered in a trivial way.
Signed-off-by: Thomas Schöpping <tschoepp@cit-ec.uni-bielefeld.de>
QEI driver patch enhanced.The MODULE_INIT_HAL_EXTRA() hook is not required anymore for the DiWheelDrive modules.
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...
LightRing 1.2: Disabled 4.2V power switch due to a hardware bug.
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
Introduced the NUCLEO-F767ZI (STM32F767 Nucleo-144 devboard) module.
Expected jitter was increased to 50 us again, since slow MCUs failed even with 30 us.
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.
aos_status_t type optimized for smaller memory footprint.
Fixed some erroneous module versions.
Slightly increased expected jitter (20us -> 30us) due to timing issues on STM32F1 MCUs.
Introduced most drivers and according unit tests to the LightRing v1.2 module.
Initial support for the new LightRing v1.2 module (not all hardware supported yet).
Introduced DiWheelDrive v1.2 module.Note that the new BNO055 IMU is not available yet.
Introduced PowerManagement v1.2 module.Also adapted PowerManagement v1.1 and ADC unit test.
AMiRo-BLT and AMiRo-LLD updated as preparation for introduction of new AMiRo v1.2 modules.fixed typos.
NUCLEO-F103RB: fixed a typo
Update to the LLDs and the DW1000 unit test (removed deprecated files).
removed some redundant GCC optimization parameters
modified some Makefiles to properly use the BUILDDIR variable
Introduced the NUCLEO-F401RE module
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
Very minor enhancements.
reduced the CH_CFG_ST_TIMEDELTA value to 20us as it seems to be working fine with the new ChibiOS
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).
Makefiles enhanced: the targets 'all' and 'clean' will now be executed in parallel with as many threads as there are modules (= folders in modules/)
Reordered some configuration files.The BOARD_VERSION macro has been removed. Instead the version is now encoded in the other BOARD_XXX macros.
Applied AMiRo-OS header to sime files, which still held the ChibiOS header.
DW1000 unit test updated
fixed naming
NUCLEO-L476RH: fixed I2C initialization for MPU6050 unit test
Added DW1000 demo app on top of NUCLEO_F103RB example
Updated AMiRo-LLD and adapted the MPU6050 unit test accordingly.NOTE: Unfortunately, the unit test fails =(
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.
Renamed two modules:- STM32L476RG-NUCLEO64 > NUCLEO-L476RG STM32F4Discovery -> STM32F407G-DISC1
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.
Introduced support the STM32F103 NUCLEO module.
cleanup of the STM32L4 module after the recent introduction to the master branch
Completely disabled debug output for now, due to incompatibility issues.
minor enhancements
Merge remote-tracking branch 'origin/stm32l4'
STM32L4: Makefile now supports OpenOCD; Button polarity fixed
Makefiles slightly enhanced
STM32F4Discovery: fixed an alignment error
renamed the STM32L4 module directory.
Cleanup of the STM32L4 module.Applied several recent changes in AMiRo-OS to this module.
Merge branch 'master' into stm32l4
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.