Gen_Eng 295, Fall 2016 -- Programming and Electronics: Maker edition

Eligibility – First year engineering undergraduates in all disciplines.  

Entry survey due September 14 If you'd like to be part of the class, please complete this survey, to request an invitation (non-competitive; the survey is for planning and evaluation.) You'll need to be signed in at in order to access the survey.

What do students say about this class?

Here are the CTEC comments about it from last year.

Why take this class?

Embedded computing is what makes our smart gadgets smart. It is code (software) that interfaces through electronics to read from, and act in, the physical world. Sensor inputs can be thermometers, accelerometers, switches, force gauges, microphones, touch screens, etc. Outputs can be lights, sounds,LCD displays, motors, and many more.

Connecting software to the physical world is a great way to learn programming! You will learn programming, and interface your programs to the physical world using the electronics that you build. You will learn electronics, designing and building you own circuits. This class will complement the programming that you will be learning in EA1 (Gen_Eng 205-1). Both classes use the Matlab programming language.

You will gain enabling skills, that are in high demand in your design courses, extracurricular teams, and often in research participation as well. In the hobbyist world, proficiency in embedded computing and electronics is a highly respected "maker skill".

In 295 you will design circuits with modern electronic devices such as operational amplifiers and digital logic chips, interfaced to sensors and actuators. You will use test instruments, especially the oscilloscope and voltmeter, and you will design, prototype, and debug circuits on protoboard. We will first use the Matlab programming environment, which lets us use laptop graphics, and later we'll do some arduino programming as well. ]

295 is a lab course in the sense that it is hands-on and emphasizes the development of design and diagnostic skills both in electronics and programming. These skills will be developed in class and also in homework. Because portable equipment is used, there is no need for a scheduled lab.

Instructor – Prof. Michael Peshkin

Class size – 28

Schedule – MWF, 12:00 to 12:50 PM, F281 Tech active classroom

Text – no textbook is needed; video, online, and print materials will be provided.

Prerequisites – Concurrent enrollment in Engineering Analysis I (Gen_Eng 205-1, a.k.a. EA1).  EA1 and 295 both use the Matlab programming environment; EA1 in the context of linear algebra and 295 in the context of electronics interfacing.

Credit – Gen_Eng 295 counts as an elective in all engineering departments.

Materials and fees – You will need a laptop computer, running Windows or Mac OS, every day in class, and also for homework.  Purchase of Matlab is required for EA1 and for 295, and throughout the undergraduate curriculum. For 295 there will normally be a fee of $119 for electronics and materials, however, this fee is waived for this section.

Format – Class sessions are a mix of lecture and guided work sessions. Homework is due at the beginning of most class days. There will be two one-hour in-class tests and a two-hour final exam.  

Approximate syllabus –


Electronics material

Programming material


Working with protoboard

Circuits with switches & lights

Voltages and currents, voltmeters and scopes

Series and parallel




Voltage dividers and potentiometers

Getting signals into Matlab

Matlab programs with i/o - if, loop, logic, print


Sensors that don't need much electronics: light.


Signal generator




Opamps as comparators

Temperature sensors

Getting signals out of Matlab

Games against time & each other


Opamps as amplifiers



Rapid data acquisition


Signal proc. (time reversal, speed, spectrum)

Program an audiometer


Piezo disk

Buffer amplifier

Low pass filter

Resonance of a metal rod

Analysis for resonant frequency, damping

Weighing something via change of resonance


Input & output impedance

Inverting and non-inverting amplifiers

Measuring reflectance

Handle graphics

Light pong


RC circuits


Integrated piezo disks as strain gages

Lunar lander


Digital electronics: gates


Power mosfets


Motor controller


Flipflops and counters, datasheets

Seven-segment numeric display

Dice roller



Final project

Final project