Embedded Systems Venture Certificate

To serve our students, industry, and the local community through engaging undergraduate students at an early stage in interdisciplinary research that will promote the quality of life and economic development in the local community.

The specific objectives of the venture are as follows:

  • Engage undergraduate students from an early stage to gain professional experience with embedded, mobile and real-time system development. Participating students will operate a full-scale consulting and development firm that specializes in embedded, mobile & real-time systems. The firm will offer research, design, development and technical documentation services to real-world clients including for-profit corporations and non-profit organizations.
  • To serve our students by providing them with excellent education and practical experience. The venture will also provide our students with hands-on experience, innovative ideas, introduce them to industry trends, and guide them to investigate novel ideas in embedded, mobile and pervasive systems.
  • Focus on utilizing Operational Research, Analytics and Machine Learning techniques to build highly scalable, secure, and resilient embedded and mobile solutions.
  • To serve the industry by conducting interdisciplinary research to build innovative solutions that cater to their specific needs (biology, manufacturing, military, etc.).


The following courses will be required for student to earn the embedded systems certificate:

  1.   CS2230 – Computer Organization and Assembly Language, or ECE 2510 – Introduction to Microprocessors I
  2.   CS2240 – Systems Programming Concepts
  3.  ECE 2500 – Digital Logic
  4.  ECE 3510 – Engineering of Real Time Systems
  5. CS 3950 – Venture Project – (Total of 6 credits) 3 Credits for each enrollment; enrollment in 2 consecutive semesters; a grade of B or better is required in the first enrollment for a student to be eligible for a second enrollment; enforced by the venture advisor as different ventures might have different requirements.

The following are the catalog descriptions for these courses:

CS 2230 - Computer Organization and Assembly Language

This course introduces concepts of computer architecture and assembly language. CISC and RISC instruction sets, along with associated hardware issues (e.g., data representation and instruction formats, instruction pipelining, register windows, context switching, and memory management) will be discussed. The student will program in both assembly language and the C programming language as well as interfacing the two languages.

CS 2240 - System Programming Concepts

Topics include: program development tools, basic testing, timing, profiling and benchmarking, characteristics of physical devices, memory management, device drivers, pseudo-devices, file structures, file I/O (both buffered and unbuffered), processes, shells, inter-process communications, signals, exceptions, pipes, sockets, shared memory and file and record locking. All topics are viewed from a UNIX system programming perspective.

ECE 2500 - Digital Logic

Analysis and design of combinational and sequential logic systems.

ECE 3510 - Engineering of Real Time Systems

Characterizing modeling, and specifying real time systems. Designing, programming and verifying sequential and concurrent real time systems. Software engineering processes in real time system development. Case studies and project using C/C++

CS 3950 - Embedded Venture Project

This course engages sophomore/junior students to gain professional experience with their specific venture topic. Participating students will operate a simulated full-scale consulting and development firm that specializes in the venture topic. The goal of the course is to have the students spend time in the lab working as part of a team that provides solutions to real clients.


Only undergraduate students currently enrolled at WMU are eligible to enroll in the Embedded Systems Venture certificate. It is currently not available as a stand-alone certificate program. This certificate is intended for computer science and electrical and computer engineering undergraduate majors.

Enrollment Process:

Students who wish to pursue this certificate should see an academic advisor in the College of Engineering and Applied Sciences.