Karl Spielberger
Hardware-related software development, code review, error analysis and expertise
Experience
Software Consultant, Architect, and Developer
Forklift Truck Manufacturer
Consulting in all areas of software development such as architecture, inter- and intra-process communication, end-to-end validation
Monitoring and measuring resources such as runtime and memory usage
Specification of interface and implementation patterns as well as high-level and detailed specifications
Design and implementation of functional and safety software
Specification of unit tests and support of the integration and software tests in the HIL test department as part of software validation
Development of platform-independent control and regulation software for a fuel cell system (multi-processor 16-bit and multi-core 32-bit)
Development/concept design of state machines
Development/concept design of control algorithms
Development/concept design of inter-process safety communication
Development/concept design of basic software components for parameter, characteristic curve, and error management
Development of vehicle communication based on CAN
Development/concept design of commissioning, maintenance, and service interfaces via CAN and UDS diagnostics
Conducting validation and supporting external validation
Creating specifications for testing
Software development for Traveo II security firmware and security low-level drivers
Semiconductor Manufacturer
C code implementation of the software design following QA-C source code guidelines, MISRA-C:2012, and metrics
Implementation of simple, integration, and software tests for GreenHills and IAR compilers
Analyses and configurations (Tresos) for the sub-modules FLS, FEE, IPC, TRNG, PRNG, and crypto
Debugging and verification using the debugger (GreenHills Probe) for execution path and interrupt analyses as well as runtime analyses
Work on the software architecture and detailed design using tools such as Enterprise Architect and Polarion
C code implementation of the software design following QA-C source code guidelines, MISRA-C:2004, and metrics for the S-LLD components IPC and CRYPTO
Implementation of simple tests as well as unit, integration, and software tests using VectorCAST for IPC and CRYPTO; defining test verification criteria
Conducting unit, integration, and software tests using VectorCAST/Manage for PROT, IPC, and CRYPTO; separating compiler-switch-specific test environments
Creating software test cases and test instances in Polarion; executing and documenting unit, integration, and software tests for various microcontroller derivatives and revisions
Editing software test specifications and creating software test reports
Conducting software tests using Cypress starter kits for the derivatives BE1M, BE2M, BH4M, C2D6M, and BH8M
Determining code, constant, and RAM requirements of the low-level drivers as well as runtime analyses
Extending and adapting the S-LLD user manuals
Consulting on software testing and software validation
Automotive Supplier
- Requirement analysis of the system specification
- Analysis of the software architecture
- Analysis of the detailed design (Rhapsody model)
- Code analyses (ANSI-C, MISRA-2004)
- Conducting reviews of unit tests and debugger tests
- Creation of test specifications (unit tests)
- Implementation of unit tests (VectorCAST)
Software development and testing of AutoSar 4.03 MCAL post-build configurable CAN plug-in
Semiconductor Manufacturer
- Analysis of the software architecture and creation of the detailed software design using Enterprise Architect
- Separation of pre-compile and post-build specific software parts; detailed design in Polarion and import of EA design diagrams
- C code implementation of the software design following QA-C source code guidelines and metrics
- Commissioning and extension with post-build specific simple tests for UART and CAN using the starter kit SK-91520
- Extension and adaptation of the MCAL CAN driver user manual
- Determination of code, constant, and RAM requirements of the MCAL plug-in and verification using Excel sheets
- Implementation and execution of unit tests using VectorCAST; separation of test environments
- Creation of software test cases and test instances in Polarion; execution and documentation of integration tests
- Review of the software test specification and creation of the software test report
- Simple and integration tests for AutoSar 4.x CAN-FD and SPI plug-ins of the Traveo ARM microcontroller family S6J3000
Software analysis for Vehicle Dynamics
Automotive Supplier
- Software analysis of the PSI5 component from a MISRA perspective
- Identifying design options to improve quality and extensibility
- Documentation of the software component using abstract graphical illustrations
- Variant-specific analysis of source codes; evaluation according to MISRA and programming guidelines
- Algorithm review
- Illustration of function call and state trees
- Creation of an architecture document for the PSI5 component covering lower-, middle-, and high-level sub-components
Control Unit Development Vehicle Dynamics – Vertical Dynamic Platform (VDP, SAS)
Automotive supplier
Development and adaptation of software components based on project requirements
Defining consistency requirements for the NvM RAM mirror
Analysis of ECU runtime behavior
Creating architecture documents
Formulating requirements for components regarding access to non-volatile data
Creating a technical concept for safe shutdown and restart of the ECU
Aligning requirements with suppliers
Creating test specifications for components
Static C software analyses of the multi-core architecture
Analysis of the interaction between Conti base software, Conti-AutoSAR, BMW libs and others
Analysis of the AutoSAR stack in startup, shutdown and cancel shutdown areas
Analysis of FlexRay transceiver shutdown and wake-up behavior
Analysis of PowerSBC behavior and adaptation of the configuration
Analysis and evaluation of the synchronization state between FlexRay and the OS
Analysis of SPI communication
Analysis of multiple modules (FrTrcv, FrIf, FrNM, cdSBC, cdPWF, ComM, BswM_Cfg, EcuM, CdErm, NvM, Fee)
Circuit review and hardware/software instrumentation for OSC analysis
Runtime measurements and semi-automatic evaluation with Trace32 and Excel
Creation of a HIL test specification
Analysis and handling of change requests
Control Unit Development Vehicle Dynamics – electromagnetic roll stabilizer (emARS)
Automotive supplier
Development and adaptation of software components based on project requirements
Conducting developer tests at the lab workstation
Specification of HIL tests and evaluation of HIL test reports
Software analysis of the multi-core architecture; highlighting critical concurrency and synchronization points
Implementation of safety-relevant multi-core communication (Safety4core2core) in C (ASIL_B / ASIL_C)
Design and documentation using abstract graphical representations (Visio)
Specification of HIL tests and evaluation of test reports
Problem analysis, source code analysis, bug fixes and documentation in MKS
Runtime measurements for tasks and software components
Integration with RTA-OS trace exception handler and timer units
OSEK OS configuration/generation; memory mapping and MPU configuration
Freedom from Interference (FuSi) memory separation and OS monitoring
Requirements Management and Functional Safety Management
Automotive supplier
- Developing the software requirements strategy in customer projects
- Planning, aligning and tracking the internal creation of software requirements
- Collaborating on the definition of software requirement methods
- Developing software safety concepts according to ISO 26262
- Analyzing and defining measures in software development
- Investigating the software partitioning concept
Software architecture, development, documentation and testing of control unit software (Common Powertrain Controller)
Automotive manufacturer
- Functional requirements analysis
- Creating a rough software design considering different control unit states
- Defining a new software architecture for CPC control units for an AutoSAR implementation
Analysis, documentation and testing of control unit software (Common Powertrain Controller)
Automotive manufacturer
- Documenting NVRAM mechanisms (EEPROM) and native algorithm implementations
- Determining system variants based on ECU hardware and vehicle characteristics
- Assessing Polyspace analyses and deriving improvement measures
- Algorithm analyses of error detection mechanisms
- Analysis and documentation of the interface between base and application software
Functional analysis and documentation for powertrain ECUs (CPC)
Automotive Manufacturer
- Functional analysis and documentation of the implementation for powertrain ECUs
- Signal path analysis and documentation of in-ECU signal flows using logic diagrams
- Component analysis and documentation of signal paths between CAN, LIN, sensors, actuators, and module signals for the fault memory, air filter, engine oil refill, engine start-stop, Manchester code, gas pedal, ABS, parking and service brake, jerk damper, temperature, and ECU wake-up and sleep behavior
Requirements analysis and method design for a CASE tool development
- Framework for interface protocols, state machines, and peripheral abstraction layers
- C code generation based on configurable coding syntax
- Graphical synthesis of program structures for parallel and quasi-parallel software architectures
Support for CPC ECU development and DC-OS platform development
Automotive Supplier
- Design and implementation of low- and high-level drivers for analog and digital signal processing
- ADC conversion strategy with DMA transfer
- Fault detection of digital and analog inputs and outputs
- Evaluation of PWM signals and current measurement
- Switching and monitoring of power supplies
- Validation of MISRA-C:2004 coding guidelines
- Porting of special functions and runtime/code optimizations for DC-OS
Firmware for inductive distance sensor
Automotive Supplier
- Programming of an ADC-to-PWM converter on PIC platform using HI-TIDE IDE
- Quasi jitter-free implementation of the conversion with runtime-corrected interrupt routine paths
Expertise
Pharmaceutical manufacturing and test equipment manufacturer
- Feasibility analysis of a multi-channel power manager module
- Feasibility analysis of a GPIB gateway to/from I2C
Firmware development for portable blood glucose meters
Pharma
- Development of a generic IrDA stack for 8-bit ATMEL AVR microcontrollers (ATmega64, ATmega128, ATmega256)
- Development of a generic multi-channel full-duplex communication stack with CRC-protected, packet-based, prioritized transmission and automatic packet retries
Firmware development for portable audio devices
Pharma
- Drivers for SPI, RTC, MP3 decoder, audio amplifiers, clock frequency switching
- CRC/ECC protection algorithms
- Sorting algorithms and calendar functions
- Optimization of battery life through state-dependent enabling/disabling of peripherals and clock switching
Device development of a modular control unit family for checkweigher applications
Automation / Measurement Technology
- Selection of mechanical components (housings, terminal blocks) for DIN rail mounting
- Electronics and software architecture and design for microcontroller and FPGA modules
- Development of a synchronous serial shift register bus for decentralized control tasks
- Requirements analysis, specification, commissioning, EMC and production support
- Firmware development of base and add-on modules with SPI, RS232, RS422, RS485, CAN drivers and abstraction layers
- Interface converters and gateways (USB), CRC protection algorithm, configuration and firmware update
Development of Windows application and microcontroller-based controls
Automation / Measurement Technology
- Development of WinTerm: recording and analysis of text and binary protocols, graphical display of serial data streams, firmware update tool
- Development of 8-bit and 16-bit microcontroller-based controls with display: requirements analysis, circuit design, firmware development, drivers for keyboards, touchscreens, RTC, ADC, CANOpen, IrDA, printers, memory abstraction, compression and CRC/ECC algorithms
- Development of multilingual user interfaces for industrial sewing machines: low-level drivers, complex text and graphics functions, menu interpreter, touch keys and animated graphics
Development of serial hub for POS applications
Gas station technology
- Gateway for networking up to 8 devices with different serial parameters
- Functional prototype (mechanics, electronics, software)
- Circuit design and layout with Eagle
- Firmware development and PC driver at BIOS/DOS level (virtual COM ports)
User interface development for gas station control systems
Tankstellentechnik
- Creation of software specifications and visualization software for gas station control systems
- Driver programming at DOS and BIOS level; TSR programming for keyboards, touchscreens, displays and serial interfaces
- Implementation of a client-server architecture and remote procedure calls over Ethernet LAN
Industry Experience
See where this freelancer has spent most of their professional time.
Experienced in Manufacturing, Automotive, Energy, Information Technology, Pharmaceutical, and Healthcare.
Business Area Experience
See which departments and functions this freelancer has contributed to most.
Experienced in Product Development, Information Technology, Quality Assurance, Production, and Research and Development.
Summary
Hardware-related software development, code review, error analysis and expertise:
I have over 25 years of hands-on experience in software development, architecture, and testing across automotive, semiconductor, and industrial sectors. I specialize in crafting robust, platform-neutral solutions with a deep focus on safety, performance, and maintainability.
I excel in designing software frameworks, detailed specifications, and testing strategies while ensuring adherence to stringent standards like MISRA and ISO26262. My broad technical background and practical expertise enable me to solve complex challenges in embedded systems and control applications efficiently.
ASPICE Projects:
Forklift Truck Manufacturer (4.5 years) KION, Linde Material Handling
Semiconductor Manufacturer (3.5 years) Infineon / Cypress, Spansion / Fujitsu
Automotive Supplier (5.5 years) Schaeffler Engineering Continental Teves Continental Temic Continental Engineering Services / Siemens VDO
Automotive Manufacturer (3 years) Daimler Trucks & Buses, Evobus
Skills
Areas Of Focus
- Software Development In C
- Software Architecture
- Software Testing
- Software Quality Assurance
- Software Documentation
- Hardware-oriented Software Development For Microcontroller-based Devices
- Bare-metal Software Development
- Abstracted Device Driver Layers
- Interface Protocols / Distributed Systems
- Analysis Of Complex Parallel Software Structures – Identifying Critical Concurrency Issues
Areas Of Expertise
- Design Of Robust Software Components For High Availability And Safety
- Implementation Of Software Components In C With Attention To Standards And Testability
- Source Code Error Analysis
- Functional Analysis
- Unit, Integration, And Software Testing
- Software Documentation (Visio)
- Definition Of Coding Guidelines And Implementation Patterns - Misra-c:2004
- Software Quality Assurance (Code Reviews, Polyspace Analyses)
- Requirements Analysis, Commissioning, And Problem Analysis
- System Integration Of External Peripherals
- Digital Circuit Development
- Cross-domain Experience Across Software, Hardware, And Mechanical Development
Software Architectures
- Time-triggered, Event-triggered, And Message-triggered Design
- Object-oriented Design
- Preemptive And Cooperative Multitasking With And Without Operating System On Single- And Multi-core Systems
- Autosar
Operating Systems
- Osek-os
- Proprietary Operating Systems
- Windows, Dos, And Bios
Additional Software
- Doors, Polarion, Mks-rm, Gitlab
- Synergy, Svn, Mks, Git
- Vectorcast / Manage
- Ms Office, Visio
Programming Languages
- C, C++, Assembly, Pascal
- Basic, Fortran, Python, Perl
Hardware
- 8-bit Microcontrollers (80cxx(x), At89c51, Atmega, 16fxxx), Hcs12
- 16-bit Microcontrollers (C16x, St10)
- 32-bit Microcontroller Platforms: Traveo Ii Multi-core Arm Cortex M0+/m4/m7 (Cyt2b7, Cyt2b9, Cyt4bb, Cyt4bf), Fr81s (Mb91f52x), Traveo Arm Cortex-r5 (S6j3xxx – Aries, Leo, Virgo, Juno, Amber, Athena), Powerpc-m55xx, Tricore Tc1798, V850e2, Mpc5643l (Dual-core), Aurix Tc275t (Triple-core)
- Fpga-based Control Hardware
- Siemens And Conti Asics (E.g., Psi5 Asic158)
- Fail-safe Power Management Device Mc33907 8, Flexray Transceiver Ncv7381
- External Peripherals: Digital Filters, Amplifiers, Flexray And Can Controllers, Memory (Nor, Nand Flash, Eeprom), Rtcs, Fdc
- Industrial Pcs
Products And Standards
- Autosar 3.x And 4.x
- Eb Tresos
- Etas Rta-os – Osek/vdx
- C99, Misra-c:2004, Misra-c:2012
- Object-oriented Design (Ooa, Ood, Oop)
- Preemptive And Cooperative Multitasking
- Time-triggered, Event-triggered, And Message-triggered Design
- Canopen, Canbedded, J1939
- Interfaces Such As Irda And Usb
- Enterprise Architect, Rhapsody
- Development Environments: Eclipse/windriver, Keil Μvision, Tasking Ede, Iar Embedded Workbench, Pwb/keil, Green Hills Multi Ide, Softune
- Source Code Style Checkers
- Pclint, Qa-c
- Polyspace Code Analysis
- Debuggers From Isystems, Lauterbach (Trace32), Green Hills (Probe)
- Vector Canalyzer, Canoe, Canape
- Vectorcast/manage Test Automation Platform For Unit And Regression Tests; Functional Tests With The Vt System Canoe Rt, Test Automation Editor (Tae), Jenkins
- Mfc, Sdk, And Ddk
- Lattice Isp (Eda)
- Mentor Graphics (Ecad, Pcb), Eagle (Ecad, Pcb)
- Pspice, Pcb Viewer
Languages
Education
Dipl. Eng. in Computer Science (University of Applied Sciences) · Electrical Engineering / Technical Computer Science
Electro-Mechanic · Electro-Mechanics
Statistics
Experience
Expertise
Qualifications
Profile
Frequently asked questions
Do you have questions? Here you can find further information.
Where is Karl based?
What languages does Karl speak?
How many years of experience does Karl have?
What roles would Karl be best suited for?
What is Karl's latest experience?
What companies has Karl worked for in recent years?
Which industries is Karl most experienced in?
Which business areas is Karl most experienced in?
Which industries has Karl worked in recently?
Which business areas has Karl worked in recently?
What is Karl's education?
What is the availability of Karl?
What is the rate of Karl?
How to hire Karl?
Average rates for similar positions
Rates are based on recent contracts and do not include FRATCH margin.
Similar Freelancers
Discover other experts with similar qualifications and experience
Experts recently working on similar projects
Freelancers with hands-on experience in comparable project as a Software Consultant, Architect, and Developer
Nearby freelancers
Professionals working in or nearby Ramstein-Miesenbach, Germany