Difference between revisions of "Main Page"

From Sketching with Hardware at LMU Wiki
Jump to navigation Jump to search
 
(83 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<strong>MediaWiki has been installed.</strong>
+
= Latest News =
 +
We did a course on Edge ML, implementing machine learning on a RP2024 device. This isclude sensor data acquisition, model training and deplyoment, see '''[[UBISS2024]]'''.
  
Consult the [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents User's Guide] for information on using the wiki software.
+
There is now a new page on '''[[Circuitpython|CircuitPython]]'''. This is useful, if you require specific libraries (e.g. emulating a keyboard, mouse, or game controller).
  
<h1 id="foreword-to-the-sketching-with-hardware-wiki">Foreword to the Sketching With Hardware wiki</h1>
+
The '''[[LMU SKWH 2020]]''' - LMU Sketching with Hardware course (Summer Term 2020) we have completed the Preparation phase (self-paced), and done the [[Tasks SoSe2020|Individual Tasks]].
 +
Please get organized in your group.
  
<h2 id="videos">Video Tutorials:</h2>
+
We will answer your questions in the discord server (links below).
Within this wiki:
 
  
[[/Tutorial_Basics:"Tutorial Basics"]]
+
'''Todo'''s for you:
 +
* Please provide the planing (time, shopping, milestones, topic) for your group project - see [[Group_Project_SoSe2020#Requirements | Requirements]]
 +
* there is a [[Feedback]] page - if you encounter(ed) any issue with the information, kit, video - please let us know
  
  
<p>Youtube:</p>
+
Here are some recent changes:
<ul>
+
* Introduction to the [[Workshop]] in Frauenlobstr.
    <li>https://youtu.be/DnBBB8AcvBg Setting up Software on your computer (python, uPyCraft IDE, Putty) [4:20, on Youtube]</li>
+
* There is now more information about the [[RGB LED]] including a tutorial video: https://www.youtube.com/watch?v=K2m6ttZ1bJw
    <li>https://youtu.be/_TrKPDOReJc Flashing the MicroPython image onto the ESP32 and ESP8266 microcontroller [17:01, on Youtube]</li>
+
* There is an example of how to program the [[LED Ring NeoPixel]]
    <li>https://youtu.be/jhfURkMZVEs Setting it up... What could possibly go wrong when setting it up? [10:32, on Youtube]</li>
+
* The page describing the [[LED]] is now setup as example
    <li>https://youtu.be/e3No4wGGQas What is in the hardware box? [10:19, on Youtube]</li>
+
* Tutorial pages are up: [[Tutorial Basics]], [[Tutorial Digital IO]], [[Tutorial Analog IN]], [[Tutorial Display]], and [[Tutorial Network]]
    <li>https://youtu.be/0KGgYsEZcZM Digital Output - adding an LED to the controller [30:30 on Youtube]</li>
+
* There are pages with the [[Tasks SoSe2020|Individual Tasks]] as well as for the [[Group Project SoSe2020]]
    <li>https://youtu.be/G6HZ1etMRbM Digital Output - connecting an LED - WebREPL based[16:54 on Youtube]**</li>
+
* There is a description of the [[Tasks SoSe2020]]
    <li>https://youtu.be/_4bXk8JjQSk PWM Output - connecting a servo - WebREPL based [14:40 on Youtube]**</li>
 
    <li>https://youtu.be/va1beT6sxLs Digital Input - connecting a switch [30:31 on Youtube]**</li>
 
    <li>https://youtu.be/gjj5KyK2qGI Analog Input - ADC - connecting a resistor, voltage divider [46:23 on Youtube]**</li>
 
    <li>https://youtu.be/MXfj_gWf0z4 Uploading and running python files with uPyCraft IDE [6:48 on Youtube]</li>
 
    <li>"https://youtu.be/PJ3nQo_Hw3I  Connect the ESP32/ESP8266 to the Internet, IoT, netvars.py [8:52 on Youtube], https://www.sketching-with-hardware.org/files/netvars.py library</li>
 
</ul>
 
  
 +
= Courses =
 +
At this point there is only one course (summer term 2020 at LMU) ... but we hope for more in the future.
  
<h2 id="last-news">Last News:</h2>
+
Please go to the course page for details, timeline, and requirements:
<p>We are currently on the Preparation phase (self-paced), get your SWH kit ready and follow the Individual Tasks (6). We will answer your questions in the discord server (links below).</p>
+
* '''[[LMU SKWH 2020]]''' - LMU Sketching with Hardware, Summer Term 2020
<p>Enjoy.</p>
+
* there is also a gallery with results from the last course: [[Gallery 2020]]
<p>Your SWH Team.</p>
 
<hr>
 
<h2 id="important-links">Important Links</h2>
 
<ol>
 
<li>
 
<p>Wiki: [https://www.sketching-with-hardware.org/wiki/index.php?title=Main_Page:Enter] or:</p>
 
<ul>
 
<li>[https://www.sketching-with-hardware.org/wiki/index.php/Special:RequestAccount:Create a new account]</li>
 
</ul>
 
</li>
 
<li>
 
<p>Discord Server:</p>
 
<ul>
 
<li>Invitation: [https://discord.com/invite/JhMs6jX] </li>
 
</ul>
 
</li>
 
<li>
 
<p>Micropython: [https://micropython.org/:https://micropython.org]</p>
 
</li>
 
<li>
 
<p>Course page: [https://www.um.informatik.uni-muenchen.de/studium_lehre/ss20/swh/index.html]</p>
 
</li>
 
</ol>
 
<hr>
 
<h2 id="sketching-with-hw--sose2020">Sketching with HW – SoSe2020</h2>
 
<p>Leaning Goals:</p>
 
<ul>
 
<li>Sketch with programmable Hardware</li>
 
<li>Build basic circuits connected to the microcontroller
 
<ul>
 
<li>Output: LEDs, Servos, Motors, Speakers, Display</li>
 
<li>Input: buttons, Dials, Light sensitive resistors, accelerometer, distance, I2C sensors</li>
 
</ul>
 
</li>
 
<li>Program and Debug MicroPython on ESP32
 
<ul>
 
<li>Input, Output</li>
 
<li>Networking</li>
 
</ul>
 
</li>
 
<li>Envision a new interactive physical object and implement a functional prototype</li>
 
</ul>
 
<hr>
 
<h2 id="topic-of-this-terms-course-connected-objects">Topic of this terms course: Connected objects</h2>
 
<h3 id="examples">Examples:</h3>
 
<ul>
 
<li>A toy for an animal connected to a representation of it on the owners desk</li>
 
<li>The fridge door in the shared flat connected to a bracelet</li>
 
<li>Two chairs connected to each other representing the others usage</li>
 
</ul>
 
<h3 id="requirements">Requirements:</h3>
 
<ul>
 
<li>At least two connected physical objects (can be more)</li>
 
<li>At least one object has to have 2 or more sensors</li>
 
<li>At least one object has to have 2 or more actuators</li>
 
<li>Object can be different (e.g. dog toy and ball on the users table) or symmetric (e.g. two chairs)</li>
 
<li>One sensors has to be “invented”</li>
 
<li>The object need to communicate over the internet</li>
 
</ul>
 
<hr>
 
<h2 id="timetable">Timetable</h2>
 
<p><s>Kick-off Meeting (90 Minutes, Zoom), 27.7.2020 at 17:00 – life online event</p>
 
<ul>
 
<li>Introduction of the topic and format</li>
 
<li>Showing examples of the hardware and tools</li>
 
<li>Talking about resources</li>
 
<li>Introducing participants and teachers</li>
 
<li>Building of groups of 3 or 4 students – groups will work remotely</li>
 
<li>Kits can be picked up (or shipped) to students individually.</s></li>
 
</ul>
 
<h3 id="preparation-phase-self-paced">Preparation phase (self-paced)</h3>
 
<p>10.8. to 28.8.2020</p>
 
<ul>
 
<li>There will be tasks and explanation videos provided.</li>
 
<li>We will have a Discord Server were you can log in when you are working on your project.</li>
 
<li>This way you can talk to the other students and help each other out and chat.</li>
 
<li>On workdays, there will be at least one knowledgeable person in the virtual lab so you can get help.</li>
 
</ul>
 
<h3 id="individual-tasks-6">Individual Tasks (6)</h3>
 
<ol>
 
<li>Online exploration of Micropython, [https://micropython.org/unicorn/]</li>
 
<li>Getting the ESP32 Hardware running; Blink internal LED, Print to serial line</li>
 
<li>Output: LEDs with resistors, RGB LED, PWM</li>
 
<li>Input: buttons, Poti, Light sensitive resistor</li>
 
<li>Mini System: connecting a servo to a poti, print to Display</li>
 
<li>Networking: storing and retrieving variables from the cloud
 
Group Task</li>
 
<li>Networked Mini System: generating sound on one ESP based on distance from another ESP</li>
 
</ol>
 
<hr>
 
<h2 id="group-task">Group Task</h2>
 
<p>Networked Mini System: generating sound on one ESP based on distance from another ESP</p>
 
<p>For each task a short video (up to 30 seconds) showing the working system and a screenshot showing the code is required. Preferably, we get from each student a video with 6 short videos and a single Document with all the screenshots (task 1 to 6). <strong>Deadline is 28.08.2020</strong>.
 
Each group has also to provide one video for the group task and prepare an idea for their connected object – presented in a video of up to 2 minutes. <strong>Deadline is 28.08.2020.</strong></p>
 
<h3 id="intermediate-meeting">Intermediate Meeting</h3>
 
<p>(90 Minutes, Zoom), 31.08.2020 at 5pm - live online event</p>
 
<ul>
 
<li>All group project proposals are presented (if you cannot make this date, you may submit a video recording of your idea)</li>
 
<li>Discussion on feasibility</li>
 
<li>Discussion of time plan</li>
 
</ul>
 
<h3 id="project-phase-self-paced-in-groups">Project phase (self-paced in groups;</h3>
 
<p>expected time required: 4 days full time)</p>
 
<ul>
 
<li>Each group sets a time plan and hands it in</li>
 
<li>Each group makes a shopping list for things required</li>
 
<li>Each group defines 3 milestones (what is achieved when)</li>
 
<li>Each group makes meetings with teaching staff, will put this on the web page so others can drop in'</li>
 
<li>Individual sessions for help are available over zoom</li>
 
<li>Each group makes an individual date to learn about the lab (soldering) and laser cutter</li>
 
</ul>
 
<h3 id="final-deadline-of-the-project">Final deadline of the project:</h3>
 
<p>30.09.2020 (you can hand in earlier!)<br>
 
Video containing:</p>
 
<ul>
 
<li>The realized project vision like an advert (showing your functional prototype) ~ 30 seconds</li>
 
<li>A description of your the system with some detail of what you built/programmed ~ 3 min</li>
 
<li>Making off of your system showing impression from your development ~ 5 minutes</li>
 
</ul>
 
<p>Documentations:</p>
 
<ul>
 
<li>Abstract of the project vision (200 words),</li>
 
<li>building plan/schematic,</li>
 
<li>code,</li>
 
<li>photos in a single PDF</li>
 
</ul>
 
<p>Group feedback session after handing in (20 Minutes Zoom call)</p>
 
<p>Public presentation either at the open lab day in WS 20/21 or on the webpage.</p>
 
  
 +
= Foreword and Introduction to Sketching With Hardware =
 +
The course is part of our question of how to create functional prototypes for exploring interactive systems. There are some introductory slides (
 +
[https://www.sketching-with-hardware.org/files/WhySKHW2020.pptx pptx], [https://www.sketching-with-hardware.org/files/WhySKHW2020.pdf pdf]) that are shown in the introductory video (https://youtu.be/Irxo9b5cexs).
  
== Getting started ==
+
In the article "Understanding and researching through making: a plea for functional prototypes" (online via [https://dl.acm.org/doi/10.1145/3058498 ACM DL] or as [https://www.sketching-with-hardware.org/files/functional3058498.pdf PDF]) we discuss three different approaches to create prototypes. In this course, we are focusing custom hardware development for research and development in human-computer interaction.
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Configuration_settings Configuration settings list]
+
 
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:FAQ MediaWiki FAQ]
+
<youtube>Irxo9b5cexs</youtube>
* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]
+
 
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Localisation#Translation_resources Localise MediaWiki for your language]
+
== Learning Goals ==
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Combating_spam Learn how to combat spam on your wiki]
+
The overall learning goal is to equip students with skills to '''Envision a new interactive physical object and implement it a functional prototype''', this includes:
* test
+
* understand why sketching with hardware is relevant
 +
* understand the challenges in creating function prototypes
 +
* being able to create basic hardware sketches
 +
* being able to program and debug MicroPython on ESP32/ESP8266
 +
* being able to build basic circuits connected to the microcontroller, including
 +
** output: LEDs, servos, motors, speakers, display
 +
** input: buttons, dials, sliders, LDR, accelerometer, distance, I2C sensors
 +
* being able to program basic networking (network variables)
 +
 
 +
= Important Links =
 +
* Wiki: https://www.sketching-with-hardware.org/wiki and please [[Special:RequestAccount|Create a new account]]
 +
* Micropython: https://micropython.org/
 +
* If you have questions, please email to [mailto:swh@um.ifi.lmu.de swh@um.ifi.lmu.de]
 +
 
 +
= Video Tutorials =
 +
* [[Tutorial Basics]]
 +
* [[Tutorial Digital IO]]
 +
* [[Tutorial Analog IN]]
 +
* [[Tutorial Display]]
 +
* [[Tutorial Network]]
 +
* [[Tutorial AutoRun]]
 +
 
 +
= List of Videos available =
 +
* https://youtu.be/DnBBB8AcvBg Setting up Software on your computer (python, [[uPyCraft]] IDE, Putty) [4:20, on Youtube]
 +
* https://youtu.be/_TrKPDOReJc Flashing the MicroPython image onto the ESP32 and ESP8266 microcontroller [17:01, on Youtube]
 +
* https://youtu.be/jhfURkMZVEs Setting it up... What could possibly go wrong when setting it up? [10:32, on Youtube]
 +
* https://youtu.be/e3No4wGGQas What is in the hardware box? [10:19, on Youtube]
 +
* https://youtu.be/0KGgYsEZcZM Digital Output - adding an LED to the controller [30:30 on Youtube]
 +
* https://youtu.be/G6HZ1etMRbM Digital Output - connecting an LED - WebREPL based[16:54 on Youtube]**
 +
* https://youtu.be/XovIHYo7s1A PWM Output - connecting a servo [45:38 on Youtube]**
 +
* https://youtu.be/va1beT6sxLs Digital Input - connecting a switch [30:31 on Youtube]**
 +
* https://youtu.be/gjj5KyK2qGI Analog Input - ADC - connecting a resistor, voltage divider [46:23 on Youtube]**
 +
* https://youtu.be/MXfj_gWf0z4 Uploading and running python files with [[uPyCraft]] IDE [6:48 on Youtube]
 +
* https://youtu.be/PJ3nQo_Hw3I Connect the ESP32/ESP8266 to the Internet, IoT, netvars.py [8:52 on Youtube], https://www.sketching-with-hardware.org/files/netvars.py module
 +
* https://youtu.be/UbxwePvgX-U Print to the OLED Display that is mounted to the ESP32 board [22:00 on Youtube], https://www.sketching-with-hardware.org/files/display.zip include the ssd1306.py module and examples to use it
 +
* https://youtu.be/kzgUN_h1bqw Use main.py as entry point to start your MicroPython code [29:23 on Youtube]
 +
* https://youtu.be/K2m6ttZ1bJw Connecting an RGB-LED and programming it with Micropython [31:11 on Youtube]
 +
* https://youtu.be/HPQMvL1SP_c Connecting speakers and an amplifier, creating sounds ==
 +
* https://youtu.be/3J3GbD2PrCs Connecting the analog Joystick
 +
* https://youtu.be/C0W-wI0qHIQ Connecting a PIR motion sensor
 +
* https://youtu.be/EIwjeek5hnM Connecting a stepper motor (28BYJ-48) and driver (ULN2003)
 +
* https://youtu.be/PJdDUZWeIDs Connecting the HC-SR04 distance sensor
 +
* https://youtu.be/YFKACI_TfqA Connecting the MPU-6050 sensor (acceleration, gyro, temperature)

Latest revision as of 23:02, 23 June 2024

Latest News[edit]

We did a course on Edge ML, implementing machine learning on a RP2024 device. This isclude sensor data acquisition, model training and deplyoment, see UBISS2024.

There is now a new page on CircuitPython. This is useful, if you require specific libraries (e.g. emulating a keyboard, mouse, or game controller).

The LMU SKWH 2020 - LMU Sketching with Hardware course (Summer Term 2020) we have completed the Preparation phase (self-paced), and done the Individual Tasks. Please get organized in your group.

We will answer your questions in the discord server (links below).

Todos for you:

  • Please provide the planing (time, shopping, milestones, topic) for your group project - see Requirements
  • there is a Feedback page - if you encounter(ed) any issue with the information, kit, video - please let us know


Here are some recent changes:

Courses[edit]

At this point there is only one course (summer term 2020 at LMU) ... but we hope for more in the future.

Please go to the course page for details, timeline, and requirements:

  • LMU SKWH 2020 - LMU Sketching with Hardware, Summer Term 2020
  • there is also a gallery with results from the last course: Gallery 2020

Foreword and Introduction to Sketching With Hardware[edit]

The course is part of our question of how to create functional prototypes for exploring interactive systems. There are some introductory slides ( pptx, pdf) that are shown in the introductory video (https://youtu.be/Irxo9b5cexs).

In the article "Understanding and researching through making: a plea for functional prototypes" (online via ACM DL or as PDF) we discuss three different approaches to create prototypes. In this course, we are focusing custom hardware development for research and development in human-computer interaction.

Learning Goals[edit]

The overall learning goal is to equip students with skills to Envision a new interactive physical object and implement it a functional prototype, this includes:

  • understand why sketching with hardware is relevant
  • understand the challenges in creating function prototypes
  • being able to create basic hardware sketches
  • being able to program and debug MicroPython on ESP32/ESP8266
  • being able to build basic circuits connected to the microcontroller, including
    • output: LEDs, servos, motors, speakers, display
    • input: buttons, dials, sliders, LDR, accelerometer, distance, I2C sensors
  • being able to program basic networking (network variables)

Important Links[edit]

Video Tutorials[edit]

List of Videos available[edit]