IHowley CS103 Electronic Textiles - Computer Science

1m ago
6.08 MB
22 Pages

Please excuse any formatting issues, as this syllabus is typically displayed as a website.SyllabusCSCI103: Electronic TextilesTuesdays & Thursdays; 9:55-11:10am; TCL217http://bit.ly/CSCI103Instructor: Iris HowleyEmail: [email protected]: x4633Office: TCL308Office Hours: M 4-5p, T 2-3p, W 3-4pOverviewDigital data is being infused throughout the entire physical world, escaping the computer monitorand spreading to other devices and appliances, including the human body. Electronic textiles, oreTextiles, is one of the next steps toward making everything interactive and this course aims tointroduce learners to the first steps of developing their own wearable technology devices.After completing a series of introductory eTextiles projects to gain practice in necessary skills,students will propose and design their own eTextiles projects, eventually implementing themwith Lilypad Arduino components, and other found electronic components as needed. The scopeof the project will depend on the individual’s prior background, but can include everything froma sweatshirt with light‐up turn signals for bicycling, to a wall banner that displays the current airquality of the room, to a stuffed animal that plays a tune when the lights go on, to whateverproject you can conceivably accomplish with Lilypad Arduino inputs, outputs, and developmentboard in a relatively short time period.This class is intended for students with no computer programming background, and so a largeportion of this class will focus on the development of these skills.Learning ObjectivesBy the end of this course, students will be able to:1. Select appropriate stitch styles and sew two sewable items to each other with that stitch,and secure with knots.2. Diagram, via paper prototypes, a variety of functioning circuits for physical computing.

3. Implement electric circuit diagrams using electronic components designed for textiles,using a variety of inputs and outputs.4. Program an Arduino to use a variety of inputs and output components, both analog anddigital.5. Design and create a creative eTextiles product that uses appropriate sewing techniques,simple & complex inputs & outputs, as well as novel Arduino code to transform thoseinputs & outputs.6. Apply appropriate debugging techniques that include incremental testing and helpseeking from peers, the Internet, the instructor, as well as other resources.TopicsCourse Topics can be found on the Schedule page.Course ComponentsThis course involves the following components: Lectures – we don't have a textbook, so lectures slides will be our main form of contentdelivery.In-Class Activities and Assignments – individual activities to introduce and practiceskills learned in class with immediate feedback. Some will be graded as homework, andsome will be participation-based.Individual Assignments – it's important to get concentrated hands-on practice with newskills. These individual assignments help you do this.Low-stakes Quizzes - will help determine where the class is on certain concepts. Theycan also be great for helping you self-assess what you need more practice with.Projects – larger projects will combine multiple skills into one assignment. These willtake more dedicated effort.Code Review – formative feedback on your code is useful for being a better programmer.TextbookThe course will rely heavily on online materials that will be provided as needed. The SparkFunTutorials on Lilypad will be of particular relevance: To start, all students will need (provided by instructor, unless otherwise noted):Available from SparkFun.com1. 1x Lilypad ProtoSnap Plus Kit (DEV-12922)2. 1x Lilypad Temperature Sensor (DEV-08777 )

3. 1x Lilypad Vibe Board (DEV-11008 )4. 1x Lilypad Tri-color LED (DEV-13735)5. 1x LilyPad Rainbow LED (6 Colors) (DEV-13903)6. 1x LilyPad Coin Cell Battery Holder - Switched - 20mm (DEV-13883)7. 1x Coin Cell Battery Holder – Unswitched – 20mm (DEV-08822)8. 2x CR2032 Coin Cell Battery (20mm) (PRT-00338)9. Conductive fabric (COM-14110)10. Depending on your proposed project, there are other components you may need but arenot supplied. Using just the above listed supplies you should be able to implement avariety of interesting projects.Other1. boxSome fabric to sew on (i.e., craft felt, cotton calico, an old T-shirt, other textiles)Non-conductive sewing thread, embroidery flossFabric Scissors (Do not use to cut anything other than fabric!!)Needle threadersDepending on your proposed project, you may require specific textile objects that will notbe supplied (i.e., Velcro, ribbons, more fabric, a shirt, a stuffed animal, a pennant, paintedcanvas, etc.). There is a small budget for these supplies, about 5/student.You may want to download the Arduino Desktop IDE, although the lab machines will have it:https://www.arduino.cc/en/Main/SoftwareWe may use Fritzing to map out our circuits before building them.EvaluationStrive to do good work because you care about your own opportunities to learn!There will be graded assignments to provide summative feedback on your progress on courseskills. You should complete these assignments individually, without assistance from otherstudents. Class sessions will often include some time to work on these assignments, to providestudents timely assistance on their efforts. See assignment hand-outs for specific details.Participation and CitizenshipIn order to learn the most from our in‐person meetings, it is necessary to attend each session andto complete the assignments. Oftentimes, you will need to show your assignments in class, andso if you have not done the assignment, it will be difficult to discuss your efforts withclassmates. This category also includes cleaning up your workspace at the end of class andproviding respectful feedback to your peers.Grade Breakdown

Assignments Quizzes 40%Class Activities /Citizenship 20%Final Project 40% (proposal, prototypes, final project)SubmissionMany assignments are due the night before class. I will implement this as 11:59pm. In order tobe prepared to give you feedback, the instructor must have your submission in the morning.Submitting the day of class, just before class, or in class is therefore unacceptable, risking zerocredit.Each Assignment will describe the Submission process (sometimes we'll use Glow).Late work will be suspect to one letter drop in grade for each day that assignment is late, as wellas a 0 for the presentation portion of any assignment with a presentation component.Expected WorkloadAt Williams, we operate under the course unit system (rather than the credit hour system) as themetric required by many employers, granting organizations, graduate schools, and federalagencies. In addition to the 3 hours we spend together during our class meeting time, you shouldexpect to spend (on average) at least 10 hours per week on the academic and creative workrelated to class. If you find that you are spending considerably more (or considerably less!) timeto engage with this course academically, please contact me so that we can determine the bestcourse of action as you approach the materials. Should you have any additional questions aboutthe relationship of course units to credit hours, refer to the Office of the Registrar, whichexplains our course unit equivalency in greater detail.STUDENTS WHO NEED ACCOMMODATIONSIf formal accommodations need to be made to meet your specific learning or physical abilities,please contact me as soon as possible to discuss appropriate accommodations. Please also contactthe Director of Accessible Education, Dr. G. L. Wallace (413‐597‐4672) or the Dean’s office(413‐597‐4171). We will work together to ensure this class is as accessible and inclusive aspossible. Also, students experiencing mental or physical health challenges that are significantlyaffecting their academic work are encouraged to contact me or to speak with a dean. The deanscan be reached at 413‐597‐4171.THE HONOR CODEHomework and assignments are to be the sole work of each student unless the assignmentexplicitly states otherwise. Students may discuss issues related to an assignment, provided thatsuch discussions are cited in the material turned in. However, students may not collaborate on

designing or writing code. Uncredited collaborations will be considered a violation of the honorcode and will be handled appropriately. For a full description of the Computer Science HonorCode, please see and‐computer‐usage‐policy If indoubt of what is appropriate, do not hesitate to ask.DisclaimerThis syllabus is subject to change at the discretion of the faculty. Students will be notified ofsuch changes ahead of time via email.ScheduleCSCI103: Electronic TextilesOverviewPlease see the appropriate sub-pages under Assignments for additional direction aboutAssignments.Schedule (Readings, Assignments, Projects)Week 1Th 9/5 Welcome! [slides]Week 2Tu 9/10 Websites [slides]READ: Markdown CheatsheetHANDOUT: Honor Code Roleplay ScenariosUSEFUL:§ HTML File Paths§ Beautiful Jekyll Templateo DUE: Make a github accounto DUE: Syllabus QuizoooTh 9/12 Websites [slides]ooooREAD: How to Give an Elevator PitchREAD: HTML CheatsheetUSEFUL: PBS Comp Sci Crash Course: The InternetUSEFUL (but a lot): How Does the Internet Work?

Week 3Tu 9/17 Sewing by Hand [slides]USEFUL:§ 10 Basic Hand Embroidery Stitches for Beginnerso DUE: Project Website Initial Set-upoTh 9/19 Intro to Programming Modular Arithmetic [slides]READ: What is Modular Arithmetic? on Khan AcademyUSEFUL:§ C Programming Tutorial on Introduction to C§ w3resource C Programming Exercises: Declarations & Expressionso DUE: Practice: Modular Operator on Khan Academy be prepared to discuss inclass! (Don't worry about the negative numbers)o DUE: Modulo Quiz on GLOWooWeek 4Tu 9/24 Debugging Conditionals [slides]READ the C Programming Tutorial on Introduction to CUSEFUL:§ C Programming Tutorial on If Statements§ w3resource C Programming Exercises: Condition Statemento DUE: Assignment Embroidery Samplero DUE: Deliverable Modular Hello, World!ooTh 9/26 Circuits & Paper Prototyping [slides]BRING: Scissors, Pen/Pencil, & Tape (if you have it!)USEFUL:§ Lessons in Electric Circuits: Conductors, insulators, and electron flow§ Lessons in Electric Circuits: Electric circuits§ Circuit Simulatoro DUE: Optional Regrade Modular Hello, Worldo DUE: Deliverable Sweater WeatherooWeek 5Tu 9/31 Style, Nested-ifs [slides]oooHANDOUT: Parsons' IfHANDOUT: POGIL Nested IfDUE: Assignment Simple Circuits (do before the plushy)

oDUE: Assignment Circuit PlushyTh 10/3 Conductive Fabric [slides]BRING: All your supplies!USEFUL:§ LilyPad Basics: E-Sewingo DUE: Plushy Reduxo DUE: Odd MenuooWeek 6Tu 10/8 While Loops [slides]HANDOUT: Parsons' Nested IfHANDOUT: POGIL LoopsUSEFUL:§ C Programming Tutorial on Loopso DUE: Assignment Homemade SwitchesoooTh 10/10 Arduino [slides]BRING: Your Arduino supplies & alligator clips!USEFUL:§ Lilypad USB Plus Hookup Guide§ Arduino Language Reference Guideo HANDOUT: Mid-Semester Evaluationso DUE: Deliverable RGB LoopooWeek 7Tu 10/15 Reading Period - No Class!Th 10/17 For Loops Logic [slides]BRING: Your Arduino supplies & alligator clips!USEFUL:§ C Programming Tutorial on Loops§ w3resource C Programming Exercises: For Loopo DUE: Assignment Separate Sparklies x3ooWeek 8Mo 10/22 Iris at the IEEE INFO VIS Conference Sparklies Lab SessionoBRING: Your Arduino supplies & alligator clips!

oUSEFUL:§ Glow CSCI103 files examples Class-Example-191017§ Glow CSCI103 files examples Random-SparkliesTh 10/24 Iris at the IEEE INFO VIS Conference Sparklies Lab SessionoBRING: Your Arduino supplies & alligator clips!Week 9Tu 10/29 Arduino Switches, RGB LEDs, Random, Debug Messages [slides]ooBRING: All your Arduino supplies alligator clips!DUE: Assignment 3 Simultaneous SparkliesTh 10/31 Light & Temperature Sensors [slides]ooBRING: Your Arduino supplies & alligator clips!DUE: Deliverable Random ColorsWeek 10Tu 11/5 Buzzers [slides]BRING: All your supplies!USEFUL:§ Speakers - Magnetism & Sound§ Physics of Music Notes - Frequencies for equal-tempered scaleo DUE: Deliverable Ghost DetectorooTh 11/7 Functions & Vibe boards [slides]BRING: All your supplies!HANDOUT: POGIL 12 Void FunctionsHANDOUT: POGIL 13 Value-Returning FunctionsUSEFUL:§ C Programming Tutorial on Functions§ w3resource C Programming Exercises: Functiono DUE: Deliverable Jammin'ooooWeek 11Tu 11/12 Powering & Arrays [slides]ooBRING: All your supplies!HANDOUT: POGIL 16 Arrays

READ: Planning a Wearable Electronics ProjectREREAD: What are the elements of an effective elevator pitch?USEFUL:§ Arduino Language Reference: Arrayso DUE: Deliverable Help, I Need SomebodyoooTh 11/14 Project Proposals [slides]ooBRING: Your project, to work on it!DUE: Project Proposal Document PitchWeek 12Tu 11/19 Project Workshop [slides]oooBRING: Your project, to work on it!DUE: Deliverable Analog ArraysDUE: Project Paper PrototypesTh 11/21 Project Workshop [slides]oBRING: Your project, to work on it!Week 13Tu 11/26 Project Workshop [slides]ooNOTE: A Photographer will be in class on this day!BRING: Your project, to work on it!Thanksgiving BreakWeek 14: Project WeekTu 12/3 Project Presentations [slides]oooREREAD: What are the elements of an effective elevator pitch?DUE: Project ReportsDUE: Project DemonstrationTh 12/5 Computer Science & HCI [slides]oHANDOUT: SCS Evaluations

2/20/20PLEASE TAKE: 1 POGIL 16 Arrays Worksheet 1 e-Textiles LiPo batteryComputer Science 103eTextiles Log-in to your machines Log-in to Glow Set-up your ArduinoIris [email protected] Professor of Computer ScienceCSCI103: eTextiles2SHARING OUR HELP. DELIVERABLESLearning GoalsStand-up and state your tip to your past self!By the end of this lesson, we should be able to:oPlug in and unplug a LiPo battery to ArduinooD