Hi, welcome to the new and improved XPCC Developer Mailing List. Instead of 'Hello World', I am going to summarize our last developer meeting. A couple of talking points were discussed: 1. Coding Conventions, 2. Documentation Conventions, 3. Peripheral Interfaces, 4. Useful Examples, and 5. XPCC Website + API. 6. Next Gen XPCC ## Coding and Documentation Conventions The most significant changes are: - removing the license text from every file, - not indenting namespaces, - Doxygen: @ not \ The current coding and documentation conventions are documented here: https://github.com/roboterclubaachen/xpcc-doc/blob/master/source/developer/c... Once updated they are also displayed here: http://xpcc.kreatives-chaos.com/developer/coding_conventions.html ## Peripheral Interfaces There should be a distinction between platform independent interfaces, like Uart, Spi, I2C, and low-level refactoring help, which summarizes register access on one famliy. This caused confusion when developing these interfaces. We will revise SpiBlockMaster with a similar idea like I2cMaster and I2cDelegate. ## Useful Examples Currently the xpcc/examples folder in XPCC is more of a compilation check. Most of the code is undocumented, too complex to understand and does not advocate the core concepts of XPCC. Therefore the content of the examples will be (partly) moved into xpcc/release and new examples with thorough comments and explanations will be put in there. It should also include a description of what will happen on the hardware (ie. "LED1 is supposed to blink"). These examples will be structured by: - hardware - functionality. ## XPCC Website + API The xpcc-doc repository has not changes much since v1.0. The core concepts of XPCC are not explained in enough detail, the idea of the peripheral interfaces is lost. The Doxygen API in it's current form is very unorganized, however, the peripheral interfaces will work to make this better using inheritance. A xpcc.io domain is reserved for the future XPCC website. It would be nice to bring the visual look of xpcc.io in line with the rest of the .io domains (ie. it should look more modern and to-the-point). ## XPCC NG We plan to merge the currently open `stm32_fsmc` and `display_menu` branches into `develop` and then release XPCC v1.2. These changes must not be applied to this version of XPCC, A next-generation version is being developed on the `feature/experimental_structure` branch, which incorporates a lot of these changes already. Please also see the notes of the Developer Summit 2012: https://github.com/roboterclubaachen/xpcc/wiki/Developer-Summit-August-2012 The RCA plans to use the next-gen version in the 2014 season of Eurobot. Therefore, these devices have priority for completion over all other platforms: 1. STM32F4, 2. STM32F3, 3. LPC11C24, 4. (STM32F1) Since the next-gen version is quite different and very unstable, please contact @salkinium (Niklas) or @ekiwi (Kevin) before frustrating yourself on there. Cheers, Niklas