This is an old revision of the document!
This is the wiki page for the Laser-Tag Project that is part of the Junior Core experience.
In this course you will construct a complex, multi-player laser-tag system that will help to integrate your knowledge and experience from the other three Junior-Core courses: ECEn 340 (Analog Circuit Design), ECEn 380 (Signal Processing), and ECEn 330 (Programming Embedded Systems). The theories, concepts and lab exercises from these three courses combine to complete an entire system. The analog designs from ECEn 340 provide the shot-firing LED, shot-detecting photo-diode and associated analog electronics to interface with the ECEn 330 board. The theories and algorithms that you learned about in ECEn 380 provide the signal-processing necessary to detect when a player has been shot and also to determine which player was the shooter. Finally, the programming exercises and experience with the ECEn 330 board from ECEn 330 will help you write the necessary 'C' code to create a final working system.
The process of creating the laser-tag system will be broken into several milestones. This will help students to schedule their progress and to focus on specific portions of the system during implementation. Please see the milestones page for details for each milestone.
We have now converted ECEn 390 to Linux. As such, the setup and compilation process is nearly identical to the Linux version of ECEn 330. The one complication is that, unlike 330, it is not possible to complete the lab using the 330 emulator. As such, labs must be completed in the provided lab spaces for the digital and analog labs in the new engineering building. Unfortunately, the department has not converted the lab PCs over to Linux. To overcome this issue, we fortunately have a few choices:
In all cases, the setup instructions are on the 330 lab page.
In response to the pandemic and the shorter semester, I have eliminated the need to write code for the queue during Milestone 1. The queue functionality is provided as a library that is linked with your lasertag code.
In place of writing the queue code, you will need to demonstrate that (1) you can successfully download and run 330 Lab 1 on the 330 development board (just the hello-world part). You will also (2) demonstrate to the TAs that you can take a snapshot of the VM. This way, you can work out any problems with your setup prior to writing code during Milestone 3. If you are not using a VM, explain to the TAs how you will backup your files.
In order to complete the 390 labs, you will need to attend your lab session in person.
This course is a 3-hour lab course and will require at least 9 hours per week (1-in class hour, 8 hours outside of class) to complete the assigned milestones. You cannot expect to complete all of the lab work in a single 3-hour closed-lab block. In general, a significant amount of time will need to be spent outside of the closed-lab times on Tuesday and Thursday.
In order to develop a good understanding it is important to understand the high level design of a system. Laser Tag Overview provides a discussion of the basic laser tag design.
The embedded system organization page provides a general overview of the system that you will construct this semester. The system packaging page of the system packaging and cabling. Finally, you can view data flow in your system in this data-flow-diagram.
The laser-tag project is broken down into several milestones. See Learning Suite for due dates.
The Analog Lab in EB 424,425 is scheduled for ECEN 390 during these times:
Section 1 | Tue 12:00p - 2:50p |
Section 2 | Thu 12:00p - 2:50p |
The Analog Lab (or at least part of it in EB 425) is also open during these times:
Monday | 8 - 12 and after 6 |
Tuesday | 8 - 12 and after 6 |
Wednesday | 8 - 12 and after 6 |
Thursday | 8 - 12 and after 4 |
Friday | 8 - 12 and after 4 |
Tutorial content will be added as necessary.
Videos that demonstrate the results of laboratory exercises or that demonstrate best practices are available at this channel. Please subscribe by clicking here and "hitting" the subscribe button.
CLICK HERE TO FIND YOUR GROUP
Students are organized into the following groups. I am extremely reluctant to move people between groups unless there is a very good reason (I want to be in a group with my friend isn't sufficient). So, you must get my OK before you fill out a form to change groups. In the unlikely occasion that you get my OK to change groups, the procedure is described below.
If you have already obtained the instructor's permission, switching groups is only allowed by filling out and submitting the group-change form to Dr. Lloyd. Note that you must get the signatures of both people involved in the switch. Also, you must submit a group-change form if you want to switch teams. You will just note that it is a team switch with a note on the form.
For Milestones 1, 2, and 3, do the following:
For Milestones 4 and 5, do the following:
Groups from all years are archived below.
ECEn 390 needs to provide the following data annually for ABET purposes.