Better Embedded 2012

This forum is dedicated to feedback, discussions about ongoing or future developments, ideas and suggestions regarding the ChibiOS projects are welcome. This forum is NOT for support.
tinito
Posts: 112
Joined: Tue Jun 07, 2011 10:32 am
Has thanked: 1 time
Been thanked: 1 time

Re: Better Embedded 2012

Post by tinito »

Ops, too late, they replyed also to my request (you should have a couple of mail in your personal account).
They are happy to give 20-30 boards!
User avatar
Giovanni
Site Admin
Posts: 14891
Joined: Wed May 27, 2009 8:48 am
Has thanked: 1202 times
Been thanked: 996 times

Re: Better Embedded 2012

Post by Giovanni »

OK, there will be 20 boards :)

I am also working on the slides, feel free to insult me because it is the first time I use this powerpoint thing... just the introduction so far, the technical part and the training part will follow.

BTW, I decided to do the slides in English even if the training will be in Italian, feedback welcome :-)

Giovanni
Attachments
ChibiOS Introduction.zip
(440.81 KiB) Downloaded 505 times
tinito
Posts: 112
Joined: Tue Jun 07, 2011 10:32 am
Has thanked: 1 time
Been thanked: 1 time

Re: Better Embedded 2012

Post by tinito »

Nice! It looks like it will be the best lan party I ever attended ;)

About the slides, I'll give a look at home (no way to correctly view .ppt files here).

In the meanwhile, if you hate powerpoint as I do, I can give the sources of "my" ChibiOS presentation, made with LaTeX/beamer (all the material is from chibios.org, so it is much more "your" than "my" presentation). As attachment you can find both the .pdf and the .tex source file, you can compile it with pdflatex (you'll need to execute it 3-4 times to get the indexes working).
I really prefer latex to powerpoint: longer learning curve but it actually does what YOU say ;)

EDIT: not being able to upload on the forum, i've put it here: http://home.dei.polimi.it/migliavacca/lecture_10.tgz
User avatar
Giovanni
Site Admin
Posts: 14891
Joined: Wed May 27, 2009 8:48 am
Has thanked: 1202 times
Been thanked: 996 times

Re: Better Embedded 2012

Post by Giovanni »

Having to use latex in order to produce the PDF documents I cannot say that I am a bit fan :-) I will look into your
presentation searching for ideas.

I have to fill 4 hours, inclusive of practical demonstration with boards. I am not sure about how to calculate times because I never did something like this.

Giovanni
tinito
Posts: 112
Joined: Tue Jun 07, 2011 10:32 am
Has thanked: 1 time
Been thanked: 1 time

Re: Better Embedded 2012

Post by tinito »

Umh, I cannot correctly open the presentation: i see a black background with the images condensed one over the other, wich verion of powerpoint do you use?

About the 4 hours, as member of the audience I would expect much more practical examples than a traditional presentation. For example, I would give a little background of the project (like 2 slides), then a fast overview of the main components (again, not more than a couple of slides for each "module", just to highlight the many functionalities which ChibiOS features).
Afther this short introduction I would explain how ChibiOS is organized (filesystem structure, port system, makefiles...) and how to start a new project with it (makefile setup, chconf.h/mcuconf.h/halconf.h and board definitions), so everyone knows how to start.
Then I would ask everyone to start eclipse and from here I would use practical examples to present ChibiOS features, writing an example application with the audience.

To try to have a reference (but off curse this depends a lot to the speaker) my slides are for a 1h30m talk, and they are very "theorical" (i had 2 more practice hours later). For this kind of event I would expect like no more than 1 hour of presentation, and most of the time working on the boards.

Off curse this is only my 2c about a deeply subjective argument ;)

ps: having to write code probably for the first time with ChibiOS, did you think about a cheat-sheet? Like a 2-sided A4 paper with the most commonly used functions and short tutorial like how to start a thread, how to signal etc etc? If you would like to have something like that I can work on the PDF generation with LaTeX ;)
User avatar
Giovanni
Site Admin
Posts: 14891
Joined: Wed May 27, 2009 8:48 am
Has thanked: 1202 times
Been thanked: 996 times

Re: Better Embedded 2012

Post by Giovanni »

The architecture slides are in the 2nd part, the first part is only meant as introduction. Good idea about the cheat sheets, I will add those. I used PP 2007, I'll switch to Libre Office ASAP.

The current program is the following:

Code: Select all

Available 4 hours
12:00-13:00, 14:00-17:00

Marked with [*] means that a slide is required.

Program:

1) 12:00 - People Introduction (15 minutes).
  a) Introduction about myself (2 minutes).
  b) Attending people introduction (remaining time).
  c) Rules: feel free to interrupt me and ask questions.

2) 12:15 - Project Introduction (45 minutes with margin until the pause).
  a) What does ChibiOS/RT means.
     - Mini, Micro, nano, pico, femto etc already taken, so
       "Chibi" (1 minutes).
  b) ChibiOS/RT brief introduction.
    - Project history [*] (2 minutes).
    - Project goals [*] (2 minutes).
      - More than an RTOS, a complete development environment.
      - Ease of development, hiding inner details.
      - Portability across architecture, platforms and compilers.
      - Efficiency.
    - Project audience [*] (1 minute).
    - Features [*].
      - Kernel (feature matrix) [*] (5 minutes).
      - HAL (feature matrix) [*] (5 minutes).
      - Integration with lwIP and FatFs [*] (1 minute).
      - External contributions like ChibiOS/GFX [*] (1 minute).
    - Project supported architectures, platforms and boards.
      - Stressing about the meaning of "supported" (1 minute).
      - Mention that other architectures/platforms are supported by external
        developers or community (1 minute).
    - Project strengths.
      - Whole OS not just a scheduler [*] (1 minute).
      - Advantages (static, no fixed structures, no errors, elegant, portable)
        [*] (1 minute).
      - Performance and footprint with examples (1 minute).
      - Hardware and compiler abstraction (1 minute).
      - Growing and active community (1 minute).
    - Future plans [*] (2 minutes).
  c) Licensing.
    - Project branches and licensing (stable-unstable) (2 minutes).
    - The three licensing options [*] (3 minutes).
  d) Questions [*] (remaining time).

3) 13:00 - Pause.

4) 14:00 - Technical description.
  a) Architecture [*].
    - General Architecture [*] (5 minutes).
    - Kernel Architecture [*] (5 minutes).
      - Static core, dynamic extensions.
      - Optional subsystems.
    - HAL Architecture [*] (5 minutes).
      - Device driver classes (normal, platform, complex, device) [*].
      - List of device drivers and small description for the less obvious
        ones [*].
    - Board files [*] (5 minutes).
      - Mention configuration tool.
  b) Application structure [*].
    - Makefile system [*] (2 minutes).
    - Configuration file (2 minutes).
    - Simple main.c template (2 minutes).
  c) Questions [*] (remaining time).

5) 14:45 Hardware setup for the demo, troubleshooting [*] (15 minutes).
  a) Assessing how many of the attendees installed the prerequisite software.
  b) Last minute installations using USB dongles (better have several).
  c) Distribution of Discovery boards to those not having one.
  d) Test connection of the GDB server to the board [*].

6) 15:00 Demo.
  a) Introduction.
    - Describe discovery board [*] (2 minutes).
    - Demo functionality [*] (2 minutes).
    - ST32F407 peripherals used by the demo and device drivers
      involved [*] (2 minutes).
    - Demo source code description and comments, viewing it in Eclipse
     (5 minutes).
  b) Running the demo in Eclipse, attendees can replicate the process
     locally (estimated 30 minutes).
    - Clean and build (2 minutes).
    - Running the GDB server with brief explanation (5 minutes).
    - Launching the debug session (2 minutes).
    - Single stepping and breakpoints (2 minutes).
    - Letting it run.
    - Looking at the effect on LEDs.
    - Connecting USB cable and playing with the shell.
    - Stopping it and examining the OS status with the ChibiOS plugin.
    - Stopping debug session and returning to the C/C++ perspective.
  c) Questions about the demo or the toolchain (remaining time).

7) 16:00 - Various and Questions (remaining time).
tinito
Posts: 112
Joined: Tue Jun 07, 2011 10:32 am
Has thanked: 1 time
Been thanked: 1 time

Re: Better Embedded 2012

Post by tinito »

I like the outline. Maybe you can insert a slide _before_ the launch break listing the tools we will use in the afternoon, so people have a chance to install everything during the break and 5) will take less time (I had to spend a lot of time on eclipse setup troubleshooting during the first practice lesson, with 19 students).
User avatar
Giovanni
Site Admin
Posts: 14891
Joined: Wed May 27, 2009 8:48 am
Has thanked: 1202 times
Been thanked: 996 times

Re: Better Embedded 2012

Post by Giovanni »

Good point, I will leave it on during the pause.

I will distribute USB pen drives with ChibiStudio for those who didn't install it beforehand.

Giovanni
mobyfab
Posts: 484
Joined: Sat Nov 19, 2011 6:47 pm
Has thanked: 21 times
Been thanked: 31 times

Re: Better Embedded 2012

Post by mobyfab »

User avatar
Giovanni
Site Admin
Posts: 14891
Joined: Wed May 27, 2009 8:48 am
Has thanked: 1202 times
Been thanked: 996 times

Re: Better Embedded 2012

Post by Giovanni »

Tinito is the author :-)

I am taking ideas for sure, I could also include in the documentation on the USB pen drive if he agrees.

Giovanni
Post Reply