圖片來源:MxL7704 PMIC Powers the Raspberry Pi 4 樹莓派目前使用中的供電系統是在 3B+ 開始改用的。供電系統的好壞對樹莓派來說是非常重要,一個運作良好的供電系統可以確保整塊板子的各功能運作正常,一旦供電出問題時,可能對板子所有功能造成各種問題,例如 USB、WiFi 功能失效或不正常,最嚴重的慘況就是讓整塊板子完全停擺變成一塊磚頭。 《供電系統之演進》 樹莓派供電系統的演進可以分成三個階段: 《第一階段是 Pi2 以前的供電》 重點提示:這代整體的供電源頭是來自於 Micro USB 5V,再轉換成 3.3V、2.5V、1.8V等部份供給系統上元件使用。 圖片來源:Introducing the Raspberry Pi Model B+ 接著來看看電路圖了解電源是怎開始的。電源從左側MICRO USB TYPE B這接頭端開始,經過 F3 保險絲再來到 D17 TVS(Transient voltage suppressor)及後端的濾波電容。 這樣的電路設計有什麼優點: 電路設計簡單,價錢便宜。 … Continue reading →
2018-03-13:
* Raspberry Pi 3 B+ support
* WiFi is disabled until wireless regulatory domain is set (Pi 3 B+ only)
- The domain can be done through 'Raspberry Pi Configuration' (rc_gui),
'raspi-config' or by setting 'country=' to an appropriate ISO 3166
alpha2 country code in /etc/wpa_supplicant/wpa_supplicant.conf.
$ sudo rfkill unblock wifi
$ sudo rfkill list
0: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no
1: hci0: Bluetooth
Soft blocked: no
Hard blocked: no
七月底我們應虎科大電機工程系蔡老師的邀請,帶 Raspberry Pi + Python + Camera 兩天的工作坊。最後會實作”鄉民查水表”功能,是使用 Pi Camera 拍照後,用 OpenCV 做影像處理取得水表指針角度,就可以知道水表目前度數。學生很認真程度也很好,兩天的練習與實做都可以在時間內完成。我們未來也會和虎科大有更多的合作。
現在的 3G/4G 網卡(或稱為 USB 數據機)大多同時有儲存設備和 USB 數據機的功能,其中儲存設備功能存放 MS Windows 的驅動程式,USB 數據機就是可撥號連線接取上網際網路。
如果是第一次將 3G 網卡插在安裝了 Windows 系統的電腦上,網卡將會以虛擬光碟機的模式掛載成儲存設備,並且自動安裝驅動程式。當完成安裝後就可用虛擬光碟機轉換工具(Virtual CD-ROM switching utility)或稱為模式轉換工具,正確轉換網卡為 USB 數據機。
如果要在 Raspberry Pi 上使用 3G/4G 網卡上網,要做的事就是安裝設定模式轉換工具與安裝設定撥號連線程式。步驟如下:
1. 確認硬體資訊。
當插上 E1820 時,可以看到系統可辨認成 HSPA modem。
pi@raspberrypi ~ $ lsusb
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
... skip ...
Bus 001 Device 008: ID 12d1:1446 Huawei Technologies Co., Ltd. E1552/E1800/E173 (HSPA modem)
... skip ...
pi@raspberrypi ~ $ lsusb
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
... skip ...
Bus 001 Device 007: ID 12d1:14ac Huawei Technologies Co., Ltd.
... skip ...
Raspberry Pi 有提供原生的序列(Serial)傳輸介面,因此只要透過 USB 轉 TTL 序列傳輸線,就可以在不需要螢幕和鍵盤滑鼠的情況下登入 Raspberry Pi (預設帳號密碼是 pi/raspberry),連上的虛擬終端機為 ttyAMA0。
序列傳輸介面至少需要有三條線,包括接地(GND)、接收(RX)和傳送(TX),參考接線圖如下。 本 Raspberry Pi B+ GPIO 腳位圖獲得授權使用
注意:
1. 目前 PL2303HX 僅支援 Windows XP/Vista/7 和 Linux 使用,如果是 Windows 8 和 Mac 作業系統,需使用 PL2303HXD 才能正常使用。
2. 安裝 USB 轉 TTL 傳輸線設定時,Raspberry Pi 不需要開機。但是完成安裝後,記得要將 Raspberry Pi 開機,才能透過該序列傳輸線連接。
Windows XP
1. 沒有接上 USB 轉 TTL 序列傳輸線時的裝置管理員。
2. 接上 USB 轉 TTL 序列傳輸線時的裝置管理員,一開始會跳出”歡迎使用尋找新增硬體精靈”。我們先暫時忽略這訊息並下載驅動程式吧。
pi@raspberrypi:~$ netstat -nutlp
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:6002 0.0.0.0:* LISTEN 2124/Xtightvnc
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN -
tcp 0 0 0.0.0.0:5902 0.0.0.0:* LISTEN 2124/Xtightvnc
udp 0 0 0.0.0.0:22316 0.0.0.0:* -
udp 0 0 0.0.0.0:68 0.0.0.0:* -
udp 0 0 192.168.1.2:123 0.0.0.0:* -
udp 0 0 127.0.0.1:123 0.0.0.0:* -
udp 0 0 0.0.0.0:123 0.0.0.0:* -
我們也可以用 ps 這個指令查看目前系統執行的程序中。
pi@raspberrypi:~$ ps aux | grep vnc
– a :不和終端機 (terminal) 有關的所有程序
– u :所有有效使用者 (effective user) 的程序
– x :與 a 這個參數一起使用可列出完整資訊
– | grep vnc 表示只列出有包含 vnc 關鍵字的程序
pi@raspberrypi:~$ ps aux | grep vnc
pi 2124 0.0 0.9 6532 3460 ? S 14:36 0:03 Xtightvnc :2 -desktop X -auth /home/pi/.Xauthority -geometry 640x480 -depth 8 -rfbwait 120000 -rfbauth /home/pi/.vnc/passwd -rfbport 5902 -fp /usr/share/fonts/X11/misc/,/usr/share/fonts/X11/Type1/,/usr/share/fonts/X11/75dpi/,/usr/share/fonts/X11/100dpi/ -co /etc/X11/rgb
pi 2128 0.0 0.1 1760 508 ? S 14:36 0:00 /bin/sh /home/pi/.vnc/xstartup
pi 2426 0.0 0.2 3548 800 pts/0 S+ 15:44 0:00 grep --color=auto vnc
pi@raspberrypi:~$ sudo vim /etc/init.d/tightvncserver
內容如下,重要的是在 start) 部份設定啟動的參數。
#!/bin/bash
### BEGIN INIT INFO
# Provides: tightvncserver
# Required-Start: $syslog
# Required-Stop: $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: vnc server
# Description:
### END INIT INFO
export USER='pi'
eval cd ~$USER
# Check the state of the command - this'll either be start or stop
case "$1" in
start)
# if it's start, then start vncserver using the details below
su $USER -c '/usr/bin/vncserver :1 -geometry 800x600 -depth 16 -pixelformat rgb565'
echo "Starting vncserver for $USER "
;;
stop)
# if it's stop, then just kill the process
pkill Xtightvnc
echo "vncserver stopped"
;;
*)
echo "Usage: /etc/init.d/tightvncserver {start|stop}"
exit 1
;;
esac
exit 0