Difference between revisions of "LMU PEM2 20 21"

From Sketching with Hardware at LMU Wiki
Jump to navigation Jump to search
Line 7: Line 7:
 
** Your web server should be able to read out GPIO states, e.g. you can read out how often a button was pressed in the last minute or when it was last pressed. Think about how to realize data persistence.
 
** Your web server should be able to read out GPIO states, e.g. you can read out how often a button was pressed in the last minute or when it was last pressed. Think about how to realize data persistence.
 
** The user should be able to control actuators via the webpage, e.g. turning an LED on and off
 
** The user should be able to control actuators via the webpage, e.g. turning an LED on and off
 +
** Remember: You already collected and curated references for creating a webserver earlier (see Resources below)
  
* Consider options for sharing project source files within the team, e.g. versioning or continuous integration
+
* Explore options for sharing project source files within the team, e.g. versioning or continuous integration
 
** You can use the LRZ gitlab: https://gitlab.lrz.de/
 
** You can use the LRZ gitlab: https://gitlab.lrz.de/
** ...
+
** Alternatively, you could use a private or public GitHub repository
 +
** One approach: Push code from your computer to the repository and pull the changes from the repository onto the Pi Zero
 +
** Alternatively setup a Continuous Integration / Continuous Deployment pipeline. This requires (way) more effort in the initial configuration but does not (ideally) require any manual intervention anymore afterwards when you push changes into your repo.
  
 
= Projects =
 
= Projects =
Line 22: Line 25:
 
* https://www.sketching-with-hardware.org/wiki/Raspberry_Pi
 
* https://www.sketching-with-hardware.org/wiki/Raspberry_Pi
 
* Remote variable sharing: https://www.sketching-with-hardware.org/wiki/Tutorial_Network
 
* Remote variable sharing: https://www.sketching-with-hardware.org/wiki/Tutorial_Network
 +
* Git basics in under 10 minutes: https://www.freecodecamp.org/news/learn-the-basics-of-git-in-under-10-minutes-da548267cc91/
 +
* Using Jenkins for creating a CI/CD pipeline: https://pimylifeup.com/jenkins-raspberry-pi/

Revision as of 19:37, 11 December 2020

This is the course PEM2 at LMU in Winter Term 2020/21.

Tasks

Current Task until 18.12.20

  • Set up a web server on the Pi Zero that can be accessed from a computer/device in the same local network, i.e. calling a webpage.
    • Your web server should be able to read out GPIO states, e.g. you can read out how often a button was pressed in the last minute or when it was last pressed. Think about how to realize data persistence.
    • The user should be able to control actuators via the webpage, e.g. turning an LED on and off
    • Remember: You already collected and curated references for creating a webserver earlier (see Resources below)
  • Explore options for sharing project source files within the team, e.g. versioning or continuous integration
    • You can use the LRZ gitlab: https://gitlab.lrz.de/
    • Alternatively, you could use a private or public GitHub repository
    • One approach: Push code from your computer to the repository and pull the changes from the repository onto the Pi Zero
    • Alternatively setup a Continuous Integration / Continuous Deployment pipeline. This requires (way) more effort in the initial configuration but does not (ideally) require any manual intervention anymore afterwards when you push changes into your repo.

Projects


Project: SP, JP, JL


Project: JW, YS


Project: CR, HW

Ressources