
PI2-EX
This project mission is to build an expansion board for Raspberry Pi 2 (or 3), endowing it with a set of Input/Output features and adapt a real-time executive compatible with the expansion. The I/O features should be compatible with PiFace Digital 2 and extentions should be provided to existing software as drivers for using aditional I/O devices mentioned on the material section.
The hardware is going to be developed on Altium: PCB Design Software, and the board is going to be manufactured with surface-mount technology (SMT) at Instituto Superior Técnico-TagusPark facilities. The real-time executive will be implemented in FreeRTOS, which is a real time operative system that's free and solely owned, developed and maintained by Real Time Engineers Ltd.
​
Why FreeRTOS?
​
Technical summary:
-
Prioritised scheduling:
-
Pre-emptive option, time slicing option;
-
Co-operative option;
-
-
Tickless mode for low power;
-
Fast direct to task notifications;
-
Excellent and extensible execution trace capability;
-
Multiple kernel aware IDE plug-ins;
-
Flexible and easy to use queues;
-
Binary, counting and recursive semaphore;
-
Mutex with priority inheritance;
-
Event groups and flags;
-
Software timers;
-
Stack overflow detection;
-
Selection of memory allocation schemes;
-
Many ports never completely disable interrupts;
-
No ports perform non-deterministic operations with interrupts disabled.
The board should be able to control a SUBA (RC Car) equipped with various sensors, to follow a test track with climbs and descents. In addition to the engine and steering servo, the tilt sensor should also be read, and actuating on existing LED's.
​



