Software for Double Clutch Transmission

Project: April 2022 – June 2025 (39 months)

Description

The existing project for transmission control software consists of the actual control software and a software library for safety-critical functions (functional safety in accordance with ISO 26262-6). The safety library is being further developed due to change requests from the OEM and as a result of stricter regulatory requirements regarding ASIL D compliance. The transmission control software runs on two different ECUs from separate manufacturers and is integrated by the OEM in five different transmission derivatives.

In close cooperation with the functional safety teams in Berlin and Gifhorn, I was responsible for the following key activities:

  • SYS.2 – Technical Safety Concept: Review of updated technical safety requirements as part of structured inspections
  • SWE.1 – Software Safety Requirements: Review of updated software safety requirements as part of structured inspections
  • SWE.2 – Software Architecture (semi-formal): Enhancement and revision of the existing software architecture
  • SWE.3 – Software Detailed Design (semi-formal): Enhancement and revision of the existing software detailed design
  • SWE.3 – Implementation (handwritten code): Code implementation according to software design specifications, including static code analysis and functional evaluation (HiL or SiL)

The project was carried out in two phases, each with a binding SOP milestone.

Activities in Phase 1: SOP-Oriented Development with Fastlane Process

  • Change-driven coding according to the Fastlane process for rapid availability of the firmware
  • Downstream creation and revision of ASPICE-compliant documentation
  • Task tracking and traceability using Enterprise Architect and JIRA

Despite a pandemic-related project delay in the early phase, the SOP milestone was reached on time.

Activities in Phase 2: Agile Further Development and Process Optimization

  • Further development of the transmission software under ASPICE-compliant conditions in a change-driven environment
  • Participation in 2-week sprints, with release cycles spanning 4 to 5 sprints, each preceded by an analysis sprint
  • Contribution to lessons-learned workshops and process refinement measures
  • Contribution to and review of the architecture, detailed design, and coding guidelines as part of the release process
  • Revision of the model structure in the UML tool for process-related separation and improved navigability
  • Conversion from a centralized to a distributed version control system (including migration of derivative-specific sharing structures)

At the time of my departure from the project, the safety case for the SOP had just been completed.

Summary

Project Software for Double Clutch Transmission
Duration 39 months (April 2022 – June 2025)
Customer confidential due to nondisclosure agreement
Industry Sector Automotive
Role / Responsibility Software Safety Requirements, Software Architecture, Software Design, Implementation, Inspections
Software / Tools / Methods Enterprise Architect (Sparx), Eclipse CDT (Eclipse Foundation), Visual Studio Code (Microsoft), Tasking C Compiler (Tasking), ASAP2-Tools (Vector Informatik), CANape (Vector Informatik), Trace32 (Lauterbach), Helix QAC (Perforce), Silver SiL (Synopsys), StarTeam (Starbase), GitLab (Open-Source), LemonTree (LieberLieber), Confluence (Atlassian), JIRA (Atlassian)
Hardware Environment Infineon TriCore TC2xx/TC3xx, HiL (Hardware in the Loop)

Hands On Detection (II)

Project: June 2021 – November 2021 (6 months)

Description

The HOD system is a capacitive measuring system to detect the drivers touch state at the steering wheel to give input to the car (e.g. for automated accelerating, braking and steering in traffic jams on highways). Its safety goal is not to send defectively a wrong touch state.

Defect analysis and repair

  • Investigation of defects and field returns
  • Remediation of software defects
  • Documentation of changes (requirements, design, code, ticket system)

Project interface

  • Participation in meetings with the customer to clarify defects and implementations
  • Participation in internal meetings to clarify defects and implementations

Summary

Project Hands On Detection (II)
Duration 6 months (June 2021 – November 2021)
Customer confidential due to nondisclosure agreement
Industry Sector Automotive
Role / Responsibility Defect Analysis, Software Architecture, Software Design, Implementation, Code Review, Project Interface
Software / Tools / Methods Enterprise Architect (Sparx), IAR Embedded Workbench for RL78, I2C Sniffer (Beagle), LIN CANoe (Vector), JIRA (Atlassian), DOORS (IBM)
Hardware Environment Renesas RL78/F14

Hands On Detection (I)

Project: November 2019 – November 2020 (13 months)

Description

The HOD system is a capacitive measuring system to detect the drivers touch state at the steering wheel to give input to the car (e.g. for automated accelerating, braking and steering in traffic jams on highways). Its safety goal is not to send defectively a wrong touch state.
Support of the Software Team with the following tasks:

  • Software Architecture ASIL compliance
  • Software Design ASIL compliance
  • Software inspections
  • Software safety analyses

Summary

Project Hands On Detection
Duration 13 months (November 2019 – November 2020)
Customer confidential due to nondisclosure agreement
Industry Sector Automotive
Role / Responsibility Software Architectural Design, Software Inspections (acc. ISO 26262-2018), Joint FuSa Review (with British OEM)
Software / Tools / Methods Enterprise Architect (Sparx), Enterprise Architect VB Script, Python & C# (EA Win32 COM Interface), IAR Embedded Workbench for RL78, JIRA (Atlassian), DOORS (IBM)
Hardware Environment Renesas RL78/F14

Active Front Steering

Project: January 2018 – June 2019 (18 months)

Description

Active front steering project for an American automobile manufacturer. Support of the software team in Berlin with the following tasks:

  • Safety Check – Rework of Software Architecture, Gap Analysis, Software Requirements, Test Vectors and Review of Unit Test Cases
  • Rootcausing – Incident Analysis, Impact Analysis, Implementation and Documentation of Software Changes
  • Golden Showcase – Exemplary revision of the software component ‘Steering Wheel Heating’ for takeover in an AutoSAR project
  • Design and implementation of a software for an endurance testbench to record time vs. distance data of a locking unit on USB mass storage (with a sampling rate of 10kHz)
  • Supervision of working students when creating a S-Function wrapper from software architecture

As early as 2012 to 2015, I was involved in the software development of the B-sample and C-sample at this company.

Summary

Project Active Front Steering
Duration 18 months (January 2018 – June 2019)
Customer confidential due to nondisclosure agreement
Industry Sector Automotive
Role / Responsibility Software Design, Implementation, Unit Tests, Code Reviews, static Code Analysis, Issue Analysis (System Level)
Software / Tools / Methods Enterprise Architect (Sparx), GHS C-Compiler (Green Hills), Atollic TrueSTUDIO for STM32, PC-lint (MISRA-C 2004 rules), PolySpace (MathWorks), CANdelaStudio (Vector), CANoe (Vector), DET (Ford), DOORS (IBM), JIRA (Atlassian)
Hardware Environment Freescale MPC5643 Dual-Core Microcontroller, Lauterbach Trace32 Debugger, CAN Interface Board (Vector), STM32F746ZI (ARM Cortex-M7), Light Grid Sensor, Laser Distance Sensor

Battery Management System

Project: June 2016 – March 2017 (10 months)

Description

The customer was developing an auxiliary energy storage (lithium ion battery) for FMA support (freewheel engine-off), start/stop operation and emergency support. My main tasks in the project were code reviews (based on checklists and coding rules), static code analysis (MISRA-C:2012 with QAC, Polyspace CodeProver, PC-lint), code quality measurements (HIS metrics with QAC and Polyspace BugFinder), justification of deviations, as well as issue analysis (problem reports on system level).

Summary

Project Battery Management System
Duration 10 months (June 2016 – March 2017)
Customer confidential due to nondisclosure agreement
Industry Sector Automotive
Role / Responsibility Concept Design, Software Design, Unit Tests (C1 Coverage), Code Reviews, Static Code Analysis, Issue Analysis
Software / Tools / Methods IBM Rational DOORS (IBM), STAGES Process Management (methodpark), Redmine Project Management (open source), Enterprise Architect (Sparx), QA-C/MISRA (PRQA), PC-lint (MISRA-C), Polyspace (MathWorks), Tessy (Hitex)
Hardware Environment Freescale MPC5606B (Bolero), ASIC Atic157 (proprietary)

Active Steering Wheel

Project: January 2012 – May 2015 (41 months)

Description

Active steering project for an American automobile manufacturer. Support of the project team in Berlin with the following tasks:

  • Implementation of the software design (modules)
  • Documentation of the modules and interfaces
  • Integration of software components
  • Design and execution of Unit Tests
  • Code Reviews

Summary

Project Active Steering Wheel
Duration 41 months (January 2012 – May 2015)
Customer confidential due to nondisclosure agreement
Industry Sector Automotive
Role / Responsibility Software Design, Implementation, Software Integration, Unit Tests, Code Reviews, Issue Analysis
Software / Tools / Methods Enterprise Architect (Sparx), GHS C-Compiler (Green Hills), PC-lint (MISRA-C 2004 rules), CANoe (Vector), DET (Ford), DOORS (IBM), FuSi (IEC 26262-6), Telcon / Webex / Workshop
Hardware Environment Freescale MPC5643 Dual-Core Microcontroller, Lauterbach Trace32 Debugger, CAN Interface Board (Vector)

Hardware Oriented Software Development

Project: December 2010 – December 2011 (13 months)

Description

Support of several development teams at the client’s site. My tasks included:

  • Development of hardware oriented software applications
  • Creation of hardware oriented drivers
  • Implementation of real-time operating systems on embedded platforms
  • Customization of BIOS and driver software
  • Project support from requirement engineering to validation

Work Batch 1: Analogue CAN Transmitter for Force Feedback Sidestick Control

The transmitter is used to transmit analogue and digital signals from a redundant sidestick control via the CAN bus. Through two physically connected sidesticks in the cockpit, the steering system, as well as the gas and brake systems, are controlled. From these systems, current angle data is transmitted back to the systems in the cockpit.

Task: Implementation of the transmitter software (CAN bus).

Work Batch 2: End-Of-Line Test Software for a Control Panel for Floor-borne Vehicles

The vehicles are optionally equipped with a Truck Data Unit (TDU). At the beginning of vehicle use, the driver identifies himself by means of an identification assigned to him (optionally via a keyboard with a PIN number or by means of a card reader with RFID identification) and thus indicates the use of the vehicle. When leaving the vehicle, the driver logs off.

Task: Implementation of the test software on the target for end-of-line testing of analog and digital I/O modules, memory devices (F-RAM, NAND-Flash, Data-Flash), LEDs, CAN-communication, matrix keyboard, wake-up function, card reader (RFID), Bluetooth module.

Work Batch 3: Compressed Download via CANopen

Control panel for blacktop paver with display and CAN interface. A CANopen bootloader handles software updates.

Task: Integration of the zlib inflate algorithm into existing boot loader.

Work Batch 4: SPI Bootloader for HVAC Front Panel

Front panel for climate control intended for a DIN radio slot. Control and display unit with integrated color display, illuminated buttons, and control dials. Communication with the main circuit board takes place via an SPI data bus system and controls all button and encoder inputs, as well as visualization of the display.

Tasks:
a.) Implementation of the bootloader (SPI slave).
b.) Implementation of test procedures.

Summary

Project Hardware Oriented Software Development
Duration 13 months (December 2010 – December 2011)
Customer confidential due to nondisclosure agreement
Industry Sector Automotive
Role / Responsibility System Specifications, Software Architecture, Software Design, Implementation, Function Tests, Documentation
Software / Tools / Methods Keil C166 C Compiler (uVision3), Keil ARM C Compiler (uVision4) , Microsoft Visual C++ 2008 , Enterprise Architect (Sparx) , PC-lint (MISRA-C 2004 rules) , Understand (SciTools) , CAN Analyser (IXXAT) , Doxygen, Python
Hardware Environment Infineon XC164CS Microcontroller, Infineon XC2368B Microcontroller, NXP LPC2478 (ARM7/TDMI-S core), Keil U-Link On-chip Debugger, CAN Interface Boards (IXXAT), SPI-to-USB Adapter (Elite)

CANopen Safety Driver

Project: September 2006 – January 2007 (5 months)

Description

Extension of a CANopen controller with device profile CiA DS-405 (Interface and Device Profile for IEC 61131-3 programmable devices) to the CANopen Safety protocol according to CiA DS-304 (Framework for safety-relevant communication). The mobile control unit is used in telescopic cranes for limiting the load torque. The customer prepared SIL II certification.

Summary

Project CANopen Safety Driver
Duration 5 months (September 2006 – January 2007)
Customer confidential due to nondisclosure agreement
Industry Sector Automotive / Mobile Control
Role / Responsibility Software Design, Implementation, Function Tests, Documentation
Software / Tools / Methods Wind River Diab Data C Compiler, RTOS-UH Real-time Operating System, Vector Informatik CANalyzer and ProCANopen, MKS Source Integrity (Version Control System), PC-lint (Source Code Checker)
Hardware Environment Freescale PowerPC MPC561, Lauterbach TRACE32 In-circuit Emulator, Vector Informatik CAN Interface Board