EE445L Embedded Systems Design Lab Spring 2022 (5/3/2022 version)
   Grading 
   Office hours 
   Lectures and lecture schedule 
   Lab assignments
   Lab schedule

Course Catalog Description Design of microcontroller-based embedded systems; interfacing from both a hardware and software perspective; and applications, including audio, data acquisition, and communication systems.

Course Specific Objectives of EE445L: The primary objective of EE445L is for the students to develop the ability to design microcomputer-based embedded systems. This class allows students to learn microcomputer interfacing from both a hardware and software perspective.

Professor's Personal Objective for the Course: My objectives for this course is for the software centric students to become proficient with hardware and the hardware centric students become proficient with software such that when you are in industry you make more money than those students who elect to be isolated in their comfort zone be it SW or HW.

Outcomes: After the successful conclusion of EE445L, students should be able to design embedded systems including hardware/software interfaces for devices like LCD displays, motors, keyboards, analog sensors and speakers. Furthermore, students will be able to deploy these systems into the IoT environment.

Attendance: Students are expected to attend all lectures. The book covers more information than the class and we will use lectures to map our way through the book. If you miss class you may find it difficult to catch up. DO NOT assume that you can watch old videos of the lectures from 2015 and not come to class.

Prerequisites: EE312 and EE319K with a grade of at least C- in each; EE411 and EE313, or BME311 and BME343, with a grade of at least C- in each; and credit with a grade of at least C- or registration for BME333T, or EE333T.

Grading

   50% Laboratory assignment with a large weight applied to Labs 7, 8 and 11
   15% Quiz 1, closed book, 1 page crib notes, Thursday, March 3, 12:30-1:45pm, in class
   15% Quiz 2, open notes, open book (no internet), Thursday, April 21, 12:30-1:45pm, in class
   20% Final, open notes, open book (no internet), Saturday May 14, ETC 2.108, 9am-noon, on campus in officially scheduled room, regularly scheduled time
When studying, focus on the topics that apply to the ARM Cortex M and the lab assignments.  You will find old quizzes and finals with solutions on the class web site. I have no expected grade cutoffs or expected GPA for this class. Everyone is welcome to get an A in this class. However, historically the GPA has been about 3.4.  All professors want a 5 on their teaching evaluation, and all students want an A. However, I feel both should only be awarded for excellence.  

Instructor: Jonathan W. Valvano, EER 5.820 

Valvano Office Hours

    Monday 11a-12n
    Monday 7p-8p
    Wednesday 7-8
    Friday 2p-3p
    Friday 7p-8p
I am also teaching EE319H. You may schedule additional office hours by appointment.  There is a direct correlation between higher grades on the exams and attending office hours when you have questions.

Class: EER 1.518, Tuesday, Thursday 12:30-13:45 
email: valvano@mail.utexas.edu      (put "EE445L" in the email title, send no ZIP files) 
Class web page: http://users.ece.utexas.edu/~valvano/EE445L/    
Required Text: Embedded Systems: Real-Time Interfacing to ARM Cortex M Microcontrollers, July 2021, ISBN: 978-1463590154 eighth printing
Lecture Videos: https://www.youtube.com/playlist?list=PLyg2vmIzGxXGBxFu8nvX3KBadSdsNAvbA

Equipment to buy:
1) Board. Every student will be required to have a Texas Instruments TM4C123 LaunchPad by Wednesday 1/26. Since we will be using the TM4C123 kit in EE319K and EE445L for a few years, you will have the option of selling it at the end of the semester.  If you can find an EK-LM4F120XL board, it could also be used. We require each student purchase a board and a breadboard. Buying options for the board can be found by searching www.octopart.com  https://octopart.com/search?q=EK-TM4C123GXL However, one option is to purchase it directly from www.ti.com . We have been using the TM4C123 board in EE319K since Fall 2013, so you might be able to find one used. If you do purchase a used microcontroller board, ask a TA or me to run the board tester to make sure all the pins work. If it still works at the end of the semester, you will be able to sell this board to students in the next semester.
2) LCD. Each student will need to a LCD graphics display. We will be using Sitronix ST7735R 18-bit color 1.8" TFT LCD display for $20 plus shipping, http://www.adafruit.com/products/358   If you want a lower cost version you could order it from China (search ST7735R on Amazon or  ebay). EE445L has a design competition where students build embedded system. Using the same LCD for labs and for the project will save you time. Just like the microcontroller board, you will have the option of selling the Sitronix LCD to students next semester.
2b) Optional LCD. You cannot find an ST7735R, you may consider a smaller display. Take this option only if you really can not find a ST7735R. There are software project for the SSD1306 called SSD1306_4C123 in the regular EE445L project download. To purchase a SSD1306, search "SSD1306 OLED" on Amazon. The driver operates with a single color, 128 by 64 pixels, interfaced with I2C.
3) Breadboard. You will need a solderless breadboard. We strongly recommend you do not buy used or borrow a breadboard, because as the breadboards get old they fail in mysterious and extremely annoying ways (shorts and opens).  The Twin Industries TW-E40-1020 is a breadboard that is easy to find. You can find it for sale on the internet by searching www.octopart.com :   https://octopart.com/search?q=TW-E40-1020   Any breadboard, any size will be OK. Another approach is to search "solderless breadboard" on amazon.com aliexpress.com or ebay.com
4) Wirestrippers and voltmeter. You will need own your own pair of wire-strippers and a digital multimeter. You will be stripping a lot of 22 or 24 gauge wire as you build the interface circuits. Your meter must be able to measure voltage and resistance, so a meter costing around $20 will suffice.  
5) Soldering station For the hardware lab option you will need access to lab equipment including a high-quality soldering iron, lead-free solder, solder wick, solder paste, fine-tipped pliers, wire cutter, and wire stripper. 

Lab: EER1.806   (shared with EE445M/EE380L.12 in spring)

Lab sections:
    Unique: 17510, TTh, 11:00 - 12:30, Kyubum (Kevin) Shim
    Unique: 17515, MW, 12:00 - 13:30, Matthew Yu
    Unique: 17520, MW, 15:30 - 17:00, Matthew Yu
    Unique: 17525, MW, 17:00 - 18:30, Mohit Gupta
    Unique: 17530, TTh, 17:00 - 18:30, Jared McArthur

Great TAs:   email all TAs professors and staff s22_ee445l@utlists.utexas.edu  
    Matthew Yu
    Kyubum (Kevin) Shim
    Jared McArthur
    Mohit Gupta

Reference materials on the web:
   http://users.ece.utexas.edu/~valvano/Datasheets  Data sheets for devices used in EE445L
   http://users.ece.utexas.edu/~valvano/arm/ Starter files for EE445L and EE345M
   http://users.ece.utexas.edu/~valvano/embed/toc1.htm   C programming reference manual 
   http://users.ece.utexas.edu/~valvano/EE345LFinal/  Old exams
Put this DLL LaunchPadDLL.dll into your Keil/ARM/bin folder so you can simulate some of the TM4C123 LaunchPad devices used in EE319K.

Other references: For programming in C see the EE312 materials or the second half of the EE306 text.

Specific EE319K topics needed for EE445L: LED interface, switch interface, busy-wait synchronization, serial communication concepts (start bit, data bits, stop bit, baud rate, bandwidth), UART programming, analog to digital conversion (range, resolution, precision, accuracy), ADC programming, digital to analog conversion (range, resolution, precision, accuracy), interrupt concepts (arm, enable, acknowledge, vector), periodic timer interrupt programming
Specific EE312 topics needed for EE445L: Modular programming, differences between pointers and numbers, when to use permanent allocation and when to use temporary allocation, definitions of int8_t uint8_t int16_t uint16_t int32_t and uint32_t, understanding and use of static, const and volatile,  understanding call by value versus call by reference, stack frames, structures, linked lists, fifo queues, verification. The most important component students must be able to accomplish is the translation of a problem statement into software code. The second most important skill we expect students to have is the ability to debug software. 
Specific EE302/EE411/EE313/EE438 topics needed for EE445L: RLC circuits, NPN and PNP transistors, input impedance, output impedance, linear amplifiers using op amps, oscilloscopes, sampling, frequency response, Bode Plots, Fourier Transform, and spectrum measurements (frequency domain).
Teaching philosophy:  I strongly encourage students to take an active role in this class.  Questions are welcome before, during and after class. Please feel free to email, visit or call me if you have questions. I am very accessible!!
Specific Objectives of EE445L   The primary objective of EE445L is for the students to develop the ability to design microcomputer-based embedded systems. This class allows students to learn microcomputer interfacing from both a hardware and software perspective.
Microcomputer Architecture (EE319K review)
     An introduction to the microcomputer, architecture, The Cortex M4 Instruction Set, Cortex M4 Addressing Modes, I/O and Memory Organization, The memory map of the TM4C123  
Programming Microprocessors (EE312, EE322C review)
    Data Structures in C (arrays, tables, linked lists, stacks, and fifo queues), Writing Quality Programs in C, Passing Parameters (Conceptual and Implementation Levels), Modular Programming, Verification and Testing, Documentation
Hardware Interfaces
    Connecting one hardware module to another (currents, voltages, capacitive loading), Drivers, Timing equations, Timing diagrams,
Parallel and Serial Input-Output
    TM4C Parallel I/O Devices,  Device Driver Software, Buffered Input and Output,  Table and Linked List Interpreters, TM4C Synchronous and Asynchronous Serial Input-Output, Synchronization in I/O devices, Blind-Cycle Synchronization, Busy-Wait Synchronization, Interrupt Synchronization, Polled Interrupts, Vectored Interrupts, Interrupt Priority
Parallel Port Interfaces
    Keyboards, Key Debouncing, Keyboard Scanning Techniques, LED Scanning Techniques and LCD Interfacing
Internet of things
    Keyboards, Wifi, TCP, UDP, DNS, http
Data Acquisition Systems
    Bridge circuits, op amps, low pass filters, instrumentation amplifiers, DAC, ADC, audio amplifiers
Motor interfacing
    Stepper motors, DC motors, pulse-width modulation, integral control
System level design and integration
    Power, packaging, component selection, PCB layout, user interfaces, performance evaluation, and collaborating in teams.

Safety warnings: We are not allowed to use leaded solder on campus. However, due to the lead in most solder, please wash your hands after soldering, before eating or drinking. If you drop the soldering iron, let it fall to the ground. Do not try and catch it. If you are pregnant or think you might be pregnant, have someone else do the soldering.

Project Lab Partners: Everyone does labs 7-11 in groups of 4. There can be a mix and match between hardware and software students as long there is at least one hardware student (because someone needs to solder the PCB). You and your lab partner(s) must be registered for the same lab section. Please see your TA about forming groups. A partnership can be dissolved only after discussion with the TA. Both partners must be present during the demonstration. It is expected that both partners will contribute to all aspects of each lab, and both partners are expected to be present during the check out. The point values are the same for all labs. Lab partners will be selected in your lab the week of January 24th.

Laboratory Assignments

  Lab introduction and grading policy
  Lab 1. LCD Graphics, done individually
  Lab 2. Debugging, oscilloscope fundamentals, logic analyzer, dump profile, group of 2
  Lab 3. Alarm clock, LCD, edge-triggered input interrupts, and SysTick periodic interrupts, group of 2
  Lab 4. IEE802.11Wi-Fi communication, TCP, client-server, IoT, group of 2
  Lab 5. 12-bit DAC, SPI, Music player, audio amp, group of 2 
  Lab 6. Introduction to PCB Layout, Eagle, done individually, (paper design only)
  Lab 7. Design and Layout of an Embedded System, group of 4
  Lab 8. Software Drivers for an Embedded System, group of 4
  Lab 9. Audio signal processing, ADC, LCD, group of 4
  Lab 10. DC motor control, timer interrupts, PWM output, input capture, integral control, group of 4
  Lab 11. Final Design and Evaluation of Embedded System, group of 4

Lab Schedule

Week

1st Lab Session

2nd Lab Session

Friday

LAB Comments

1/17

     

No lab activities this week, buy your TM4C123 board, Labs starts Week of 1/24

1/24

Meet the TA

Lab 1 Prep

Partners selected

Keil uVision demonstration, Eagle (SCH) demonstration (on Zoom)

1/31

1 Demo

2 Prep

1 Report

Oscilloscope demo, Logic analyzer demo

2/7

2 Demo

3 Prep

2 Report

2/14

3 Demo

4 Prep

3 Report

2/21

4 Demo

5 Prep

4 Report

Spectrum analyzer demo

2/28

5 Demo

6 Prep

5 Report

Quiz 1 is 3/3, Eagle (PCB) demo

3/7

6 Demo

7 Pre-Prep

6 Report

Project teams formed before Spring break

3/21

7 Prep

7 Demo1 

Valvano Review

There are three design reviews: Demo1, Valvano, Demo2

3/28

7 Demo2

8 Prep

7 Report

Final SCH/PCB files due on Canvas at 10am Thursday 3/31

4/4

8 Demo

9 Prep

8 Report

NOTE: Lab 8 report is just the software 

4/11

9 Demo

10 Prep

9 Report

 

4/18

10 Demo

 

  Quiz 2 is 4/21
4/25  11 Prep, 10 Report      

5/2

11 Demo

 

11 Report

Turn in checked out equipment by Friday 5/6

 

At each stage, we expect updated: requirements document, .sch, .pcb, and BOM
Lab 7 production schedule
- Parts = all parts you plan to purchase should arrive before 3/
- Pre-Prep = Requirements document
- Prep = SCH complete, PCB parts not moved or routed
- Demo1 = SCH complete, PCB parts are placed but not routed
- Valvano review = you demonstrate first part of a two-week lab to the TA
- Demo2 = SCH complete, PCB complete, passes design rule check
- Final = SCH complete, PCB complete, passes design rule check
     PCB files due Thursday 3/39 @ 10am on Canvas (if you miss this deadline you will have to pay for your own board)
- Report = Lab 7 deliverables
- TA downloads files from Canvas and creates an XLS sheet
- PCB ordered on Friday 4/1 by 12 noon
- Boards received about Tuesday 4/12
- Lab 11 prep 4/25 or 4/26 all parts soldered and microcontroller can be programmed.

Each week there are two 90 minute lab sessions, which are scheduled Monday/Wednesday or Tuesday/Thursday. You will show the preparation to your TA at the beginning of the second session. During the first session demonstrations will be made. The TA will sign your software listing when you demonstrate your system. The report (hardware/software/data plots) is due Friday uploaded to Canvas according to the directions posted on Canvas. Any EE445L TA is authorized to checkout your lab.  Please consult with your TA for specific due dates for your lab section.

    During the week of 1/24, please go to your scheduled EE445L lab sessions in  on zoom to get a demonstration of the lab equipment.  If you do not already own a TM4C123 board, you must purchase one.  Each student should have their own board.  The lab preparations (hardware diagrams and syntax-free software source code printouts) must be uploaded to Canvas prior to the beginning of your lab period. PLEASE SEE YOUR TA ON EXACT REQUIREMENTS FOR TURNING IN LAB ASSIGNMENTS. In other words, please type your software into the PC before lab. Attendance in lab is required. All software for lab, and tests must include comments. All hardware must include R&C values specifying tolerance and type (e.g., 5% carbon), and chip numbers (be very specific e.g., OPA2350PA). Pin numbers are required only for lab, not for the exams.
    Contact your TA about how lab will be managed. All reports must be given to the TA by Friday May 6, 5pm.

Lecture Schedule

Week Chapter Lecture Topic  YouTube Playlist  
1/18 1,2 aLec01_EE445L
aLec02_IntroES 
Introduction to EE445L,
Embedded Systems
1/25 2,3 aLec03_FixedPoint
aLec04_Graphics
aLec05_Architecture
aLec06_Synchronization  
aLec07_Interrupts
Fixed-point,
Graphics, Lab1 project, call graphs
Arm Cortex M architecture, features of the TM4C123, data flow graphs,
Introduction to interfacing, hardware software synchronization
Interrupts, Lab2 project
2/1 2,3,4,5 aLec08_CriticalSections
aLec09_Debugging
aLec10_EdgeTriggeredInterrupts
aLec11_BJT
Critical sections,
Debugging debugging techniques, and programming style, dumps, monitor
Edge-triggered interrupts
BJT transistor interface
2/8 3
11
11.4
aLec12_Specifications
aLec13_Client_Server
aLec14_IoT_Smart_Object
aLec15_CC3100WeatherServer
Specifications and software style
Introduction to communication systems
Wifi, Wireless communication, client server, IoT (Lab 4 material)
Demonstration of ESP8266 wifi, TCP, and Lab 4
2/15 11.4
8.4
7.5
aLec16_ESP8266WeatherServer  
aLec17_DAC
aLec18_SPI
aLec19_SoundGeneration
Demonstration of ESP8266
DAC fundamentals, Nyquist Theorem (Lab 5 material)
SPI and DAC interface, timing analysis
Sound and Music Generation
2/22 9.2.2
8.4
9
aLec20_AudioAmp
aLec21_DACPerformance
aLec22_Systems
aLec23_PCBLayout
TPA731 audio amplifiers, see Example 10.4
DAC performance measures
PCB Layout, Lab 6 material
System level design, clock, power, packaging
3/1 9 aLec24_Lab6_demo
aLec25_QuizReview
 
Lab 6 demo
Quiz 1 review
Quiz 1 (3/3)
3/8 9
10.6
aLec26_GettingStarted
aLec27_Power
Low power design, regulators, PCB layout
Power supplies, batteries, regulators
3/22 8.1
9
Vol 3
6.1
aLec28_Enclosure
aLec29_Components
aLec30_SDC
aLec31_FileSystem
aLec32_InputCapture
Enclosures, connectors
Resistors, capacitors
SDC
File system using FAT16
Input capture, period measurement
3/29 10.2
8.2
8.2.3
10.6
aLec33_Sensors
aLec34_OperationalAmplifiers
aLec35_ThresholdDetection
aLec36_InstrumentationAmp
Sensors
Op amps
Threshold detection
Resistance bridge, instrumentation amplifier
4/5 8.3
10.4
10.5
10.6
aLec37_AnalogFilters
aLec38_IntroductionToSampling  
aLec39_NyquistTheorem
aLec40_Temperature_DAS
Analog filters: HPF, LPF, 2-pole Butterworth LPF
Introduction to Sampling
Nyquist Theorem, Aliasing, DFT
Data Acquisition Systems
4/12 8.5.2
6.5
6.1
6.5
aLec41_ADCconversionTechnique  
aLec42_DC_Motors
aLec43_BLDC_Servo_Stepper
aLec44_Tachometer
aLec45_ControlSystems
aLec46_ControlSystemsExample
ADC Conversion Techniques
DC  Motors, PWM,  interface electronics (TIP120, snubber diodes)
BLDC, Servos, Stepper Motors
Input capture, tachometer interface
Control Systems,
Lab 10 demonstration
4/19 6,8,10
3.5
10.6

Quiz 2 review 

Quiz 2, 4/21
4/26 11
aLec47_StepperMotors

aLec48_OperatingSystems
aLec49_Communications
aLec49c_FFT.pptx
aLec52_Bluetooth  
Finite State Machines, Stepper Motors
Lab 11 programming demo
Real-time operating systems
Communication Theory
FFT Theory and Implementation
Bluetooth
5/2 1.6
4.10
aLec50_Ethics
aLec51_ScannedKeyboardLED  
Final_Review
Ethics
Keyboard Interfacing, Scanned LED Display
Open house, final class competition, outside Lab

Legal Stuff: The 12th class day is Feb 2. The drop policy is extremely complicated. See your academic advisor or the Dean of Students for more information. Course evaluation is conducted on the last class day in accordance with the Measurement and Evaluation Center form. The final exam is at the time and place stated in the course schedule. The University of Texas at Austin provides upon request appropriate academic adjustments for qualified students with disabilities. For more information, contact the Office of the Dean of Students with Disabilities at 471-6259, 471-4241 TDD. 

Religious Holy Days By UT Austin policy, you must notify me of your pending absence at least fourteen days prior to the date of observance of a religious holy day. If you must miss a class, an examination, a work assignment, or a project in order to observe a religious holy day, I will give you an opportunity to complete the missed work within a reasonable time after the absence. 

Scholastic dishonesty: "Faculty in the ECE Department are committed to detecting and responding to all instances of scholastic dishonesty and will pursue cases of scholastic dishonesty in accordance with university policy. Scholastic dishonesty, in all its forms, is a blight on our entire academic community. All parties in our community -- faculty, staff, and students -- are responsible for creating an environment that educates outstanding engineers, and this goal entails excellence in technical skills, self-giving citizenry, an ethical integrity. Industry wants engineers who are competent and fully trustworthy, and both qualities must be developed day by day throughout an entire lifetime. Scholastic dishonesty includes, but is not limited to, cheating, plagiarism, collusion, falsifying academic records, or any act designed to give an unfair academic advantage to the student. The fact that you are in this class as an engineering student is testament to your abilities. Penalties for scholastic dishonesty are severe and can include, but are not limited to, a written reprimand, a zero on the assignment/exam, re-taking the exam in question, an F in the course, or expulsion from the University. Don't jeopardize your career by an act of scholastic dishonesty. Details about academic integrity and what constitutes scholastic dishonesty can be found at the website for the UT Dean of Students Office and the General Information Catalog, Section 11-802." 
You are encouraged to study together and to discuss information and concepts with other students. You can give "consulting" help to or receive "consulting" help from such students in oral form. However, this permissible cooperation should never involve one student having possession of a copy of all or part of work done by someone else, in the form of an email, an email attachment file, a portable storage device, or a hard copy. Copying of any part of a program is cheating without explicit reference to its source. We do enter lab assignments turned in by EE445L students through a plagiarism checker, comparing them to assignments of this and previous semesters. If we find two programs that are copied, there will be a substantial penalty to both students, e.g., failure in the course. Students who cheat on tests or in lab will fail. Prosecution of cases is very traumatic to both the student and instructor. It is appropriate to use software out of the book, class website as long as all copy-pasted software is explicitly referenced. Copy-pasting software from current or past students is scholastic dishonesty. Policies concerning the use of other people's software in this class:
    · I strongly encourage you to study existing software.
    · All applications and libraries must be legally obtained. E.g.,
        You may use libraries that came when you bought a compiler.
        You may use software obtained from the web.
        You may copy and paste from the existing source code.
    · You may use any existing source code that is clearly referenced and categorized:
        original: completely written by you,
        derived: fundamental approach is copied but it is your implementation,
        modified: source code significantly edited to serve your purpose,
        copied: source code includes minor modifications.
The University Honor Code is "The core values of the University of Texas at Austin are learning, discovery, freedom, leadership, individual opportunity, and responsibility. Each member of the University is expected to uphold these values through integrity, honesty, trust, fairness, and respect toward peers and community."  http://registrar.utexas.edu/catalogs/gi09-10/ch01/

The Digilent Analog Discovery 2 is a low-cost but wonderful tool for this class. It is not required, but very handy, especially if you need to work at home this semester. This is a very low cost logic analyzer, especially useful for students doing hardware option. https://www.amazon.com/Comidox-Analyzer-Device-Channel-Arduino/dp/B07KW445DJ/

Software applications

To complete EE445L labs it will take time outside of the 3 scheduled lab hours. It will be necessary for you to configure a development system on your laptop (Keil version 5.x, PuTTy, and Eagle). This way you will be mobile and flexible about where and when you work on lab. For Keil 5.33 installation see https://www.keil.com/demo/eval/arm.htm . For PuTTY see http://www.putty.org/ . To install Eagle, follow the Pre-assignment 1) at EE319K Spring 2022 PCB camp.

Request samples (DIP or PDIP package) You will need to register with an official University email address (e.g., YourName@mail.utexas.edu) rather than a junk email address (e.g., aol.com or gmail.com). For general information on getting free samples, see http://www.ladyada.net/library/procure/samples.html.

http://www.analog.com/en/index.html   Analog Devices
Analog Devices Sample request
AD8032ANZ  rail-to-rail op amp
MAX5353ACPA+ or MAX5353BCPA+  single 3.3V-powered, 12-bit SPI interface DAC (ACPA or BCPA)
MAX552BCPA 12-bit multiplying DAC
MAX1246ACPE+ 3.3V-powered, 12-bit ADC, such as the  (A or B, with or without +)
MAX5155ACPE dual 12-bit SPI interface DAC (ACPE or BCPE)
 

http://www.ti.com  Texas Instruments (we have ordered these for you)
1) OPA2350PA rail-to-rail dual op amp for Lab 9.
2) LM4041CILPR adjustable shunt reference for Lab 5.
3) TLV5618ACP dual 12-bit DAC  for Lab 5.
4) TPA731D audio amplifier for Lab 5.

 http://www.samtec.com/   SamTec connectors
10-pin LCD connector, BCS-110-L-S-TE (need 1 for the ST7735 LCD to connect to PCB)  

Search engine for parts http://octopart.com/
Game engine http://www.3dgamestudio.com/
Hobby parts http://www.sparkfun.com/
Surplus http://www.allelectronics.com/  
Full line http://www.digikey.com/
http://www.mouser.com/
http://www.newark.com/


Put your embedded system in a box (not free, but a good source for choices)
http://www.okw.co.uk/ OKW Enclosures Ltd
http://www.tekoenclosures.com/ Teko Enclosures Solutions
http://www.pactecenclosures.com/ PacTec Enclosures

Curious about my research?
See
http://users.ece.utexas.edu/~valvano/research    

ABET Relationship of the Course to Student Outcomes: All these apply to EE445L
1) An ability to identify, formulate, and solve complex engineering problems by applying principles of engineering, science and mathematics
2) An ability to apply engineering design to produce solutions that meet specified needs with consideration of public health, safety, and welfare, as well as global, cultural, social, environmental, and economic factors
3) An ability to communicate effectively with a range of audiences
4) An ability to recognize ethical and professional responsibilities in engineering situations and make informed judgements, which must consider the impact of engineering solutions in global, economic, environmental, and societal contexts
5) An ability to function effectively on a team whose members tighter provide leadership, create a collaborative and inclusive environment, establish goas, plan tasks, and meet objectives
6) An ability to develop and conduct appropriate experimentation, analyze and interpret data, and use engineering judgment to draw conclusions
7) An ability to acquire and apply new knowledge as needed, using appropriate learning strategies.

For more information see http://www.ece.utexas.edu/about/mission

Emergency Preparedness and Emergency Plan Instructions
Please review http://users.ece.utexas.edu/~valvano/emergency_terms.pdf
    Every member of the university community must take appropriate and deliberate action when an emergency
strikes a building, a portion of the campus, or entire campus community. Emergency preparedness means we
are all ready to act for our own safety and the safety of others during a crisis. It takes an effort by all of us to
create and sustain an effective emergency preparedness system. Your support is important to achieving the
best possible outcomes during a crisis event.
    As a University faculty member, you are responsible for pointing out your classrooms' building emergency
evacuation routes and for reviewing emergency procedures with students at the beginning of each semester.
This review should include a mention of the monthly emergency communications test (every first Wednesday
at 11:50 a.m.) and the list of communications channels the university uses during emergencies. It should also
include a review of the attached document outlining emergency terms (e.g., the difference between “shelter-inplace”
and “lockdown”) and instructions for faculty and students to follow during emergencies. As a matter of
convenience, we recommend including this information in your syllabus along with the phone number for the
Behavior Concerns Advice Line (BCAL: 512-232-5050). This is the number to call if you have concerns
regarding the attitude or actions of students, staff, or other faculty.
    Finally, at the end of your emergency preparedness review, request that students requiring assistance in
evacuation inform you in writing of their needs during the first week of class. This information must then be
provided to the Fire Prevention Services office by fax (512-232-2759), with "Attn. Mr. Roosevelt Easley" written
in the subject line.
    Thank you in advance for taking the time to ensure the safety of your classroom. I assure you this small effort
can yield much greater rewards should the unthinkable happen. If you would like more information regarding
emergency preparedness, visit http://www.utexas.edu/safety/preparedness/.
 Emergency Communications
Emergencies may range from inclement weather, to building evacuations, to campus closures, and the
university has a variety of tools to communicate with the public in the event of these and other possible
emergencies. Depending on the type of emergency, we may use some or all of the following tools to
communicate with faculty, staff and students:
Siren System
This system is tested around noon on the first Wednesday of every month, and delivers a siren warning
and public address in the event of certain outdoor emergencies. Read more about the siren system.
Emergency Web Site
You may want to bookmark the emergency Web site because it is updated with information during
actual emergencies or campus closures.
Local Press and Social Media
University Communications staff send emergency information to the press and update social media with
public safety messages. Because of the transient nature of our population, the university depends a great
deal on the press and social media to keep students, faculty, and staff informed during campus
emergencies.
Pager System
Our campus first responders, resident advisors, and some building managers are part of the AWACS
paging system. The pagers send text messages about emergencies on campus and alert city responders
(APD, AFD, EMS, Office of Emergency Management, etc.) to campus crisis situations.
Fire Panel Systems
Residence halls are equipped with fire panel systems that have a public address capability. Resident
advisors are trained to use these systems in emergencies in order to make announcements to the entire
building regarding evacuation, shelter in place, etc.
Text Alerts
The university collects cell phone numbers from members of the campus community for emergency text
messages. Sign up for campus text alerts online.
University Group E-mail
During emergencies, UT Safety Alert sends an “urgent” group e-mail to every student, faculty and staff
member. The e-mail directs individuals to the emergency Web site for additional information and
instruction.
Voicemail to Office Telephones
This tool leaves a voice message on every faculty and staff member’s office phone on campus.
Cable TV
Residence halls and several of our public gathering places have cable televisions where emergency
announcements get posted.
Public Safety Patrol Car Announcements
UTPD patrol cars are equipped with PA systems, which officers can use to provide instructions to
pedestrians during emergencies.
University Emergency Information Line — 512-232-9999
Students, faculty, and staff can call this main number for information about campus closures.
The implementation of each tool described above is assigned to an individual who has at least two backups who can also
carry out the communications task. Individuals with electronic communication tools assigned to them have remote access
(from their homes, etc.) to those tools. The police department and the associate vice president for Campus Safety and
Security are typically the ones who deliver emergency information to university administration. Upon considering this
information, administration develops the messages and activates campus-wide communications. The only exceptions to
this are the sirens and pager system, which are activated directly by UTPD in extremely urgent situations where
immediate action is required.