From 7d258387832d9d1a3e662442ed2d3e15907c2b99 Mon Sep 17 00:00:00 2001
From: Florian Hoelzl <hoelzl@fortiss.org>
Date: Fri, 27 Apr 2018 10:50:57 +0200
Subject: [PATCH] Removed outdated tagged plugins.

---
 .../tags/end-of-first-course/.classpath       |   7 -
 .../tags/end-of-first-course/.project         |  28 --
 .../end-of-first-course/META-INF/MANIFEST.MF  |  20 -
 .../tags/end-of-first-course/build.properties |  10 -
 .../end-of-first-course/icons/can-logo.jpeg   | Bin 1825 -> 0 bytes
 .../icons/can-logoBIG.jpeg                    | Bin 14322 -> 0 bytes
 .../icons/raspberry-pi-logo.png               | Bin 1498 -> 0 bytes
 .../icons/raspberry-pi-logoBIG.png            | Bin 42592 -> 0 bytes
 .../end-of-first-course/plugin.properties     |   7 -
 .../tags/end-of-first-course/plugin.xml       |  59 ---
 .../tags/end-of-first-course/pom.xml          |  21 -
 .../ui/AF3PlatformRaspberryUIActivator.java   |  68 ---
 .../ui/editpart/EditPartFactory.java          |  68 ---
 .../raspberry/ui/handler/CanBusHandler.java   |  57 ---
 .../ui/handler/CanConnectorHandler.java       |  48 --
 .../ui/handler/RaspberryPiHandler.java        |  58 ---
 .../ui/prototype/ProtoypeProvider.java        | 181 --------
 .../tags/end-of-first-course/.classpath       |   8 -
 .../tags/end-of-first-course/.project         |  38 --
 .../end-of-first-course/META-INF/MANIFEST.MF  |  29 --
 .../end-of-first-course/buckminster.cspex     |  24 -
 .../tags/end-of-first-course/build.properties |  13 -
 .../tags/end-of-first-course/lib/Makedefs     |  47 --
 .../lib/inc-gen/data_dictionary.h             |  55 ---
 .../lib/inc/CanConnector.h                    |  46 --
 .../tags/end-of-first-course/lib/inc/GPIO.h   |  27 --
 .../end-of-first-course/lib/inc/Gamepad.h     |  91 ----
 .../tags/end-of-first-course/lib/inc/IMU.h    |   0
 .../lib/inc/LaserRangeFinder.h                |  20 -
 .../lib/inc/LaserScanner.h                    |   0
 .../tags/end-of-first-course/lib/inc/PWM.h    |  39 --
 .../tags/end-of-first-course/lib/inc/io.h     |  25 -
 .../lib/inc/libcansocket.h                    |  43 --
 .../end-of-first-course/lib/inc/libmaestro.h  |  12 -
 .../end-of-first-course/lib/inc/libuart.h     |  35 --
 .../lib/src-gen/data_dictionary.c             | 170 -------
 .../lib/src/CanConnector.c                    |  84 ----
 .../tags/end-of-first-course/lib/src/GPIO.c   |  56 ---
 .../end-of-first-course/lib/src/Gamepad.c     | 276 -----------
 .../tags/end-of-first-course/lib/src/IMU.c    |   0
 .../lib/src/LaserRangeFinder.c                | 102 -----
 .../lib/src/LaserScanner.c                    |   0
 .../tags/end-of-first-course/lib/src/PWM.c    |  87 ----
 .../tags/end-of-first-course/lib/src/io.c     |  45 --
 .../lib/src/libcansocket.c                    |  56 ---
 .../end-of-first-course/lib/src/libmaestro.c  |  36 --
 .../end-of-first-course/lib/src/libuart.c     | 119 -----
 .../tags/end-of-first-course/lib/src/main.c   |  51 ---
 .../model/generate-ecore.xml                  |  28 --
 .../end-of-first-course/model/raspberry.ecore |  39 --
 .../model/raspberry.genmodel                  |  45 --
 .../end-of-first-course/plugin.properties     |   7 -
 .../tags/end-of-first-course/plugin.xml       | 433 ------------------
 .../tags/end-of-first-course/pom.xml          |  21 -
 .../AF3PlatformRaspberryActivator.java        |  40 --
 .../PWMChannelNumberValueProvider.java        |  48 --
 .../raspberry/compose/CanBusCompositor.java   |  51 ---
 .../compose/CanToRaspberryCompositor.java     |  99 ----
 .../compose/RaspberryPiCompositor.java        |  79 ----
 .../compose/RaspberryToCanCompositor.java     |  99 ----
 .../executable/CanBusExecutable.java          |  55 ---
 .../executable/CanConnectorExecutable.java    | 115 -----
 .../executable/CanTransmissionCatalog.java    |  55 ---
 .../generator/executable/GPIExecutable.java   |  73 ---
 .../generator/executable/GPOExecutable.java   |  73 ---
 .../executable/GamepadSensorExecutable.java   |  64 ---
 .../executable/IMUSensorExecutable.java       |  64 ---
 .../LaserRangeFinderSensorExecutable.java     |  66 ---
 .../LaserScannerSensorExecutable.java         |  64 ---
 .../executable/PWMActuatorExecutable.java     |  73 ---
 .../executable/RaspberryPIExecutable.java     | 207 ---------
 .../executable/WheelEncoderExecutable.java    |  39 --
 .../executable/gamepad/Button1Executable.java |  66 ---
 .../executable/gamepad/Button2Executable.java |  66 ---
 .../executable/gamepad/Button3Executable.java |  66 ---
 .../executable/gamepad/Button4Executable.java |  66 ---
 .../gamepad/ButtonL1Executable.java           |  66 ---
 .../gamepad/ButtonL2Executable.java           |  66 ---
 .../gamepad/ButtonR1Executable.java           |  66 ---
 .../gamepad/ButtonR2Executable.java           |  66 ---
 .../gamepad/Left_StickXExecutable.java        |  66 ---
 .../gamepad/Left_StickYExecutable.java        |  66 ---
 .../gamepad/Right_StickXExecutable.java       |  66 ---
 .../gamepad/Right_StickYExecutable.java       |  66 ---
 .../transform/CanBusTransformation.java       |  60 ---
 ...nBusTransmissionCatalogTransformation.java |  61 ---
 .../transform/CanConnectorTransformation.java |  60 ---
 ...ctorTransmissionCatalogTransformation.java |  61 ---
 .../transform/GPITransformation.java          |  60 ---
 .../transform/GPOTransformation.java          |  60 ---
 .../GamepadSensorTransformation.java          |  59 ---
 .../transform/IMUSensorTransformation.java    |  60 ---
 .../LaserRangeFinderSensorTransformation.java |  60 ---
 .../LaserScannerSensorTransformation.java     |  60 ---
 .../transform/PWMActuatorTransformation.java  |  60 ---
 .../transform/RaspberryPITransformation.java  |  60 ---
 .../transform/WheelEncoderTransformation.java |  61 ---
 .../gamepad/Button1Transformation.java        |  60 ---
 .../gamepad/Button2Transformation.java        |  60 ---
 .../gamepad/Button3Transformation.java        |  60 ---
 .../gamepad/Button4Transformation.java        |  60 ---
 .../gamepad/ButtonL1Transformation.java       |  60 ---
 .../gamepad/ButtonL2Transformation.java       |  60 ---
 .../gamepad/ButtonR1Transformation.java       |  60 ---
 .../gamepad/ButtonR2Transformation.java       |  60 ---
 .../gamepad/Left_StickXTransformation.java    |  61 ---
 .../gamepad/Left_StickYTransformation.java    |  61 ---
 .../gamepad/Right_StickXTransformation.java   |  61 ---
 .../gamepad/Right_StickYTransformation.java   |  61 ---
 .../util/RaspberryModelElementFactory.java    | 261 -----------
 110 files changed, 6762 deletions(-)
 delete mode 100644 org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/.classpath
 delete mode 100644 org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/.project
 delete mode 100644 org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/META-INF/MANIFEST.MF
 delete mode 100644 org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/build.properties
 delete mode 100644 org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/icons/can-logo.jpeg
 delete mode 100644 org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/icons/can-logoBIG.jpeg
 delete mode 100644 org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/icons/raspberry-pi-logo.png
 delete mode 100644 org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/icons/raspberry-pi-logoBIG.png
 delete mode 100644 org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/plugin.properties
 delete mode 100644 org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/plugin.xml
 delete mode 100644 org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/pom.xml
 delete mode 100644 org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/ui/AF3PlatformRaspberryUIActivator.java
 delete mode 100644 org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/ui/editpart/EditPartFactory.java
 delete mode 100644 org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/ui/handler/CanBusHandler.java
 delete mode 100644 org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/ui/handler/CanConnectorHandler.java
 delete mode 100644 org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/ui/handler/RaspberryPiHandler.java
 delete mode 100644 org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/ui/prototype/ProtoypeProvider.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/.classpath
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/.project
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/META-INF/MANIFEST.MF
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/buckminster.cspex
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/build.properties
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/Makedefs
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc-gen/data_dictionary.h
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/CanConnector.h
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/GPIO.h
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/Gamepad.h
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/IMU.h
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/LaserRangeFinder.h
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/LaserScanner.h
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/PWM.h
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/io.h
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/libcansocket.h
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/libmaestro.h
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/libuart.h
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src-gen/data_dictionary.c
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/CanConnector.c
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/GPIO.c
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/Gamepad.c
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/IMU.c
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/LaserRangeFinder.c
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/LaserScanner.c
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/PWM.c
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/io.c
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/libcansocket.c
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/libmaestro.c
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/libuart.c
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/main.c
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/model/generate-ecore.xml
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/model/raspberry.ecore
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/model/raspberry.genmodel
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/plugin.properties
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/plugin.xml
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/pom.xml
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/AF3PlatformRaspberryActivator.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/annotation/PWMChannelNumberValueProvider.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/compose/CanBusCompositor.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/compose/CanToRaspberryCompositor.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/compose/RaspberryPiCompositor.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/compose/RaspberryToCanCompositor.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/CanBusExecutable.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/CanConnectorExecutable.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/CanTransmissionCatalog.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/GPIExecutable.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/GPOExecutable.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/GamepadSensorExecutable.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/IMUSensorExecutable.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/LaserRangeFinderSensorExecutable.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/LaserScannerSensorExecutable.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/PWMActuatorExecutable.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/RaspberryPIExecutable.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/WheelEncoderExecutable.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button1Executable.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button2Executable.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button3Executable.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button4Executable.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonL1Executable.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonL2Executable.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonR1Executable.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonR2Executable.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Left_StickXExecutable.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Left_StickYExecutable.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Right_StickXExecutable.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Right_StickYExecutable.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/CanBusTransformation.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/CanBusTransmissionCatalogTransformation.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/CanConnectorTransformation.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/CanConnectorTransmissionCatalogTransformation.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/GPITransformation.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/GPOTransformation.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/GamepadSensorTransformation.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/IMUSensorTransformation.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/LaserRangeFinderSensorTransformation.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/LaserScannerSensorTransformation.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/PWMActuatorTransformation.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/RaspberryPITransformation.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/WheelEncoderTransformation.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button1Transformation.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button2Transformation.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button3Transformation.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button4Transformation.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonL1Transformation.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonL2Transformation.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonR1Transformation.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonR2Transformation.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Left_StickXTransformation.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Left_StickYTransformation.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Right_StickXTransformation.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Right_StickYTransformation.java
 delete mode 100644 org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/util/RaspberryModelElementFactory.java

diff --git a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/.classpath b/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/.classpath
deleted file mode 100644
index 6046c7a0..00000000
--- a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="output" path="build"/>
-</classpath>
diff --git a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/.project b/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/.project
deleted file mode 100644
index b36b3e2e..00000000
--- a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.fortiss.af3.platform.raspberry.ui</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.PluginNature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/META-INF/MANIFEST.MF b/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/META-INF/MANIFEST.MF
deleted file mode 100644
index f68305a2..00000000
--- a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,20 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: Fortiss AF3 Platform Raspberry UI
-Bundle-SymbolicName: org.fortiss.af3.platform.raspberry.ui;singleton:=true
-Bundle-Version: 2.9.0.qualifier
-Bundle-Activator: org.fortiss.af3.platform.raspberry.ui.AF3PlatformRaspberryUIActivator
-Require-Bundle: org.eclipse.ui.ide;bundle-version="3.7.0";visibility:=reexport,
- org.fortiss.af3.project.ui;bundle-version="1.0.0";visibility:=reexport,
- org.fortiss.tooling.base.ui;bundle-version="1.0.0";visibility:=reexport,
- org.fortiss.af3.platform.ui,
- org.fortiss.af3.platform.raspberry;bundle-version="2.9.0"
-Bundle-ActivationPolicy: lazy
-Bundle-RequiredExecutionEnvironment: JavaSE-1.8
-Bundle-Vendor: fortiss GmbH
-Export-Package: org.fortiss.af3.platform.raspberry.ui
-Import-Package: org.fortiss.af3.platform.compose,
- org.fortiss.af3.platform.compose.base.hierarchical,
- org.fortiss.af3.platform.compose.base.hierarchical.elements,
- org.fortiss.af3.platform.model,
- org.fortiss.af3.platform.utils
diff --git a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/build.properties b/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/build.properties
deleted file mode 100644
index c514c7fd..00000000
--- a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/build.properties
+++ /dev/null
@@ -1,10 +0,0 @@
-# <copyright>
-# </copyright>
-#
-# $Id$
-
-bin.includes = .,\
-               META-INF/,\
-               plugin.xml
-source.. = src/
-output.. = build/
\ No newline at end of file
diff --git a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/icons/can-logo.jpeg b/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/icons/can-logo.jpeg
deleted file mode 100644
index 204934bddfafd5893e71673c16251929914a6045..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1825
zcmex=<NpH&0WUXCHwH#V1_loxWcdG(p~1BxGmU}4*Ox(yfq{X8ft68+ff>kR1VRQz
zDF#+Bn}NZLQ5wz;V$^`DVPart&tzbMs)+*9AOJKOq#H^zEntGH5LmzrXLEv-{(sA0
z5s;Bzl3$#WU!Y*DXTV_L<mt--G7$*CY*jE*;EHU|&3=YWEH4{4XT160RQLZ8lY^(T
zb9_LMzniCzE7(&^297RHu1o?947qtFMM3UP3K5Y}3hWnv{^Dj3W-w;3PE0N?a103W
z0hyVXpO*?Y8-@6G4eWM?%eo-5P^1WRxRMKsN`T7#0I^X@YH>0!APj))?DCQVpg7|k
zAX_9U8_eDSVi$!3IRnLy0NH%$5cU-iI|;&m0%8{dJpokn1*AS5%x2;Mv6CQd84$Z9
zwE|=>gL8gCWl?5&Mu~!vfq{X7V@iHfszPvOaY<@!v4Uq_a(+=keo<mcY6?&-#C;%L
z41y4apb*nAw6wI)1dCFU0L25uxX*#$@MRP`gAhYllw4X=2IVm_88a{t;v>wMBf-Gn
zzm$Q2<qty4q?dtVfer%$|5SvSnjr&&fIb7mzB&I7FbHxma54xmGYT>=2{JMZGX6ip
zAP)>`Rz@&@Ig62rnT3^&or9B$8>nEb00R>vGcywlGb<}7p)%G2<r!E6S%nl09od8f
z6WNstMT{CJF62;l+IUbj=;8+z<D{Y{PA)NV2}vncHFXV5EfZ5Sa|=r=XBSsDcMngm
z;E>R;aG(>DQ&Q8?GcvP^OG?YiD=Mp+TUy)NJ36~2O`bA!+VmMSXDwR1Wa+ZyD^{-B
zw0X<cZQFP3+;!;ik)y|spE!By(&Z~xuU)@!^VY*hkDok!_WZ@mS06up{_^$P_a8rh
zf&9hDzzp#gkc9XQ&0oMkU}R!pVP;_m`HPXM9Eh0(Sy&Yf*@PSe*%J$em5drWM4Tor
z+<1^v**NHfXj0KdE-@98hpHbzUIY7#IFB`v<uka)5dON&;0(<9l!5<1Lnt!=sQdq2
zV8O=p{}uxeGb1oDF$*%-GyLuNICc8l`;T_pcgZn)<k`RN@A6~oJLI=LTlnyNr+HM|
z*2nS8fA}xgr^#v^{?_<0{lN6UbL>?9m|TAUW}ke8eQ>k$kKAQ{B0jqH&X>OX>ie`h
znUAmK-{y*4ix+COsm&6-rhog=dYd?_ISaj(ER<j2F5TA_uO*ss&8yXGhI;GjptYRd
z0y`(ImMTrQPyC@~{5R{!qmMIFJwEQgUMy!Gk#la#>g1w7^Z5^(80}LyyUA;g`RtS_
zb7k0KgT<Rqf3V!A6x5a<EFAyJa?h%uqp2mYeu{NI^8carzN1d@->G|wSJu{N-rOVp
z=sx>@hJ)&B>N7m_OY%G7#IJ18m*5xs(SF2U-1OqY+fkWSd6Q-TMCHD3v(H>>$L-=#
zvbWmNUoP@?=Ej?MqJI9YmASN6MoeA0>-eSh@wyL>cP-}do7`s38@5eb@~l_MVz()U
zlU9GtIV7;qYt`Y)0kf9=p6=amc*e#%ay{>H?&;5V^z0Y>&mgdGzQ7~<hi)w&E+2U=
zar1e_ERmNwwwBKP?%Yz6UnK&YBWjNGMjI~s5VD-3{{Mx4e~<eg`Ojd*!0-IU<l5`2
IjQ?)}0KKyWQ~&?~

diff --git a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/icons/can-logoBIG.jpeg b/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/icons/can-logoBIG.jpeg
deleted file mode 100644
index c2be90bc4a910a5e6b459905286c5fcbe4edbd4c..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 14322
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
HJk9?<Ff3ko

diff --git a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/icons/raspberry-pi-logo.png b/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/icons/raspberry-pi-logo.png
deleted file mode 100644
index ca054922c08baf0bb3235fb02d1baafcc9722419..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1498
zcmeAS@N?(olHy`uVBq!ia0vp^0zfRx!3HE}ruUu)QjEnx?oJHr&dIz4aySb-B8wRq
zxP?KOkzv*x37~?=%#etZ2wxwo<osN{#FYG`RK1Ga0-$OJ2Ac{iATu|$BvGLvHz%*y
zs=`(YtilS&1_|pcDS(xfWZNo5_y#CA=NF|anChA687SFtDJUq|6s4qD1-ZCEwF7y!
zN*N_31y=g{<>lpi<;HsXMd|v6mX?<K21fcuM!G;1y2X`wC5aWfdBw^QLty5(q!uR^
zWfqiV=I1GZ%uP(nFD<cEQUX~72M~9bWTqi($}5I?3+O?8kc_^eo`F8xY@k*fkf@b^
zQD!R8W{~-IhBjc8C}L21Z1h2vBRK}*Q?Mw|t9D#A`tV@0<MKJA9?8JKBIW7g7-At9
z8l0UG6DlyT_+0Iq&v|9LXP>RUT(W!i^vp?K-kO=d6N9!)?Xq9vx>RsgNBx)fE~TY^
z6+>JESOc$!ur5{lm*L<wdzO%^hj7lBV@uQ~<e2TQe3Lf$&Ar<D*FWCLP~<x^r~3IB
z^YzBf3<>_fJ9jlYgrDU+nV!9Hij&c-nbLo&o)wpsPyTpvANSk!*S744=4{_MM^E=y
zdQkcDeBJoua%mZ1cmBD#e+&LUthyk=JVWq<66gEZYi$jF+?sn(-2UDE3-_*X2@mJJ
zAW_W3r~CJ%<xv?I$#3pwj;JXt`OL%~Vy-oFYtt%`&|4Q?@y@B+``s&ecK-Ufi!Z-r
z#Vwr`_;7}-!UAgxH6QlmizmO{p4!A@)_x)~mT9`LXl9O9rplwp4!^b1x3gKZrm~!S
zB~rO|jbo0L>6rrMo<@UZ8&CGKhkpHLx9`@g?K^Zs?rA;LxBtz1%{{23O0mtVpM7J<
z`z1GXIM4r=nlHJ_>K~uQ-lXE)Ph6Hw|DW+-sk#;0?L$`$zFwatD5Iuv=YiwL7M{(=
zwcR!x?|;5H^T)SiXBZm3RL4$!o3w3(>RBF!KNl)*emkLl-q*D1bF!rE<{8J+qrWXw
z(7))`FZ@*f^8@+CU!KI6X5C2U?cepNaC*}HM}i_}!Wldct#p^(^YH1jMTLuZG%-DJ
zs6Qc{u#n{=OLJUzAWO=ttrjm7uU=>4<WOlkx%&B3wb?TpZyc|@cTX$asay4?#e0rN
zi<{&xWl6@~k!ep}#4oq`s$++Tz{Kr69(CN&8d~~GyYKs?Z%!?WT2c9a&g!SBGgp1-
zxXbT&u=VV*9hTf#$HHE0tX$Z|ArjmY<I<A5x2f-DcGIk7H=lj|BYQ`+D$X+FyQ9Y%
zqdP7xZ+aP(TT)^hqj$2XOtA@8Jfg@G<`dvhka73SOUKpUWx5}yYn=&Q!MJ#5Xvz8s
zO<fBwPl;-}`N^z>MchT(a)x%gLjDSaFpov^H=hnLF)`*i%<R63C&-yWHqpx}&X2jc
zsd$%{b*|i%_iLJ??(t1tYErZDr}-3~vk5mJg>LO=dph;~qAeA&{42AsyM5B0nQrU&
zC+sWZt_4pIcvgrA#ae%kI(}P0C#<pk>i<3JF7ne~U0kGedjAXQ_?enB7XLZms}sz3
z#_`0XOL{-6G|s=$m9&ZwVC3Zqi0IU>_$J-k<eYw!Y4iNl9UU(d(x)g#O)C+2xianG
zNzRrG`y71-pOcE692tuyEGqxJdQ1GO>oG0jN=tozc*a%LpVaW%(3_<AZ|TY3OMB-`
zopgAk*Ev0Dt+dS7O2^W^mtJ$2bWvo}f)h6vp82%&cGRn2;j*K5yxr0y`B!$=*8E?#
zIduR1FDktz^A}!jH2%U|zJ2Gu>yqX6CMnPJ?)<M`<yi5HH~qyu_j&gY?GC!_!d_^z
gnVVyJdE<Y^>AWY-?Z19>6R5!TboFyt=akR{0O!Dm0{{R3

diff --git a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/icons/raspberry-pi-logoBIG.png b/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/icons/raspberry-pi-logoBIG.png
deleted file mode 100644
index faa554e617fb40bb60ab411dbcb13a9db8f88d0b..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 42592
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

diff --git a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/plugin.properties b/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/plugin.properties
deleted file mode 100644
index 35dca873..00000000
--- a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/plugin.properties
+++ /dev/null
@@ -1,7 +0,0 @@
-# <copyright>
-# </copyright>
-#
-# $Id$
-
-pluginName = Fortiss AF3 Base Project UI
-providerName = fortiss GmbH
diff --git a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/plugin.xml b/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/plugin.xml
deleted file mode 100644
index 130e9d8e..00000000
--- a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/plugin.xml
+++ /dev/null
@@ -1,59 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-
-<!--
- <copyright>
- </copyright>
-
- $Id$
--->
-<plugin>
-<extension
-         point="org.fortiss.tooling.kernel.modelPrototypeProvider">
-      <modelPrototypeProvider
-            provider="org.fortiss.af3.platform.raspberry.ui.prototype.ProtoypeProvider">
-      </modelPrototypeProvider>
-   </extension>
-<extension
-      point="org.fortiss.tooling.kernel.ui.modelElementHandler">
-   <modelElementHandler
-         handler="org.fortiss.af3.platform.raspberry.ui.handler.RaspberryPiHandler">
-      <modelElementClass
-            modelElementClass="org.fortiss.af3.platform.raspberry.model.RaspberryPi">
-      </modelElementClass>
-   </modelElementHandler>
-   <modelElementHandler
-         handler="org.fortiss.af3.platform.raspberry.ui.handler.CanBusHandler">
-      <modelElementClass
-            modelElementClass="org.fortiss.af3.platform.raspberry.model.CanBus">
-      </modelElementClass>
-   </modelElementHandler>
-   <modelElementHandler
-         handler="org.fortiss.af3.platform.raspberry.ui.handler.CanConnectorHandler">
-      <modelElementClass
-            modelElementClass="org.fortiss.af3.platform.raspberry.model.CanConnector">
-      </modelElementClass>
-   </modelElementHandler>
-</extension>
-<extension
-      point="org.fortiss.tooling.kernel.ui.editPartFactory">
-   <editPartFactory
-         factory="org.fortiss.af3.platform.raspberry.ui.editpart.EditPartFactory">
-      <modelElementClass
-            modelElementClass="org.fortiss.af3.platform.raspberry.model.RaspberryPi">
-      </modelElementClass>
-      <modelElementClass
-            modelElementClass="org.fortiss.af3.platform.raspberry.model.CanBus">
-      </modelElementClass>
-      <modelElementClass
-            modelElementClass="org.fortiss.af3.platform.raspberry.model.CanConnector">
-      </modelElementClass>
-      <modelElementClass
-            modelElementClass="org.fortiss.af3.platform.raspberry.model.SensorConnector">
-      </modelElementClass>
-      <modelElementClass
-            modelElementClass="org.fortiss.af3.platform.raspberry.model.ActuatorConnector">
-      </modelElementClass>
-   </editPartFactory>
-</extension>
-</plugin>
diff --git a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/pom.xml b/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/pom.xml
deleted file mode 100644
index 924914f3..00000000
--- a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/pom.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--  
-  $Id$
-  @version $Rev$
-  @ConQAT.Rating RED Hash: E1674C4A6DD3CBC4A7B7E85232D9695F
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-  <modelVersion>4.0.0</modelVersion>
-  <groupId>org.fortiss.af3</groupId>
-  <artifactId>org.fortiss.af3.platform.raspberry.ui</artifactId>
-  <packaging>eclipse-plugin</packaging>
- 
-  <parent>
-	<groupId>org.fortiss.std.pom</groupId>
-	<artifactId>std-parent-pom-indigo</artifactId>
-	<version>1.0</version>
-	<relativePath>../fortiss-std-env/maven-build/pom.xml</relativePath>
-  </parent>
-  
-  <version>2.9.0-SNAPSHOT</version>
-</project>
\ No newline at end of file
diff --git a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/ui/AF3PlatformRaspberryUIActivator.java b/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/ui/AF3PlatformRaspberryUIActivator.java
deleted file mode 100644
index e65c3d27..00000000
--- a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/ui/AF3PlatformRaspberryUIActivator.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id$
-|                                                                          |
-| Copyright 2011 ForTISS GmbH                                              |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.ui;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.osgi.framework.BundleContext;
-
-/**
- * The activator class controls the plug-in life cycle.
- * 
- * @author hoelzl
- * @author $Author$
- * @version $Rev$
- * @ConQAT.Rating RED Hash: 250D9EED7E36588B51D8F1B3F968B2FB
- */
-public class AF3PlatformRaspberryUIActivator extends AbstractUIPlugin {
-
-	/** The plug-in ID. */
-	public static final String PLUGIN_ID = AF3PlatformRaspberryUIActivator.class.getPackage().getName(); //$NON-NLS-1$
-
-	/** The shared instance. */
-	private static AF3PlatformRaspberryUIActivator plugin;
-
-	/** Constructor. */
-	public AF3PlatformRaspberryUIActivator() {
-		// do nothing
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public void start(BundleContext context) throws Exception {
-		super.start(context);
-		plugin = this;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public void stop(BundleContext context) throws Exception {
-		plugin = null;
-		super.stop(context);
-	}
-
-	/** Returns the shared instance. */
-	public static AF3PlatformRaspberryUIActivator getDefault() {
-		return plugin;
-	}
-
-	/** Returns the image descriptor for the given icon file. */
-	public static ImageDescriptor getImageDescriptor(String path) {
-		return imageDescriptorFromPlugin(PLUGIN_ID, path);
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/ui/editpart/EditPartFactory.java b/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/ui/editpart/EditPartFactory.java
deleted file mode 100644
index ccfec9d6..00000000
--- a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/ui/editpart/EditPartFactory.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.ui.editpart;
-
-import org.eclipse.gef.EditPart;
-import org.eclipse.swt.graphics.Color;
-import org.fortiss.af3.platform.model.PlatformConnectorUnit;
-import org.fortiss.af3.platform.raspberry.model.ActuatorConnector;
-import org.fortiss.af3.platform.raspberry.model.CanBus;
-import org.fortiss.af3.platform.raspberry.model.CanConnector;
-import org.fortiss.af3.platform.raspberry.model.RaspberryPi;
-import org.fortiss.af3.platform.raspberry.model.SensorConnector;
-import org.fortiss.af3.platform.ui.DefaultStyle;
-import org.fortiss.af3.platform.ui.editpart.generic.ExecutionUnitEditPart;
-import org.fortiss.af3.platform.ui.editpart.generic.StickyPlatformConnectorUnitEditPart;
-import org.fortiss.af3.platform.ui.editpart.generic.TransmissionUnitDefaultEditPart;
-import org.fortiss.tooling.kernel.ui.extension.IEditPartFactory;
-
-/**
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class EditPartFactory implements IEditPartFactory {
-
-	/** {@inheritDoc} */
-	@Override
-	public EditPart createEditPart(EditPart context, Object model) {
-		if(model instanceof RaspberryPi) {
-			return new ExecutionUnitEditPart((RaspberryPi)model) {
-				/** {@inheritDoc} */
-				@Override
-				protected Color getBackgroundColor() {
-					return DefaultStyle.EU_BACKGROUND;
-				}
-
-				/** {@inheritDoc} */
-				@Override
-				protected Color getForegroundColor() {
-					return DefaultStyle.EU_FOREGROUND;
-				}
-			};
-		} else if(model instanceof CanBus) {
-			return new TransmissionUnitDefaultEditPart((CanBus)model);
-		} else if(model instanceof CanConnector || model instanceof SensorConnector ||
-				model instanceof ActuatorConnector) {
-			return new StickyPlatformConnectorUnitEditPart((PlatformConnectorUnit)model);
-		}
-		return null;
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/ui/handler/CanBusHandler.java b/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/ui/handler/CanBusHandler.java
deleted file mode 100644
index 80896163..00000000
--- a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/ui/handler/CanBusHandler.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.ui.handler;
-
-import java.util.List;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.fortiss.af3.platform.raspberry.model.CanBus;
-import org.fortiss.af3.platform.raspberry.ui.AF3PlatformRaspberryUIActivator;
-import org.fortiss.tooling.kernel.ui.extension.IModelElementHandler;
-import org.fortiss.tooling.kernel.ui.extension.base.ModelElementHandlerBase;
-
-/**
- * {@link IModelElementHandler} for {@link CanBus}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-@SuppressWarnings({"unchecked", "rawtypes"})
-public class CanBusHandler extends ModelElementHandlerBase<CanBus> {
-	/** {@inheritDoc} */
-	@Override
-	public String getName(CanBus element) {
-		String name = element.getName();
-		return name != null ? name : "CanBus";
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public ImageDescriptor getIconImageDescriptor() {
-		return AF3PlatformRaspberryUIActivator.getImageDescriptor("icons/can-logo.jpeg");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public List<EObject> getConnectors(CanBus element) {
-		return (List)element.getConnectors();
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/ui/handler/CanConnectorHandler.java b/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/ui/handler/CanConnectorHandler.java
deleted file mode 100644
index d3a100a4..00000000
--- a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/ui/handler/CanConnectorHandler.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.ui.handler;
-
-import static org.fortiss.af3.platform.ui.AF3PlatformUIActivator.getImageDescriptor;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.fortiss.af3.platform.raspberry.model.CanConnector;
-import org.fortiss.tooling.kernel.ui.extension.IModelElementHandler;
-import org.fortiss.tooling.kernel.ui.extension.base.ModelElementHandlerBase;
-
-/**
- * {@link IModelElementHandler} for {@link CanConnector}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class CanConnectorHandler extends ModelElementHandlerBase<CanConnector> {
-	/** {@inheritDoc} */
-	@Override
-	public ImageDescriptor getIconImageDescriptor() {
-		return getImageDescriptor("icons/unknown.png");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public String getName(CanConnector element) {
-		String name = element.getName();
-		return name != null ? name : "CanConnector";
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/ui/handler/RaspberryPiHandler.java b/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/ui/handler/RaspberryPiHandler.java
deleted file mode 100644
index b56bcee3..00000000
--- a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/ui/handler/RaspberryPiHandler.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.ui.handler;
-
-import java.util.List;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.fortiss.af3.platform.raspberry.model.RaspberryPi;
-import org.fortiss.af3.platform.raspberry.ui.AF3PlatformRaspberryUIActivator;
-import org.fortiss.tooling.kernel.ui.extension.IModelElementHandler;
-import org.fortiss.tooling.kernel.ui.extension.base.ModelElementHandlerBase;
-
-/**
- * {@link IModelElementHandler} for {@link RaspberryPi}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-@SuppressWarnings({"unchecked", "rawtypes"})
-public class RaspberryPiHandler extends ModelElementHandlerBase<RaspberryPi> {
-	/** {@inheritDoc} */
-	@Override
-	public String getName(RaspberryPi element) {
-		final String name = element.getName();
-		return name != null ? name : "RaspberryPi";
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public ImageDescriptor getIconImageDescriptor() {
-		return AF3PlatformRaspberryUIActivator.getImageDescriptor("icons/raspberry-pi-logo.png");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public List<EObject> getConnectors(RaspberryPi element) {
-		return (List)element.getConnectors();
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/ui/prototype/ProtoypeProvider.java b/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/ui/prototype/ProtoypeProvider.java
deleted file mode 100644
index 448ebb2f..00000000
--- a/org.fortiss.af3.platform.raspberry.ui/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/ui/prototype/ProtoypeProvider.java
+++ /dev/null
@@ -1,181 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.ui.prototype;
-
-import static org.fortiss.tooling.base.layout.DefaultLayoutConstants.DEFAULT_SHAPE_MINIMUM_HEIGHT;
-import static org.fortiss.tooling.base.layout.DefaultLayoutConstants.DEFAULT_SHAPE_MINIMUM_WIDTH;
-import static org.fortiss.tooling.base.ui.utils.LayoutDataUIUtils.setConnectorPosition;
-import static org.fortiss.tooling.base.utils.LayoutDataUtils.setNodeBounds;
-import static org.fortiss.tooling.base.utils.LayoutDataUtils.setNodePosition;
-import static org.fortiss.tooling.base.utils.LayoutModelElementFactory.createRectangle;
-
-import org.fortiss.af3.platform.raspberry.model.ActuatorPWM;
-import org.fortiss.af3.platform.raspberry.model.CanBus;
-import org.fortiss.af3.platform.raspberry.model.CanConnector;
-import org.fortiss.af3.platform.raspberry.model.GPI;
-import org.fortiss.af3.platform.raspberry.model.GPO;
-import org.fortiss.af3.platform.raspberry.model.RaspberryPi;
-import org.fortiss.af3.platform.raspberry.model.SensorIMU;
-import org.fortiss.af3.platform.raspberry.model.SensorLaserRangeFinder;
-import org.fortiss.af3.platform.raspberry.model.SensorLaserScanner;
-import org.fortiss.af3.platform.raspberry.model.WheelEncoder;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Button1;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Button2;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Button3;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Button4;
-import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonL1;
-import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonL2;
-import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonR1;
-import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonR2;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Left_StickX_Position;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Left_StickY_Position;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Right_StickX_Position;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Right_StickY_Position;
-import org.fortiss.af3.platform.raspberry.util.RaspberryModelElementFactory;
-import org.fortiss.tooling.kernel.extension.base.PrototypeProviderBase;
-import org.fortiss.tooling.kernel.extension.data.PrototypeCategory;
-
-/**
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class ProtoypeProvider extends PrototypeProviderBase {
-
-	/** Stores the category to display for these prototypes. */
-	protected final static String CATEGORY_NAME = "RaspberryPI Platform";
-	/** Category for gamepad elements. */
-	protected final static String GAMEPAD = "Gamepad";
-
-	/** {@inheritDoc} */
-	@Override
-	protected void registerPrototypes() {
-		RaspberryPi pi = RaspberryModelElementFactory.createRaspberryPi();
-		registerPrimaryPrototype("RaspberryPi", pi, CATEGORY_NAME);
-		PrototypeCategory prototypeCategory = registerPrototypeCategory(CATEGORY_NAME);
-		registerPrototypeCategory(prototypeCategory, GAMEPAD);
-
-		CanBus bus = RaspberryModelElementFactory.createCanBus();
-		setNodeBounds(bus,
-				createRectangle(0, 0, DEFAULT_SHAPE_MINIMUM_WIDTH, DEFAULT_SHAPE_MINIMUM_HEIGHT));
-		registerPrototype("CanBus", bus, CATEGORY_NAME);
-
-		CanConnector con = RaspberryModelElementFactory.createCanConnector();
-		setNodePosition(con, 0, 0);
-		setConnectorPosition(con, 0, 0);
-		registerPrototype("CanConnector", con, CATEGORY_NAME);
-
-		SensorIMU imu = RaspberryModelElementFactory.createSensorIMU();
-		setNodePosition(imu, 0, 0);
-		setConnectorPosition(imu, 0, 0);
-		registerPrototype("IMU_Sensor", imu, CATEGORY_NAME);
-
-		SensorLaserRangeFinder slrf = RaspberryModelElementFactory.createSensorLaserRangeFinder();
-		setNodePosition(slrf, 0, 0);
-		setConnectorPosition(slrf, 0, 0);
-		registerPrototype("LaserRangeFinder_Sensor", slrf, CATEGORY_NAME);
-
-		SensorLaserScanner sls = RaspberryModelElementFactory.createSensorLaserScanner();
-		setNodePosition(sls, 0, 0);
-		setConnectorPosition(sls, 0, 0);
-		registerPrototype("LaserScanner_Sensor", sls, CATEGORY_NAME);
-
-		ActuatorPWM pwm = RaspberryModelElementFactory.createActuatorPWM();
-		setNodePosition(pwm, 0, 0);
-		setConnectorPosition(pwm, 0, 0);
-		registerPrototype("PWM_Actuator", pwm, CATEGORY_NAME);
-
-		GPI gpi = RaspberryModelElementFactory.createGPI();
-		setNodePosition(gpi, 0, 0);
-		setConnectorPosition(gpi, 0, 0);
-		registerPrototype("GPI", gpi, CATEGORY_NAME);
-
-		GPO gpo = RaspberryModelElementFactory.createGPO();
-		setNodePosition(gpo, 0, 0);
-		setConnectorPosition(gpo, 0, 0);
-		registerPrototype("GPO", gpo, CATEGORY_NAME);
-
-		WheelEncoder wEncoder = RaspberryModelElementFactory.createWheelEncoder();
-		setNodePosition(wEncoder, 0, 0);
-		setConnectorPosition(wEncoder, 0, 0);
-		registerPrototype("WheelEncoder", wEncoder, CATEGORY_NAME);
-
-		Button1 button1 = RaspberryModelElementFactory.createButton1();
-		setNodePosition(button1, 0, 0);
-		setConnectorPosition(button1, 0, 0);
-		registerPrototype(button1.getName(), button1, GAMEPAD);
-
-		Button2 button2 = RaspberryModelElementFactory.createButton2();
-		setNodePosition(button2, 0, 0);
-		setConnectorPosition(button2, 0, 0);
-		registerPrototype(button2.getName(), button2, GAMEPAD);
-
-		Button3 button3 = RaspberryModelElementFactory.createButton3();
-		setNodePosition(button3, 0, 0);
-		setConnectorPosition(button3, 0, 0);
-		registerPrototype(button3.getName(), button3, GAMEPAD);
-
-		Button4 button4 = RaspberryModelElementFactory.createButton4();
-		setNodePosition(button4, 0, 0);
-		setConnectorPosition(button4, 0, 0);
-		registerPrototype(button4.getName(), button4, GAMEPAD);
-
-		ButtonL1 buttonL1 = RaspberryModelElementFactory.createButtonL1();
-		setNodePosition(buttonL1, 0, 0);
-		setConnectorPosition(buttonL1, 0, 0);
-		registerPrototype(buttonL1.getName(), buttonL1, GAMEPAD);
-
-		ButtonL2 buttonL2 = RaspberryModelElementFactory.createButtonL2();
-		setNodePosition(buttonL2, 0, 0);
-		setConnectorPosition(buttonL2, 0, 0);
-		registerPrototype(buttonL2.getName(), buttonL2, GAMEPAD);
-
-		ButtonR1 buttonR1 = RaspberryModelElementFactory.createButtonR1();
-		setNodePosition(buttonR1, 0, 0);
-		setConnectorPosition(buttonR1, 0, 0);
-		registerPrototype(buttonR1.getName(), buttonR1, GAMEPAD);
-
-		ButtonR2 buttonR2 = RaspberryModelElementFactory.createButtonR2();
-		setNodePosition(buttonR2, 0, 0);
-		setConnectorPosition(buttonR2, 0, 0);
-		registerPrototype(buttonR2.getName(), buttonR2, GAMEPAD);
-
-		Left_StickX_Position Left_StickX = RaspberryModelElementFactory.createLeftStickX();
-		setNodePosition(Left_StickX, 0, 0);
-		setConnectorPosition(Left_StickX, 0, 0);
-		registerPrototype(Left_StickX.getName(), Left_StickX, GAMEPAD);
-
-		Left_StickY_Position Left_StickY = RaspberryModelElementFactory.createLeftStickY();
-		setNodePosition(Left_StickY, 0, 0);
-		setConnectorPosition(Left_StickY, 0, 0);
-		registerPrototype(Left_StickY.getName(), Left_StickY, GAMEPAD);
-
-		Right_StickX_Position Right_StickX = RaspberryModelElementFactory.createRightStickX();
-		setNodePosition(Right_StickX, 0, 0);
-		setConnectorPosition(Right_StickX, 0, 0);
-		registerPrototype(Right_StickX.getName(), Right_StickX, GAMEPAD);
-
-		Right_StickY_Position Right_StickY = RaspberryModelElementFactory.createRightStickY();
-		setNodePosition(Right_StickY, 0, 0);
-		setConnectorPosition(Right_StickY, 0, 0);
-		registerPrototype(Right_StickY.getName(), Right_StickY, GAMEPAD);
-
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/.classpath b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/.classpath
deleted file mode 100644
index f440d5cd..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/.classpath
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="src" path="generated-src"/>
-	<classpathentry kind="output" path="build"/>
-</classpath>
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/.project b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/.project
deleted file mode 100644
index 896d6e89..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/.project
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.fortiss.af3.platform.raspberry</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.fortiss.ide.dev_tools.emf.builder.EcoreBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.fortiss.ide.dev_tools.warnings.RemoveWarningsBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.PluginNature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/META-INF/MANIFEST.MF b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/META-INF/MANIFEST.MF
deleted file mode 100644
index 0b3651d7..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,29 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: Fortiss AF3 Platform Raspberry
-Bundle-SymbolicName: org.fortiss.af3.platform.raspberry;singleton:=true
-Bundle-Version: 2.9.0.qualifier
-Bundle-ClassPath: .
-Bundle-Vendor: fortiss GmbH
-Bundle-Localization: plugin
-Bundle-RequiredExecutionEnvironment: JavaSE-1.8
-Export-Package: org.fortiss.af3.platform.raspberry.model,
- org.fortiss.af3.platform.raspberry.model.gamepad,
- org.fortiss.af3.platform.raspberry.model.gamepad.impl,
- org.fortiss.af3.platform.raspberry.model.gamepad.util,
- org.fortiss.af3.platform.raspberry.model.impl,
- org.fortiss.af3.platform.raspberry.model.util,
- org.fortiss.af3.platform.raspberry.util
-Bundle-ActivationPolicy: lazy
-Bundle-Activator: org.fortiss.af3.platform.raspberry.AF3PlatformRaspberryActivator
-Require-Bundle: org.fortiss.af3.project,
- org.fortiss.tooling.kernel;visibility:=reexport,
- org.eclipse.core.runtime,
- org.eclipse.emf.ecore;visibility:=reexport,
- org.fortiss.tooling.base;visibility:=reexport,
- org.fortiss.af3.platform;bundle-version="2.5.0";visibility:=reexport,
- org.fortiss.tooling.base.ui;bundle-version="2.11.0",
- org.fortiss.af3.generator.common
-Import-Package: org.fortiss.af3.deployment.generator,
- org.fortiss.af3.platform.model
-
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/buckminster.cspex b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/buckminster.cspex
deleted file mode 100644
index 6f45c454..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/buckminster.cspex
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<cspecExtension
-	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0"
-	xmlns="http://www.eclipse.org/buckminster/CSpec-1.0">
-	<actions>
-		<!-- Place your Actions here -->
-		<public name="generate-ecore" actor="jdt.ant" always="true">
-            <actorProperties>
-                <property key="buildFile" value="model/generate-ecore.xml" />
-                <property key="targets" value="generate-ecore"/>
-            </actorProperties>
-            <products>
-                <path path="generated-src" />
-            </products>
-        </public>
-	</actions>
-	<alterGroups>
-        <!-- Place your Group alterations here -->
-        <public name="eclipse.build.source">
-            <attribute name="generate-ecore"/>
-        </public>
-    </alterGroups>
-</cspecExtension>
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/build.properties b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/build.properties
deleted file mode 100644
index f47685fe..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/build.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-# <copyright>
-# </copyright>
-#
-# $Id$
-
-bin.includes = .,\
-               model/,\
-               META-INF/,\
-               plugin.xml,\
-               plugin.properties
-source.. = src/,\
-           generated-src/
-output.. = build/
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/Makedefs b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/Makedefs
deleted file mode 100644
index 30b33f53..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/Makedefs
+++ /dev/null
@@ -1,47 +0,0 @@
-# The default application name.
-ifndef APPL
-    APPL=my_app
-endif
-
-# The default build path.
-ifndef BPATH
-    BPATH=build
-endif
-
-# The compiler.
-ifndef CROSSCC
-    CROSSCC=gcc
-endif
-
-# The linker.
-ifndef CROSSLD
-    CROSSLD=gcc
-endif
-
-# The flags which are passed to the compiler and the linker.
-CCFLAGS+=-std=gnu99 -Wall -pthread -lwiringPi -pedantic -c ${patsubst %,-I%,${subst :, ,${IPATH}}}
-LDFLAGS+=-std=gnu99 -Wall -pthread -lpthread -lwiringPi -pedantic
-
-# The default rules, i.e. the entry point.
-all: ${BPATH}
-all: ${BPATH}/${APPL}.run
-
-# The target to clean the build directory.
-clean:
-	@echo "cleaning up path '${BPATH}' ..."
-	@rm -rf ${BPATH}
-
-# The rule for creating the build directory.
-${BPATH}:
-	@echo "creating path '${BPATH}' ..."
-	@mkdir ${BPATH}
-
-# The rule for building an object file from the corresponding C source file.
-${BPATH}/%.o: %.c
-	@echo "compiling file '${<}' ..."
-	@${CROSSCC} ${CCFLAGS} -o ${@} ${<}
-
-# The rule for linking an application.
-${BPATH}/%.run:
-	@echo "linking application '${@}' ..."
-	@${CROSSLD} ${LDFLAGS} -o ${@} $(filter %.o %.a, ${^})
\ No newline at end of file
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc-gen/data_dictionary.h b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc-gen/data_dictionary.h
deleted file mode 100644
index b9570e11..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc-gen/data_dictionary.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/* generated by AutoFOCUS 3 (2.11.0) on Tue May 16 17:42:09 CEST 2017 */
-#ifndef __HEADER_data_dictionary_h
-#define __HEADER_data_dictionary_h
-#if defined(__cplusplus)
-typedef bool GEN_TYPE_boolean;
-#else
-typedef enum Enum_TYPE_boolean {
-	false = 0, true = 1
-} GEN_TYPE_boolean;
-#endif
-
-typedef int GEN_TYPE_int;
-
-typedef double GEN_TYPE_double;
-
-/*extern GEN_TYPE_double abs(GEN_TYPE_double _V);
-
-extern GEN_TYPE_double arctan(GEN_TYPE_double _V);
-
-extern GEN_TYPE_double cos(GEN_TYPE_double _V);
-
-extern GEN_TYPE_double cot(GEN_TYPE_double _V);
-
-extern GEN_TYPE_double e();
-
-extern GEN_TYPE_double exp(GEN_TYPE_double _V);
-
-extern GEN_TYPE_double ln(GEN_TYPE_double _V);
-
-extern GEN_TYPE_double pi();
-
-extern GEN_TYPE_double sgn(GEN_TYPE_double _V);
-
-extern GEN_TYPE_double sin(GEN_TYPE_double _V);
-
-extern GEN_TYPE_double sqrt(GEN_TYPE_double _V);
-
-extern GEN_TYPE_double tan(GEN_TYPE_double _V);
-
-extern GEN_TYPE_double _sqrt(GEN_TYPE_double _X,GEN_TYPE_double _V);
-
-extern GEN_TYPE_double pow(GEN_TYPE_double _V,GEN_TYPE_double _N);
-
-extern GEN_TYPE_double factorial(GEN_TYPE_double _V);
-
-extern GEN_TYPE_double min(GEN_TYPE_double _a,GEN_TYPE_double _b);
-
-extern GEN_TYPE_double max(GEN_TYPE_double _a,GEN_TYPE_double _b);
-
-extern GEN_TYPE_double rad2deg(GEN_TYPE_double _A);
-
-extern GEN_TYPE_double deg2rad(GEN_TYPE_double _A);*/
-
-#endif // __HEADER_data_dictionary_h
-
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/CanConnector.h b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/CanConnector.h
deleted file mode 100644
index a75fa33e..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/CanConnector.h
+++ /dev/null
@@ -1,46 +0,0 @@
-#ifndef __CANCONNECTOR_H
-#define __CANCONNECTOR_H
-
-#include <stdio.h>
-
-#include "inc/libcansocket.h"
-#include "inc-gen/data_dictionary.h"
-
-// types
-typedef const char* CAN_MSG_T;
-typedef unsigned long CAN_CLK_T;
-
-// constants
-extern const char* CAN_DEVICE_NAME;
-
-// send and receive
-void can_send();
-void can_send_clock(CAN_CLK_T counter);
-void can_receive();
-CAN_CLK_T can_receive_clock();
-
-// init, terminate, prepare
-void can_init();
-void can_term();
-
-void prepare_input_CanConnector();
-void finish_input_CanConnector();
-
-void prepare_output_CanConnector();
-void finish_output_CanConnector();
-
-// noval
-GEN_TYPE_boolean can_is_noval(CAN_MSG_T msg);
-GEN_TYPE_boolean can_set_noval(CAN_MSG_T msg);
-
-// readers
-GEN_TYPE_boolean can_read_bool(CAN_MSG_T msg);
-GEN_TYPE_double can_read_double(CAN_MSG_T msg);
-GEN_TYPE_int can_read_int(CAN_MSG_T pomsgrt);
-
-// writers
-void can_write_bool(CAN_MSG_T msg, GEN_TYPE_boolean value);
-void can_write_double(CAN_MSG_T msg, GEN_TYPE_double value);
-void can_write_int(CAN_MSG_T msg, GEN_TYPE_int value);
-
-#endif // __CANCONNECTOR_H
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/GPIO.h b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/GPIO.h
deleted file mode 100644
index b725758a..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/GPIO.h
+++ /dev/null
@@ -1,27 +0,0 @@
-#ifndef __GPIO_H
-#define __GPIO_H
-
-#include <stdio.h>
-#include <wiringPi.h>
-#include "inc-gen/data_dictionary.h"
-
-// types
-typedef int GPIO_PIN_T;
-
-// init, term
-void gpio_init(GPIO_PIN_T pin);
-void gpio_init_in(GPIO_PIN_T pin);
-void gpio_init_out(GPIO_PIN_T pin);
-void gpio_term(GPIO_PIN_T pin);
-
-// noval
-GEN_TYPE_boolean gpio_is_noval(GPIO_PIN_T pin);
-void gpio_set_noval(GPIO_PIN_T pin);
-
-// readers
-GEN_TYPE_boolean gpio_read(GPIO_PIN_T pin);
-
-// writers
-void gpio_write(GPIO_PIN_T pin, GEN_TYPE_boolean value);
-
-#endif // __GPIO_H
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/Gamepad.h b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/Gamepad.h
deleted file mode 100644
index 0e818c4d..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/Gamepad.h
+++ /dev/null
@@ -1,91 +0,0 @@
-#ifndef __GAMEPAD_H
-#define __GAMEPAD_H
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <inttypes.h>
-#include <sys/stat.h>
-#include <sys/types.h>
-#include <unistd.h>
-#include <fcntl.h>
-#include <unistd.h>
-
-#include "inc-gen/data_dictionary.h"
-
-// constants
-#define JS_EVENT_BUTTON 0x01
-#define JS_EVENT_AXIS   0x02
-#define JS_EVENT_INIT   0x80
-
-extern const char* GP_DEVICE_NAME;
-
-// types etc
-union input_events {
-    struct input_btns {
-        int16_t js1_lr; // LX
-        int16_t js1_ud; // LY
-        int16_t js2_lr; // RX
-        int16_t js2_ud; // RY
-        int16_t gp_lr;  // GPX
-        int16_t gp_ud;  // GPY
-        int16_t bt_tri; // BTN1
-        int16_t bt_cir; // BTN2
-        int16_t bt_x;   // BTN3
-        int16_t bt_sqr; // BTN4
-        int16_t bt_l1;  // L1
-        int16_t bt_r1;  // R1
-        int16_t bt_l2;  // L2
-        int16_t bt_r2;  // R2
-        int16_t bt_sel; // SELECT
-        int16_t bt_strt;// START
-        int16_t js1_bt; // LCLICK
-        int16_t js2_bt; // RCLICK
-    } btns;
-    int16_t inps[18];
-};
-
-struct js_event {
-    uint32_t time;  // event time stamp in millisecons
-    int16_t value;  // value
-    uint8_t type;   // event type
-    uint8_t number; // axis/button number
-};
-
-extern volatile union input_events ie;
-
-// worker
-void* gp_worker(void* pt_args);
-
-// init, term
-void gp_init();
-void gp_term();
-
-// readers
-GEN_TYPE_boolean gp_btn1_read();
-GEN_TYPE_boolean gp_btn2_read();
-GEN_TYPE_boolean gp_btn3_read();
-GEN_TYPE_boolean gp_btn4_read();
-GEN_TYPE_boolean gp_btnL1_read();
-GEN_TYPE_boolean gp_btnL2_read();
-GEN_TYPE_boolean gp_btnR1_read();
-GEN_TYPE_boolean gp_btnR2_read();
-GEN_TYPE_double gp_btnLX_read();
-GEN_TYPE_double gp_btnLY_read();
-GEN_TYPE_double gp_btnRX_read();
-GEN_TYPE_double gp_btnRY_read();
-
-// noval
-GEN_TYPE_boolean gp_btn1_is_noval();
-GEN_TYPE_boolean gp_btn2_is_noval();
-GEN_TYPE_boolean gp_btn3_is_noval();
-GEN_TYPE_boolean gp_btn4_is_noval();
-GEN_TYPE_boolean gp_btnL1_is_noval();
-GEN_TYPE_boolean gp_btnL2_is_noval();
-GEN_TYPE_boolean gp_btnR1_is_noval();
-GEN_TYPE_boolean gp_btnR2_is_noval();
-GEN_TYPE_boolean gp_btnLX_is_noval();
-GEN_TYPE_boolean gp_btnLY_is_noval();
-GEN_TYPE_boolean gp_btnRX_is_noval();
-GEN_TYPE_boolean gp_btnRY_is_noval();
-
-#endif // __GAMEPAD_H
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/IMU.h b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/IMU.h
deleted file mode 100644
index e69de29b..00000000
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/LaserRangeFinder.h b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/LaserRangeFinder.h
deleted file mode 100644
index 75cab869..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/LaserRangeFinder.h
+++ /dev/null
@@ -1,20 +0,0 @@
-#ifndef __LASERRANGEFINDER_H
-#define __LASERRANGEFINDER_H
-
-#include <stdlib.h>
-	
-#include "inc-gen/data_dictionary.h"
-#include "inc/libuart.h"
-
-// constants
-const char* LRF_DEVICE_NAME;
-
-// init, terminate
-void lrf_init();
-void lrf_term();
-
-// getters
-GEN_TYPE_boolean lrf_is_noval();
-GEN_TYPE_int lrf_read();
-
-#endif // __LASERRANGEFINDER_H
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/LaserScanner.h b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/LaserScanner.h
deleted file mode 100644
index e69de29b..00000000
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/PWM.h b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/PWM.h
deleted file mode 100644
index 8b72ff55..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/PWM.h
+++ /dev/null
@@ -1,39 +0,0 @@
-#ifndef __PWM_H
-#define __PWM_H
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <termios.h>
-#include <fcntl.h>
-#include <sys/stat.h>
-
-#include "inc-gen/data_dictionary.h"
-#include "inc/libmaestro.h"
-
-// macros
-// 	6072 is the value for 0, max. value to motor is currently 7572
-//	from AF3 you get a max. speed value in mm/s : 1471
-//	Hence, add the constant 6072 and map values -1471-1471 to -1500-1500
-#define PWM_ADJUST_VALUE(x) (6072 + 1500 * x /1471)
-
-// types
-typedef unsigned char PWM_CHANNEL_T;
-
-// constants
-extern const int PWM_SLEEP_TIME;
-extern const char* PWM_DEVICE_NAME;
-extern const size_t PWM_MAX_NO_CHANNELS;
-
-// worker
-void* pwm_worker(void* pt_args);
-
-// init, term
-void pwm_init(PWM_CHANNEL_T channel);
-void pwm_term(PWM_CHANNEL_T channel);
-
-// writers
-void pwm_write(PWM_CHANNEL_T channel, GEN_TYPE_int value);
-void pwm_set_noval(PWM_CHANNEL_T channel);
-
-#endif // __PWM_H
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/io.h b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/io.h
deleted file mode 100644
index 12856441..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/io.h
+++ /dev/null
@@ -1,25 +0,0 @@
-#ifndef __IO_H
-#define __IO_H
-
-#include "inc-gen/data_dictionary.h"
-
-// init, terminate
-void init_left_stick();
-void term_left_stick();
-
-void init_right_stick();
-void term_right_stick();
-
-// NOVAL
-GEN_TYPE_boolean is_noval_left_stick();
-GEN_TYPE_boolean is_noval_right_stick();
-
-// readers
-GEN_TYPE_double read_left_stick();
-GEN_TYPE_double read_right_stick();
-
-// writers
-void write_left_stick(GEN_TYPE_double value);
-void write_right_stick(GEN_TYPE_double value);
-
-#endif // __IO_H
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/libcansocket.h b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/libcansocket.h
deleted file mode 100644
index a791bad0..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/libcansocket.h
+++ /dev/null
@@ -1,43 +0,0 @@
-#ifndef __LIBCANSOCKET_H
-#define __LIBCANSOCKET_H
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <unistd.h>
-
-#include <net/if.h>
-#include <sys/ioctl.h>
-
-#include <linux/can.h>
-#include <linux/can/raw.h>
-
-#define SR_ERR -1
-
-struct can_socket {
-    int s;
-    struct sockaddr_can addr;
-    struct ifreq ifr;
-};
-
-/**
- * Opens a can socket on the given interface
- */
-struct can_socket* can_socket_open(const char *if_name);
-
-/**
- * Closes a given socket
- */
-void can_socket_close(struct can_socket* sock);
-
-/**
- * Sends a can frame on the specified socket
- */
-ssize_t can_socket_send(struct can_socket* sock, struct can_frame* frame);
-
-/**
- * 
- */
-ssize_t can_socket_receive(struct can_socket* sock, struct can_frame* frame);
-
-#endif // __LIBCANSOCKET_H
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/libmaestro.h b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/libmaestro.h
deleted file mode 100644
index 22f83e05..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/libmaestro.h
+++ /dev/null
@@ -1,12 +0,0 @@
-#ifndef __LIBMAESTRO_H
-#define __LIBMAESTRO_H
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <termios.h>
-
-int maestroRead(int fd, unsigned char channel);
-int maestroWrite(int fd, unsigned char channel, unsigned short target);
-
-#endif // __LIBMAESTRO_H
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/libuart.h b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/libuart.h
deleted file mode 100644
index 2861d5aa..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/inc/libuart.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/**
- * @file uart.h
- * @author Bianca Forkel
- */
-
-#ifndef MBSE_UART_H
-#define MBSE_UART_H
-
-#include <stdio.h>
-#include <string.h>
-#include <unistd.h>
-#include <fcntl.h>
-#include <termios.h>
-#include <errno.h>
-#include <sys/stat.h>
-#include <sys/types.h>
-#include <sys/select.h>
-
-extern int  uart_filestream;
-
-char port[13];
-
-int uart_setup(const char*);
-
-int uart_send_byte(char, int);
-
-int uart_send_string(char*, int, int);
-
-int uart_receive(char*, int, int);
-
-void uart_close();
-
-void uart_flush();
-
-#endif
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src-gen/data_dictionary.c b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src-gen/data_dictionary.c
deleted file mode 100644
index 1d778b9d..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src-gen/data_dictionary.c
+++ /dev/null
@@ -1,170 +0,0 @@
-/* generated by AutoFOCUS 3 (2.11.0) on Tue May 16 17:42:09 CEST 2017 */
-#include "inc-gen/data_dictionary.h"
-
-/*GEN_TYPE_double abs(GEN_TYPE_double _V){
-	return _V * sgn(_V);
-}
-
-GEN_TYPE_double arctan(GEN_TYPE_double _V){
-	if (abs(_V) <= 1.0) {
-		return _V / (1 + (0.28 * _V) * _V);
-	}
-	else {
-		if (_V > 1) {
-			return pi() / 2.0 - _V / (_V * _V + 0.28);
-		}
-		else {
-			return -(pi() / 2.0) - _V / (_V * _V + 0.28);
-		}
-	}
-}
-
-GEN_TYPE_double cos(GEN_TYPE_double _V){
-	return sin((_V + pi() / 2.0));
-}
-
-GEN_TYPE_double cot(GEN_TYPE_double _V){
-	return cos(_V) / sin(_V);
-}
-
-GEN_TYPE_double e(){
-	return 2.718281828459;
-}
-
-GEN_TYPE_double exp(GEN_TYPE_double _V){
-	return ((((1 + _V) + (_V * _V) / 2) + ((_V * _V) * _V) / 6) + (((_V * _V) * _V) * _V) / 24) + ((((_V * _V) * _V) * _V) * _V) / 120;
-}
-
-GEN_TYPE_double ln(GEN_TYPE_double _V){
-	if (_V <= 0) {
-		return 0;
-	}
-	else {
-		return ((((_V - 1.0) - ((_V - 1.0) * (_V - 1.0)) / 2.0) + (((_V - 1) * (_V - 1)) * (_V - 1)) / 3.0) - ((((_V - 1) * (_V - 1)) * (_V - 1)) * (_V - 1)) / 4.0) + (((((_V - 1) * (_V - 1)) * (_V - 1)) * (_V - 1)) * (_V - 1)) / 5.0;
-	}
-}
-
-GEN_TYPE_double pi(){
-	return 3.14159265;
-}
-
-GEN_TYPE_double sgn(GEN_TYPE_double _V){
-	if (_V < 0) {
-		return -1;
-	}
-	else {
-		if (_V == 0) {
-			return 0;
-		}
-		else {
-			return 1;
-		}
-	}
-}
-
-GEN_TYPE_double sin(GEN_TYPE_double _V){
-	if (_V % (2 * pi()) < 0) {
-		return -sin((-_V));
-	}
-	else {
-		if (_V % (2 * pi()) > pi()) {
-			return -sin((_V % (2 * pi()) - pi()));
-		}
-		else {
-			if (_V % (2 * pi()) < 0) {
-				if (1.27323954 * (_V % (2 * pi())) + (0.405284735 * (_V % (2 * pi()))) * (_V % (2 * pi())) < 0) {
-					return 0.225 * ((1.27323954 * (_V % (2 * pi())) + (0.405284735 * (_V % (2 * pi()))) * (_V % (2 * pi()))) * -(1.27323954 * (_V % (2 * pi())) + (0.405284735 * (_V % (2 * pi()))) * (_V % (2 * pi()))) - (1.27323954 * (_V % (2 * pi())) + (0.405284735 * (_V % (2 * pi()))) * (_V % (2 * pi())))) + (1.27323954 * (_V % (2 * pi())) + (0.405284735 * (_V % (2 * pi()))) * (_V % (2 * pi())));
-				}
-				else {
-					return 0.225 * ((1.27323954 * (_V % (2 * pi())) + (0.405284735 * (_V % (2 * pi()))) * (_V % (2 * pi()))) * (1.27323954 * (_V % (2 * pi())) + (0.405284735 * (_V % (2 * pi()))) * (_V % (2 * pi()))) - (1.27323954 * (_V % (2 * pi())) + (0.405284735 * (_V % (2 * pi()))) * (_V % (2 * pi())))) + (1.27323954 * (_V % (2 * pi())) + (0.405284735 * (_V % (2 * pi()))) * (_V % (2 * pi())));
-				}
-			}
-			else {
-				if (1.27323954 * (_V % (2 * pi())) - (0.405284735 * (_V % (2 * pi()))) * (_V % (2 * pi())) < 0) {
-					return 0.225 * ((1.27323954 * (_V % (2 * pi())) - (0.405284735 * (_V % (2 * pi()))) * (_V % (2 * pi()))) * -(1.27323954 * (_V % (2 * pi())) - (0.405284735 * (_V % (2 * pi()))) * (_V % (2 * pi()))) - (1.27323954 * (_V % (2 * pi())) - (0.405284735 * (_V % (2 * pi()))) * (_V % (2 * pi())))) + (1.27323954 * (_V % (2 * pi())) - (0.405284735 * (_V % (2 * pi()))) * (_V % (2 * pi())));
-				}
-				else {
-					return 0.225 * ((1.27323954 * (_V % (2 * pi())) - (0.405284735 * (_V % (2 * pi()))) * (_V % (2 * pi()))) * (1.27323954 * (_V % (2 * pi())) - (0.405284735 * (_V % (2 * pi()))) * (_V % (2 * pi()))) - (1.27323954 * (_V % (2 * pi())) - (0.405284735 * (_V % (2 * pi()))) * (_V % (2 * pi())))) + (1.27323954 * (_V % (2 * pi())) - (0.405284735 * (_V % (2 * pi()))) * (_V % (2 * pi())));
-				}
-			}
-		}
-	}
-}
-
-GEN_TYPE_double sqrt(GEN_TYPE_double _V){
-	if (_V <= 0) {
-		return 0;
-	}
-	else {
-		return _sqrt(_V, _sqrt(_V, _sqrt(_V, _sqrt(_V, _sqrt(_V, _sqrt(_V, _sqrt(_V, _sqrt(_V, _sqrt(_V, _sqrt(_V, ((_V + 1.0) / 2.0)))))))))));
-	}
-}
-
-GEN_TYPE_double tan(GEN_TYPE_double _V){
-	return sin(_V) / cos(_V);
-}
-
-GEN_TYPE_double _sqrt(GEN_TYPE_double _X,GEN_TYPE_double _V){
-	return 0.5 * (_V + _X / _V);
-}
-
-GEN_TYPE_double pow(GEN_TYPE_double _V,GEN_TYPE_double _N){
-	if (_N == 0) {
-		return 1;
-	}
-	else {
-		if (_N < 0) {
-			if (_V == 0) {
-				return 0;
-			}
-			else {
-				return 1.0 / pow(_V, (-_N));
-			}
-		}
-		else {
-			if (_N == 1) {
-				return _V;
-			}
-			else {
-				return _V * pow(_V, (_N - 1));
-			}
-		}
-	}
-}
-
-GEN_TYPE_double factorial(GEN_TYPE_double _V){
-	if (_V % 1 != 0) {
-		return factorial((_V - _V % 1));
-	}
-	else {
-		if (_V == 0 || _V == 1) {
-			return 1;
-		}
-		else {
-			return factorial((_V - 1)) * _V;
-		}
-	}
-}
-
-GEN_TYPE_double min(GEN_TYPE_double _a,GEN_TYPE_double _b){
-	if (_a < _b) {
-		return _a;
-	}
-	return _b;
-}
-
-GEN_TYPE_double max(GEN_TYPE_double _a,GEN_TYPE_double _b){
-	if (_a > _b) {
-		return _a;
-	}
-	return _b;
-}
-
-GEN_TYPE_double rad2deg(GEN_TYPE_double _A){
-	return (_A / pi()) * 180.0;
-}
-
-GEN_TYPE_double deg2rad(GEN_TYPE_double _A){
-	return (_A / 180.0) * pi();
-}*/
-
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/CanConnector.c b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/CanConnector.c
deleted file mode 100644
index 196072d4..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/CanConnector.c
+++ /dev/null
@@ -1,84 +0,0 @@
-
-#include "inc/CanConnector.h"
-
-// constants
-const char* CAN_DEVICE_NAME = "can0";
-
-// variables
-struct can_socket* can_sock;
-
-// send and receive
-void can_send() {
-    // TODO send and empty buffer
-}
-
-void can_send_clock(CAN_CLK_T counter) {
-    // TODO send clock message with clock counter
-}
-
-void can_receive() {
-    // TODO fill buffer
-}
-
-CAN_CLK_T can_receive_clock() {
-    // TODO receive clock message and return clock counter
-}
-
-// init, terminate
-void can_init() {
-    printf("initializing CAN\n");
-
-    can_sock = can_socket_open(CAN_DEVICE_NAME);
-
-    // TODO init buffers
-}
-
-void can_term() {
-    printf("terminating CAN\n");
-
-    can_socket_close(can_sock);
-}
-
-void prepare_input_CanConnector() {}
-
-void finish_input_CanConnector() {}
-
-void prepare_output_CanConnector() {}
-
-void finish_output_CanConnector() {}
-
-// noval
-GEN_TYPE_boolean can_is_noval(CAN_MSG_T msg) {
-    return false;
-}
-
-GEN_TYPE_boolean can_set_noval(CAN_MSG_T msg) {
-    return false;
-}
-
-// readers
-GEN_TYPE_boolean can_read_bool(CAN_MSG_T msg) {
-    return false; // TODO
-}
-
-GEN_TYPE_double can_read_double(CAN_MSG_T msg) {
-    return 0.0; // TODO
-}
-
-GEN_TYPE_int can_read_int(CAN_MSG_T msg) {
-    return 0; // TODO
-}
-
-// writers
-void can_write_bool(CAN_MSG_T msg, GEN_TYPE_boolean value) {
-    // TODO
-}
-
-void can_write_double(CAN_MSG_T msg, GEN_TYPE_double value) {
-    // TODO
-}
-
-void can_write_int(CAN_MSG_T msg, GEN_TYPE_int value) {
-    // TODO
-}
-
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/GPIO.c b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/GPIO.c
deleted file mode 100644
index 35593258..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/GPIO.c
+++ /dev/null
@@ -1,56 +0,0 @@
-#include "inc/GPIO.h"
-
-// init, term
-GEN_TYPE_boolean gpio_initialized = false;
-GEN_TYPE_boolean gpio_terminated = false;
-
-void gpio_init(GPIO_PIN_T pin) {
-    // important, since all pins are accessing the same method
-    if(gpio_initialized) return;
-
-    if(wiringPiSetup() == -1) {
-        perror("cannot setup wiring pi\n");
-	return;
-    }
-
-    gpio_initialized = true;
-}
-
-void gpio_init_in(GPIO_PIN_T pin) {
-    gpio_init(pin);
-
-    pinMode(pin, INPUT);
-}
-
-void gpio_init_out(GPIO_PIN_T pin) {
-    gpio_init(pin);
-
-    pinMode(pin, OUTPUT);
-}
-
-void gpio_term(GPIO_PIN_T pin) {
-    // important, since all pins are accessing the same method
-    if(gpio_terminated) return;
-
-    gpio_terminated = false;
-}
-
-// noval
-GEN_TYPE_boolean gpio_is_noval(GPIO_PIN_T pin) {
-    return false;
-}
-
-void gpio_set_noval(GPIO_PIN_T pin) {
-    // do nothing
-}
-
-// readers
-GEN_TYPE_boolean gpio_read(GPIO_PIN_T pin) {
-    return digitalRead(pin);
-}
-
-// writers
-void gpio_write(GPIO_PIN_T pin, GEN_TYPE_boolean value) {
-    digitalWrite(pin, value);
-}
-
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/Gamepad.c b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/Gamepad.c
deleted file mode 100644
index c3134d4f..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/Gamepad.c
+++ /dev/null
@@ -1,276 +0,0 @@
-
-#include "inc/Gamepad.h"
-
-// constants
-const char* GP_DEVICE_NAME = "/dev/input/js0";
-
-// variables
-volatile union input_events ie; // stores the button values
-
-// worker
-GEN_TYPE_boolean gp_is_running = true;
-
-void* gp_worker(void* pt_args) {
-    int fd;
-    fd = open(GP_DEVICE_NAME, O_RDONLY);
-
-    if(fd <= 0) {
-        perror("Error while connecting to gamepad device. Aborting");
-        return NULL;
-    }
-
-    struct timeval timeout;
-    struct js_event jse;
-    fd_set read_fds, write_fds, except_fds;
-
-    // loop until terminated...
-    while(gp_is_running) {
-        FD_ZERO(&read_fds);
-        FD_ZERO(&write_fds);
-        FD_ZERO(&except_fds);
-        FD_SET(fd, &read_fds);
-
-        timeout.tv_sec = 0;
-        timeout.tv_usec = 25000;
-
-        if (select(fd + 1, &read_fds, &write_fds, &except_fds, &timeout) == 1) {
-            if(read(fd,&jse,sizeof(jse)) == sizeof(jse)) {
-                jse.type &= ~JS_EVENT_INIT;
-
-                if(jse.type == JS_EVENT_AXIS) {
-                    ie.inps[jse.number] = jse.value;
-
-                    #ifdef DEBUG
-                    printf("Axis %d %d\n", jse.number, jse.value);
-                    #endif // DEBUG
-                }
-
-                if(jse.type == JS_EVENT_BUTTON) {
-                    ie.inps[jse.number + 6] = jse.value;
-
-                    #ifdef DEBUG
-                    printf("Button %d %d\n",jse.number, jse.value);
-                    #endif // DEBUG
-                }
-            }
-        }
-    }
-
-    close(fd);
-
-    return NULL;
-}
-
-// init, term
-GEN_TYPE_boolean gp_initialized = false;
-GEN_TYPE_boolean gp_terminated = false;
-
-void gp_init() {
-    // important, since all btns are accessing the same method
-    if(gp_initialized) return;
-	
-	// Initialize Joystick Inputs to 0
-	ie.btns.js1_ud = 0;
-	ie.btns.js2_lr = 0;
-	ie.btns.js2_ud = 0;
-	
-	// Initialize Button inputs to NoVal
-	ie.btns.bt_tri = 2;
-	ie.btns.bt_cir = 2;
-	ie.btns.bt_x = 2;
-	ie.btns.bt_sqr = 2;
-	ie.btns.bt_l1 = 2;
-	ie.btns.bt_l2 = 2;
-	ie.btns.bt_r1 = 2;
-	ie.btns.bt_r2 = 2;
-	
-    gp_initialized = true;
-}
-
-void gp_term() {
-    // important, since all btns are accessing the same method
-    if(gp_terminated) return;
-
-    gp_terminated = false;
-    gp_is_running = false;
-}
-
-// readers: Return button values (1 is true, 0 is false, 2 is NoVal)
-// important: Reset button values to NoVal after reading
-GEN_TYPE_boolean gp_btn1_read() {
-    if (ie.btns.bt_tri == 1)
-	{
-		ie.btns.bt_tri = 2;
-		return 1;
-	}
-	else
-	{
-		ie.btns.bt_tri = 2;
-		return 0;
-	}
-}
-
-GEN_TYPE_boolean gp_btn2_read() {
-    if (ie.btns.bt_cir == 1)
-	{
-		ie.btns.bt_cir = 2;
-		return 1;
-	}
-	else
-	{
-		ie.btns.bt_cir = 2;
-		return 0;
-	}
-}
-
-GEN_TYPE_boolean gp_btn3_read() {
-    if (ie.btns.bt_x == 1)
-	{
-		ie.btns.bt_x = 2;
-		return 1;
-	}
-	else
-	{
-		ie.btns.bt_x = 2;
-		return 0;
-	}
-}
-
-GEN_TYPE_boolean gp_btn4_read() {
-    if (ie.btns.bt_sqr == 1)
-	{
-		ie.btns.bt_sqr = 2;
-		return 1;
-	}
-	else
-	{
-		ie.btns.bt_sqr = 2;
-		return 0;
-	}
-}
-
-GEN_TYPE_boolean gp_btnL1_read() {
-    if (ie.btns.bt_l1 == 1)
-	{
-		ie.btns.bt_l1 = 2;
-		return 1;
-	}
-	else
-	{
-		ie.btns.bt_l1 = 2;
-		return 0;
-	}
-}
-
-GEN_TYPE_boolean gp_btnL2_read() {
-    if (ie.btns.bt_l2 == 1)
-	{
-		ie.btns.bt_l2 = 2;
-		return 1;
-	}
-	else
-	{
-		ie.btns.bt_l2 = 2;
-		return 0;
-	}
-}
-
-GEN_TYPE_boolean gp_btnR1_read() {
-    if (ie.btns.bt_r1 == 1)
-	{
-		ie.btns.bt_r1 = 2;
-		return 1;
-	}
-	else
-	{
-		ie.btns.bt_r1 = 2;
-		return 0;
-	}
-}
-
-GEN_TYPE_boolean gp_btnR2_read() {
-    if (ie.btns.bt_r2 == 1)
-	{
-		ie.btns.bt_r2 = 2;
-		return 1;
-	}
-	else
-	{
-		ie.btns.bt_r2 = 2;
-		return 0;
-	}
-}
-
-GEN_TYPE_double gp_btnLX_read() {
-    return ie.btns.js1_lr;
-}
-
-GEN_TYPE_double gp_btnLY_read() {
-    return -ie.btns.js1_ud;
-}
-
-GEN_TYPE_double gp_btnRX_read() {
-    return ie.btns.js2_lr;
-}
-
-GEN_TYPE_double gp_btnRY_read() {
-    return -ie.btns.js2_ud;
-}
-
-// noval
-GEN_TYPE_boolean gp_btn1_is_noval() {
-    if (ie.btns.bt_tri == 2) return 1;
-	return 0;
-}
-
-GEN_TYPE_boolean gp_btn2_is_noval() {
-    if (ie.btns.bt_cir == 2) return 1;
-	return 0;
-}
-
-GEN_TYPE_boolean gp_btn3_is_noval() {
-    if (ie.btns.bt_x == 2) return 1;
-	return 0;
-}
-
-GEN_TYPE_boolean gp_btn4_is_noval() {
-    if (ie.btns.bt_sqr == 2) return 1;
-	return 0;
-}
-
-GEN_TYPE_boolean gp_btnL1_is_noval() {
-    if (ie.btns.bt_l1 == 2) return 1;
-	return 0;
-}
-
-GEN_TYPE_boolean gp_btnL2_is_noval() {
-    if (ie.btns.bt_l2 == 2) return 1;
-	return 0;
-}
-
-GEN_TYPE_boolean gp_btnR1_is_noval() {
-    if (ie.btns.bt_r1 == 2) return 1;
-	return 0;
-}
-
-GEN_TYPE_boolean gp_btnR2_is_noval() {
-    if (ie.btns.bt_r2 == 2) return 1;
-	return 0;
-}
-
-GEN_TYPE_boolean gp_btnLX_is_noval() {
-    return false;
-}
-
-GEN_TYPE_boolean gp_btnLY_is_noval() {
-    return false;
-}
-
-GEN_TYPE_boolean gp_btnRX_is_noval() {
-    return false;
-}
-
-GEN_TYPE_boolean gp_btnRY_is_noval() {
-    return false;
-}
-
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/IMU.c b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/IMU.c
deleted file mode 100644
index e69de29b..00000000
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/LaserRangeFinder.c b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/LaserRangeFinder.c
deleted file mode 100644
index 6a73d303..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/LaserRangeFinder.c
+++ /dev/null
@@ -1,102 +0,0 @@
-
-#include "inc/LaserRangeFinder.h"
-
-int timeout;
-
-/** Initialize the laser range finder. */
-void lrf_init() {
-    timeout = 0;
-
-    char port[100];
-    FILE* fp = popen("ls -d /dev/serial/by-id/* | grep \"Arduino_Micro\" | tr -d \"\n\"", "r");
-    fgets(port, sizeof(port), fp);
-
-
-    printf("lrf port=%s\n", port);
-    pclose(fp);
-
-    uart_setup(port);
-}
-
-/** Terminate the session. */
-void lrf_term() {
-    uart_close();
-}
-
-/** Checking for noVal. */
-GEN_TYPE_boolean lrf_is_noval() {
-    return false;
-}
-
-/** Get one distance measurement from the laser range finder. */
-GEN_TYPE_int lrf_read() {
-
-    if(timeout>1000)
-        lrf_init();
-
-    if (uart_filestream == -1) {
-        timeout++;
-        printf("-1: no filestream\n");
-        return -1;
-    }
-
-    //empty buffer
-    uart_flush();
-
-    //initialize arrays
-    int sizeB = 10;
-    int sizeV = 4;
-
-    int i;
-    char bytes[sizeB];
-    for (i = 0; i < sizeB; i++) {
-        bytes[i] = 0;
-    }
-    int n_read = 0;
-
-    char value[sizeV];
-    for (i = 0; i < sizeV; i++) {
-        value[i] = 0;
-    }
-
-    int n = 0;
-    int d;
-
-    //receive values
-    while (1) {
-        n_read = uart_receive(bytes, sizeB, 0);
-
-        if(n_read <= 0) {
-            timeout++;
-            printf("-1: n_read=%d\n",n_read);
-            return -1;
-        }
-
-        for (i = 0; i < n_read; i++) {
-            if (bytes[i] != 0xd && bytes[i] != 0xa) {
-                if(n < sizeV)
-                    value[n++] = bytes[i];
-                else {
-                    timeout++;
-                    printf("-1: too many bytes\n");
-                    return -1;
-                }
-            } else {
-                d = atoi(value);
-                if (d == 0) {
-                    timeout++;
-                    printf("-1: zero value\n");
-                    return -1;
-                } else if(d == 1061) { //strange behaviour of one lrf
-                    printf("-1: 1061\n");
-                    return -1;
-                }
-                else {
-                    printf("%d\n", d);
-                    timeout = 0;
-                    return d;
-                }
-            }
-        }
-    }
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/LaserScanner.c b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/LaserScanner.c
deleted file mode 100644
index e69de29b..00000000
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/PWM.c b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/PWM.c
deleted file mode 100644
index d50d6985..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/PWM.c
+++ /dev/null
@@ -1,87 +0,0 @@
-#include "inc/PWM.h"
-
-// constants
-const int PWM_SLEEP_TIME = 50000;
-const char* PWM_DEVICE_NAME = "/dev/ttyACM0";
-const size_t PWM_MAX_NO_CHANNELS = 4;
-
-// worker
-GEN_TYPE_boolean pwm_is_running = true;
-
-GEN_TYPE_int* pwm_channel_values;
-GEN_TYPE_boolean* pwm_channel_enabled;
-
-void pwm_send(int fd) {
-    size_t i;
-
-    for(i = 0; i < PWM_MAX_NO_CHANNELS; i++) {
-        if(pwm_channel_enabled[i]) {
-            maestroWrite(fd, i, pwm_channel_values[i]);
-        }
-    }
-}
-
-void* pwm_worker(void* pt_args) {
-    int fd = open(PWM_DEVICE_NAME, O_RDWR | O_NOCTTY);
-
-    if (fd == -1) {
-        perror("Error while connecting to pwm device");
-        return NULL;
-    }
-
-    struct termios options;
-    tcgetattr(fd, &options);
-    options.c_lflag &= ~(ECHO | ECHONL | ICANON | ISIG | IEXTEN);
-    options.c_oflag &= ~(ONLCR | OCRNL);
-    tcsetattr(fd, TCSANOW, &options);
-
-    while(pwm_is_running) {
-        pwm_send(fd);
-        usleep(PWM_SLEEP_TIME);
-    }
-
-    close(fd);
-
-    return NULL;
-}
-
-// init, term
-GEN_TYPE_boolean pwm_initialized = false;
-GEN_TYPE_boolean pwm_terminated = false;
-
-void pwm_init(PWM_CHANNEL_T channel) {
-    // important, since all pwms are accessing the same method
-    if(!pwm_initialized) {
-        pwm_channel_values = calloc(sizeof(GEN_TYPE_int), PWM_MAX_NO_CHANNELS);
-        pwm_channel_enabled = calloc(sizeof(GEN_TYPE_boolean), PWM_MAX_NO_CHANNELS);
-
-    	// start a pwm thread
-    	//pthread_t pt_pwm;
-    	//pthread_create(&pt_pwm, NULL, pwm_worker, NULL);
-
-        pwm_initialized = true;
-    }
-
-    pwm_channel_enabled[channel] = true;
-}
-
-void pwm_term(PWM_CHANNEL_T channel) {
-    // important, since all pwms are accessing the same method
-    if(pwm_terminated) return;
-
-    free(pwm_channel_values);
-    free(pwm_channel_enabled);
-
-    pwm_is_running = false;
-    pwm_terminated = true;
-}
-
-// writers
-void pwm_write(PWM_CHANNEL_T channel, GEN_TYPE_int value) {
-    pwm_channel_values[channel] = PWM_ADJUST_VALUE(value);
-}
-
-void pwm_set_noval(PWM_CHANNEL_T channel) {
-    // do nothing, not used
-}
-
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/io.c b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/io.c
deleted file mode 100644
index 0e446a06..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/io.c
+++ /dev/null
@@ -1,45 +0,0 @@
-#include "inc/io.h"
-
-// init, terminate
-void init_left_stick() {
-
-}
-
-void term_left_stick() {
-
-}
-
-void init_right_stick() {
-
-}
-
-void term_right_stick() {
-
-}
-
-// NOVAL
-GEN_TYPE_boolean is_noval_left_stick() {
-	return false;
-}
-
-GEN_TYPE_boolean is_noval_right_stick() {
-	return false;
-}
-
-// readers
-GEN_TYPE_double read_left_stick() {
-	return 0.0;
-}
-
-GEN_TYPE_double read_right_stick() {
-	return 0.0;
-}
-
-// writers
-void write_left_stick(GEN_TYPE_double value) {
-
-}
-
-void write_right_stick(GEN_TYPE_double value) {
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/libcansocket.c b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/libcansocket.c
deleted file mode 100644
index b57cc6e8..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/libcansocket.c
+++ /dev/null
@@ -1,56 +0,0 @@
-#include "inc/libcansocket.h"
-
-struct can_socket* can_socket_open(const char *if_name) {
-    struct can_socket* sock = malloc(sizeof(struct can_socket));
-
-    /* open socket */
-    if ((sock->s = socket(PF_CAN, SOCK_RAW, CAN_RAW)) < 0) {
-        perror("socket");
-        return NULL;
-    }
-
-    sock->addr.can_family = AF_CAN;
-
-    /* map if name to interface index -> will fail if interface does not exist */
-    strcpy(sock->ifr.ifr_name, if_name);
-    if (ioctl(sock->s, SIOCGIFINDEX, &sock->ifr) < 0) {
-        perror("SIOCGIFINDEX");
-        return NULL;
-    }
-    sock->addr.can_ifindex = sock->ifr.ifr_ifindex;
-
-    /* bind socket to interface -> will fail if interface is not up */
-    if (bind(sock->s, (struct sockaddr *)&sock->addr, sizeof(sock->addr)) < 0) {
-        perror("bind");
-        return NULL;
-    }
-
-    return sock;
-}
-
-void can_socket_close(struct can_socket* sock) {
-    close(sock->s);
-}
-
-ssize_t can_socket_send(struct can_socket* sock, struct can_frame* frame) {
-    ssize_t nbytes;
-
-    /* send frame */
-    if ((nbytes = write(sock->s, &frame, sizeof(*frame))) != sizeof(*frame)) {
-        perror("write");
-        return SR_ERR;
-    }
-
-    return nbytes;
-}
-
-ssize_t can_socket_receive(struct can_socket* sock, struct can_frame* frame) {
-    ssize_t nbytes;
-
-    if ((nbytes = read(sock->s, frame, sizeof(struct can_frame))) != sizeof(*frame)) {
-        perror("read");
-        return SR_ERR;
-    }
-
-    return nbytes;
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/libmaestro.c b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/libmaestro.c
deleted file mode 100644
index 356d5692..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/libmaestro.c
+++ /dev/null
@@ -1,36 +0,0 @@
-#include "inc/libmaestro.h"
-
-// read from channel given a file descriptor
-int maestroRead(int fd, unsigned char channel) {
-    unsigned char command[] = {0x90, channel};
-
-    if(write(fd, command, sizeof(command)) == -1)
-    {
-        perror("error writing");
-        return -1;
-    }
-   
-    unsigned char response[2];
-
-    if(read(fd,response,2) != 2)
-    {
-        perror("Error reading from maestro");
-        return -1;
-    }
-
-    return response[0] + 256*response[1];
-}
-
-// write target to a channel given a file descriptor
-// the units of 'target' are quarter-microseconds
-int maestroWrite(int fd, unsigned char channel, unsigned short target) {
-    unsigned char command[] = {0x84, channel, (target & 0x7F), (target >> 7 & 0x7F)};
-
-    if (write(fd, command, sizeof(command)) == -1)
-    {
-        perror("Error writing to maestro");
-        return -1;
-    }
-
-    return 0;
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/libuart.c b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/libuart.c
deleted file mode 100644
index ca027e83..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/libuart.c
+++ /dev/null
@@ -1,119 +0,0 @@
-/**
- * @file uart.c
- * @author Bianca Forkel
- */
-
-#include "inc/libuart.h"
-
-int uart_filestream = -1;
-
-/** Initializing the UART connection. */
-int uart_setup(const char *porta) {
-    strcpy(port, porta);
-    uart_filestream = open(port, O_RDWR | O_NOCTTY | O_NDELAY);
-    if (uart_filestream < 0) {
-        fprintf(stderr, "[%s] Error opening port: %s\n", port, strerror(errno));
-    }
-
-    struct termios tty;
-    memset(&tty, 0, sizeof tty);
-    if (tcgetattr(uart_filestream, &tty) != 0) {
-        fprintf(stderr, "[%s] Error from tcgetattr: %s\n", port, strerror(errno));
-    }
-
-    // Baud Rate
-    cfsetospeed(&tty, (speed_t) B115200);
-    cfsetispeed(&tty, (speed_t) B115200);
-
-    // TTY settings: 8N1
-    tty.c_cflag &= ~PARENB; //no parity
-    tty.c_cflag &= ~CSTOPB; // 1 stop bit
-    tty.c_cflag &= ~CSIZE;
-    tty.c_cflag |= CS8; // 8 data bits
-
-    tty.c_cflag &= ~CRTSCTS;
-    tty.c_cc[VMIN] = 1;
-    tty.c_cc[VTIME] = 5;
-    tty.c_cflag |= CREAD | CLOCAL;
-
-    cfmakeraw(&tty);
-
-    uart_flush();
-
-    if (tcsetattr(uart_filestream, TCSANOW, &tty) != 0) {
-        fprintf(stderr, "[%s] Error from tcsetattr: %s\n", port, strerror(errno));
-    }
-    return uart_filestream;
-}
-
-/** Sending one byte via UART. */
-int uart_send_byte(char data, int printt) {
-    if (uart_filestream != -1) {
-        int n_written = 0;
-        n_written = write(uart_filestream, &data, 1);
-        if (n_written < 0) {
-            if (printt)
-                fprintf(stderr, "[%s] Error sending byte: %s\n", port, strerror(errno));
-        } else {
-            if (printt)
-                printf("[%s] Sent byte %#02x\n", port, data);
-            return 0;
-        }
-    }
-    return -1;
-}
-
-/** Receive from the UART stream. */
-int uart_receive(char *c, int bufLen, int printt) {
-    fd_set set;
-    struct timeval timeout;
-    int rv;
-    int n_read = -1;
-
-    if (uart_filestream != -1) {
-        FD_ZERO(&set);
-        FD_SET(uart_filestream, &set);
-
-        timeout.tv_sec = 0;
-        timeout.tv_usec = 10000;
-
-        rv = select(uart_filestream + 1, &set, NULL, NULL, &timeout);
-        if (rv == -1) {
-            if (printt)
-                perror("select");
-        } else if (rv == 0) {
-            if (printt)
-                perror("timeout");
-        } else {
-            n_read = read(uart_filestream, (void *) c, bufLen);
-        }
-
-        if (n_read < 0) {
-            if (printt)
-                fprintf(stderr, "[%s] Error receiving byte: %s\n", port, strerror(errno));
-            n_read = 0;
-        } else if (n_read == 0) {
-            if (printt)
-                printf("[%s] No data to receive \n", port);
-        } else {
-            if (printt) {
-                printf("[%s] %i Bytes received: 0x", port, n_read);
-                int i;
-                for (i = 0; i < n_read; i++)
-                    printf("%02x", c[i]);
-                printf("\n");
-            }
-        }
-    }
-    return n_read;
-}
-
-/** Close the UART connection. */
-void uart_close() {
-    close(uart_filestream);
-}
-
-/** Flush the UART buffer. */
-void uart_flush() {
-    tcflush(uart_filestream, TCIFLUSH);
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/main.c b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/main.c
deleted file mode 100644
index 60b55265..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/lib/src/main.c
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * The main function and everything related to starting the application
- */
-
-#include <stdio.h>
-#include <string.h>
-#include <unistd.h>
-#include <pthread.h>
-
-#include "inc-gen/system.h"
-#include "inc/CanConnector.h"
-#include "inc/Gamepad.h"
-#include "inc/PWM.h"
-
-#define PARAM_MAXCMP 5
-#define PARAM_MASTER "master"
-#define PARAM_SLAVE "slave"
-
-int main(int argc, char* argv[]) {
-    // init the system
-    initialize_system();
-
-    // start a gamepad thread
-    pthread_t pt_gamepad;
-    pthread_create(&pt_gamepad, NULL, gp_worker, NULL);
-
-    // start a pwm thread
-    pthread_t pt_pwm;
-    pthread_create(&pt_pwm, NULL, pwm_worker, NULL);
-
-    // MASTER MODE (master as parameter)
-    if(argc >= 2 && strncmp(argv[1], PARAM_MASTER, PARAM_MAXCMP) == 0) {
-        // TODO do master stuff
-    }
-
-    // SLAVE MODE (slave as parameter)
-    else if(argc >= 2 && strncmp(argv[1], PARAM_SLAVE, PARAM_MAXCMP) == 0) {
-        // TODO do slave stuff
-    }
-
-    // DEFAULT MODE (no parameter)
-    else {
-        // run endlessly
-        while(1) {
-            run_system();
-            usleep(1000);
-        }
-    }
-
-    
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/model/generate-ecore.xml b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/model/generate-ecore.xml
deleted file mode 100644
index 20bba821..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/model/generate-ecore.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<project name="org.fortiss.af3.platform.raspberry" default="generate-ecore" basedir="..">
-
-	<property name="model.name" value="raspberry" />
-	<property name="model.project" value="org.fortiss.af3.platform.raspberry" />
-	
-    <!-- Classpath Definition -->
-    <buckminster.valuepath id="project.classpath" value="${fs:project.classpath}" />
-    <path id="classpath">
-        <path refid="project.classpath"/>
-       
-        <!-- add src to the classpath as only the bin directory is in the classpath
-             and some resources such as the workflow or properties file might not yet
-             have been copied to the bin directory -->
-        <pathelement location="src"/>
-    </path>
-   
-    <!-- Generation Tasks -->
-    <target name="generate-ecore">
-    	<emf.Ecore2Javaw
-    		model="model/${model.name}.ecore"
-    		genModel="model/${model.name}.genmodel" 
-    		modelProject="/${model.project}" 
-    		modelProjectFragmentPath="generated-src"
-    		reconcileGenModel="reload">
-    	</emf.Ecore2Javaw>
-	</target>
-</project> 
\ No newline at end of file
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/model/raspberry.ecore b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/model/raspberry.ecore
deleted file mode 100644
index 7dbfc2b5..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/model/raspberry.ecore
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="model" nsURI="http://www.fortiss.org/af3/platform/raspberry"
-    nsPrefix="org-fortiss-af3-platform-raspberry">
-  <eClassifiers xsi:type="ecore:EClass" name="RaspberryPi" eSuperTypes="platform:/resource/org.fortiss.af3.platform/model/platform.ecore#//generic/GenericExecutionUnit"/>
-  <eClassifiers xsi:type="ecore:EClass" name="CanBus" eSuperTypes="platform:/resource/org.fortiss.af3.platform/model/platform.ecore#//generic/GenericTransmissionUnit"/>
-  <eClassifiers xsi:type="ecore:EClass" name="CanConnector" eSuperTypes="platform:/resource/org.fortiss.af3.platform/model/platform.ecore#//generic/GenericTransceiver"/>
-  <eClassifiers xsi:type="ecore:EClass" name="SensorConnector" eSuperTypes="platform:/resource/org.fortiss.af3.platform/model/platform.ecore#//generic/GenericReceiver"/>
-  <eClassifiers xsi:type="ecore:EClass" name="ActuatorConnector" eSuperTypes="platform:/resource/org.fortiss.af3.platform/model/platform.ecore#//generic/GenericTransmitter"/>
-  <eClassifiers xsi:type="ecore:EClass" name="SensorGamepad" eSuperTypes="platform:/resource/org.fortiss.af3.platform/model/platform.ecore#//generic/GenericReceiver"/>
-  <eClassifiers xsi:type="ecore:EClass" name="SensorIMU" eSuperTypes="platform:/resource/org.fortiss.af3.platform/model/platform.ecore#//generic/GenericReceiver"/>
-  <eClassifiers xsi:type="ecore:EClass" name="SensorLaserRangeFinder" eSuperTypes="platform:/resource/org.fortiss.af3.platform/model/platform.ecore#//generic/GenericReceiver"/>
-  <eClassifiers xsi:type="ecore:EClass" name="SensorLaserScanner" eSuperTypes="platform:/resource/org.fortiss.af3.platform/model/platform.ecore#//generic/GenericReceiver"/>
-  <eClassifiers xsi:type="ecore:EClass" name="ActuatorPWM" eSuperTypes="platform:/resource/org.fortiss.af3.platform/model/platform.ecore#//generic/GenericTransmitter"/>
-  <eClassifiers xsi:type="ecore:EClass" name="GPI" eSuperTypes="platform:/resource/org.fortiss.af3.platform/model/platform.ecore#//generic/GenericReceiver"/>
-  <eClassifiers xsi:type="ecore:EClass" name="GPO" eSuperTypes="platform:/resource/org.fortiss.af3.platform/model/platform.ecore#//generic/GenericTransmitter"/>
-  <eClassifiers xsi:type="ecore:EClass" name="WheelEncoder" eSuperTypes="platform:/resource/org.fortiss.af3.platform/model/platform.ecore#//generic/GenericReceiver"/>
-  <eSubpackages name="gamepad" nsURI="http://www.fortiss.org/af3/platform/raspberry/gamepad"
-      nsPrefix="org-fortiss-af3-platform-raspberry-gamepad">
-    <eClassifiers xsi:type="ecore:EClass" name="Button1" eSuperTypes="platform:/resource/org.fortiss.af3.platform/model/platform.ecore#//generic/GenericReceiver"/>
-    <eClassifiers xsi:type="ecore:EClass" name="Button2" eSuperTypes="platform:/resource/org.fortiss.af3.platform/model/platform.ecore#//generic/GenericReceiver"/>
-    <eClassifiers xsi:type="ecore:EClass" name="Button3" eSuperTypes="platform:/resource/org.fortiss.af3.platform/model/platform.ecore#//generic/GenericReceiver"/>
-    <eClassifiers xsi:type="ecore:EClass" name="Button4" eSuperTypes="platform:/resource/org.fortiss.af3.platform/model/platform.ecore#//generic/GenericReceiver"/>
-    <eClassifiers xsi:type="ecore:EClass" name="ButtonL1" eSuperTypes="platform:/resource/org.fortiss.af3.platform/model/platform.ecore#//generic/GenericReceiver"/>
-    <eClassifiers xsi:type="ecore:EClass" name="ButtonR2" eSuperTypes="platform:/resource/org.fortiss.af3.platform/model/platform.ecore#//generic/GenericReceiver"/>
-    <eClassifiers xsi:type="ecore:EClass" name="ButtonL2" eSuperTypes="platform:/resource/org.fortiss.af3.platform/model/platform.ecore#//generic/GenericReceiver"/>
-    <eClassifiers xsi:type="ecore:EClass" name="ButtonR1" eSuperTypes="platform:/resource/org.fortiss.af3.platform/model/platform.ecore#//generic/GenericReceiver"/>
-    <eClassifiers xsi:type="ecore:EClass" name="Left_StickX_Position" eSuperTypes="platform:/resource/org.fortiss.af3.platform/model/platform.ecore#//generic/GenericReceiver"/>
-    <eClassifiers xsi:type="ecore:EClass" name="Left_StickY_Position" eSuperTypes="platform:/resource/org.fortiss.af3.platform/model/platform.ecore#//generic/GenericReceiver"/>
-    <eClassifiers xsi:type="ecore:EClass" name="Right_StickX_Position" eSuperTypes="platform:/resource/org.fortiss.af3.platform/model/platform.ecore#//generic/GenericReceiver"/>
-    <eClassifiers xsi:type="ecore:EClass" name="Right_StickY_Position" eSuperTypes="platform:/resource/org.fortiss.af3.platform/model/platform.ecore#//generic/GenericReceiver"/>
-  </eSubpackages>
-  <eSubpackages name="annotation" nsURI="http://www.fortiss.org/af3/platform/raspberry/annotation"
-      nsPrefix="org-fortiss-af3-platform-raspberry-annotation">
-    <eClassifiers xsi:type="ecore:EClass" name="Channel" eSuperTypes="platform:/resource/org.fortiss.tooling.base/model/base.ecore#//element/IAnnotatedSpecification platform:/resource/org.fortiss.tooling.base/model/base.ecore#//element/IHiddenSpecification">
-      <eStructuralFeatures xsi:type="ecore:EAttribute" name="channel" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
-    </eClassifiers>
-  </eSubpackages>
-</ecore:EPackage>
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/model/raspberry.genmodel b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/model/raspberry.genmodel
deleted file mode 100644
index 156f41bf..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/model/raspberry.genmodel
+++ /dev/null
@@ -1,45 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
-    xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/org.fortiss.af3.platform.raspberry/generated-src"
-    modelPluginID="org.fortiss.af3.platform.raspberry" modelName="Raspberry" importerID="org.eclipse.emf.importer.ecore"
-    containmentProxies="true" arrayAccessors="true" complianceLevel="7.0" copyrightFields="false"
-    usedGenPackages="platform:/resource/org.fortiss.tooling.base/model/base.genmodel#//model platform:/resource/org.fortiss.af3.platform/model/platform.genmodel#//model platform:/resource/org.fortiss.tooling.kernel/model/kernel.genmodel#//model">
-  <foreignModel>raspberry.ecore</foreignModel>
-  <genPackages prefix="Model" basePackage="org.fortiss.af3.platform.raspberry" disposableProviderFactory="true"
-      ecorePackage="raspberry.ecore#/">
-    <genClasses ecoreClass="raspberry.ecore#//RaspberryPi"/>
-    <genClasses ecoreClass="raspberry.ecore#//CanBus"/>
-    <genClasses ecoreClass="raspberry.ecore#//CanConnector"/>
-    <genClasses ecoreClass="raspberry.ecore#//SensorConnector"/>
-    <genClasses ecoreClass="raspberry.ecore#//ActuatorConnector"/>
-    <genClasses ecoreClass="raspberry.ecore#//SensorGamepad"/>
-    <genClasses ecoreClass="raspberry.ecore#//SensorIMU"/>
-    <genClasses ecoreClass="raspberry.ecore#//SensorLaserRangeFinder"/>
-    <genClasses ecoreClass="raspberry.ecore#//SensorLaserScanner"/>
-    <genClasses ecoreClass="raspberry.ecore#//ActuatorPWM"/>
-    <genClasses ecoreClass="raspberry.ecore#//GPI"/>
-    <genClasses ecoreClass="raspberry.ecore#//GPO"/>
-    <genClasses ecoreClass="raspberry.ecore#//WheelEncoder"/>
-    <nestedGenPackages prefix="Gamepad" basePackage="org.fortiss.af3.platform.raspberry.model"
-        disposableProviderFactory="true" ecorePackage="raspberry.ecore#//gamepad">
-      <genClasses ecoreClass="raspberry.ecore#//gamepad/Button1"/>
-      <genClasses ecoreClass="raspberry.ecore#//gamepad/Button2"/>
-      <genClasses ecoreClass="raspberry.ecore#//gamepad/Button3"/>
-      <genClasses ecoreClass="raspberry.ecore#//gamepad/Button4"/>
-      <genClasses ecoreClass="raspberry.ecore#//gamepad/ButtonL1"/>
-      <genClasses ecoreClass="raspberry.ecore#//gamepad/ButtonR2"/>
-      <genClasses ecoreClass="raspberry.ecore#//gamepad/ButtonL2"/>
-      <genClasses ecoreClass="raspberry.ecore#//gamepad/ButtonR1"/>
-      <genClasses ecoreClass="raspberry.ecore#//gamepad/Left_StickX_Position"/>
-      <genClasses ecoreClass="raspberry.ecore#//gamepad/Left_StickY_Position"/>
-      <genClasses ecoreClass="raspberry.ecore#//gamepad/Right_StickX_Position"/>
-      <genClasses ecoreClass="raspberry.ecore#//gamepad/Right_StickY_Position"/>
-    </nestedGenPackages>
-    <nestedGenPackages prefix="Annotation" basePackage="org.fortiss.af3.platform.raspberry.model"
-        disposableProviderFactory="true" ecorePackage="raspberry.ecore#//annotation">
-      <genClasses ecoreClass="raspberry.ecore#//annotation/Channel">
-        <genFeatures createChild="false" ecoreFeature="ecore:EAttribute raspberry.ecore#//annotation/Channel/channel"/>
-      </genClasses>
-    </nestedGenPackages>
-  </genPackages>
-</genmodel:GenModel>
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/plugin.properties b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/plugin.properties
deleted file mode 100644
index 92e4eb1a..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/plugin.properties
+++ /dev/null
@@ -1,7 +0,0 @@
-# <copyright>
-# </copyright>
-#
-# $Id$
-
-pluginName = Fortiss AF3 Base Project
-providerName = fortiss GmbH
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/plugin.xml b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/plugin.xml
deleted file mode 100644
index 397e4f32..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/plugin.xml
+++ /dev/null
@@ -1,433 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-
-<!--
- <copyright>
- </copyright>
-
- $Id$
--->
-
-<plugin>
-
-   <extension point="org.eclipse.emf.ecore.generated_package">
-      <!-- @generated raspberry -->
-      <package
-            uri="http://www.fortiss.org/af3/platform/raspberry"
-            class="org.fortiss.af3.platform.raspberry.model.ModelPackage"
-            genModel="model/raspberry.genmodel"/>
-   </extension>
-
-   <extension point="org.eclipse.emf.ecore.generated_package">
-      <!-- @generated raspberry -->
-      <package
-            uri="http://www.fortiss.org/af3/platform/raspberry/gamepad"
-            class="org.fortiss.af3.platform.raspberry.model.gamepad.GamepadPackage"
-            genModel="model/raspberry.genmodel"/>
-   </extension>
-
-   <extension point="org.eclipse.emf.ecore.generated_package">
-      <!-- @generated raspberry -->
-      <package
-            uri="http://www.fortiss.org/af3/platform/raspberry/annotation"
-            class="org.fortiss.af3.platform.raspberry.model.annotation.AnnotationPackage"
-            genModel="model/raspberry.genmodel"/>
-   </extension>
-   <extension
-         point="org.fortiss.tooling.kernel.modelElementCompositor">
-      <modelElementCompositor
-            compositor="org.fortiss.af3.platform.raspberry.compose.RaspberryPiCompositor">
-         <modelElementClass
-               modelElementClass="org.fortiss.af3.platform.raspberry.model.RaspberryPi">
-         </modelElementClass>
-      </modelElementCompositor>
-      <modelElementCompositor
-            compositor="org.fortiss.af3.platform.raspberry.compose.CanBusCompositor">
-         <modelElementClass
-               modelElementClass="org.fortiss.af3.platform.raspberry.model.CanBus">
-         </modelElementClass>
-      </modelElementCompositor>
-   </extension>
-   <extension
-         point="org.fortiss.tooling.kernel.modelConnectionCompositor">
-      <modelConnectionCompositor
-            modelConnectionCompositor="org.fortiss.af3.platform.raspberry.compose.RaspberryToCanCompositor">
-         <source>
-            <modelElementClass
-                  modelElementClass="org.fortiss.af3.platform.raspberry.model.CanConnector">
-            </modelElementClass>
-         </source>
-         <target>
-            <modelElementClass
-                  modelElementClass="org.fortiss.af3.platform.raspberry.model.CanConnector">
-            </modelElementClass>
-         </target>
-      </modelConnectionCompositor>
-      <modelConnectionCompositor
-            modelConnectionCompositor="org.fortiss.af3.platform.raspberry.compose.CanToRaspberryCompositor">
-         <source>
-            <modelElementClass
-                  modelElementClass="org.fortiss.af3.platform.raspberry.model.CanConnector">
-            </modelElementClass>
-         </source>
-         <target>
-            <modelElementClass
-                  modelElementClass="org.fortiss.af3.platform.raspberry.model.CanConnector">
-            </modelElementClass>
-         </target>
-      </modelConnectionCompositor>
-   </extension>
-   <extension
-         point="org.fortiss.tooling.kernel.transformationProvider">
-      <transformationProvider
-            transformationProvider="org.fortiss.af3.platform.raspberry.generator.transform.RaspberryPITransformation">
-         <source>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.model.RaspberryPi">
-            </objectClass>
-         </source>
-         <target>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.RaspberryPIExecutable">
-            </objectClass>
-         </target>
-      </transformationProvider>
-      <transformationProvider
-            transformationProvider="org.fortiss.af3.platform.raspberry.generator.transform.CanConnectorTransformation">
-         <source>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.model.CanConnector">
-            </objectClass>
-         </source>
-         <target>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.CanConnectorExecutable">
-            </objectClass>
-         </target>
-      </transformationProvider>
-      <transformationProvider
-            transformationProvider="org.fortiss.af3.platform.raspberry.generator.transform.IMUSensorTransformation">
-         <source>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.model.SensorIMU">
-            </objectClass>
-         </source>
-         <target>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.IMUSensorExecutable">
-            </objectClass>
-         </target>
-      </transformationProvider>
-      <transformationProvider
-            transformationProvider="org.fortiss.af3.platform.raspberry.generator.transform.LaserRangeFinderSensorTransformation">
-         <source>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.model.SensorLaserRangeFinder">
-            </objectClass>
-         </source>
-         <target>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.LaserRangeFinderSensorExecutable">
-            </objectClass>
-         </target>
-      </transformationProvider>
-      <transformationProvider
-            transformationProvider="org.fortiss.af3.platform.raspberry.generator.transform.LaserScannerSensorTransformation">
-         <source>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.model.SensorLaserScanner">
-            </objectClass>
-         </source>
-         <target>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.LaserScannerSensorExecutable">
-            </objectClass>
-         </target>
-      </transformationProvider>
-      <transformationProvider
-            transformationProvider="org.fortiss.af3.platform.raspberry.generator.transform.PWMActuatorTransformation">
-         <source>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.model.ActuatorPWM">
-            </objectClass>
-         </source>
-         <target>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.PWMActuatorExecutable">
-            </objectClass>
-         </target>
-      </transformationProvider>
-      <transformationProvider
-            transformationProvider="org.fortiss.af3.platform.raspberry.generator.transform.CanBusTransformation">
-         <source>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.model.CanBus">
-            </objectClass>
-         </source>
-         <target>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.CanBusExecutable">
-            </objectClass>
-         </target>
-      </transformationProvider>
-      <transformationProvider
-            transformationProvider="org.fortiss.af3.platform.raspberry.generator.transform.GamepadSensorTransformation">
-         <source>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.model.SensorGamepad">
-            </objectClass>
-         </source>
-         <target>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.GamepadSensorExecutable">
-            </objectClass>
-         </target>
-      </transformationProvider>
-      <transformationProvider
-            transformationProvider="org.fortiss.af3.platform.raspberry.generator.transform.CanBusTransmissionCatalogTransformation">
-         <source>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.model.CanBus">
-            </objectClass>
-         </source>
-         <target>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.CanTransmissionCatalog">
-            </objectClass>
-         </target>
-      </transformationProvider>
-      <transformationProvider
-            transformationProvider="org.fortiss.af3.platform.raspberry.generator.transform.CanConnectorTransmissionCatalogTransformation">
-         <source>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.model.CanConnector">
-            </objectClass>
-         </source>
-         <target>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.CanTransmissionCatalog">
-            </objectClass>
-         </target>
-      </transformationProvider>
-      <transformationProvider
-            transformationProvider="org.fortiss.af3.platform.raspberry.generator.transform.GPITransformation">
-         <source>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.model.GPI">
-            </objectClass>
-         </source>
-         <target>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.GPIExecutable">
-            </objectClass>
-         </target>
-      </transformationProvider>
-      <transformationProvider
-            transformationProvider="org.fortiss.af3.platform.raspberry.generator.transform.GPOTransformation">
-         <source>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.model.GPO">
-            </objectClass>
-         </source>
-         <target>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.GPOExecutable">
-            </objectClass>
-         </target>
-      </transformationProvider>
-      <transformationProvider
-            transformationProvider="org.fortiss.af3.platform.raspberry.generator.transform.gamepad.Button1Transformation">
-         <source>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.model.gamepad.Button1">
-            </objectClass>
-         </source>
-         <target>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Button1Executable">
-            </objectClass>
-         </target>
-      </transformationProvider>
-      <transformationProvider
-            transformationProvider="org.fortiss.af3.platform.raspberry.generator.transform.gamepad.Button2Transformation">
-         <source>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.model.gamepad.Button2">
-            </objectClass>
-         </source>
-         <target>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Button2Executable">
-            </objectClass>
-         </target>
-      </transformationProvider>
-      <transformationProvider
-            transformationProvider="org.fortiss.af3.platform.raspberry.generator.transform.gamepad.Button3Transformation">
-         <source>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.model.gamepad.Button3">
-            </objectClass>
-         </source>
-         <target>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Button3Executable">
-            </objectClass>
-         </target>
-      </transformationProvider>
-      <transformationProvider
-            transformationProvider="org.fortiss.af3.platform.raspberry.generator.transform.gamepad.Button4Transformation">
-         <source>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.model.gamepad.Button4">
-            </objectClass>
-         </source>
-         <target>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Button4Executable">
-            </objectClass>
-         </target>
-      </transformationProvider>
-      <transformationProvider
-            transformationProvider="org.fortiss.af3.platform.raspberry.generator.transform.gamepad.ButtonL1Transformation">
-         <source>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.model.gamepad.ButtonL1">
-            </objectClass>
-         </source>
-         <target>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.gamepad.ButtonL1Executable">
-            </objectClass>
-         </target>
-      </transformationProvider>
-      <transformationProvider
-            transformationProvider="org.fortiss.af3.platform.raspberry.generator.transform.gamepad.ButtonL2Transformation">
-         <source>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.model.gamepad.ButtonL2">
-            </objectClass>
-         </source>
-         <target>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.gamepad.ButtonL2Executable">
-            </objectClass>
-         </target>
-      </transformationProvider>
-      <transformationProvider
-            transformationProvider="org.fortiss.af3.platform.raspberry.generator.transform.gamepad.ButtonR1Transformation">
-         <source>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.model.gamepad.ButtonR1">
-            </objectClass>
-         </source>
-         <target>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.gamepad.ButtonR1Executable">
-            </objectClass>
-         </target>
-      </transformationProvider>
-      <transformationProvider
-            transformationProvider="org.fortiss.af3.platform.raspberry.generator.transform.gamepad.ButtonR2Transformation">
-         <source>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.model.gamepad.ButtonR2">
-            </objectClass>
-         </source>
-         <target>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.gamepad.ButtonR2Executable">
-            </objectClass>
-         </target>
-      </transformationProvider>
-      <transformationProvider
-            transformationProvider="org.fortiss.af3.platform.raspberry.generator.transform.gamepad.Left_StickXTransformation">
-         <source>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.model.gamepad.Left_StickX_Position">
-            </objectClass>
-         </source>
-         <target>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Left_StickXExecutable">
-            </objectClass>
-         </target>
-      </transformationProvider>
-      <transformationProvider
-            transformationProvider="org.fortiss.af3.platform.raspberry.generator.transform.gamepad.Left_StickYTransformation">
-         <source>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.model.gamepad.Left_StickY_Position">
-            </objectClass>
-         </source>
-         <target>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Left_StickYExecutable">
-            </objectClass>
-         </target>
-      </transformationProvider>
-      <transformationProvider
-            transformationProvider="org.fortiss.af3.platform.raspberry.generator.transform.gamepad.Right_StickXTransformation">
-         <source>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.model.gamepad.Right_StickX_Position">
-            </objectClass>
-         </source>
-         <target>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Right_StickXExecutable">
-            </objectClass>
-         </target>
-      </transformationProvider>
-      <transformationProvider
-            transformationProvider="org.fortiss.af3.platform.raspberry.generator.transform.gamepad.Right_StickYTransformation">
-         <source>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.model.gamepad.Right_StickY_Position">
-            </objectClass>
-         </source>
-         <target>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Right_StickYExecutable">
-            </objectClass>
-         </target>
-      </transformationProvider>
-      <transformationProvider
-            transformationProvider="org.fortiss.af3.platform.raspberry.generator.transform.WheelEncoderTransformation">
-         <source>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.model.WheelEncoder">
-            </objectClass>
-         </source>
-         <target>
-            <objectClass
-                  objectClass="org.fortiss.af3.platform.raspberry.generator.executable.WheelEncoderExecutable">
-            </objectClass>
-         </target>
-      </transformationProvider>
-   </extension>
-   <extension
-         point="org.fortiss.tooling.base.annotation">
-      <annotation
-            binding="org.fortiss.af3.platform.annotation.valueprovider.GPIOPinNumberValueProvider">
-         <modelElementClass
-               modelElementClass="org.fortiss.af3.platform.raspberry.model.GPI">
-         </modelElementClass>
-      </annotation>
-      <annotation
-            binding="org.fortiss.af3.platform.annotation.valueprovider.GPIOPinNumberValueProvider">
-         <modelElementClass
-               modelElementClass="org.fortiss.af3.platform.raspberry.model.GPO">
-         </modelElementClass>
-      </annotation>
-      <annotation
-            binding="org.fortiss.af3.platform.raspberry.annotation.PWMChannelNumberValueProvider">
-         <modelElementClass
-               modelElementClass="org.fortiss.af3.platform.raspberry.model.ActuatorPWM">
-         </modelElementClass>
-      </annotation>
-   </extension>
-
-   
-   
-
-</plugin>
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/pom.xml b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/pom.xml
deleted file mode 100644
index 3622f7b7..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/pom.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--  
-  $Id$
-  @version $Rev$
-  @ConQAT.Rating RED Hash: E1674C4A6DD3CBC4A7B7E85232D9695F
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-  <modelVersion>4.0.0</modelVersion>
-  <groupId>org.fortiss.af3</groupId>
-  <artifactId>org.fortiss.af3.platform.raspberry</artifactId>
-  <packaging>eclipse-plugin</packaging>
- 
-  <parent>
-	<groupId>org.fortiss.std.pom</groupId>
-	<artifactId>std-parent-pom-indigo</artifactId>
-	<version>1.0</version>
-	<relativePath>../fortiss-std-env/maven-build/pom.xml</relativePath>
-  </parent>
-  
-  <version>2.9.0-SNAPSHOT</version>
-</project>
\ No newline at end of file
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/AF3PlatformRaspberryActivator.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/AF3PlatformRaspberryActivator.java
deleted file mode 100644
index 8a4cd244..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/AF3PlatformRaspberryActivator.java
+++ /dev/null
@@ -1,40 +0,0 @@
-package org.fortiss.af3.platform.raspberry;
-
-import org.eclipse.core.runtime.Plugin;
-import org.osgi.framework.BundleContext;
-
-/**
- * The activator class controls the plug-in life cycle.
- */
-public class AF3PlatformRaspberryActivator extends Plugin {
-
-	/** The plug-in ID. */
-	public static final String PLUGIN_ID = AF3PlatformRaspberryActivator.class.getPackage().getName(); //$NON-NLS-1$
-
-	/** The shared instance. */
-	private static AF3PlatformRaspberryActivator plugin;
-
-	/** Constructor. */
-	public AF3PlatformRaspberryActivator() {
-		// do nothing
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public void start(BundleContext context) throws Exception {
-		super.start(context);
-		plugin = this;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public void stop(BundleContext context) throws Exception {
-		plugin = null;
-		super.stop(context);
-	}
-
-	/** Returns the shared instance. */
-	public static AF3PlatformRaspberryActivator getDefault() {
-		return plugin;
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/annotation/PWMChannelNumberValueProvider.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/annotation/PWMChannelNumberValueProvider.java
deleted file mode 100644
index 13abd5eb..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/annotation/PWMChannelNumberValueProvider.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: GPIOPinNumberValueProvider.java 15846 2016-02-02 09:14:08Z zverlov $
-|                                                                          |
-| Copyright 2015 ForTISS GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.annotation;
-
-import org.fortiss.af3.platform.model.Transceiver;
-import org.fortiss.af3.platform.raspberry.model.annotation.AnnotationPackage;
-import org.fortiss.af3.platform.raspberry.model.annotation.Channel;
-import org.fortiss.tooling.base.annotation.valueprovider.EStructuralFeatureValueProviderBase;
-import org.fortiss.tooling.base.annotation.valueprovider.IAnnotationValueProvider;
-
-/**
- * {@link IAnnotationValueProvider} that allows to annotate a Pin Number of a GPIO
- * {@link Transceiver} used in PikeOS Platform.
- * 
- * @author chaudhary
- * @author $Author: zverlov $
- * @version $Rev: 15846 $
- * @ConQAT.Rating GREEN Hash: C69EECC82FF9912335C19FC6A5CD6996
- */
-
-public class PWMChannelNumberValueProvider extends EStructuralFeatureValueProviderBase<Channel> {
-
-	/** Constructor. */
-	public PWMChannelNumberValueProvider() {
-		super(AnnotationPackage.Literals.CHANNEL, AnnotationPackage.Literals.CHANNEL__CHANNEL);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public String getAnnotationName(Channel specification) {
-		return "PWM Channel";
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/compose/CanBusCompositor.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/compose/CanBusCompositor.java
deleted file mode 100644
index 1a3e29f9..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/compose/CanBusCompositor.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.compose;
-
-import static org.conqat.lib.commons.reflect.ReflectionUtils.isInstanceOfAny;
-
-import org.eclipse.emf.ecore.EObject;
-import org.fortiss.af3.platform.compose.PlatformArchitectureElementCompositorBase;
-import org.fortiss.af3.platform.model.IPlatformArchitectureElement;
-import org.fortiss.af3.platform.raspberry.model.CanBus;
-import org.fortiss.af3.platform.raspberry.model.CanConnector;
-
-/**
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class CanBusCompositor extends
-		PlatformArchitectureElementCompositorBase<IPlatformArchitectureElement> {
-
-	/** {@inheritDoc} */
-	@Override
-	protected boolean isCorrectElementClass(IPlatformArchitectureElement container,
-			EObject contained) {
-		final boolean instanceOfAny = isInstanceOfAny(contained, CanConnector.class);
-		if(container != null) {
-			final boolean instanceOfAny2 = isInstanceOfAny(container, CanBus.class);
-			return instanceOfAny2 &&
-					instanceOfAny;
-		}
-		return instanceOfAny;
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/compose/CanToRaspberryCompositor.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/compose/CanToRaspberryCompositor.java
deleted file mode 100644
index ef580fef..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/compose/CanToRaspberryCompositor.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.compose;
-
-import static org.fortiss.af3.platform.utils.PlatformModelElementFactory.createTransmissionConnection;
-
-import org.eclipse.emf.ecore.EObject;
-import org.fortiss.af3.platform.model.TransmissionConnection;
-import org.fortiss.af3.platform.raspberry.model.CanBus;
-import org.fortiss.af3.platform.raspberry.model.CanConnector;
-import org.fortiss.af3.platform.raspberry.model.RaspberryPi;
-import org.fortiss.tooling.base.model.element.IHierarchicElement;
-import org.fortiss.tooling.kernel.extension.IConnectionCompositor;
-import org.fortiss.tooling.kernel.extension.data.IConnectionCompositionContext;
-
-/**
- * Connection compositor for {@link RaspberryPi} to {@link CanBus} connections.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class CanToRaspberryCompositor implements
-		IConnectionCompositor<IHierarchicElement, CanConnector, CanConnector> {
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canConnect(CanConnector source, CanConnector target, IHierarchicElement parent,
-			IConnectionCompositionContext context) {
-		if(source.getOwner() instanceof CanBus && target.getOwner() instanceof RaspberryPi) {
-			return source.getOutgoing().isEmpty();
-		}
-		return false;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean connect(CanConnector source, CanConnector target, IHierarchicElement parent,
-			IConnectionCompositionContext context) {
-		createTransmissionConnection(parent, source, target);
-		return true;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canReconnect(EObject connection, CanConnector source, CanConnector target,
-			IConnectionCompositionContext context) {
-		// TODO Auto-generated method stub
-		return false;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean reconnect(EObject connection, CanConnector source, CanConnector target,
-			IConnectionCompositionContext context) {
-		// TODO Auto-generated method stub
-		return false;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canDisconnect(EObject connection) {
-		if(connection instanceof TransmissionConnection) {
-			TransmissionConnection c = (TransmissionConnection)connection;
-			return c.getSource() instanceof CanConnector && c.getTarget() instanceof CanConnector;
-		}
-		return false;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean disconnect(EObject connection) {
-		if(connection instanceof TransmissionConnection) {
-			TransmissionConnection tcon = ((TransmissionConnection)connection);
-			tcon.setOwner(null);
-			tcon.setSource(null);
-			tcon.setTarget(null);
-			return true;
-		}
-		return false;
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/compose/RaspberryPiCompositor.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/compose/RaspberryPiCompositor.java
deleted file mode 100644
index 7a6d8b6e..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/compose/RaspberryPiCompositor.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.compose;
-
-import static org.conqat.lib.commons.reflect.ReflectionUtils.isInstanceOfAny;
-
-import org.eclipse.emf.ecore.EObject;
-import org.fortiss.af3.platform.compose.PlatformArchitectureElementCompositorBase;
-import org.fortiss.af3.platform.model.IPlatformArchitectureElement;
-import org.fortiss.af3.platform.raspberry.model.ActuatorConnector;
-import org.fortiss.af3.platform.raspberry.model.ActuatorPWM;
-import org.fortiss.af3.platform.raspberry.model.CanConnector;
-import org.fortiss.af3.platform.raspberry.model.GPI;
-import org.fortiss.af3.platform.raspberry.model.GPO;
-import org.fortiss.af3.platform.raspberry.model.RaspberryPi;
-import org.fortiss.af3.platform.raspberry.model.SensorConnector;
-import org.fortiss.af3.platform.raspberry.model.SensorIMU;
-import org.fortiss.af3.platform.raspberry.model.SensorLaserRangeFinder;
-import org.fortiss.af3.platform.raspberry.model.SensorLaserScanner;
-import org.fortiss.af3.platform.raspberry.model.WheelEncoder;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Button1;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Button2;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Button3;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Button4;
-import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonL1;
-import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonL2;
-import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonR1;
-import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonR2;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Left_StickX_Position;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Left_StickY_Position;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Right_StickX_Position;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Right_StickY_Position;
-
-/**
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class RaspberryPiCompositor extends
-		PlatformArchitectureElementCompositorBase<IPlatformArchitectureElement> {
-
-	/** {@inheritDoc} */
-	@Override
-	protected boolean isCorrectElementClass(IPlatformArchitectureElement container,
-			EObject contained) {
-
-		final boolean instanceOfAny2 =
-				isInstanceOfAny(contained, CanConnector.class, SensorConnector.class,
-						ActuatorConnector.class, ActuatorPWM.class, SensorLaserRangeFinder.class,
-						SensorLaserScanner.class, SensorIMU.class, GPI.class, GPO.class,
-						Button1.class, Button2.class, Button3.class, Button4.class, ButtonL1.class,
-						ButtonL2.class, ButtonR1.class, ButtonR2.class, Left_StickX_Position.class,
-						Left_StickY_Position.class, Right_StickX_Position.class,
-						Right_StickY_Position.class, WheelEncoder.class);
-		if(container != null) {
-			final boolean instanceOfAny = isInstanceOfAny(container, RaspberryPi.class);
-			return instanceOfAny && instanceOfAny2;
-		}
-		return instanceOfAny2;
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/compose/RaspberryToCanCompositor.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/compose/RaspberryToCanCompositor.java
deleted file mode 100644
index 7c18a6de..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/compose/RaspberryToCanCompositor.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.compose;
-
-import static org.fortiss.af3.platform.utils.PlatformModelElementFactory.createTransmissionConnection;
-
-import org.eclipse.emf.ecore.EObject;
-import org.fortiss.af3.platform.model.TransmissionConnection;
-import org.fortiss.af3.platform.raspberry.model.CanBus;
-import org.fortiss.af3.platform.raspberry.model.CanConnector;
-import org.fortiss.af3.platform.raspberry.model.RaspberryPi;
-import org.fortiss.tooling.base.model.element.IHierarchicElement;
-import org.fortiss.tooling.kernel.extension.IConnectionCompositor;
-import org.fortiss.tooling.kernel.extension.data.IConnectionCompositionContext;
-
-/**
- * Connection compositor for {@link RaspberryPi} to {@link CanBus} connections.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class RaspberryToCanCompositor implements
-		IConnectionCompositor<IHierarchicElement, CanConnector, CanConnector> {
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canConnect(CanConnector source, CanConnector target, IHierarchicElement parent,
-			IConnectionCompositionContext context) {
-		if(source.getOwner() instanceof RaspberryPi && target.getOwner() instanceof CanBus) {
-			return source.getOutgoing().isEmpty();
-		}
-		return false;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean connect(CanConnector source, CanConnector target, IHierarchicElement parent,
-			IConnectionCompositionContext context) {
-		createTransmissionConnection(parent, source, target);
-		return true;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canReconnect(EObject connection, CanConnector source, CanConnector target,
-			IConnectionCompositionContext context) {
-		// TODO Auto-generated method stub
-		return false;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean reconnect(EObject connection, CanConnector source, CanConnector target,
-			IConnectionCompositionContext context) {
-		// TODO Auto-generated method stub
-		return false;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canDisconnect(EObject connection) {
-		if(connection instanceof TransmissionConnection) {
-			TransmissionConnection c = (TransmissionConnection)connection;
-			return c.getSource() instanceof CanConnector && c.getTarget() instanceof CanConnector;
-		}
-		return false;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean disconnect(EObject connection) {
-		if(connection instanceof TransmissionConnection) {
-			TransmissionConnection tcon = ((TransmissionConnection)connection);
-			tcon.setOwner(null);
-			tcon.setSource(null);
-			tcon.setTarget(null);
-			return true;
-		}
-		return false;
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/CanBusExecutable.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/CanBusExecutable.java
deleted file mode 100644
index d8f0d797..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/CanBusExecutable.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable;
-
-import java.util.List;
-import java.util.Map;
-
-import org.fortiss.af3.component.model.Component;
-import org.fortiss.af3.component.model.Port;
-import org.fortiss.af3.generator.common.model.source.SourcePackage;
-import org.fortiss.af3.platform.language.executable.TransmissionUnitExecutableBase;
-import org.fortiss.af3.platform.model.ExecutionUnit;
-import org.fortiss.af3.platform.model.TransmissionUnit;
-import org.fortiss.af3.platform.raspberry.model.CanBus;
-
-/**
- * Executable for {@link CanBus}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class CanBusExecutable extends TransmissionUnitExecutableBase<TransmissionUnit> {
-
-	/** Constructor. */
-	public CanBusExecutable(TransmissionUnit modelElement) {
-		super(modelElement);
-		// no functionality as of now
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public void createAllFiles(SourcePackage pack, Map<ExecutionUnit, List<Port>> euPortsPair,
-			Map<ExecutionUnit, List<Component>> euComponentList, Component topComponent,
-			int deploymentID) {
-		// no functionality as of now
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/CanConnectorExecutable.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/CanConnectorExecutable.java
deleted file mode 100644
index b69b60a7..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/CanConnectorExecutable.java
+++ /dev/null
@@ -1,115 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable;
-
-import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.funcCall;
-import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.rawString;
-
-import org.fortiss.af3.component.model.InputPort;
-import org.fortiss.af3.component.model.OutputPort;
-import org.fortiss.af3.expression.model.terms.IExpressionTerm;
-import org.fortiss.af3.expression.model.terms.RawString;
-import org.fortiss.af3.expression.model.types.TBool;
-import org.fortiss.af3.expression.model.types.TDouble;
-import org.fortiss.af3.expression.model.types.TInt;
-import org.fortiss.af3.platform.generic.generator.executable.GenericTransceiverExecutable;
-import org.fortiss.af3.platform.model.generic.GenericTransceiver;
-import org.fortiss.af3.platform.raspberry.model.CanConnector;
-
-/**
- * Executable for {@link CanConnector}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class CanConnectorExecutable extends GenericTransceiverExecutable {
-
-	/** Constructor. */
-	public CanConnectorExecutable(GenericTransceiver modelElement) {
-		super(modelElement);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getInitialization() {
-		// init CAN bus on the given interface
-		return funcCall("can_init");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getNoValGuardAccessor(InputPort logicalSignal) {
-		// check for NOVAL on the given signal port
-		return funcCall("can_is_noval", literalString(logicalSignal.getName()));
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getNoValWriteAccessor(OutputPort logicalSignal) {
-		// set NOVAL on the given signal port
-		return funcCall("can_set_noval", literalString(logicalSignal.getName()));
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getTermination() {
-		// terminate the bus on the given interface
-		return funcCall("can_term");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getValueReadAccessor(InputPort logicalSignal) {
-		// read the value on the given signal port depending on the variable type
-		if(logicalSignal.getVariableType() instanceof TBool) {
-			return funcCall("can_read_bool", literalString(logicalSignal.getName()));
-		} else if(logicalSignal.getVariableType() instanceof TDouble) {
-			return funcCall("can_read_double", literalString(logicalSignal.getName()));
-		} else if(logicalSignal.getVariableType() instanceof TInt) {
-			return funcCall("can_read_int", literalString(logicalSignal.getName()));
-		} else {
-			throw new RuntimeException("unknown data type: " +
-					logicalSignal.getVariableType().getTypeClassName());
-		}
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getValueWriteAccessor(OutputPort logicalSignal, IExpressionTerm value) {
-		// write the value on the given signal port depending on the variable type
-		if(logicalSignal.getVariableType() instanceof TBool) {
-			return funcCall("can_write_bool", literalString(logicalSignal.getName()), value);
-		} else if(logicalSignal.getVariableType() instanceof TDouble) {
-			return funcCall("can_write_double", literalString(logicalSignal.getName()), value);
-		} else if(logicalSignal.getVariableType() instanceof TInt) {
-			return funcCall("can_write_int", literalString(logicalSignal.getName()), value);
-		} else {
-			throw new RuntimeException("unknown data type: " +
-					logicalSignal.getVariableType().getTypeClassName());
-		}
-	}
-
-	/**
-	 * builds a constant literal C string including double quotes
-	 */
-	private RawString literalString(String str) {
-		return rawString("\"" + str + "\"");
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/CanTransmissionCatalog.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/CanTransmissionCatalog.java
deleted file mode 100644
index 8f3a64fd..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/CanTransmissionCatalog.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.fortiss.af3.deployment.generator.DeploymentExecutableTransformationContext;
-import org.fortiss.af3.deployment.generator.Transmission;
-import org.fortiss.af3.deployment.generator.TransmissionCatalog;
-import org.fortiss.af3.generator.common.model.c.CSourcePackage;
-
-/**
- * Can Transmission Catalog
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class CanTransmissionCatalog extends TransmissionCatalog {
-
-	/** Stores the transmissions contained in this catalog. */
-	private final List<Transmission> transmissions = new ArrayList<Transmission>();
-
-	/** Adds the given transmission to the catalog. */
-	@Override
-	public void addTransmission(Transmission transmission) {
-		transmissions.add(transmission);
-	}
-
-	/**
-	 * Here the one can create additional SourcePackages which are common for all ECUs.
-	 * It won't be used in the current release.
-	 */
-	@Override
-	public CSourcePackage getSourcePackage(DeploymentExecutableTransformationContext ctx) {
-		return null;
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/GPIExecutable.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/GPIExecutable.java
deleted file mode 100644
index 5d6b311d..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/GPIExecutable.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable;
-
-import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.funcCall;
-import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.intConst;
-
-import org.fortiss.af3.component.model.InputPort;
-import org.fortiss.af3.expression.model.terms.IExpressionTerm;
-import org.fortiss.af3.platform.generic.generator.executable.GenericReceiverExecutable;
-import org.fortiss.af3.platform.model.annotation.GPIOPin;
-import org.fortiss.af3.platform.model.generic.GenericReceiver;
-import org.fortiss.af3.platform.raspberry.model.GPI;
-import org.fortiss.tooling.base.utils.AnnotationUtils;
-
-/**
- * Executable for {@link GPI}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class GPIExecutable extends GenericReceiverExecutable {
-
-	/** Constructor. */
-	public GPIExecutable(GenericReceiver modelElement) {
-		super(modelElement);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getInitialization() {
-		return funcCall("gpio_init_in", intConst(getPinFromModelElement(modelElement)));
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getNoValGuardAccessor(InputPort logicalSignal) {
-		return funcCall("gpio_is_noval", intConst(getPinFromModelElement(modelElement)));
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getTermination() {
-		return funcCall("gpio_term", intConst(getPinFromModelElement(modelElement)));
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getValueReadAccessor(InputPort logicalSignal) {
-		return funcCall("gpio_read", intConst(getPinFromModelElement(modelElement)));
-	}
-
-	private static int getPinFromModelElement(GenericReceiver modelElement) {
-		return AnnotationUtils.getAnnotation(modelElement, GPIOPin.class).getPinNumber();
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/GPOExecutable.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/GPOExecutable.java
deleted file mode 100644
index a64a68c0..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/GPOExecutable.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable;
-
-import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.funcCall;
-import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.intConst;
-
-import org.fortiss.af3.component.model.OutputPort;
-import org.fortiss.af3.expression.model.terms.IExpressionTerm;
-import org.fortiss.af3.platform.generic.generator.executable.GenericTransmitterExecutable;
-import org.fortiss.af3.platform.model.annotation.GPIOPin;
-import org.fortiss.af3.platform.model.generic.GenericTransmitter;
-import org.fortiss.af3.platform.raspberry.model.GPO;
-import org.fortiss.tooling.base.utils.AnnotationUtils;
-
-/**
- * Executable for {@link GPO}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class GPOExecutable extends GenericTransmitterExecutable {
-
-	/** Constructor. */
-	public GPOExecutable(GenericTransmitter modelElement) {
-		super(modelElement);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getInitialization() {
-		return funcCall("gpio_init_out", intConst(getPinFromModelElement(modelElement)));
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getNoValWriteAccessor(OutputPort logicalSignal) {
-		return funcCall("gpio_set_noval", intConst(getPinFromModelElement(modelElement)));
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getTermination() {
-		return funcCall("gpio_term", intConst(getPinFromModelElement(modelElement)));
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getValueWriteAccessor(OutputPort logicalSignal, IExpressionTerm value) {
-		return funcCall("gpio_write", intConst(getPinFromModelElement(modelElement)), value);
-	}
-
-	private static int getPinFromModelElement(GenericTransmitter modelElement) {
-		return AnnotationUtils.getAnnotation(modelElement, GPIOPin.class).getPinNumber();
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/GamepadSensorExecutable.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/GamepadSensorExecutable.java
deleted file mode 100644
index f335e8ec..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/GamepadSensorExecutable.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable;
-
-import org.fortiss.af3.component.model.InputPort;
-import org.fortiss.af3.expression.model.terms.IExpressionTerm;
-import org.fortiss.af3.platform.generic.generator.executable.GenericReceiverExecutable;
-import org.fortiss.af3.platform.model.generic.GenericReceiver;
-import org.fortiss.af3.platform.raspberry.model.SensorIMU;
-
-/**
- * Executable for {@link SensorIMU}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class GamepadSensorExecutable extends GenericReceiverExecutable {
-
-	/** Constructor. */
-	public GamepadSensorExecutable(GenericReceiver modelElement) {
-		super(modelElement);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getInitialization() {
-		return super.getInitialization();
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getNoValGuardAccessor(InputPort logicalSignal) {
-		return super.getNoValGuardAccessor(logicalSignal);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getTermination() {
-		return super.getTermination();
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getValueReadAccessor(InputPort logicalSignal) {
-		return super.getValueReadAccessor(logicalSignal);
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/IMUSensorExecutable.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/IMUSensorExecutable.java
deleted file mode 100644
index bec3e38f..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/IMUSensorExecutable.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable;
-
-import org.fortiss.af3.component.model.InputPort;
-import org.fortiss.af3.expression.model.terms.IExpressionTerm;
-import org.fortiss.af3.platform.generic.generator.executable.GenericReceiverExecutable;
-import org.fortiss.af3.platform.model.generic.GenericReceiver;
-import org.fortiss.af3.platform.raspberry.model.SensorIMU;
-
-/**
- * Executable for {@link SensorIMU}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class IMUSensorExecutable extends GenericReceiverExecutable {
-
-	/** Constructor. */
-	public IMUSensorExecutable(GenericReceiver modelElement) {
-		super(modelElement);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getInitialization() {
-		return super.getInitialization();
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getNoValGuardAccessor(InputPort logicalSignal) {
-		return super.getNoValGuardAccessor(logicalSignal);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getTermination() {
-		return super.getTermination();
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getValueReadAccessor(InputPort logicalSignal) {
-		return super.getValueReadAccessor(logicalSignal);
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/LaserRangeFinderSensorExecutable.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/LaserRangeFinderSensorExecutable.java
deleted file mode 100644
index 6fa57e26..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/LaserRangeFinderSensorExecutable.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable;
-
-import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.funcCall;
-
-import org.fortiss.af3.component.model.InputPort;
-import org.fortiss.af3.expression.model.terms.IExpressionTerm;
-import org.fortiss.af3.platform.generic.generator.executable.GenericReceiverExecutable;
-import org.fortiss.af3.platform.model.generic.GenericReceiver;
-import org.fortiss.af3.platform.raspberry.model.SensorLaserRangeFinder;
-
-/**
- * Executable for {@link SensorLaserRangeFinder}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class LaserRangeFinderSensorExecutable extends GenericReceiverExecutable {
-
-	/** Constructor. */
-	public LaserRangeFinderSensorExecutable(GenericReceiver modelElement) {
-		super(modelElement);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getInitialization() {
-		return funcCall("lrf_init");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getNoValGuardAccessor(InputPort logicalSignal) {
-		return funcCall("lrf_is_noval");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getTermination() {
-		return funcCall("lrf_term");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getValueReadAccessor(InputPort logicalSignal) {
-		return funcCall("lrf_read");
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/LaserScannerSensorExecutable.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/LaserScannerSensorExecutable.java
deleted file mode 100644
index 5c64931b..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/LaserScannerSensorExecutable.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable;
-
-import org.fortiss.af3.component.model.InputPort;
-import org.fortiss.af3.expression.model.terms.IExpressionTerm;
-import org.fortiss.af3.platform.generic.generator.executable.GenericReceiverExecutable;
-import org.fortiss.af3.platform.model.generic.GenericReceiver;
-import org.fortiss.af3.platform.raspberry.model.SensorLaserScanner;
-
-/**
- * Executable for {@link SensorLaserScanner}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class LaserScannerSensorExecutable extends GenericReceiverExecutable {
-
-	/** Constructor. */
-	public LaserScannerSensorExecutable(GenericReceiver modelElement) {
-		super(modelElement);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getInitialization() {
-		return super.getInitialization();
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getNoValGuardAccessor(InputPort logicalSignal) {
-		return super.getNoValGuardAccessor(logicalSignal);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getTermination() {
-		return super.getTermination();
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getValueReadAccessor(InputPort logicalSignal) {
-		return super.getValueReadAccessor(logicalSignal);
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/PWMActuatorExecutable.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/PWMActuatorExecutable.java
deleted file mode 100644
index 34c1cb46..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/PWMActuatorExecutable.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable;
-
-import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.funcCall;
-import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.intConst;
-
-import org.fortiss.af3.component.model.OutputPort;
-import org.fortiss.af3.expression.model.terms.IExpressionTerm;
-import org.fortiss.af3.platform.generic.generator.executable.GenericTransmitterExecutable;
-import org.fortiss.af3.platform.model.generic.GenericTransmitter;
-import org.fortiss.af3.platform.raspberry.model.ActuatorPWM;
-import org.fortiss.af3.platform.raspberry.model.annotation.Channel;
-import org.fortiss.tooling.base.utils.AnnotationUtils;
-
-/**
- * Executable for {@link ActuatorPWM}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class PWMActuatorExecutable extends GenericTransmitterExecutable {
-
-	/** Constructor. */
-	public PWMActuatorExecutable(GenericTransmitter modelElement) {
-		super(modelElement);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getInitialization() {
-		return funcCall("pwm_init", intConst(getPWMChannelFromModelElement(modelElement)));
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getNoValWriteAccessor(OutputPort logicalSignal) {
-		return funcCall("pwm_set_noval", intConst(getPWMChannelFromModelElement(modelElement)));
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getTermination() {
-		return funcCall("pwm_term", intConst(getPWMChannelFromModelElement(modelElement)));
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getValueWriteAccessor(OutputPort logicalSignal, IExpressionTerm value) {
-		return funcCall("pwm_write", intConst(getPWMChannelFromModelElement(modelElement)), value);
-	}
-
-	private int getPWMChannelFromModelElement(GenericTransmitter modelElement) {
-		return AnnotationUtils.getAnnotation(modelElement, Channel.class).getChannel();
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/RaspberryPIExecutable.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/RaspberryPIExecutable.java
deleted file mode 100644
index 920e0922..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/RaspberryPIExecutable.java
+++ /dev/null
@@ -1,207 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable;
-
-import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.funcCall;
-import static org.fortiss.af3.generator.common.utils.CLanguageModelElementFacade.addUserHeaderInclude;
-import static org.fortiss.af3.generator.common.utils.SourceModelElementFactory.createByteContentUnitForPluginFile;
-
-import java.io.IOException;
-import java.net.URISyntaxException;
-import java.util.List;
-import java.util.Set;
-
-import org.conqat.lib.commons.collections.Pair;
-import org.fortiss.af3.component.model.Component;
-import org.fortiss.af3.component.model.InputPort;
-import org.fortiss.af3.component.model.OutputPort;
-import org.fortiss.af3.component.model.Port;
-import org.fortiss.af3.component.model.generator.ComponentFunction;
-import org.fortiss.af3.component.model.generator.LocalFunction;
-import org.fortiss.af3.expression.model.terms.IExpressionTerm;
-import org.fortiss.af3.expression.model.terms.imperative.IStatementTerm;
-import org.fortiss.af3.generator.common.model.c.CSourcePackage;
-import org.fortiss.af3.generator.common.model.source.SourceUnit;
-import org.fortiss.af3.platform.generic.generator.executable.GenericExecutionUnitExecutable;
-import org.fortiss.af3.platform.language.executable.IInitializableExecutable;
-import org.fortiss.af3.platform.language.executable.IReadableExecutable;
-import org.fortiss.af3.platform.language.executable.ITerminatableExecutable;
-import org.fortiss.af3.platform.language.executable.IWritableExecutable;
-import org.fortiss.af3.platform.model.ExecutionUnit;
-import org.fortiss.af3.platform.model.PlatformConnectorUnit;
-import org.fortiss.af3.platform.model.generic.GenericTransceiver;
-import org.fortiss.af3.platform.raspberry.AF3PlatformRaspberryActivator;
-import org.fortiss.af3.platform.raspberry.model.RaspberryPi;
-import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
-
-/**
- * {@link IInitializableExecutable} and {@link ITerminatableExecutable} for the {@link RaspberryPi}
- * platform.
- * 
- * 
- * @author eder
- * @author $Author: eder $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class RaspberryPIExecutable extends GenericExecutionUnitExecutable {
-
-	private static final String SRC_LIB_SUB_PACKAGE_NAME = "src-lib";
-	private static final String INC_LIB_SUB_PACKAGE_NAME = "inc-lib";
-
-	/** Constructor. */
-	public RaspberryPIExecutable(ExecutionUnit modelElement) {
-		super(modelElement);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	protected CSourcePackage createExecutionUnitSourcePackage(String name,
-			List<Pair<ExecutionUnit, Component>> deployedComponents,
-			List<Pair<PlatformConnectorUnit, Port>> deployedPorts, ITransformationContext context) {
-
-		CSourcePackage pkg =
-				super.createExecutionUnitSourcePackage(name, deployedComponents, deployedPorts,
-						context);
-
-		// get system.h to add references to self-defined inc files
-		SourceUnit system = pkg.getSrcGenPackage().findSourceUnitByName("system.c");
-
-		// Add source/header files here to be copied into the deployment directory
-		try {
-			/** COMPONENTS **/
-
-			addFile(pkg, "src/main.c");
-
-			// reference is added by GenericExecutableBase -> only add file
-			addFile(pkg, "inc/io.h");
-			addFile(pkg, "src/io.c");
-
-			// add all components including references
-			addFilesWithReference(pkg, system, "CanConnector");
-			addFilesWithReference(pkg, system, "Gamepad");
-			addFilesWithReference(pkg, system, "GPIO");
-			addFilesWithReference(pkg, system, "IMU");
-			addFilesWithReference(pkg, system, "LaserRangeFinder");
-			addFilesWithReference(pkg, system, "LaserScanner");
-			addFilesWithReference(pkg, system, "PWM");
-
-			/** LIBRARIES **/
-
-			// add UART lib
-			addFile(pkg, "inc/libuart.h");
-			addFile(pkg, "src/libuart.c");
-			addFile(pkg, "inc/libmaestro.h");
-			addFile(pkg, "src/libmaestro.c");
-			addFile(pkg, "inc/libcansocket.h");
-			addFile(pkg, "src/libcansocket.c");
-
-			/** FIXES AND PATCHES **/
-
-			// overwrite data_dictionary, the new one has all functions
-			// required for the simulation commented out so there are no
-			// conflicts
-			addFile(pkg, "inc-gen/data_dictionary.h");
-			addFile(pkg, "src-gen/data_dictionary.c");
-
-			// overwrite Makedefs, the new one uses -std=gnu99 instead of -std=c99
-			// so libuart compiles properly
-			addFile(pkg, "Makedefs");
-
-		} catch(IOException | URISyntaxException e) {
-			throw new RuntimeException("could not add header and source files from lib", e);
-		}
-
-		return pkg;
-	}
-
-	private static void addFilesWithReference(CSourcePackage pkg, SourceUnit source,
-			String fileWithoutExtension) throws IOException, URISyntaxException {
-		addFile(pkg, "src/" + fileWithoutExtension + ".c");
-		addFile(pkg, "inc/" + fileWithoutExtension + ".h");
-		addSystemCReference(source, fileWithoutExtension);
-	}
-
-	private static void addFile(CSourcePackage pkg, String file) throws IOException,
-			URISyntaxException {
-		pkg.addUnit(createByteContentUnitForPluginFile(AF3PlatformRaspberryActivator.PLUGIN_ID,
-				"lib", file, false));
-	}
-
-	private static void addSystemCReference(SourceUnit source, String reference) {
-		addUserHeaderInclude(source, reference);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	protected ComponentFunction createInitializeFunction(
-			List<Pair<ExecutionUnit, Component>> deployedComponents,
-			Set<PlatformConnectorUnit> usedUnits) {
-		return super.createInitializeFunction(deployedComponents, usedUnits);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	protected void
-			createReadAccess(IReadableExecutable exec, InputPort p, List<IStatementTerm> body) {
-		super.createReadAccess(exec, p, body);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	protected LocalFunction createReadInputFunction(
-			List<Pair<PlatformConnectorUnit, Port>> deployedPorts,
-			Set<GenericTransceiver> usedTransceivers) {
-		return super.createReadInputFunction(deployedPorts, usedTransceivers);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	protected ComponentFunction createStepFunction(
-			List<Pair<ExecutionUnit, Component>> deployedComponents,
-			List<Pair<PlatformConnectorUnit, Port>> deployedPorts,
-			Set<GenericTransceiver> usedTransceivers) {
-		return super.createStepFunction(deployedComponents, deployedPorts, usedTransceivers);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	protected LocalFunction createTerminationFunction(Set<PlatformConnectorUnit> usedUnits) {
-		return super.createTerminationFunction(usedUnits);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	protected void createWriteAccess(IWritableExecutable exec, OutputPort p,
-			List<IStatementTerm> body) {
-		super.createWriteAccess(exec, p, body);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getInitialization() {
-		return funcCall("init_raspberryPI_ecu");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getTermination() {
-		return funcCall("term_raspberryPI_ecu");
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/WheelEncoderExecutable.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/WheelEncoderExecutable.java
deleted file mode 100644
index 5da6e0d0..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/WheelEncoderExecutable.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable;
-
-import org.fortiss.af3.platform.generic.generator.executable.GenericReceiverExecutable;
-import org.fortiss.af3.platform.raspberry.model.SensorLaserRangeFinder;
-import org.fortiss.af3.platform.raspberry.model.WheelEncoder;
-
-/**
- * Executable for {@link SensorLaserRangeFinder}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class WheelEncoderExecutable extends GenericReceiverExecutable {
-
-	/** Constructor. */
-	public WheelEncoderExecutable(WheelEncoder modelElement) {
-		super(modelElement);
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button1Executable.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button1Executable.java
deleted file mode 100644
index bb216285..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button1Executable.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
-
-import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.funcCall;
-
-import org.fortiss.af3.component.model.InputPort;
-import org.fortiss.af3.expression.model.terms.IExpressionTerm;
-import org.fortiss.af3.platform.generic.generator.executable.GenericReceiverExecutable;
-import org.fortiss.af3.platform.model.generic.GenericReceiver;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Button1;
-
-/**
- * Executable for {@link Button1}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class Button1Executable extends GenericReceiverExecutable {
-
-	/** Constructor. */
-	public Button1Executable(GenericReceiver modelElement) {
-		super(modelElement);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getInitialization() {
-		return funcCall("gp_init");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getNoValGuardAccessor(InputPort logicalSignal) {
-		return funcCall("gp_btn1_is_noval");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getTermination() {
-		return funcCall("gp_term");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getValueReadAccessor(InputPort logicalSignal) {
-		return funcCall("gp_btn1_read");
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button2Executable.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button2Executable.java
deleted file mode 100644
index 4926a0a5..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button2Executable.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
-
-import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.funcCall;
-
-import org.fortiss.af3.component.model.InputPort;
-import org.fortiss.af3.expression.model.terms.IExpressionTerm;
-import org.fortiss.af3.platform.generic.generator.executable.GenericReceiverExecutable;
-import org.fortiss.af3.platform.model.generic.GenericReceiver;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Button2;
-
-/**
- * Executable for {@link Button2}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class Button2Executable extends GenericReceiverExecutable {
-
-	/** Constructor. */
-	public Button2Executable(GenericReceiver modelElement) {
-		super(modelElement);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getInitialization() {
-		return funcCall("gp_init");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getNoValGuardAccessor(InputPort logicalSignal) {
-		return funcCall("gp_btn2_is_noval");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getTermination() {
-		return funcCall("gp_term");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getValueReadAccessor(InputPort logicalSignal) {
-		return funcCall("gp_btn2_read");
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button3Executable.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button3Executable.java
deleted file mode 100644
index 75c8149e..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button3Executable.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
-
-import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.funcCall;
-
-import org.fortiss.af3.component.model.InputPort;
-import org.fortiss.af3.expression.model.terms.IExpressionTerm;
-import org.fortiss.af3.platform.generic.generator.executable.GenericReceiverExecutable;
-import org.fortiss.af3.platform.model.generic.GenericReceiver;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Button3;
-
-/**
- * Executable for {@link Button3}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class Button3Executable extends GenericReceiverExecutable {
-
-	/** Constructor. */
-	public Button3Executable(GenericReceiver modelElement) {
-		super(modelElement);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getInitialization() {
-		return funcCall("gp_init");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getNoValGuardAccessor(InputPort logicalSignal) {
-		return funcCall("gp_btn3_is_noval");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getTermination() {
-		return funcCall("gp_term");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getValueReadAccessor(InputPort logicalSignal) {
-		return funcCall("gp_btn3_read");
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button4Executable.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button4Executable.java
deleted file mode 100644
index b8f99e8c..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Button4Executable.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
-
-import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.funcCall;
-
-import org.fortiss.af3.component.model.InputPort;
-import org.fortiss.af3.expression.model.terms.IExpressionTerm;
-import org.fortiss.af3.platform.generic.generator.executable.GenericReceiverExecutable;
-import org.fortiss.af3.platform.model.generic.GenericReceiver;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Button4;
-
-/**
- * Executable for {@link Button4}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class Button4Executable extends GenericReceiverExecutable {
-
-	/** Constructor. */
-	public Button4Executable(GenericReceiver modelElement) {
-		super(modelElement);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getInitialization() {
-		return funcCall("gp_init");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getNoValGuardAccessor(InputPort logicalSignal) {
-		return funcCall("gp_btn4_is_noval");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getTermination() {
-		return funcCall("gp_term");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getValueReadAccessor(InputPort logicalSignal) {
-		return funcCall("gp_btn4_read");
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonL1Executable.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonL1Executable.java
deleted file mode 100644
index 3fb2b780..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonL1Executable.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
-
-import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.funcCall;
-
-import org.fortiss.af3.component.model.InputPort;
-import org.fortiss.af3.expression.model.terms.IExpressionTerm;
-import org.fortiss.af3.platform.generic.generator.executable.GenericReceiverExecutable;
-import org.fortiss.af3.platform.model.generic.GenericReceiver;
-import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonL1;
-
-/**
- * Executable for {@link ButtonL1}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class ButtonL1Executable extends GenericReceiverExecutable {
-
-	/** Constructor. */
-	public ButtonL1Executable(GenericReceiver modelElement) {
-		super(modelElement);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getInitialization() {
-		return funcCall("gp_init");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getNoValGuardAccessor(InputPort logicalSignal) {
-		return funcCall("gp_btnL1_is_noval");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getTermination() {
-		return funcCall("gp_term");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getValueReadAccessor(InputPort logicalSignal) {
-		return funcCall("gp_btnL1_read");
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonL2Executable.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonL2Executable.java
deleted file mode 100644
index 0e5a0645..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonL2Executable.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
-
-import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.funcCall;
-
-import org.fortiss.af3.component.model.InputPort;
-import org.fortiss.af3.expression.model.terms.IExpressionTerm;
-import org.fortiss.af3.platform.generic.generator.executable.GenericReceiverExecutable;
-import org.fortiss.af3.platform.model.generic.GenericReceiver;
-import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonL2;
-
-/**
- * Executable for {@link ButtonL2}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class ButtonL2Executable extends GenericReceiverExecutable {
-
-	/** Constructor. */
-	public ButtonL2Executable(GenericReceiver modelElement) {
-		super(modelElement);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getInitialization() {
-		return funcCall("gp_init");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getNoValGuardAccessor(InputPort logicalSignal) {
-		return funcCall("gp_btnL2_is_noval");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getTermination() {
-		return funcCall("gp_term");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getValueReadAccessor(InputPort logicalSignal) {
-		return funcCall("gp_btnL2_read");
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonR1Executable.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonR1Executable.java
deleted file mode 100644
index 4761f167..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonR1Executable.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
-
-import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.funcCall;
-
-import org.fortiss.af3.component.model.InputPort;
-import org.fortiss.af3.expression.model.terms.IExpressionTerm;
-import org.fortiss.af3.platform.generic.generator.executable.GenericReceiverExecutable;
-import org.fortiss.af3.platform.model.generic.GenericReceiver;
-import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonR1;
-
-/**
- * Executable for {@link ButtonR1}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class ButtonR1Executable extends GenericReceiverExecutable {
-
-	/** Constructor. */
-	public ButtonR1Executable(GenericReceiver modelElement) {
-		super(modelElement);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getInitialization() {
-		return funcCall("gp_init");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getNoValGuardAccessor(InputPort logicalSignal) {
-		return funcCall("gp_btnR1_is_noval");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getTermination() {
-		return funcCall("gp_term");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getValueReadAccessor(InputPort logicalSignal) {
-		return funcCall("gp_btnR1_read");
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonR2Executable.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonR2Executable.java
deleted file mode 100644
index 59d42182..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/ButtonR2Executable.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
-
-import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.funcCall;
-
-import org.fortiss.af3.component.model.InputPort;
-import org.fortiss.af3.expression.model.terms.IExpressionTerm;
-import org.fortiss.af3.platform.generic.generator.executable.GenericReceiverExecutable;
-import org.fortiss.af3.platform.model.generic.GenericReceiver;
-import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonL2;
-
-/**
- * Executable for {@link ButtonL2}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class ButtonR2Executable extends GenericReceiverExecutable {
-
-	/** Constructor. */
-	public ButtonR2Executable(GenericReceiver modelElement) {
-		super(modelElement);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getInitialization() {
-		return funcCall("gp_init");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getNoValGuardAccessor(InputPort logicalSignal) {
-		return funcCall("gp_btnR2_is_noval");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getTermination() {
-		return funcCall("gp_term");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getValueReadAccessor(InputPort logicalSignal) {
-		return funcCall("gp_btnR2_read");
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Left_StickXExecutable.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Left_StickXExecutable.java
deleted file mode 100644
index c2d30bc1..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Left_StickXExecutable.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
-
-import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.funcCall;
-
-import org.fortiss.af3.component.model.InputPort;
-import org.fortiss.af3.expression.model.terms.IExpressionTerm;
-import org.fortiss.af3.platform.generic.generator.executable.GenericReceiverExecutable;
-import org.fortiss.af3.platform.model.generic.GenericReceiver;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Left_StickX_Position;
-
-/**
- * Executable for {@link Left_StickX_Position}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class Left_StickXExecutable extends GenericReceiverExecutable {
-
-	/** Constructor. */
-	public Left_StickXExecutable(GenericReceiver modelElement) {
-		super(modelElement);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getInitialization() {
-		return funcCall("gp_init");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getNoValGuardAccessor(InputPort logicalSignal) {
-		return funcCall("gp_btnLX_is_noval");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getTermination() {
-		return funcCall("gp_term");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getValueReadAccessor(InputPort logicalSignal) {
-		return funcCall("gp_btnLX_read");
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Left_StickYExecutable.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Left_StickYExecutable.java
deleted file mode 100644
index 8516209e..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Left_StickYExecutable.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
-
-import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.funcCall;
-
-import org.fortiss.af3.component.model.InputPort;
-import org.fortiss.af3.expression.model.terms.IExpressionTerm;
-import org.fortiss.af3.platform.generic.generator.executable.GenericReceiverExecutable;
-import org.fortiss.af3.platform.model.generic.GenericReceiver;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Left_StickY_Position;
-
-/**
- * Executable for {@link Left_StickY_Position}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class Left_StickYExecutable extends GenericReceiverExecutable {
-
-	/** Constructor. */
-	public Left_StickYExecutable(GenericReceiver modelElement) {
-		super(modelElement);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getInitialization() {
-		return funcCall("gp_init");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getNoValGuardAccessor(InputPort logicalSignal) {
-		return funcCall("gp_btnLY_is_noval");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getTermination() {
-		return funcCall("gp_term");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getValueReadAccessor(InputPort logicalSignal) {
-		return funcCall("gp_btnLY_read");
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Right_StickXExecutable.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Right_StickXExecutable.java
deleted file mode 100644
index 5d684e9d..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Right_StickXExecutable.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
-
-import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.funcCall;
-
-import org.fortiss.af3.component.model.InputPort;
-import org.fortiss.af3.expression.model.terms.IExpressionTerm;
-import org.fortiss.af3.platform.generic.generator.executable.GenericReceiverExecutable;
-import org.fortiss.af3.platform.model.generic.GenericReceiver;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Right_StickX_Position;
-
-/**
- * Executable for {@link Right_StickX_Position}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class Right_StickXExecutable extends GenericReceiverExecutable {
-
-	/** Constructor. */
-	public Right_StickXExecutable(GenericReceiver modelElement) {
-		super(modelElement);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getInitialization() {
-		return funcCall("gp_init");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getNoValGuardAccessor(InputPort logicalSignal) {
-		return funcCall("gp_btnRX_is_noval");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getTermination() {
-		return funcCall("gp_term");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getValueReadAccessor(InputPort logicalSignal) {
-		return funcCall("gp_btnRX_read");
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Right_StickYExecutable.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Right_StickYExecutable.java
deleted file mode 100644
index afcb06d9..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/executable/gamepad/Right_StickYExecutable.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.executable.gamepad;
-
-import static org.fortiss.af3.expression.utils.ExpressionModelElementFactory.funcCall;
-
-import org.fortiss.af3.component.model.InputPort;
-import org.fortiss.af3.expression.model.terms.IExpressionTerm;
-import org.fortiss.af3.platform.generic.generator.executable.GenericReceiverExecutable;
-import org.fortiss.af3.platform.model.generic.GenericReceiver;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Right_StickY_Position;
-
-/**
- * Executable for {@link Right_StickY_Position}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class Right_StickYExecutable extends GenericReceiverExecutable {
-
-	/** Constructor. */
-	public Right_StickYExecutable(GenericReceiver modelElement) {
-		super(modelElement);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getInitialization() {
-		return funcCall("gp_init");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getNoValGuardAccessor(InputPort logicalSignal) {
-		return funcCall("gp_btnRY_is_noval");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getTermination() {
-		return funcCall("gp_term");
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public IExpressionTerm getValueReadAccessor(InputPort logicalSignal) {
-		return funcCall("gp_btnRY_read");
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/CanBusTransformation.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/CanBusTransformation.java
deleted file mode 100644
index e486ff8a..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/CanBusTransformation.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.transform;
-
-import org.fortiss.af3.platform.raspberry.generator.executable.CanBusExecutable;
-import org.fortiss.af3.platform.raspberry.model.CanBus;
-import org.fortiss.tooling.kernel.extension.ITransformationProvider;
-import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
-
-/**
- * Transformation for {@link CanBus}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class CanBusTransformation implements ITransformationProvider {
-
-	/** {@inheritDoc} */
-	@Override
-	public Class<?> getTargetClass() {
-		return CanBusExecutable.class;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean
-			canHandleChainTransformation(Class<?> sourceClass, ITransformationContext context) {
-		return CanBus.class.isAssignableFrom(sourceClass);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canTransform(Object source, ITransformationContext context) {
-		return source instanceof CanBus;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public Object transform(Object source, ITransformationContext context) {
-		return new CanBusExecutable((CanBus)source);
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/CanBusTransmissionCatalogTransformation.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/CanBusTransmissionCatalogTransformation.java
deleted file mode 100644
index 7609aa34..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/CanBusTransmissionCatalogTransformation.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: GenericTransmisstionUnitTransmissionCatalogTransformation.java 5274 2012-08-02 07:54:11Z mou $
-|                                                                          |
-| Copyright 2011 ForTISS GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.transform;
-
-import org.fortiss.af3.deployment.generator.TransmissionCatalog;
-import org.fortiss.af3.platform.model.generic.GenericTransmissionUnit;
-import org.fortiss.af3.platform.raspberry.generator.executable.CanTransmissionCatalog;
-import org.fortiss.af3.platform.raspberry.model.CanBus;
-import org.fortiss.tooling.kernel.extension.ITransformationProvider;
-import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
-
-/**
- * {@link TransmissionCatalog} generator for {@link GenericTransmissionUnit}.
- * 
- * @author hoelzl
- * @author $Author: mou $
- * @version $Rev: 5274 $
- * @ConQAT.Rating GREEN Hash: C4318B1D240DC4CACC2BB0311CB2B23A
- */
-public class CanBusTransmissionCatalogTransformation implements ITransformationProvider {
-
-	/** {@inheritDoc} */
-	@Override
-	public Class<?> getTargetClass() {
-		return CanTransmissionCatalog.class;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean
-			canHandleChainTransformation(Class<?> sourceClass, ITransformationContext context) {
-		return CanBus.class.isAssignableFrom(sourceClass);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canTransform(Object source, ITransformationContext context) {
-		return source instanceof CanBus;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public Object transform(Object source, ITransformationContext context) {
-		return new CanTransmissionCatalog();
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/CanConnectorTransformation.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/CanConnectorTransformation.java
deleted file mode 100644
index c1384349..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/CanConnectorTransformation.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.transform;
-
-import org.fortiss.af3.platform.raspberry.generator.executable.CanConnectorExecutable;
-import org.fortiss.af3.platform.raspberry.model.CanConnector;
-import org.fortiss.tooling.kernel.extension.ITransformationProvider;
-import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
-
-/**
- * Transformation for {@link CanConnector}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class CanConnectorTransformation implements ITransformationProvider {
-
-	/** {@inheritDoc} */
-	@Override
-	public Class<?> getTargetClass() {
-		return CanConnectorExecutable.class;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean
-			canHandleChainTransformation(Class<?> sourceClass, ITransformationContext context) {
-		return CanConnector.class.isAssignableFrom(sourceClass);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canTransform(Object source, ITransformationContext context) {
-		return source instanceof CanConnector;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public Object transform(Object source, ITransformationContext context) {
-		return new CanConnectorExecutable((CanConnector)source);
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/CanConnectorTransmissionCatalogTransformation.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/CanConnectorTransmissionCatalogTransformation.java
deleted file mode 100644
index d60a8b87..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/CanConnectorTransmissionCatalogTransformation.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: GenericTransceiverTransmissionCatalogTransformation.java 5274 2012-08-02 07:54:11Z mou $
-|                                                                          |
-| Copyright 2011 ForTISS GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.transform;
-
-import org.fortiss.af3.deployment.generator.TransmissionCatalog;
-import org.fortiss.af3.platform.model.generic.GenericTransceiver;
-import org.fortiss.af3.platform.raspberry.generator.executable.CanTransmissionCatalog;
-import org.fortiss.af3.platform.raspberry.model.CanConnector;
-import org.fortiss.tooling.kernel.extension.ITransformationProvider;
-import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
-
-/**
- * {@link TransmissionCatalog} generator for {@link GenericTransceiver}.
- * 
- * @author hoelzl
- * @author $Author: mou $
- * @version $Rev: 5274 $
- * @ConQAT.Rating GREEN Hash: 99AE1800CB3BA900FDB2FD75FC254AD4
- */
-public class CanConnectorTransmissionCatalogTransformation implements ITransformationProvider {
-
-	/** {@inheritDoc} */
-	@Override
-	public Class<?> getTargetClass() {
-		return CanTransmissionCatalog.class;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean
-			canHandleChainTransformation(Class<?> sourceClass, ITransformationContext context) {
-		return CanConnector.class.isAssignableFrom(sourceClass);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canTransform(Object source, ITransformationContext context) {
-		return source instanceof CanConnector;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public Object transform(Object source, ITransformationContext context) {
-		return new CanTransmissionCatalog();
-	}
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/GPITransformation.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/GPITransformation.java
deleted file mode 100644
index ab91a614..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/GPITransformation.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.transform;
-
-import org.fortiss.af3.platform.raspberry.generator.executable.GPIExecutable;
-import org.fortiss.af3.platform.raspberry.model.GPI;
-import org.fortiss.tooling.kernel.extension.ITransformationProvider;
-import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
-
-/**
- * Transformation for {@link GPI}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class GPITransformation implements ITransformationProvider {
-
-	/** {@inheritDoc} */
-	@Override
-	public Class<?> getTargetClass() {
-		return GPIExecutable.class;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean
-			canHandleChainTransformation(Class<?> sourceClass, ITransformationContext context) {
-		return GPI.class.isAssignableFrom(sourceClass);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canTransform(Object source, ITransformationContext context) {
-		return source instanceof GPI;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public Object transform(Object source, ITransformationContext context) {
-		return new GPIExecutable((GPI)source);
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/GPOTransformation.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/GPOTransformation.java
deleted file mode 100644
index 9a010deb..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/GPOTransformation.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.transform;
-
-import org.fortiss.af3.platform.raspberry.generator.executable.GPOExecutable;
-import org.fortiss.af3.platform.raspberry.model.GPO;
-import org.fortiss.tooling.kernel.extension.ITransformationProvider;
-import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
-
-/**
- * Transformation for {@link GPO}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class GPOTransformation implements ITransformationProvider {
-
-	/** {@inheritDoc} */
-	@Override
-	public Class<?> getTargetClass() {
-		return GPOExecutable.class;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean
-			canHandleChainTransformation(Class<?> sourceClass, ITransformationContext context) {
-		return GPO.class.isAssignableFrom(sourceClass);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canTransform(Object source, ITransformationContext context) {
-		return source instanceof GPO;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public Object transform(Object source, ITransformationContext context) {
-		return new GPOExecutable((GPO)source);
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/GamepadSensorTransformation.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/GamepadSensorTransformation.java
deleted file mode 100644
index 3e81e026..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/GamepadSensorTransformation.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.transform;
-
-import org.fortiss.af3.platform.raspberry.generator.executable.GamepadSensorExecutable;
-import org.fortiss.af3.platform.raspberry.model.SensorGamepad;
-import org.fortiss.tooling.kernel.extension.ITransformationProvider;
-import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
-
-/**
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class GamepadSensorTransformation implements ITransformationProvider {
-
-	/** {@inheritDoc} */
-	@Override
-	public Class<?> getTargetClass() {
-		return GamepadSensorExecutable.class;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean
-			canHandleChainTransformation(Class<?> sourceClass, ITransformationContext context) {
-		return SensorGamepad.class.isAssignableFrom(sourceClass);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canTransform(Object source, ITransformationContext context) {
-		return source instanceof SensorGamepad;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public Object transform(Object source, ITransformationContext context) {
-		return new GamepadSensorExecutable((SensorGamepad)source);
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/IMUSensorTransformation.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/IMUSensorTransformation.java
deleted file mode 100644
index 6648dc62..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/IMUSensorTransformation.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.transform;
-
-import org.fortiss.af3.platform.raspberry.generator.executable.IMUSensorExecutable;
-import org.fortiss.af3.platform.raspberry.model.SensorIMU;
-import org.fortiss.tooling.kernel.extension.ITransformationProvider;
-import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
-
-/**
- * Transformation for {@link SensorIMU}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class IMUSensorTransformation implements ITransformationProvider {
-
-	/** {@inheritDoc} */
-	@Override
-	public Class<?> getTargetClass() {
-		return IMUSensorExecutable.class;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean
-			canHandleChainTransformation(Class<?> sourceClass, ITransformationContext context) {
-		return SensorIMU.class.isAssignableFrom(sourceClass);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canTransform(Object source, ITransformationContext context) {
-		return source instanceof SensorIMU;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public Object transform(Object source, ITransformationContext context) {
-		return new IMUSensorExecutable((SensorIMU)source);
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/LaserRangeFinderSensorTransformation.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/LaserRangeFinderSensorTransformation.java
deleted file mode 100644
index 68e2a364..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/LaserRangeFinderSensorTransformation.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.transform;
-
-import org.fortiss.af3.platform.raspberry.generator.executable.LaserRangeFinderSensorExecutable;
-import org.fortiss.af3.platform.raspberry.model.SensorLaserRangeFinder;
-import org.fortiss.tooling.kernel.extension.ITransformationProvider;
-import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
-
-/**
- * Transformation for {@link SensorLaserRangeFinder}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class LaserRangeFinderSensorTransformation implements ITransformationProvider {
-
-	/** {@inheritDoc} */
-	@Override
-	public Class<?> getTargetClass() {
-		return LaserRangeFinderSensorExecutable.class;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean
-			canHandleChainTransformation(Class<?> sourceClass, ITransformationContext context) {
-		return SensorLaserRangeFinder.class.isAssignableFrom(sourceClass);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canTransform(Object source, ITransformationContext context) {
-		return source instanceof SensorLaserRangeFinder;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public Object transform(Object source, ITransformationContext context) {
-		return new LaserRangeFinderSensorExecutable((SensorLaserRangeFinder)source);
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/LaserScannerSensorTransformation.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/LaserScannerSensorTransformation.java
deleted file mode 100644
index e5c80421..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/LaserScannerSensorTransformation.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.transform;
-
-import org.fortiss.af3.platform.raspberry.generator.executable.LaserScannerSensorExecutable;
-import org.fortiss.af3.platform.raspberry.model.SensorLaserScanner;
-import org.fortiss.tooling.kernel.extension.ITransformationProvider;
-import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
-
-/**
- * Transformation for {@link SensorLaserScanner}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class LaserScannerSensorTransformation implements ITransformationProvider {
-
-	/** {@inheritDoc} */
-	@Override
-	public Class<?> getTargetClass() {
-		return LaserScannerSensorExecutable.class;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean
-			canHandleChainTransformation(Class<?> sourceClass, ITransformationContext context) {
-		return SensorLaserScanner.class.isAssignableFrom(sourceClass);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canTransform(Object source, ITransformationContext context) {
-		return source instanceof SensorLaserScanner;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public Object transform(Object source, ITransformationContext context) {
-		return new LaserScannerSensorExecutable((SensorLaserScanner)source);
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/PWMActuatorTransformation.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/PWMActuatorTransformation.java
deleted file mode 100644
index 3edc3262..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/PWMActuatorTransformation.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.transform;
-
-import org.fortiss.af3.platform.raspberry.generator.executable.PWMActuatorExecutable;
-import org.fortiss.af3.platform.raspberry.model.ActuatorPWM;
-import org.fortiss.tooling.kernel.extension.ITransformationProvider;
-import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
-
-/**
- * Transformation for {@link ActuatorPWM}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class PWMActuatorTransformation implements ITransformationProvider {
-
-	/** {@inheritDoc} */
-	@Override
-	public Class<?> getTargetClass() {
-		return PWMActuatorExecutable.class;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean
-			canHandleChainTransformation(Class<?> sourceClass, ITransformationContext context) {
-		return ActuatorPWM.class.isAssignableFrom(sourceClass);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canTransform(Object source, ITransformationContext context) {
-		return source instanceof ActuatorPWM;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public Object transform(Object source, ITransformationContext context) {
-		return new PWMActuatorExecutable((ActuatorPWM)source);
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/RaspberryPITransformation.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/RaspberryPITransformation.java
deleted file mode 100644
index dabce839..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/RaspberryPITransformation.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.transform;
-
-import org.fortiss.af3.platform.raspberry.generator.executable.RaspberryPIExecutable;
-import org.fortiss.af3.platform.raspberry.model.RaspberryPi;
-import org.fortiss.tooling.kernel.extension.ITransformationProvider;
-import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
-
-/**
- * Transformation from {@link RaspberryPi} to {@link RaspberryPIExecutable}.
- * 
- * @author eder
- * @author $Author: eder $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class RaspberryPITransformation implements ITransformationProvider {
-
-	/** {@inheritDoc} */
-	@Override
-	public Class<?> getTargetClass() {
-		return RaspberryPIExecutable.class;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean
-			canHandleChainTransformation(Class<?> sourceClass, ITransformationContext context) {
-		return RaspberryPi.class.isAssignableFrom(sourceClass);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canTransform(Object source, ITransformationContext context) {
-		return source instanceof RaspberryPi;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public Object transform(Object source, ITransformationContext context) {
-		return new RaspberryPIExecutable((RaspberryPi)source);
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/WheelEncoderTransformation.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/WheelEncoderTransformation.java
deleted file mode 100644
index 88dcfa11..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/WheelEncoderTransformation.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.transform;
-
-import org.fortiss.af3.platform.raspberry.generator.executable.WheelEncoderExecutable;
-import org.fortiss.af3.platform.raspberry.model.SensorLaserRangeFinder;
-import org.fortiss.af3.platform.raspberry.model.WheelEncoder;
-import org.fortiss.tooling.kernel.extension.ITransformationProvider;
-import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
-
-/**
- * Transformation for {@link SensorLaserRangeFinder}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class WheelEncoderTransformation implements ITransformationProvider {
-
-	/** {@inheritDoc} */
-	@Override
-	public Class<?> getTargetClass() {
-		return WheelEncoder.class;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean
-			canHandleChainTransformation(Class<?> sourceClass, ITransformationContext context) {
-		return WheelEncoder.class.isAssignableFrom(sourceClass);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canTransform(Object source, ITransformationContext context) {
-		return source instanceof WheelEncoder;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public Object transform(Object source, ITransformationContext context) {
-		return new WheelEncoderExecutable((WheelEncoder)source);
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button1Transformation.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button1Transformation.java
deleted file mode 100644
index e45b89e2..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button1Transformation.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.transform.gamepad;
-
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Button1Executable;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Button1;
-import org.fortiss.tooling.kernel.extension.ITransformationProvider;
-import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
-
-/**
- * Transformation for {@link Button1}
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class Button1Transformation implements ITransformationProvider {
-
-	/** {@inheritDoc} */
-	@Override
-	public Class<?> getTargetClass() {
-		return Button1Executable.class;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean
-			canHandleChainTransformation(Class<?> sourceClass, ITransformationContext context) {
-		return Button1.class.isAssignableFrom(sourceClass);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canTransform(Object source, ITransformationContext context) {
-		return source instanceof Button1;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public Object transform(Object source, ITransformationContext context) {
-		return new Button1Executable((Button1)source);
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button2Transformation.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button2Transformation.java
deleted file mode 100644
index 8e3e58cf..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button2Transformation.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.transform.gamepad;
-
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Button2Executable;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Button2;
-import org.fortiss.tooling.kernel.extension.ITransformationProvider;
-import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
-
-/**
- * Transformation for {@link Button2}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class Button2Transformation implements ITransformationProvider {
-
-	/** {@inheritDoc} */
-	@Override
-	public Class<?> getTargetClass() {
-		return Button2Executable.class;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean
-			canHandleChainTransformation(Class<?> sourceClass, ITransformationContext context) {
-		return Button2.class.isAssignableFrom(sourceClass);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canTransform(Object source, ITransformationContext context) {
-		return source instanceof Button2;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public Object transform(Object source, ITransformationContext context) {
-		return new Button2Executable((Button2)source);
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button3Transformation.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button3Transformation.java
deleted file mode 100644
index c599e6c4..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button3Transformation.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.transform.gamepad;
-
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Button3Executable;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Button3;
-import org.fortiss.tooling.kernel.extension.ITransformationProvider;
-import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
-
-/**
- * Transformation for {@link Button3}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class Button3Transformation implements ITransformationProvider {
-
-	/** {@inheritDoc} */
-	@Override
-	public Class<?> getTargetClass() {
-		return Button3Executable.class;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean
-			canHandleChainTransformation(Class<?> sourceClass, ITransformationContext context) {
-		return Button3.class.isAssignableFrom(sourceClass);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canTransform(Object source, ITransformationContext context) {
-		return source instanceof Button3;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public Object transform(Object source, ITransformationContext context) {
-		return new Button3Executable((Button3)source);
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button4Transformation.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button4Transformation.java
deleted file mode 100644
index a5e9affb..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Button4Transformation.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.transform.gamepad;
-
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Button4Executable;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Button4;
-import org.fortiss.tooling.kernel.extension.ITransformationProvider;
-import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
-
-/**
- * Transformation for {@link Button4}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class Button4Transformation implements ITransformationProvider {
-
-	/** {@inheritDoc} */
-	@Override
-	public Class<?> getTargetClass() {
-		return Button4Executable.class;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean
-			canHandleChainTransformation(Class<?> sourceClass, ITransformationContext context) {
-		return Button4.class.isAssignableFrom(sourceClass);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canTransform(Object source, ITransformationContext context) {
-		return source instanceof Button4;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public Object transform(Object source, ITransformationContext context) {
-		return new Button4Executable((Button4)source);
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonL1Transformation.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonL1Transformation.java
deleted file mode 100644
index 55a3f76a..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonL1Transformation.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.transform.gamepad;
-
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.ButtonL1Executable;
-import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonL1;
-import org.fortiss.tooling.kernel.extension.ITransformationProvider;
-import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
-
-/**
- * Transformation for {@link ButtonL1}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class ButtonL1Transformation implements ITransformationProvider {
-
-	/** {@inheritDoc} */
-	@Override
-	public Class<?> getTargetClass() {
-		return ButtonL1Executable.class;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean
-			canHandleChainTransformation(Class<?> sourceClass, ITransformationContext context) {
-		return ButtonL1.class.isAssignableFrom(sourceClass);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canTransform(Object source, ITransformationContext context) {
-		return source instanceof ButtonL1;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public Object transform(Object source, ITransformationContext context) {
-		return new ButtonL1Executable((ButtonL1)source);
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonL2Transformation.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonL2Transformation.java
deleted file mode 100644
index 2b358b73..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonL2Transformation.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.transform.gamepad;
-
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.ButtonL2Executable;
-import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonL2;
-import org.fortiss.tooling.kernel.extension.ITransformationProvider;
-import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
-
-/**
- * Transformation for {@link ButtonL2}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class ButtonL2Transformation implements ITransformationProvider {
-
-	/** {@inheritDoc} */
-	@Override
-	public Class<?> getTargetClass() {
-		return ButtonL2Executable.class;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean
-			canHandleChainTransformation(Class<?> sourceClass, ITransformationContext context) {
-		return ButtonL2.class.isAssignableFrom(sourceClass);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canTransform(Object source, ITransformationContext context) {
-		return source instanceof ButtonL2;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public Object transform(Object source, ITransformationContext context) {
-		return new ButtonL2Executable((ButtonL2)source);
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonR1Transformation.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonR1Transformation.java
deleted file mode 100644
index ccfbbef4..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonR1Transformation.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.transform.gamepad;
-
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.ButtonR1Executable;
-import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonR1;
-import org.fortiss.tooling.kernel.extension.ITransformationProvider;
-import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
-
-/**
- * Transformation for {@link ButtonR1}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class ButtonR1Transformation implements ITransformationProvider {
-
-	/** {@inheritDoc} */
-	@Override
-	public Class<?> getTargetClass() {
-		return ButtonR1Executable.class;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean
-			canHandleChainTransformation(Class<?> sourceClass, ITransformationContext context) {
-		return ButtonR1.class.isAssignableFrom(sourceClass);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canTransform(Object source, ITransformationContext context) {
-		return source instanceof ButtonR1;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public Object transform(Object source, ITransformationContext context) {
-		return new ButtonR1Executable((ButtonR1)source);
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonR2Transformation.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonR2Transformation.java
deleted file mode 100644
index 3e66560c..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/ButtonR2Transformation.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.transform.gamepad;
-
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.ButtonR2Executable;
-import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonR2;
-import org.fortiss.tooling.kernel.extension.ITransformationProvider;
-import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
-
-/**
- * Transformation for {@link ButtonR2}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class ButtonR2Transformation implements ITransformationProvider {
-
-	/** {@inheritDoc} */
-	@Override
-	public Class<?> getTargetClass() {
-		return ButtonR2Executable.class;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean
-			canHandleChainTransformation(Class<?> sourceClass, ITransformationContext context) {
-		return ButtonR2.class.isAssignableFrom(sourceClass);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canTransform(Object source, ITransformationContext context) {
-		return source instanceof ButtonR2;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public Object transform(Object source, ITransformationContext context) {
-		return new ButtonR2Executable((ButtonR2)source);
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Left_StickXTransformation.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Left_StickXTransformation.java
deleted file mode 100644
index 90c1713f..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Left_StickXTransformation.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.transform.gamepad;
-
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.ButtonR2Executable;
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Left_StickXExecutable;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Left_StickX_Position;
-import org.fortiss.tooling.kernel.extension.ITransformationProvider;
-import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
-
-/**
- * Transformation for {@link Left_StickX_Position}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class Left_StickXTransformation implements ITransformationProvider {
-
-	/** {@inheritDoc} */
-	@Override
-	public Class<?> getTargetClass() {
-		return ButtonR2Executable.class;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean
-			canHandleChainTransformation(Class<?> sourceClass, ITransformationContext context) {
-		return Left_StickX_Position.class.isAssignableFrom(sourceClass);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canTransform(Object source, ITransformationContext context) {
-		return source instanceof Left_StickX_Position;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public Object transform(Object source, ITransformationContext context) {
-		return new Left_StickXExecutable((Left_StickX_Position)source);
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Left_StickYTransformation.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Left_StickYTransformation.java
deleted file mode 100644
index 2d322eaf..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Left_StickYTransformation.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.transform.gamepad;
-
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.ButtonR2Executable;
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Left_StickYExecutable;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Left_StickY_Position;
-import org.fortiss.tooling.kernel.extension.ITransformationProvider;
-import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
-
-/**
- * Transformation for {@link Left_StickY_Position}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class Left_StickYTransformation implements ITransformationProvider {
-
-	/** {@inheritDoc} */
-	@Override
-	public Class<?> getTargetClass() {
-		return ButtonR2Executable.class;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean
-			canHandleChainTransformation(Class<?> sourceClass, ITransformationContext context) {
-		return Left_StickY_Position.class.isAssignableFrom(sourceClass);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canTransform(Object source, ITransformationContext context) {
-		return source instanceof Left_StickY_Position;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public Object transform(Object source, ITransformationContext context) {
-		return new Left_StickYExecutable((Left_StickY_Position)source);
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Right_StickXTransformation.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Right_StickXTransformation.java
deleted file mode 100644
index 984b3312..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Right_StickXTransformation.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.transform.gamepad;
-
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.ButtonR2Executable;
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Right_StickXExecutable;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Right_StickX_Position;
-import org.fortiss.tooling.kernel.extension.ITransformationProvider;
-import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
-
-/**
- * Transformation for {@link Right_StickX_Position}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class Right_StickXTransformation implements ITransformationProvider {
-
-	/** {@inheritDoc} */
-	@Override
-	public Class<?> getTargetClass() {
-		return ButtonR2Executable.class;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean
-			canHandleChainTransformation(Class<?> sourceClass, ITransformationContext context) {
-		return Right_StickX_Position.class.isAssignableFrom(sourceClass);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canTransform(Object source, ITransformationContext context) {
-		return source instanceof Right_StickX_Position;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public Object transform(Object source, ITransformationContext context) {
-		return new Right_StickXExecutable((Right_StickX_Position)source);
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Right_StickYTransformation.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Right_StickYTransformation.java
deleted file mode 100644
index ba6b02da..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/generator/transform/gamepad/Right_StickYTransformation.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.generator.transform.gamepad;
-
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.ButtonR2Executable;
-import org.fortiss.af3.platform.raspberry.generator.executable.gamepad.Right_StickYExecutable;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Right_StickY_Position;
-import org.fortiss.tooling.kernel.extension.ITransformationProvider;
-import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
-
-/**
- * Transformation for {@link Right_StickY_Position}.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class Right_StickYTransformation implements ITransformationProvider {
-
-	/** {@inheritDoc} */
-	@Override
-	public Class<?> getTargetClass() {
-		return ButtonR2Executable.class;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean
-			canHandleChainTransformation(Class<?> sourceClass, ITransformationContext context) {
-		return Right_StickY_Position.class.isAssignableFrom(sourceClass);
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public boolean canTransform(Object source, ITransformationContext context) {
-		return source instanceof Right_StickY_Position;
-	}
-
-	/** {@inheritDoc} */
-	@Override
-	public Object transform(Object source, ITransformationContext context) {
-		return new Right_StickYExecutable((Right_StickY_Position)source);
-	}
-
-}
diff --git a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/util/RaspberryModelElementFactory.java b/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/util/RaspberryModelElementFactory.java
deleted file mode 100644
index 9d7c2d5f..00000000
--- a/org.fortiss.af3.platform.raspberry/tags/end-of-first-course/src/org/fortiss/af3/platform/raspberry/util/RaspberryModelElementFactory.java
+++ /dev/null
@@ -1,261 +0,0 @@
-/*--------------------------------------------------------------------------+
-$Id: codetemplates.xml 1 2011-01-01 00:00:01Z hoelzl $
-|                                                                          |
-| Copyright 2017 fortiss GmbH                     |
-|                                                                          |
-| Licensed under the Apache License, Version 2.0 (the "License");          |
-| you may not use this file except in compliance with the License.         |
-| You may obtain a copy of the License at                                  |
-|                                                                          |
-|    http://www.apache.org/licenses/LICENSE-2.0                            |
-|                                                                          |
-| Unless required by applicable law or agreed to in writing, software      |
-| distributed under the License is distributed on an "AS IS" BASIS,        |
-| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-| See the License for the specific language governing permissions and      |
-| limitations under the License.                                           |
-+--------------------------------------------------------------------------*/
-package org.fortiss.af3.platform.raspberry.util;
-
-import static org.fortiss.tooling.base.utils.LayoutModelElementFactory.createConnectorLayout;
-
-import org.fortiss.af3.platform.raspberry.model.ActuatorConnector;
-import org.fortiss.af3.platform.raspberry.model.ActuatorPWM;
-import org.fortiss.af3.platform.raspberry.model.CanBus;
-import org.fortiss.af3.platform.raspberry.model.CanConnector;
-import org.fortiss.af3.platform.raspberry.model.GPI;
-import org.fortiss.af3.platform.raspberry.model.GPO;
-import org.fortiss.af3.platform.raspberry.model.ModelFactory;
-import org.fortiss.af3.platform.raspberry.model.RaspberryPi;
-import org.fortiss.af3.platform.raspberry.model.SensorConnector;
-import org.fortiss.af3.platform.raspberry.model.SensorGamepad;
-import org.fortiss.af3.platform.raspberry.model.SensorIMU;
-import org.fortiss.af3.platform.raspberry.model.SensorLaserRangeFinder;
-import org.fortiss.af3.platform.raspberry.model.SensorLaserScanner;
-import org.fortiss.af3.platform.raspberry.model.WheelEncoder;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Button1;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Button2;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Button3;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Button4;
-import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonL1;
-import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonL2;
-import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonR1;
-import org.fortiss.af3.platform.raspberry.model.gamepad.ButtonR2;
-import org.fortiss.af3.platform.raspberry.model.gamepad.GamepadFactory;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Left_StickX_Position;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Left_StickY_Position;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Right_StickX_Position;
-import org.fortiss.af3.platform.raspberry.model.gamepad.Right_StickY_Position;
-import org.fortiss.tooling.base.utils.LayoutModelElementFactory;
-
-/**
- * Model Element for RaspberryPi and related models.
- * 
- * @author eder
- * @author $Author: hoelzl $
- * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash:
- */
-public class RaspberryModelElementFactory {
-
-	/** Creates a {@link RaspberryPi}. */
-	public static RaspberryPi createRaspberryPi() {
-		final RaspberryPi pi = ModelFactory.eINSTANCE.createRaspberryPi();
-		LayoutModelElementFactory.createNodeElementLayout(pi);
-		pi.setName("RaspberryPI");
-		return pi;
-	}
-
-	/** Creates a {@link CanBus}. */
-	public static CanBus createCanBus() {
-		final CanBus bus = ModelFactory.eINSTANCE.createCanBus();
-		LayoutModelElementFactory.createNodeElementLayout(bus);
-		bus.setName("CanBus");
-		return bus;
-	}
-
-	/** Creates a {@link CanConnector}. */
-	public static CanConnector createCanConnector() {
-		CanConnector canConnector = ModelFactory.eINSTANCE.createCanConnector();
-		canConnector.setName("CanConnector");
-		createConnectorLayout(canConnector);
-		return canConnector;
-	}
-
-	/** Creates a {@link SensorConnector}. */
-	public static SensorConnector createSensorConnector() {
-		SensorConnector connector = ModelFactory.eINSTANCE.createSensorConnector();
-		connector.setName("Sensor");
-		createConnectorLayout(connector);
-		return connector;
-	}
-
-	/** Creates a {@link SensorGamepad} */
-	public static SensorGamepad createGamepadSensor() {
-		SensorGamepad connector = ModelFactory.eINSTANCE.createSensorGamepad();
-		connector.setName("Gamepad");
-		createConnectorLayout(connector);
-		return connector;
-	}
-
-	/** Creates a {@link SensorIMU}. */
-	public static SensorIMU createSensorIMU() {
-		SensorIMU connector = ModelFactory.eINSTANCE.createSensorIMU();
-		connector.setName("IMU");
-		createConnectorLayout(connector);
-		return connector;
-	}
-
-	/** Creates a {@link SensorLaserRangeFinder}. */
-	public static SensorLaserRangeFinder createSensorLaserRangeFinder() {
-		SensorLaserRangeFinder connector = ModelFactory.eINSTANCE.createSensorLaserRangeFinder();
-		connector.setName("LaserRangeFinder");
-		createConnectorLayout(connector);
-		return connector;
-	}
-
-	/** Creates a {@link SensorLaserScanner}. */
-	public static SensorLaserScanner createSensorLaserScanner() {
-		SensorLaserScanner connector = ModelFactory.eINSTANCE.createSensorLaserScanner();
-		connector.setName("LaserScanner");
-		createConnectorLayout(connector);
-		return connector;
-	}
-
-	/** Creates a {@link ActuatorConnector}. */
-	public static ActuatorConnector createActuatorConnector() {
-		ActuatorConnector connector = ModelFactory.eINSTANCE.createActuatorConnector();
-		connector.setName("Sensor");
-		createConnectorLayout(connector);
-		return connector;
-	}
-
-	/** Creates a {@link ActuatorPWM}. */
-	public static ActuatorPWM createActuatorPWM() {
-		ActuatorPWM connector = ModelFactory.eINSTANCE.createActuatorPWM();
-		connector.setName("PWM");
-		createConnectorLayout(connector);
-		return connector;
-	}
-
-	/** Creates a {@link GPI}. */
-	public static GPI createGPI() {
-		GPI gpi = ModelFactory.eINSTANCE.createGPI();
-		gpi.setName("GPI");
-		createConnectorLayout(gpi);
-		return gpi;
-	}
-
-	/** Creates a {@link GPI}. */
-	public static GPO createGPO() {
-		GPO gpo = ModelFactory.eINSTANCE.createGPO();
-		gpo.setName("GPO");
-		createConnectorLayout(gpo);
-		return gpo;
-	}
-
-	/** Creates a {@link Button1}. */
-	public static Button1 createButton1() {
-		Button1 button = GamepadFactory.eINSTANCE.createButton1();
-		button.setName("Button1_Triangle");
-		createConnectorLayout(button);
-		return button;
-	}
-
-	/** Creates a {@link Button2}. */
-	public static Button2 createButton2() {
-		Button2 button = GamepadFactory.eINSTANCE.createButton2();
-		button.setName("Button2_Circle");
-		createConnectorLayout(button);
-		return button;
-	}
-
-	/** Creates a {@link Button3}. */
-	public static Button3 createButton3() {
-		Button3 button = GamepadFactory.eINSTANCE.createButton3();
-		button.setName("Button3_X");
-		createConnectorLayout(button);
-		return button;
-	}
-
-	/** Creates a {@link Button4}. */
-	public static Button4 createButton4() {
-		Button4 button = GamepadFactory.eINSTANCE.createButton4();
-		button.setName("Button4_Square");
-		createConnectorLayout(button);
-		return button;
-	}
-
-	/** Creates a {@link ButtonR1}. */
-	public static ButtonR1 createButtonR1() {
-		ButtonR1 button = GamepadFactory.eINSTANCE.createButtonR1();
-		button.setName("ButtonR1");
-		createConnectorLayout(button);
-		return button;
-	}
-
-	/** Creates a {@link ButtonL1}. */
-	public static ButtonL1 createButtonL1() {
-		ButtonL1 button = GamepadFactory.eINSTANCE.createButtonL1();
-		button.setName("ButtonL1");
-		createConnectorLayout(button);
-		return button;
-	}
-
-	/** Creates a {@link ButtonR2}. */
-	public static ButtonR2 createButtonR2() {
-		ButtonR2 button = GamepadFactory.eINSTANCE.createButtonR2();
-		button.setName("ButtonR2");
-		createConnectorLayout(button);
-		return button;
-	}
-
-	/** Creates a {@link ButtonL2}. */
-	public static ButtonL2 createButtonL2() {
-		ButtonL2 button = GamepadFactory.eINSTANCE.createButtonL2();
-		button.setName("ButtonL2");
-		createConnectorLayout(button);
-		return button;
-	}
-
-	/** Creates a {@link Left_StickX_Position}. */
-	public static Left_StickX_Position createLeftStickX() {
-		Left_StickX_Position button = GamepadFactory.eINSTANCE.createLeft_StickX_Position();
-		button.setName("Left_StickX");
-		createConnectorLayout(button);
-		return button;
-	}
-
-	/** Creates a {@link Left_StickY_Position}. */
-	public static Left_StickY_Position createLeftStickY() {
-		Left_StickY_Position button = GamepadFactory.eINSTANCE.createLeft_StickY_Position();
-		button.setName("Left_StickY");
-		createConnectorLayout(button);
-		return button;
-	}
-
-	/** Creates a {@link Right_StickX_Position}. */
-	public static Right_StickX_Position createRightStickX() {
-		Right_StickX_Position button = GamepadFactory.eINSTANCE.createRight_StickX_Position();
-		button.setName("Right_StickX");
-		createConnectorLayout(button);
-		return button;
-	}
-
-	/** Creates a {@link Right_StickY_Position}. */
-	public static Right_StickY_Position createRightStickY() {
-		Right_StickY_Position button = GamepadFactory.eINSTANCE.createRight_StickY_Position();
-		button.setName("Right_StickY");
-		createConnectorLayout(button);
-		return button;
-	}
-
-	/** Creates a {@link Right_StickY_Position}. */
-	public static WheelEncoder createWheelEncoder() {
-		WheelEncoder wEncoder = ModelFactory.eINSTANCE.createWheelEncoder();
-		wEncoder.setName("WheelEncoder");
-		createConnectorLayout(wEncoder);
-		return wEncoder;
-	}
-
-}
-- 
GitLab