chapter 1 - introducing the raspberry pi 1.1 what can you do with a raspberry pi ? 1.2 the raspberry pi models 1.3 the anatomy of the raspberry pi 1.4 setting up your raspberry pi 1.4.1 power supply 1.4.2 monitor 1.4.3 tv 1.4.4 usb keyboard andmouse 1.4.5 poweredusb hub 1.4.6 sd card 1.4.7 speakers 1.4.8 case 1.4.9 usb flash memory drive 1.4.10 usb flash hard disk 1.4.11 usb wi-fiadapter 1.5 connecting everything together 1.5.1 option 1 - standard setup 1.5.2 option 2 - setup using powered hub 1.6 summarychapter 2 - downloading and installing the operating system 2.1 downloading the operating system 2.1.1 downloading the noobs software 2.2 installing the operating system onto the sd card 2.2.1 expanding the filesystem 2.2.2 changing user password 2.2.3 enabling boot to desktop. 2.2.4 international options 2.2.5 enable camera 2.2.6 addto rastract 2.2.7 overclock 2.2.8 advanced options 2.2.9 abort 2.3 logging in to the raspberry pi 2.4 summarychapter 3 - using the linux command line 3.1 the command prompt 3.2 useful linux commands 3.2.1 directory related commands 3.2.2 file related commands 3.2.3 other commands 3.3 the directory structure 3.4 command examples 3.4.1 current directory 3.4.2 directory structure 3.4.3 creating a subdirectory 3.4.4 displaying file permissions 3.4.5 changing file permissions 3.4.6 to change the working directory 3.4.7 help 3.4.8 date, time, and calendar 3.4.9 copying a file 3.4.10 wildcards 3.4.11 renaming a file 3.4.12 deleting a file 3.4.13 removing adirectory 3.4.14 re-directing the output 3.4.15 writing to the screen or to a file 3.4.16 matching a string 3.4.17 head and tail commands 3.4.18 super user commands 3.4.19 what software is installed on my raspberry pi 3.5 resource monitoring on raspberry pi 3.5.1 killing a process 3.5.2 disk usage 3.6 shutting down 3.7 summarychapter 4 - connecting the raspberry pi to wired network 4.1 connecting to a wired network 4.2 unable to connect to a wired network 4.3 connecting to your raspberry pi remotely 4.3.1 the ssh client 4.4 summarychapter 5 - using a text editor in linux command mode 5.1 nano text editor 5.2 vi text editorchapter 6 - using the desktop 6.1 installing the vnc software 6.2 the desktop environment 6.3 the task bar 6.4 the start menu 6.4.1 accessories menu 6.4.2 education menu 6.4.3 graphics menu 6.4.4 internet menu 6.4.5 other menu 6.4.6 programming menu 6.4.7 sound & video menu 6.4.8 system tools menu 6.4.9 preferences menu 6.5 using external usb flash memory drive 6.6 summarychapter 7 - some useful software packages for the raspberry pi 7.1 libreoffice 7.1.1 the text document program 7.1.2 the spreadsheet program 7.1.3 the drawing program 7.1.4 the presentation program 7.1.5 formula 7.1.6 the database program 7.2 xinvaders 3d 7.3 lxmusic 7.4 installing from the pi store 7.5 summarychapter 8 - python programming 8.1 starting python 8.2 variable names 8.3 reserved words 8.4 comments 8.5 indentation 8.6 life continuation 8.7 blank lines 8.8 more than one statement on a life 8.9 python data types 8.9.1 numeric variables 8.9.2 string variables. 8.9.3 list variables 8.9.4 tuple variables . 8.9.5 dictionary variables 8.10 python operators 8.10.1 arithmetic operators 8.10.2 comparison operators 8.10.3 logical operators 8.10.4 assignment operators 8,10.5 bitwise operators 8.11 control of flow 8.11.1 if, if, else, and elif 8.11.2 'for' statement 8.11.3 'while' statement 8.11.4 'continue' statement 8.11.5 'break' statement 8.12 number type conversion 8.13 trigonometric functions 8.14 mathematical functions 8.15 integer random number generation 8.16 using non-printable ascii characters 8.17 print statement 8.18 string manipulation 8.19 string functions 8.20 list functions 8.21 dictionary functions 8.22 date & time functions 8.23 user defined functions 8.24 keyboard input 8.25 files 8.26 exceptions 8.27 example programs 8.27.1 using the editor to create programs 8.28 summarychapter 9 - raspberry pi hardware interfacing 9.1 gpio pin definitions 9.2 raspberry pi hardware development boards and hardware tools 9.2.1 pi cobbler 9.2.2 pi plate 9.2.3 pi t-cobbler 9.2.4 piface 9.2.5 raspicomm - piggyback extension board 9.2.6 piborg - triborg - gpio triple header extender 9.2.7 gertboard 9.2.8 berryclip - led and buzzer 9.2.9 mypi - push your pi -8 led & 8 button breakout board . . 9.2.10 raspberry pielectronic starter kit 9.2.11 starter kit-a for raspberry pi 9.3 summarychapter 10 - raspberry pi gpio software 10.1 installing the gpio library 10.2 gpio library functions 10.2.1 pin numbering 10.2.2 channel (i/o pin) configuration 10.3 gpio 10.4 program development 10.4.1 using the program description language and flow charts 10.4.2 cailing subprograms 10.4.3 subprogram structure 10.5 examples 10.6 representing 'for' loops in flow charts 10.7 summarychapter 11 - raspberry pi hardware projects 11.1 project 1 - flashing an led 11.2 project 2 - lighthouse flashing led 11.3 project 3 - flashing 8 leds 11.4 project 4 - flashing 8 leds using functions 11.5 project 5 - random flashing leds 11.6 project 6 - rotating leds 11.7 project 7 - led with push-button switch 11.8 project 8 - morse code exerciser 11.9 project 9 - event counter with callback code 11.10 project 10 - electronic dice (output to the monitor) 11.11 project 11 - electronic dice (output to leds) 11.12 project 12 - led with graphical user input 11.13 project 13 - pwm wave generator 11.14 project 14 - using an lcd 11.14.1 hd44780 lcd controller 11.15 project 15 - counting seconds on the lcd 11.16 project 16 - temperature and humidity display on the lcd . 11.17 project 17 - using external eeprom memory 11.18 project 18 - using digital to analog converter (dac) 11.19 project 19 - expanding the i/o ports 11.20 project 20 - using analog temperature sensor 11.21 project 21 - temperature data logger 11.22 project 22 - using the piface i/o board 11.23 project 23 - piface motor controllerappendix a. raspberry pi to pc file transferappendix b. using wi-fi with raspberry piappendix c. graphical user interfaceappendix d. raspberry pi lcd libraryappendix e. hardware projects - pdl and program listings e.1 project 3- program listing e.2 project 4- program listing e.3 project 5- program listing e.4 project 6 - project pdl e.5 project 6 - program listing e.6 project 8- project pdl e.7 project 8 - program listing e.8 project 9 - program listing e.9 project 11 - project pdl e.10 project 11 - program listing e.11 project 12 - program listing e.12 project 16- pdl e.13 project 16- program listing e.14 project 17- pdl e.15 project 17- program listing e.16 project 18- pdl e.17 project 18- program listing e.18 project 19- program listing e.19 project 19 - modified program listing e.20 project 20- program listing e.21 project 21 - program listing e.22 project 23 - program listing e.23 program listing for lcd library