====== Raspberry Pi ====== === Default login === ***User :** pi ***Pass :** raspberry At first boot on a fresh flash it is good practice to immediately run updates and configure a few options using ''raspi-config'' before proceeding to any more tuning. ===== SSH ===== $ sudo raspi-config Go to ''Interface Options'' then ''SSH'' and activate it. No reboot is required. It is good practice to have your router assign a static IP address to a RPi if you want to regularly connect to it via ''ssh'' ===== Camera ===== [[https://wiki.mchobby.be/index.php?title=Pi-HQ-CAM-LENS|External wiki information on different cameras]] ==== Activating the camera ==== $ sudo raspi-config Go to ''Interface Options'' then ''Camera'' and activate it. Raspi-config will propose a reboot which should be accepted. ==== Python script to take pictures ==== Navigate to a folder where you want the script to be located. $ touch camera.py Edit this file and copy the following : #!/usr/bin/env python from picamera import PiCamera from time import sleep camera = PiCamera() camera.start_preview() sleep(5) camera.capture('/home/pi/Desktop/picture.jpg') camera.stop_preview() //Warning, this will save to user pi's desktop, remember to change username if you aren't using user pi// Run the script : $ python camera.py You can view the picture by either copying it to another machine with ''scp'' or by using a screen and mouse/keyboard on the pi itself. ==== Creating a Timelapse with Camera ==== You can use the built-in ''raspistill'' tool or make up your own in your choice of code language. Example with ''raspistill'' : $ raspistill -w 1920 -h 1080 - t 10000 -tl 1000 -o image%04d.jpg This will take FullHD shots at 1 second interval for 10 seconds, naming them with 4-digit incremental numbers. If no ''-w'' and ''-h'' options are provided, the Raspberry Pi will default to taking full sized pictures : 4056 x 3040 which will weigh approx. ~6 MB each. Also note that a Pi 4 will not be able to take these effeciently at an interval ~< 2s. ''raspistill'' has a lot of options and effects that can be activated/parametered, have a look at ''raspistill --help'' or ''man raspistill'' [[https://www.raspberrypi.org/documentation/usage/camera/raspicam/timelapse.md|Official Documentation]] ===== Scripts @ startup ===== Modify the /etc/rc.local file (requires sudo) $ sudo nano /etc/rc.local Before the 'exit 0' line at the end insert lines like this one : bash /path/to/script.sh ===== Temperature checks ===== ==== CPU temp ==== $ cat /sys/class/thermal/thermal_zone0/temp Divide by 1000 to get °C format ==== GPU temp ==== $ vcgencmd measure_temp $ /opt/vc/bin/vcgencmd measure_temp (Full Path) These measures were done on a Rapsberry Pi 4 running Raspbian with no heavy-duty program running, no screen or USB devices attached and at a room temperature around 20°C *With a 5V fan connected to 5V the temperature is stable around 35-38°C. Fan is loud and disturbing *With a 5V fan connected to 3.3V the temperature is stable around 41-42°C *With no fan connected the temperature is stable around 55-58°C ===== GPIO ===== ++++ GPIO Header | {{composants:rpi3_gpio.png?500}} ++++ ==== Using GPIO through bash ==== # Exports pin to userspace $ echo "18" > /sys/class/gpio/export # Sets pin 18 as an output $ echo "out" > /sys/class/gpio/gpio18/direction # Sets pin 18 to high $ echo "1" > /sys/class/gpio/gpio18/value # Sets pin 18 to low $ echo "0" > /sys/class/gpio/gpio18/value # Exports pin to userspace $ echo "4" > /sys/class/gpio/export # Sets pin 4 as an input echo "in" > /sys/class/gpio/gpio4/direction # Read value of pin 4 cat /sys/class/gpio/gpio4/value