Releases: roboterclubaachen/xpcc
2018q2 release
This release covers everything from the 2018q1 release on 2018-04-05 and has been
tested with avr-gcc v7.3.0 and arm-none-eabi-gcc 2018q2 from Arm.
Breaking changes:
- No breaking changes.
Major features:
- Shared USART IRQ implementation for STM32F0/L0, fixes #88.
- Generic constexpr CAN bit timing calculations
Major fixes:
- Force UTF-8 encoding on Jinja templates, fixes #345.
- Fix missing ASCR register for STM32L4 GPIO.
- Correct formatting of float NaN and +-Inf values.
- Fix
SoftwareSpiMaster::acquire()
function.
Known bugs:
- GPIO
connect
on STM32F1 is still broken. See #178 for discussion.
The API from MODM will not be backported to xpcc however. - STM32F107 does not compile due to the HAL trying to remap USB. See #268.
- SCons build system emits multiple non-critical warnings. See #286.
- avr-gcc 7 complains about dynamic initialization put into program memory area. See #314.
New development board targets:
- Nucleo-L432KC board as
nucleo_l432kc
. - Black Pill board as
stm32f103c8t6_black_pill
.
New device drivers:
- No new device drivers.
Many thanks to all our contributors:
A special shoutout to first timers (🎉🎊):
- Christopher Durand (@chris-durand)
- Lucas Mösch (@lmoesch) 🎉🎊
- Nick Sarten (@genbattle)
- Niklas Hauser (@salkinium)
- Raphael Lehmann (@rleh)
- Sascha Schade (@strongly-typed)
See our Changelog for more details.
2018q1 release
This release covers everything from the 2017q4 release on 2018-01-07 and has been tested with avr-gcc v7.2.0 and arm-none-eabi-gcc 2017q4 from Arm.
Breaking changes:
- No breaking changes.
Major features:
- ADC implementation for STM32F0
- Block device interface and implementations
- CMake wrapper generator
- STM32L4 PLL configuration
Major fixes:
- Better Python 2/3 compatibility
- Fix HD44780 timing
- Fix AMSYS5915 sensor readings computation
Known bugs:
- xpcc may generate separate IRQ handlers for shared interrupts. See #88.
- GPIO connect on STM32F1 is still broken. See #178 for discussion. The API from MODM will not be backported to xpcc however.
- STM32F107 does not compile due to the HAL trying to remap USB. See #268.
- SCons build system emits multiple non-critical warnings. See #286.
- avr-gcc 7 complains about dynamic initialization put into program memory area. See #314.
- Template encoding issues on Windows. See #345.
New development board targets:
- STM32F030F4P6 demo board as
stm32f030f4p6_demo_board
New device drivers:
- SPI Flash SST block device
- Memory block device
- File block device (hosted)
- Mirrored block device
Many thanks to all our contributors:
- Álan Crístoffer (@acristoffers)
- Antal Szabó (@Sh4rK)
- Christopher Durand (@chris-durand)
- Niklas Hauser (@salkinium)
- Raphael Lehmann (@rleh)
See our Changelog for more details.
2017q4 release
This release covers everything from the 2017q3 release on 2017-10-01 and has been
tested with avr-gcc v5.4.0 from Atmel and arm-none-eabi-gcc 2017q4 from Arm.
Breaking changes:
- No breaking changes.
Major features:
- SCons 3 and Python 3 support for built tools
- All targets build with C++14 by default
- Rosserial support
- LPC support (revival)
Major fixes:
- Fix the I2C driver on STM32L0/L4 for writes/reads > 255 bytes.
- Fix matrix multiplication and LU decomposition
- Fix
GpioPort
setOutput()/setInput()/configure() on STM32 - Fix Hd44780 initialization for 4-bit bus
- Fix GCC7-specific compile errors and warnings
Known bugs:
- xpcc may generate separate IRQ handlers for shared interrupts. See #88.
- GPIO
connect
on STM32F1 is still broken. See #178 for discussion.
The API from MODM will not be backported to xpcc however. - STM32F107 does not compile due to the HAL trying to remap USB. See #268.
- SCons build system emits multiple non-critical warnings. See #286.
- avr-gcc 7 complains about dynamic initialization put into program memory area. See #314.
New development board targets:
- No new development board targets
New device drivers:
- No new device drivers
Many thanks to all our contributors.
A special shoutout to first timers (🎉🎊):
- Álan Crístoffer (@acristoffers) 🎉🎊
- Andre Gilerson (@AndreGilerson) 🎉🎊
- Carl Treudler (@cajt)
- Christopher Durand (@chris-durand)
- Marten Junga (@Maju-Ketchup)
- Michael Thies (@mhthies)
- Niklas Hauser (@salkinium)
- Raphael Lehmann (@rleh)
- Sascha Schade (@strongly-typed)
See our Changelog for more details.
2017q3 release
This release covers everything from the 2017q2 release on 2017-07-02 and has been
tested with avr-gcc v5.4.0 from Atmel and arm-none-eabi-gcc 2017q2 from Arm.
Note, that Arm did not release 6-2017-q3-update for their toolchain this quarter.
Breaking changes:
- MCP2515 revival adds new
initialize
API
Major features:
- No major features
Major fixes:
- Fix pin remap access (MAPR2 register) for STM32F1 XL Density series
- Fix moving average for negative averages
- Fix printf format string type violations
Known bugs:
- xpcc may generate separate IRQ handlers for shared interrupts. See #88.
- GPIO
connect
on STM32F1 is still broken. See #178 for discussion.
The API from MODM will not be backported to xpcc however. - STM32L0/L4 hardware I2C driver has limitations on restart behaviors. See #255.
- STM32F107 does not compile due to the HAL trying to remap USB. See #268.
- SCons build system emits multiple non-critical warnings. See #286.
- SCons 3.0 was released, however, our build system is not fully compatible. See #293.
New development board targets:
- OLIMEXINO-STM32 as
olimexino_stm32
- STM32F051R-DISCO as
stm32f0_discovery
New device drivers:
- AD79x8
- LTC298x
- AMSYS5915
- MCP2515 (revived)
Many thanks to all our contributors.
A special shoutout to first timers (🎉🎊):
- Carl Treudler (@cajt) 🎉🎊
- Christopher Durand (@chris-durand)
- Daniel Krebs (@daniel-k)
- Marten Junga (@Maju-Ketchup) 🎉🎊
- Michael Thies (@mhthies)
- Niklas Hauser (@salkinium)
- Raphael Lehmann (@rleh)
- Sascha Schade (@strongly-typed)
See our Changelog for more details.
2017q2 release
This release covers everything from the 2017q1 release on 2017-04-05 and has been
tested with avr-gcc v5.4.0 from Atmel and arm-none-eabi-gcc 2017q2 from ARM.
Breaking changes:
- No breaking changes
Major features:
- STM32L4 target support and drivers
- Improve assert implementation and make use of them
Major fixes:
- Fix issues and warnings in release tests
- Fix wrong
ns_per_loop
rounding in board definitions
Known bugs:
- xpcc may generate separate IRQ handlers for shared interrupts. See #88.
- GPIO
connect
on STM32F1 is still broken. See #178 for discussion.
The API from MODM will not be backported to xpcc however. - STM32L0/L4 hardware I2C driver has limitations on restart behaviors. See #255.
New development board targets:
- NUCLEO-L476RG as
nucleo_l476rg
- STM32L476G-DISCO as
stm32l476_discovery
New device drivers:
- DS1302
- TCS3472X
Many thanks to all our contributors of this release.
A special shoutout to first timers (🎉🎊):
- Arjun Sarin 🎉🎊
- Michael Thies (@mhthies)
- Niklas Hauser (@salkinium)
- Sascha Schade (@strongly-typed)
See our Changelog for more details.
2017q1 release
As this is our first official release it covers the last 12 months of
development since 2016-04-01.
Breaking changes:
- Fix implicit conversion of Flags
- Refactor
buffer
todisplay_buffer
inBufferedGraphicDisplay
- Fix spelling of
SpiMaster::acquire
- Namespace architecture/util.hpp macros
stm32f7_discovery
renamed tostm32f746g_discovery
Major features:
- Runtime error model using assertion handlers
- Memory traits to heap regions and allocators
- TLSF allocator
- Link against newlib-nosys and newlib-nano
- Unified interrupt declaration conventions
- Black Magic Probe programming support
- ARM Cortex-M7 with double precision FPU
- ZeroMQ as transport layer for XPCC
- Update STM32 header and device files
- Namespace architecture/util.hpp macros
- Coding conventions
- Porting guide
Major fixes:
- Fix implicit conversion of Flags
- Fix I2C master reception of 2B transfers
- Fix spelling of
SpiMaster::acquire
Known bugs:
- xpcc may generate separate IRQ handlers for shared interrupts. See #88.
- GPIO
connect
on STM32F1 is broken. They can be remapped only in groups,
however, the API allows invalid remapping. This cannot be fixed without
introducing a new API for that. See #178 for discussion.
A solution has been tested for modm, but isn't ready for xpcc.
New development board targets:
- NUCLEO-F031K6 as
nucleo_f031k6
- NUCLEO-F303K8 as
nucleo_f303k8
- NUCLEO-F401RE as
nucleo_f401re
- NUCLEO-F411RE as
nucleo_f411re
- NUCLEO-F429ZI as
nucleo_f429zi
- STM32F769I-DISCO as
stm32f769i_discovery
- STM32F469I-DISCO as
stm32f469_discovery
- STM32F103 board "Blue Pill" as
stm32f103c8t6_blue_pill
New device drivers:
- VL53L0X
- BME280
- ADNS9800
- FT6x06
Many thanks to all our contributors.
A special shoutout to first timers (🎉🎊):
- Antal Szabó (@Sh4rK)
- Christopher Durand (@chris-durand) 🎉🎊
- Daniel Krebs (@daniel-k)
- Fabian Greif (@dergraaf)
- Georgi Grinshpun (@georgi-g)
- Julia Gutheil 🎉🎊
- Kevin Läufer (@ekiwi)
- Michael Thies (@mhthies) 🎉🎊
- Nick Sarten (@genbattle) 🎉🎊
- Niklas Hauser (@salkinium)
- Raphael Lehmann (@rleh) 🎉🎊
- Sascha Schade (@strongly-typed)
- Tarik TIRE (@7Kronos) 🎉🎊
- Tomasz Chyrowicz (@tomchy) 🎉🎊
See our Changelog for more details.