ECE312H/ECE319H Combined Experience

During the spring 2024 semester, ECE offers two sections of ECE312H and offers two sections of ECE319H. To join the adventure you must register for both ECE319H and ECE312H for the spring semester. We expect there will be enough seats for all who are interested. ECE honors students should signup for the same two sections: Tiwari and Nandakumar (so that you can remain a cohort). Non-honors students should signup for the other two sections: Valvano and Santacruz.


0) What are the goals? Because many topics of the two classes overlap, we believe teaching them during the same semester will be more effective. Topics introduced in one class can be reinforced in the other.

1) Are the topics different from the usual ECE319K-ECE312 sequence? No, we plan to teach exactly the same topics in both classes, but with more depth. However, we do plan to reorder the labs/assignments/lectures in both classes in enhance synergy. The final project will run C++ on the TM4C123 LaunchPad, in a manner similar to the regular ECE319K Lab 10 project.

2) Is it one 6-hour class? No, it remains two separate 3-hour classes, where the ECE312H instructor determines the ECE312H grade (from ECE312H exams and assignments) and the ECE319H instructor determines the ECE319H grade (from ECE319H exams and assignments). However, students will not be able to take just one of these special ECE312H/ECE319H sections, they must take both. There are regular ECE319K and ECE312 sections if you wish to take ECE319K and ECE312 in different semesters.

3) How are the programming tools different? We do not plan to change software development tools. ECE312H will be taught using the same development platform as other sections of ECE312, and ECE319H will be taught using the same development platform as other sections of ECE319K. However, since both involve C programming, there will be overlap in fundamental issues of software design, development, and testing. ECE319H Labs 8, 9, and 10 will be performed in C++ (at the time ECE312H also transitions from C to C++.)

4) How is the grading different? We do not plan to change the way ECE319H/ECE312H grades are assigned as compared to the regular sections of EE319K/EE312.

5) Is the workload different? ECE319H/ECE312H will have a little bit (but not a lot) more work as compared to ECE319K+ECE312. For example, ECE319K Lab 7 must be done with recursion. ECE319K Lab 9 will add wireless communication. We do plan to dive into deeper topics during lecture. The biggest challenge is simply the fact courses are concurrent and not sequential.

6) What are the prerequisites? The official prerequisites for EE312H are a little confusing to understand. Option 1) Get B or better in ECE306 and take ECE319H concurrently. Option 2) Get a B or better in both ECE306 and ECE319K.

7) Can I take ECE312H if I have already completed ECE319K? Students who have completed both ECE306 and ECE319K with B or better are eligible to take ECE312H.

8) Can I take ECE319H without taking ECE312H? No, students who are not registered for ECE312H or who register for and then drop ECE312H will be dropped from ECE319H. The rationale for this is because ECE319H labs 8, 9, and 10 will be performed in C++. ECE312H will provide the required learning for C++.

9) Who should take ECE319H/ECE312H? Students self-select. You do not have to be officially in any program. However, we encourage you to consider this adventure if you think you will choose the software engineering tech elective, love designing software, or are reasonably skilled in the art of software design. Students in the honors program are expected to take ECE319H/ECE312H.

What are the next steps?

If you are interested in this integrated ECE312H/ECE319H experience, simply register for both ECE312H and ECE312H for this spring. It does not matter which of the two ECE319H sections or which of the two ECE312H sections you register. If the classes get full, please add yourself to the waiting lists. We will enforce the prerequisites, so students who do not meet the prerequisites will be dropped. Our experience is students signup for this but later change their minds and drop, so put yourself on the waiting list if the classes get filled.