Technical Trainings

EEStr101: General Computer Programming (ANSI C language)

Intends to build basic knowledge and hand on experience for professionals which could use computer programming in their everyday practice. From data representation and up to design of simple programs to cover some specific data handling tasks we use the C language as a tool while in the same time developing skills and thinking methods which could be adapted to various other languages.

There is a mix of 1/3 presentation delivered with overhead-projector and completed with live-coding and 2/3 individual coding with mentoring and feedback from our trainers. Students are expected to dedicate least 25% extra time for individual study and coding.

At the end of the training promising students are expected to be able to devise and implement an algorithm for simple data handling and processing tasks starting from problem statement, while all the students shall be able to implement a program form a model of an algorithm expressed in pseudocode and mathematical notation.

We provide and individual assessment of each for the students at the end of the training.

Duration: 60 hours

Groups of up to 16 students (negotiable on specific request)

Topics: Algorithms (algorithmic thinking, representation of algorithms), Data Representation (standards, number bases, conversions, floating-point), Basic Structure of C programs (input, processing: decision, loops, output), C data types (scalar, arrays, emphasize on pointers), Modular implementation of programs (functions, parameters to functions), User defined data types and structures, File handling, Formatted Input and Output, Debugging, Exception Handling and Basics of Secure Programming, Basics of computational complexity, Simple data structures (optional, on request)

EEStr102: Embedded Systems Programming

Builds on top of the preexisting programming skills or starts from grounds-up, emphasizing on specificities of embedded systems. Using ARM processors and development boards we can convey the mindset of the embedded world to our students providing them with the building blocks to tackling later projects either in automotive, IoT or consumer electronics.

We use a hand-on approach with roughly 1/3 of the time dedicated to technical presentation and live demo form our trainer(s) and 2/3 of the time is left for individual work of our students. We expect at least 25% extra time from each student for extra class study and practice of coding. Each student has access to a development board (we use STM32 dev boards, but we can agree on something specific if needed) and some general electronic equipment is shared (DMM, Scope, Logic analyzer). Students are expected have basic programming experience and algorithmic thinking but on specific request we can adapt the EEStr101 for our target group. We can cover basics of electronics and measurements (from EEStr103) and we include applications related to general digital protocols (USART, I2C, SPI). On request we can adapt for specific applications (CAN, LIN, …)

We provide and individual assessment of each for the students at the end of the training.

Duration: 80 hours (100 hours if programming basics is also needed)

Groups of up to 12 students (negotiable on specific request)

Topics: Basics of programming dust-up (only if we don’t provide also EEStr101 prior), Embedded systems building blocks, Microcontroller architecture, MCU peripherals, embedded systems memory, designing algorithms for embedded systems, GPIO operations, Embedded systems development workflow (emphasize on debugging techniques), practice of using electronic measurement tools for validating/debugging embedded programs (DMM, Scope, Logic Analyzer), Communication protocols (UART, SPI, I2C, using standard libraries), Basics of Real-Time design, Evaluation of performance (constraints).

This training can be tailored regarding topics and tools, based on your specific needs and the target audience.

EEStr103: Electronics for Embedded Programmers

We provide, in a practical approach, with hand-on experience, the much-needed knowledge and practice related to analog and digital electronics, for software developers, working on projects involving embedded systems. Using development boards with ARM processors and electronic measurement equipment (digital multimeters, oscilloscopes, logic analyzer, signal generator) we can convey the core skills and topics for understanding the basics of the electrical domain when designing and implementing your embedded software.

Starting form basic terminology and physical measures we advance to electrical and electronic concepts related to analog and digital world at each module students having the opportunity to do their individual observation and interpretation of the phenomenon observed and recorded by the instruments. During this module time is provided for presenting electrical notation standards (hands-on reading electronic schematics) and reading and understanding electronic datasheets.

We also cover the basics of operation for the tools used (usually from Fluke, Rigol and Hameg) but we can tailor this in accordance to your specific need.

We provide and individual assessment of each for the students at the end of the training.

Duration: 20 hours

Groups of up to 10 students (limited by our lab capacity, can be tailored on specific request)

Topics: Electrical and electronic measures and characteristics, Passive components, Active components, Electronic measurement tools operations, Measurement bridges, Time domain measurement, Logic Analyzer operation, Datasheet reading and interpretation, Electronic schematics reading and interpretation, Errors and uncertainties in electronic measurements.


Scroll to Top