My local library is planing on starting a raspberry pi teaching course and i got the job of setting it up and teaching this new class, i am very excited to teach this class, i am a seasoned developer for the raspberry pi, my achievements, include being the founder and lead developer of the Chromium OS for SBC project and i have dabbled getting android TV to work on the pi. although the second project i have not gone public with for it has a nasty SD corruption bug when the device powers off, nasty bug.
I am going to include my overview for the course to this post. i have always found this community to be one of the most supportive and i love that about the raspberry pi. i cant wait to hear what ideas you guys think would be good to teach, and on a side note we are not sure the experience of the students that want to attend these classes will be, so please keep that in mind while posting idea's.
So here is what i have right now
What follows is a prospective outline for a 10 week (completable over the summer), once-a-week, one and a half-hour course, which will allow total beginners in single board computing to understand and use the hardware and software associated with the PiTop, an open netbook computing system based on the Raspberry Pi 3 SBC.
Lesson 1 - What do we want to learn?
Brief introduction to the Raspberry Pi concept.
Brief introduction to Open Source Software and related concepts.
Discuss/demo various uses for the Raspberry Pi and PiTop that people have come up with.
Have attendants fill out forms about what they want to get out of the class - what do they want to accomplish with a raspberry pi, what do they want to learn, etc.
Brief discussion of what people want to get out of class and how the curriculum will address or not address those desires as time allows.
Lesson 2 - Understanding the Hardware and Software of the PiTop and Raspberry Pi
The PiTop’s components and their function - brief overview.
The Raspberry Pi’s specifications - a brief introduction into the basics of computer hardware and their relationship to the Raspberry Pi.
How CPU, RAM, storage, GPU, power supply, and input/output work on a computers in general.
How CPU, RAM, storage, GPU, power supply, and intput/output work on the Raspberry Pi in particular.
Discussion on the GPIO of the Pi in overview.
How additional components of the PiTop fit into this picture.
Firmware - brief overview of BIOS, POST, and their relationship to how things work on the Raspberry Pi
How do Operating Systems work?
What is an operating system? Explanation and examples/counterexamples.
How does an operating system interface with the hardware?
How does software run on top of the operating system?
Special focus on drivers.
Discussion of typical addon components and how they work as time allows - wifi, bluetooth, camera, GPS, flash storage, user input devices, etc.
Lesson 3 - Setting Up and Using the PiTop
Hardware setup
OS setup - NOOBS
Using the terminal - basic bash and ubuntu commands (hand out cheat sheet?)
Configuring network and using web browser
Using AbiWord
Installing and using software - htop, VNC, and minecraft
Lesson 4 - Alternative Operating Systems and Their Uses
Windows IoT Edition
ChromiumOS
PitopOS
Raspbmc
As time allows, discussion of custom configurations - different DEs, headless configurations, etc.
Lesson 5 - Simple Uses for Your Raspberry Pi
What is the Raspberry Pi Good At?
Cheap
Low-Power
Small size
Hackability
So what does that mean we can DO with it?
LAMP stack - webserver
VPN Server - NeoRouter
Thin Client
Learning How to Program
Scratch
Python SDK
Lesson 6 - Programming on the Pi
Bash Scripts
Programming using the hardware
GPIO
Network
Display I/O
Camera I/O
Wifi
Bluetooth
Making the Most of Your Hardware
Threading for the CPU - when is it necessary and how?
RAMDisk for cache and configuring swap
Understanding the capabilities and limitations of the Ethernet, Sound, Wifi, Bluetooth, and HDMI
As time allows - how to cross-compile software for linux and ChromiumOS on the Raspberry Pi.
Lesson 7 - Compiling open source software for use on the raspberry pi
Lesson 8 - Adding features to your OS of choice on the Pi.
Lesson 9 - Troubleshooting and Debugging
Lesson 10 - What Did We Learn? What Are We Going to Do From Here? Recap
thank you for reading this
- Dylan Callahan
Subreddit
Post Details
- Posted
- 8 years ago
- Reddit URL
- View post on reddit.com
- External URL
- reddit.com/r/raspberry_p...