Skip to content
This repository was archived by the owner on Jan 7, 2019. It is now read-only.

Commit 01ca78a

Browse files
committed
Update for 2017q4 release.
1 parent 42837c7 commit 01ca78a

4 files changed

Lines changed: 181 additions & 8 deletions

File tree

.mailmap

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
Andre Gilerson <andre.gilerson@gmail.com>
12
Antal Szabó <szabo.antal.92@gmail.com>
23
Arjun Sarin <arjun.sarin@rwth.aachen.de>
34
Carl Treudler <cjt@users.sf.net>
@@ -30,3 +31,4 @@ Sascha Schade <stronglytyp3d@gmail.com> <stronly@typed.nan>
3031
Tarik TIRE <kronos@aspbooster.com>
3132
Thorsten Lajewski <thorsten.lajewski@rwth-aachen.de>
3233
Tomasz Chyrowicz <tomasz.chyrowicz@gmail.com>
34+
Álan Crístoffer <acristoffers@gmail.com>

AUTHORS

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
Andre Gilerson (@AndreGilerson)
12
Antal Szabó (@Sh4rK)
23
Arjun Sarin
34
Carl Treudler (@cajt)
@@ -23,3 +24,4 @@ Sascha Schade (@strongly-typed)
2324
Tarik TIRE (@7Kronos)
2425
Thorsten Lajewski (@TheTh0r)
2526
Tomasz Chyrowicz (@tomchy)
27+
Álan Crístoffer (@acristoffers)

CHANGELOG.md

Lines changed: 174 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,150 @@ pay attention to. Medium impact changes are also worth looking at.
5050

5151
</details>
5252

53+
## 2018-01-07: 2017q4 release
54+
55+
This release covers everything from the 2017q3 release on 2017-10-01 and has been
56+
tested with avr-gcc v5.4.0 from Atmel and arm-none-eabi-gcc 2017q4 from Arm.
57+
58+
Breaking changes:
59+
60+
- No breaking changes.
61+
62+
Major features:
63+
64+
- SCons 3 and Python 3 support for built tools
65+
- All targets build with C++14 by default
66+
- Rosserial support
67+
- LPC support (revival)
68+
69+
Major fixes:
70+
71+
- Fix the I2C driver on STM32L0/L4 for writes/reads > 255 bytes.
72+
- Fix matrix multiplication and LU decomposition
73+
- Fix `GpioPort` setOutput()/setInput()/configure() on STM32
74+
- Fix Hd44780 initialization for 4-bit bus
75+
- Fix GCC7-specific compile errors and warnings
76+
77+
Known bugs:
78+
79+
- xpcc may generate separate IRQ handlers for shared interrupts. See [#88][].
80+
- GPIO `connect` on STM32F1 is still broken. See [#178][] for discussion.
81+
The API from MODM will not be backported to xpcc however.
82+
- STM32F107 does not compile due to the HAL trying to remap USB. See [#268][].
83+
- SCons build system emits multiple non-critical warnings. See [#286][].
84+
- avr-gcc 7 complains about dynamic initialization put into program memory area. See [#314][].
85+
86+
New development board targets:
87+
88+
- No new development board targets
89+
90+
New device drivers:
91+
92+
- No new device drivers
93+
94+
Many thanks to all our contributors.
95+
A special shoutout to first timers (🎉🎊):
96+
97+
- Álan Crístoffer ([@acristoffers][]) 🎉🎊
98+
- Andre Gilerson ([@AndreGilerson][]) 🎉🎊
99+
- Carl Treudler ([@cajt][])
100+
- Christopher Durand ([@chris-durand][])
101+
- Marten Junga ([@Maju-Ketchup][])
102+
- Michael Thies ([@mhthies][])
103+
- Niklas Hauser ([@salkinium][])
104+
- Raphael Lehmann ([@rleh][])
105+
- Sascha Schade ([@strongly-typed][])
106+
107+
PR [#325][] -> [2017q4][].
108+
109+
<details>
110+
<summary>Detailed changelog</summary>
111+
112+
#### 2018-01-07: Fix HD44780 initialization for 4-bit bus
113+
114+
Adds missing bitshift to write the correct nibble to enable 4-bit mode.
115+
116+
PR [#326][] -> [42837c7][] with low impact on HD44780 driver.
117+
Tested in hardware by [@acristoffers][].
118+
119+
#### 2018-01-07: Fix GpioPort setOutput()/setInput()/configure() on STM32
120+
121+
Fixes wrong offset of a port mask used to configure output, input and pullups.
122+
123+
PR ? -> [6328b4a][] with low impact on STM32 targets.
124+
Tested in hardware by [@salkinium][].
125+
126+
#### 2018-01-07: Update CMSIS headers for STM32
127+
128+
PR [#324][] -> [857e514][] with **medium impact** on STM32 targets.
129+
Tested in hardware by [@salkinium][].
130+
131+
#### 2018-01-03: Use C++ stdlib instead of boost for hosted RTOS
132+
133+
Replaces the hosted implementation of our RTOS interface with the C++ stdlib to reduce our dependence on boost for threading.
134+
135+
PR [#322][] -> [5ef8009][] with low impact on hosted targets.
136+
137+
#### 2018-01-03: Python 3 support for SConscripts and related tools
138+
139+
SCons 3.0 features support for both Python 3.5+ and Python 2.7.
140+
These changes make all build and tool scripts compatible with
141+
both versions and adapt the CI systems too.
142+
143+
PR [#297][] -> [3b47fa5][] with low impact on all build tools.
144+
145+
#### 2017-12-20: Enable C++14 for all targets by default
146+
147+
This is possible since Atmel's offical avr-gcc is now >= v5.4.0.
148+
149+
PR [#320][] -> [68e73b3][] with low impact on all targets.
150+
151+
#### 2017-12-19: Fix matrix multiplication and LU-decomposition
152+
153+
Matrix height and width parameters were switched.
154+
155+
PR [#318][] -> [c4ed672][] with **medium impact** on matrix math.
156+
Tested in hardware by [@Maju-Ketchup][].
157+
158+
#### 2017-12-18: Fix printing of uint64_t in iostream
159+
160+
Only the lower 32 bits of an uint64_t were shown in iostream.
161+
162+
PR [#315][] -> [2c898ae][] with **medium impact** on printing 64-bit numbers.
163+
Tested in hardware by [@Maju-Ketchup][].
164+
165+
#### 2017-11-09: Add rosserial to communicate with ROS
166+
167+
Allows using xpcc for embedded sensor aquisition and interacting with a ROS robot across a serial link via ROS messages.
168+
169+
PR [#306][] -> [78c3ae2][].
170+
Tested in hardware by [@strongly-typed][].
171+
172+
#### 2017-10-27: Revive LPC11C24 with GPIO, UART and CAN
173+
174+
"out of curiosity"
175+
176+
PR [#305][] -> [48d60e2][] with **medium impact** on LPC targets.
177+
Tested in hardware by [@strongly-typed][].
178+
179+
#### 2017-10-24: Fix negative temperatures and round integer for LTC298x
180+
181+
PR [#301][] -> [6aee411][] with **medium impact** on negative LTC298x data.
182+
Tested in hardware by [@rleh][].
183+
184+
#### 2017-10-15: Add CircleCI integration
185+
186+
PR [#298][] -> [c5f8170][].
187+
188+
#### 2017-10-12: Fix the I2C on STM32L4
189+
190+
Correctly generates restart condition on writes > 255 bytes.
191+
192+
PR [#299][] -> [3d9d80f][] with low impact on STM32L0/L4 targets.
193+
Tested in hardware by [@strongly-typed][].
194+
195+
</details>
196+
53197

54198
## 2017-10-01: 2017q3 release
55199

@@ -810,9 +954,12 @@ we have to do it manually. Hooray for technology.
810954
[2017q1]: https://github.com/roboterclubaachen/xpcc/releases/tag/2017q1
811955
[2017q2]: https://github.com/roboterclubaachen/xpcc/releases/tag/2017q2
812956
[2017q3]: https://github.com/roboterclubaachen/xpcc/releases/tag/2017q3
957+
[2017q4]: https://github.com/roboterclubaachen/xpcc/releases/tag/2017q4
813958

814959
<!-- Contributors -->
815960
[@7Kronos]: https://github.com/7Kronos
961+
[@acristoffers]: https://github.com/acristoffers
962+
[@AndreGilerson]: https://github.com/AndreGilerson
816963
[@cajt]: https://github.com/cajt
817964
[@chris-durand]: https://github.com/chris-durand
818965
[@daniel-k]: https://github.com/daniel-k
@@ -840,30 +987,23 @@ we have to do it manually. Hooray for technology.
840987
[#147]: https://github.com/roboterclubaachen/xpcc/pull/147
841988
[#154]: https://github.com/roboterclubaachen/xpcc/pull/154
842989
[#155]: https://github.com/roboterclubaachen/xpcc/pull/155
843-
[#155]: https://github.com/roboterclubaachen/xpcc/pull/155
844-
[#155]: https://github.com/roboterclubaachen/xpcc/pull/155
845990
[#165]: https://github.com/roboterclubaachen/xpcc/pull/165
846991
[#167]: https://github.com/roboterclubaachen/xpcc/pull/167
847992
[#168]: https://github.com/roboterclubaachen/xpcc/pull/168
848993
[#173]: https://github.com/roboterclubaachen/xpcc/pull/173
849-
[#173]: https://github.com/roboterclubaachen/xpcc/pull/173
850994
[#175]: https://github.com/roboterclubaachen/xpcc/pull/175
851995
[#176]: https://github.com/roboterclubaachen/xpcc/pull/176
852996
[#178]: https://github.com/roboterclubaachen/xpcc/pull/178
853-
[#178]: https://github.com/roboterclubaachen/xpcc/pull/178
854997
[#179]: https://github.com/roboterclubaachen/xpcc/pull/179
855998
[#180]: https://github.com/roboterclubaachen/xpcc/pull/180
856999
[#182]: https://github.com/roboterclubaachen/xpcc/pull/182
8571000
[#183]: https://github.com/roboterclubaachen/xpcc/pull/183
8581001
[#185]: https://github.com/roboterclubaachen/xpcc/pull/185
859-
[#185]: https://github.com/roboterclubaachen/xpcc/pull/185
8601002
[#186]: https://github.com/roboterclubaachen/xpcc/pull/186
8611003
[#187]: https://github.com/roboterclubaachen/xpcc/pull/187
8621004
[#188]: https://github.com/roboterclubaachen/xpcc/pull/188
8631005
[#189]: https://github.com/roboterclubaachen/xpcc/pull/189
8641006
[#194]: https://github.com/roboterclubaachen/xpcc/pull/194
865-
[#194]: https://github.com/roboterclubaachen/xpcc/pull/194
866-
[#194]: https://github.com/roboterclubaachen/xpcc/pull/194
8671007
[#195]: https://github.com/roboterclubaachen/xpcc/pull/195
8681008
[#196]: https://github.com/roboterclubaachen/xpcc/pull/196
8691009
[#202]: https://github.com/roboterclubaachen/xpcc/pull/202
@@ -905,6 +1045,20 @@ we have to do it manually. Hooray for technology.
9051045
[#293]: https://github.com/roboterclubaachen/xpcc/pull/293
9061046
[#295]: https://github.com/roboterclubaachen/xpcc/pull/295
9071047
[#296]: https://github.com/roboterclubaachen/xpcc/pull/296
1048+
[#297]: https://github.com/roboterclubaachen/xpcc/pull/297
1049+
[#298]: https://github.com/roboterclubaachen/xpcc/pull/298
1050+
[#299]: https://github.com/roboterclubaachen/xpcc/pull/299
1051+
[#301]: https://github.com/roboterclubaachen/xpcc/pull/301
1052+
[#305]: https://github.com/roboterclubaachen/xpcc/pull/305
1053+
[#306]: https://github.com/roboterclubaachen/xpcc/pull/306
1054+
[#314]: https://github.com/roboterclubaachen/xpcc/pull/314
1055+
[#315]: https://github.com/roboterclubaachen/xpcc/pull/315
1056+
[#318]: https://github.com/roboterclubaachen/xpcc/pull/318
1057+
[#320]: https://github.com/roboterclubaachen/xpcc/pull/320
1058+
[#322]: https://github.com/roboterclubaachen/xpcc/pull/322
1059+
[#324]: https://github.com/roboterclubaachen/xpcc/pull/324
1060+
[#325]: https://github.com/roboterclubaachen/xpcc/pull/325
1061+
[#326]: https://github.com/roboterclubaachen/xpcc/pull/326
9081062

9091063
<!-- Commits -->
9101064
[0118a13]: https://github.com/roboterclubaachen/xpcc/commit/0118a13
@@ -919,25 +1073,36 @@ we have to do it manually. Hooray for technology.
9191073
[2504682]: https://github.com/roboterclubaachen/xpcc/commit/2504682
9201074
[26471ab]: https://github.com/roboterclubaachen/xpcc/commit/26471ab
9211075
[29c8905]: https://github.com/roboterclubaachen/xpcc/commit/29c8905
1076+
[2c898ae]: https://github.com/roboterclubaachen/xpcc/commit/2c898ae
9221077
[3992534]: https://github.com/roboterclubaachen/xpcc/commit/3992534
1078+
[3b47fa5]: https://github.com/roboterclubaachen/xpcc/commit/3b47fa5
9231079
[3c7cd31]: https://github.com/roboterclubaachen/xpcc/commit/3c7cd31
1080+
[3d9d80f]: https://github.com/roboterclubaachen/xpcc/commit/3d9d80f
9241081
[3f50e1d]: https://github.com/roboterclubaachen/xpcc/commit/3f50e1d
9251082
[408c309]: https://github.com/roboterclubaachen/xpcc/commit/408c309
9261083
[40da657]: https://github.com/roboterclubaachen/xpcc/commit/40da657
9271084
[41ab22a]: https://github.com/roboterclubaachen/xpcc/commit/41ab22a
1085+
[42837c7]: https://github.com/roboterclubaachen/xpcc/commit/42837c7
1086+
[48d60e2]: https://github.com/roboterclubaachen/xpcc/commit/48d60e2
9281087
[51159ff]: https://github.com/roboterclubaachen/xpcc/commit/51159ff
9291088
[51491ad]: https://github.com/roboterclubaachen/xpcc/commit/51491ad
9301089
[553dceb]: https://github.com/roboterclubaachen/xpcc/commit/553dceb
9311090
[5e547ab]: https://github.com/roboterclubaachen/xpcc/commit/5e547ab
1091+
[5ef8009]: https://github.com/roboterclubaachen/xpcc/commit/5ef8009
9321092
[5f5934a]: https://github.com/roboterclubaachen/xpcc/commit/5f5934a
1093+
[6328b4a]: https://github.com/roboterclubaachen/xpcc/commit/6328b4a
9331094
[637e074]: https://github.com/roboterclubaachen/xpcc/commit/637e074
9341095
[63ad1d3]: https://github.com/roboterclubaachen/xpcc/commit/63ad1d3
9351096
[680c92a]: https://github.com/roboterclubaachen/xpcc/commit/680c92a
9361097
[68b904e]: https://github.com/roboterclubaachen/xpcc/commit/68b904e
1098+
[68e73b3]: https://github.com/roboterclubaachen/xpcc/commit/68e73b3
1099+
[6aee411]: https://github.com/roboterclubaachen/xpcc/commit/6aee411
9371100
[6c1a111]: https://github.com/roboterclubaachen/xpcc/commit/6c1a111
9381101
[7111cd3]: https://github.com/roboterclubaachen/xpcc/commit/7111cd3
1102+
[78c3ae2]: https://github.com/roboterclubaachen/xpcc/commit/78c3ae2
9391103
[7ab0132]: https://github.com/roboterclubaachen/xpcc/commit/7ab0132
9401104
[84d5bd0]: https://github.com/roboterclubaachen/xpcc/commit/84d5bd0
1105+
[857e514]: https://github.com/roboterclubaachen/xpcc/commit/857e514
9411106
[8cc5c78]: https://github.com/roboterclubaachen/xpcc/commit/8cc5c78
9421107
[8f9b154]: https://github.com/roboterclubaachen/xpcc/commit/8f9b154
9431108
[9018741]: https://github.com/roboterclubaachen/xpcc/commit/9018741
@@ -954,6 +1119,8 @@ we have to do it manually. Hooray for technology.
9541119
[b77294e]: https://github.com/roboterclubaachen/xpcc/commit/b77294e
9551120
[bb3fa3a]: https://github.com/roboterclubaachen/xpcc/commit/bb3fa3a
9561121
[c12a69b]: https://github.com/roboterclubaachen/xpcc/commit/c12a69b
1122+
[c4ed672]: https://github.com/roboterclubaachen/xpcc/commit/c4ed672
1123+
[c5f8170]: https://github.com/roboterclubaachen/xpcc/commit/c5f8170
9571124
[c605416]: https://github.com/roboterclubaachen/xpcc/commit/c605416
9581125
[c7adb48]: https://github.com/roboterclubaachen/xpcc/commit/c7adb48
9591126
[cb0a11e]: https://github.com/roboterclubaachen/xpcc/commit/cb0a11e

tools/authors.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
import argparse
1313

1414
author_handles = {
15+
"Andre Gilerson": "AndreGilerson",
1516
"Antal Szabó": "Sh4rK",
1617
"Arjun Sarin": None,
1718
"Carl Treudler": "cajt",
@@ -37,6 +38,7 @@
3738
"Tarik TIRE": "7Kronos",
3839
"Thorsten Lajewski": "TheTh0r",
3940
"Tomasz Chyrowicz": "tomchy",
41+
"Álan Crístoffer": "acristoffers",
4042
}
4143

4244
def get_author_log(since = None, until = None, handles = True, count = False):
@@ -98,6 +100,6 @@ def get_author_log(since = None, until = None, handles = True, count = False):
98100
authors = []
99101
for author in log_authors:
100102
if any(a in author for a in new_authors):
101-
author += "" # " 🎉🎊"
103+
author += u" 🎉🎊"
102104
authors.append(author)
103105
print("\n".join(authors))

0 commit comments

Comments
 (0)