User Tools

Site Tools


Sidebar

hardwarerelated:raspberry_pi_4

sensors/addon list

  • Raspberry Pi USB-C power supply 5,1V / 3,0A, EU
  • Micro HDMI Adaptercable D-Stecker -A-Buchse 15cm schwarz
  • 4 teiliges Kühlkörper Set für Raspberry Pi 4, silber (amazon)
  • Raspberry Pi 4 B, 2GB RAM
  • HC-SR501 PIR Sensor -Infrarot Bewegungsmelder link
  • Feuchtigkeitssensor mit digitalem und analogem Ausgang link
  • Lichtsensor mit digitalem Ausgang link
  • RFID Lesegerät mit SPI Schnittstelle inkl. Karte & Dongle (link)
  • PCF8591 AD/ DA Konverter Modul link
  • 2.9“ 296×128 ePaper Display Modul mit SPI Interface, dreifarbig (rot, schwarz, weiß) link docs

first steps after booting

# ssh pi@<ip>

useradd -m chris
passwd chris

sudo su -
echo "alias ll='ls -al'" >>/etc/bash.bashrc
echo "alias su='sudo su -'" >>/etc/bash.bashrc

### check cpu temperature
$ vcgencmd measure_temp
temp=64.0'C

### current cpu details
$ lscpu|grep MHz
CPU max MHz:         1500.0000
CPU min MHz:         600.0000

$ vcgencmd measure_clock arm
frequency(48)=600117184
$ vcgencmd measure_volts
volt=0.8367V

### Are we throttled? Anything else than 0 means "yes"
$ vcgencmd get_throttled

### temperature in prompt
$ export PS1='\u@\h:'`vcgencmd measure_temp|cut -b 6,7`'°C:\w\$ '

overheating issues

  • My first use of the pi4 was in 32°C environment temperature, without passive or active cooling. After some minutes, the pi4 was no longer reachable via SSH.
  • I had directly ordered a set of passive coolers with the pi4, I placed these 4 on the chips, but things got not much better.
  • There is a firmware update (labelled 'alpha status'), which enables apparently ASPM and lowers temperature by 3-5°C. Details are here
  • Underclocking could be an option:
vi /boot/config.txt

# in section [pi4] add
over_voltage=-1  # or "-2"
arm_freq=1250    # default is 1500Mhz
arm_freq_min=150 # also worth trying, default is 600Mhz

# then reboot

benchmarking

benchmark results

raspberry pi 4Nintendo switch Thinkpad L480 percentages
ram 2GB 4GB 8GB
price 50€ 300€ 950€
distro raspbian Fedora 30 Fedora 30
kernel 4.19.58-v7l+ 4.9.109+ (L4T kernel)5.2.5-200.fc30
cpu ARM Cortex-A72ARM Cortex-A57 Intel i5-8250U
cpu frequency 500-1500Mhz 200-2000Mhz 400-3400Mhz
sbc memcopy 2470.8 MB/s 2503.6 MB/s 7274.4 MB/s 34/34/100
sbc memset 3330.4 MB/s 3573.5 MB/s 16014.3 MB/s 21/22/100
7-zip score 5728 6170 11330 51/54/100
openssl aes-128-cbc 16b 62533k 347783k 776987k 8/45/100
openssl aes-128-cbc 16kb85235k 912414k 1263839k 7/72/100
openssl aes-256-cbc 16kb64918k 642777k 913708k 7/70/100
  • I used sbc-bench, a nice benchmark for small boards, focusing on memory and cpu. sbc result details: raspi4 nintendo switch
  • percentages: this assumes the Thinkpad values as 100%, and computes the other values on base of that.
  • RAM size is not important for the tests which were performed, less than 2GB were used.
  • sbc execution:
wget https://raw.githubusercontent.com/ThomasKaiser/sbc-bench/master/sbc-bench.sh
sudo /bin/bash ./sbc-bench.sh -c

benchmarking future

  • power: need a usb-c power meter for that
    • then compute how much electrical power is required for certain operations.
  • GPU:
    • would be especially interesting to also compare various 3D driver implementations. For example, 3D benchmarks running on horizon (Nintendos OS) and also on Linux/switch.
    • It's hard to only measure the GPU. It's also a question of how good the 3D drivers are.
    • Benchmarks should include retro game emulation. Simply because it's a common use case for pi4 and switch/Linux. bsnes and snes9x?
      • free snes rom?
    • geekbench

using 2.9“ 296×128 ePaper Display Modue/SPI Interface

My initial problem, I did not get any output from the device. After recompiling the demo-app with DEBUG, I got this:

chris@raspberrypi:~/rpi/RaspberryPi/bcm2835 $ sudo ./epd 
2.9inch e-Paper demo
bcm2835 init success !!! 
Debug: e-Paper busy
^C
Handler:Goto Sleep mode
chris@raspberrypi:~/rpi/RaspberryPi/bcm2835 $ 

Tried out:

git clone https://github.com/waveshare/e-Paper
cd e-Paper/RaspberryPi&JetsonNano/c
vi examples/main.c
#   // EPD_2in9_test();
#   // EPD_2in9bc_test();
#   EPD_2in9d_test();

# and then run 'epd'
sudo ./epd
# this finally works for me

further

  • retroflag cases do not support raspi4 as of 2019-09
hardwarerelated/raspberry_pi_4.txt · Last modified: 2019/09/19 00:43 by chris