#raspberry-pi #gpio #rpi #arm

saks

Swiss Army Knife Shield for Raspberry Pi

2 releases

0.1.1 Jul 10, 2021
0.1.0 Nov 23, 2020

#1739 in Embedded development

MIT license

12KB
205 lines

SAKS hat for raspberry_pi

SAKS = Swiss Army Knife Shield for Raspberry Pi


How other library control GPIO

wiringpi system but uses the /sys/class/gpio interface rather than accessing the hardware directly(softPwmWrite)

sprintf(fName, "/sys/class/gpio/gpio%d/value", i)

  1. /sys/class/gpio: sysfs_gpio(deprecated), gpio(deprecated), maybe not working in pi4B
  2. /dev/gpiomem or /dev/gpiochip0: rppal, wiringpi, gpio-cdev
  3. /dev/pigpio and pigpio daemon process: pigpio

Some questions need to solve

  • Why gpio access from /dev/gpiomem via mmap syscall is faster than format!("/sys/class/gpio/gpio{}/active_low", gpio_num)
  • Why gpio pin number has three encoding?(BOARD, BCM, wiringpi)
  • About the onboard_led(/sys/class/leds/led0/) like arduino's LED_BUILTIN

My raspberry_pi notes

CPU temperature

vcgencmd measure_temp

Setup raspberry_pi

How to connect raspberry_pi without internet/display/GUI Desktop?

  1. put empty ssh file to SD card root directory in order to enable SSH on first time boot
  2. SSH to pi via ethernet cable or serial(RS-232 with RXD+TXD+GND, don't connect 5V pin!) port

Dependencies

~42KB