分類彙整: 樹莓派之疑難

當真電源惹的禍??《下》

假使我們參考網路上《 Raspberry Pi2 – Power and Performance Measurement 》與《 Why do people use powered usb hubs? 》兩篇文章的內容,以及先前關於『供電系統』的描述,我們可以知道在一般狀況下,樹莓派 2B 和 B+ 十分相似,如同基金會所講『軟硬體相容』之加速版的 B+ ,那麽為什麼會比 B+ 挑 SD 卡的呢?雖然說典型『平均』情況下, 2B 的耗電量僅比 B+ 略高一些,然而在『高負載』時之『瞬間電流』需求,據觀察可高達 800 mA 以上, 而且『 Polyfuse 』設計之『容許電流』卻和 B+ 一樣為 2A ,於是如果不知道系統上所接的各種 USB 裝置可能之『瞬間電流』需求,只依據經驗在 B+ 上可用來『判斷』,也許是原因之一。另一個重要原因在於早先韌體上的一個『臭蟲』︰

Pi2 SD card problem

by jdb » Sat Feb 14, 2015 6:05 pm
There’s a bug in the dynamic clock scaling code that is triggered when the undervoltage warning *and* CPU activity are occuring at the same time. This results in setting unsafe (low) levels of core voltage versus CPU frequency.

avoid_warnings=2 disables the underclock on undervoltage, at the expense of a potentially more unstable system for very bad power supplies.

據聞新版的韌體已經解決,或許如《 RPI2 Ready To Go !? 》一文所講的︰

Pi 2 is much more picky than B+ when it comes to memory cards and throws mmcblk0 errors randomly when rebooting #372

最好能夠進一步的確認??

東西』的『耐久性』真的更好了嗎?如果說『沒有更好』,那麼『科技進步』了嗎??假如說大家都認為『科技進步』了!這又代表著什麼呢?也許『人性還是人性』的吧!

打算改變世界!!先改變『自己』??

 

 

 

 

當真電源惹的禍??《中》

150px-Origin_of_Species_title_page

《物種起源》

200px-Darwin_divergence

生命之樹

Editorial_cartoon_depicting_Charles_Darwin_as_an_ape_(1871)

人類與猿類具有共同祖先?!

300px-CollapsedtreeLabels-simplified.svg

系統發生樹

ON
THE ORIGIN OF SPECIES
BY MEANS OF NATURAL SELECTION,
OR THE
PRESERVATION OF FAVOURED RACES IN THE STRUGGLE
FOR LIFE.
By CHARLES DARWIN, M.A.,
FELLOW OF THE ROYAL, GEOLOGICAL, LINNÆAN, ETC., SOCIETIES;
AUTHOR OF ‘JOURNAL OF RESEARCHES DURING H. M. S. BEAGLE’S VOYAGE
ROUND THE WORLD.’
LONDON:
JOHN MURRAY, ALBEMARLE STREET.
1859.
The right of Translation is reserved.

英國大名鼎鼎的博物學家與生物學家查爾斯‧羅伯特‧達爾文 Charles Robert Darwin 自《小獵犬號航行之旅》一書成為著名作家。一九五九年出版的《物種起源》── 源於共同祖先的演化 ──,奠定了對自然界之多樣性由來的重要科學解釋。之後達爾文在《人類與動物的情感表達》以及《人類由來與性擇》中,闡釋人類的演化與性選擇的作用。他的一生可說是善於觀察與發想者的了吧。

如果將『人造物』的改變,對比於『大自然設計』之『穩定性』與『適應性』之演化。也許可以比擬為『改善』── 漸變之法 ── 和『創新』── 突變之則 ── 之設計工法的實踐。假使從戴明 Deming PDSA 全面品質管理循環來看『樹莓派變化』,

自有一番樂趣的哩!有時『設計者之心』和『使用人之意』其實並不能相應,因而發生『 □ 說改善』?『 ○ 講缺點』??果然是『大哉辯』的啊!!

舉個例子來說,『 B  → B+ 』的設計變更

‧ 1 A fuse → 2 A fuse

‧ USB 2 port → 4 port

‧ 可以從 USB 供電 → 有 USB current limiter

‧ TP1 – TP2 電壓檢測電壓監督

‧ 沒有電源保護電路 → 有

種種『變革』不能說不好的吧!然而熟悉 B 版本的人卻產生︰

‧  USB 供電很方便的啊!

‧ 有四個 USB 埠,為什麼還不能接 HDD ?

‧ 多接幾個低耗電 USB 裝置,怎麽有問題??

‧ □□○○

等等『質疑』!!

那從現有資料,我們能夠推知『設計者之心』的嗎??也許原以為

500 mA ( B+ MAX LOAD) + 600 mA ( USB LOAD)

還有冗餘 600 mA 適應力的吧!這又能有什麼不妥的呢?

Types_of_current.svg

Short_Line_Approximation

那將如何解讀『樹莓派 2B 』之實測耶??

# Default Boot 參考, PWR LED 不閃。
pi@raspberrypi ~ $ cat /dev/ttyUSB0 
 I: 269 mA Watts: 1.5

V: 5.7 I: 275 mA Watts: 1.6

V: 5.8 I: 214 mA Watts: 1.2

V: 5.7 I: 251 mA Watts: 1.4

V: 5.6 I: 266 mA Watts: 1.5

V: 5.7 I: 274 mA Watts: 1.6

V: 5.6 I: 279 mA Watts: 1.6

V: 5.7 I: 219 mA Watts: 1.2

V: 5.8 I: 357 mA Watts: 2.1

V: 5.7 I: 271 mA Watts: 1.6

V: 5.6 I: 254 mA Watts: 1.4

V: 5.6 I: 264 mA Watts: 1.5

V: 5.6 I: 212 mA Watts: 1.2

V: 5.8 I: 298 mA Watts: 1.7

V: 5.7 I: 351 mA Watts: 2.0

V: 5.8 I: 236 mA Watts: 1.4

V: 5.6 I: 238 mA Watts: 1.3

V: 5.7 I: 439 mA Watts: 2.5

V: 5.7 I: 277 mA Watts: 1.6

V: 5.7 I: 216 mA Watts: 1.2

V: 5.8 I: 271 mA Watts: 1.6

V: 5.7 I: 275 mA Watts: 1.6

V: 5.8 I: 287 mA Watts: 1.7

V: 5.7 I: 251 mA Watts: 1.4

V: 5.6 I: 237 mA Watts: 1.3

V: 5.7 I: 255 mA Watts: 1.5

V: 5.6 I: 443 mA Watts: 2.5

V: 5.7 I: 442 mA Watts: 2.5

V: 5.6 I: 221 mA Watts: 1.2

V: 5.7 I: 270 mA Watts: 1.5

V: 5.7 I: 267 mA Watts: 1.5

V: 5.7 I: 431 mA Watts: 2.5

V: 5.8 I: 272 mA Watts: 1.6

V: 5.8 I: 235 mA Watts: 1.4

V: 5.8 I: 279 mA Watts: 1.6

V: 5.6 I: 263 mA Watts: 1.5

V: 5.6 I: 461 mA Watts: 2.6

V: 5.7 I: 268 mA Watts: 1.5

V: 5.7 I: 254 mA Watts: 1.4

V: 5.6 I: 271 mA Watts: 1.5

V: 5.8 I: 415 mA Watts: 2.4

V: 5.6 I: 275 mA Watts: 1.5

V: 5.7 I: 235 mA Watts: 1.3

V: 5.6 I: 213 mA Watts: 1.2

V: 5.7 I: 271 mA Watts: 1.6

V: 5.8 I: 421 mA Watts: 2.4

V: 5.7 I: 262 mA Watts: 1.5

V: 5.7 I: 267 mA Watts: 1.5

V: 5.8 I: 227 mA Watts: 1.3

V: 5.8 I: 250 mA Watts: 1.4

V: 5.7 I: 219 mA Watts: 1.2

V: 5.6 I: 251 mA Watts: 1.4

V: 5.8 I: 250 mA Watts: 1.4

V: 5.6 I: 268 mA Watts: 1.5

V: 5.7 I: 271 mA Watts: 1.5

V: 5.6 I: 271 mA Watts: 1.5

V: 5.6 I: 272 mA Watts: 1.5

V: 5.6 I: 256 mA Watts: 1.4

V: 5.8 I: 268 mA Watts: 1.5

V: 5.7 I: 377 mA Watts: 2.1

V: 5.7 I: 358 mA Watts: 2.0

V: 5.7 I: 327 mA Watts: 1.9

V: 5.7 I: 396 mA Watts: 2.3

V: 5.8 I: 277 mA Watts: 1.6

V: 5.7 I: 262 mA Watts: 1.5

V: 5.7 I: 214 mA Watts: 1.2

V: 5.7 I: 271 mA Watts: 1.6

V: 5.6 I: 263 mA Watts: 1.5

V: 5.8 I: 220 mA Watts: 1.3

V: 5.7 I: 317 mA Watts: 1.8


# 跑瀏覽器, PWR LED 不閃。
pi@raspberrypi ~ $ cat /dev/ttyUSB0 


V: 5.7 I: 283 mA Watts: 1.6

V: 5.6 I: 307 mA Watts: 1.7

V: 5.6 I: 264 mA Watts: 1.5

V: 5.8 I: 435 mA Watts: 2.5

V: 5.7 I: 381 mA Watts: 2.2

V: 5.8 I: 347 mA Watts: 2.0

V: 5.7 I: 316 mA Watts: 1.8

V: 5.7 I: 326 mA Watts: 1.9

V: 5.7 I: 350 mA Watts: 2.0

V: 5.6 I: 566 mA Watts: 3.2

V: 5.7 I: 379 mA Watts: 2.2

V: 5.6 I: 335 mA Watts: 1.9

V: 5.7 I: 467 mA Watts: 2.7

V: 5.7 I: 273 mA Watts: 1.6

V: 5.7 I: 235 mA Watts: 1.3

V: 5.6 I: 537 mA Watts: 3.0

V: 5.7 I: 315 mA Watts: 1.8

V: 5.6 I: 392 mA Watts: 2.2

V: 5.8 I: 419 mA Watts: 2.4

V: 5.6 I: 271 mA Watts: 1.5

V: 5.7 I: 445 mA Watts: 2.5

V: 5.6 I: 262 mA Watts: 1.5

V: 5.8 I: 275 mA Watts: 1.6

V: 5.8 I: 351 mA Watts: 2.0

V: 5.6 I: 255 mA Watts: 1.4

V: 5.7 I: 286 mA Watts: 1.6



# 增加兩米長 USB Cable, Default Boot 參考, PWR LED 閃。
pi@raspberrypi ~ $ cat /dev/ttyUSB0 


V: 5.6 I: 294 mA Watts: 1.6

V: 5.6 I: 290 mA Watts: 1.6

V: 5.6 I: 365 mA Watts: 2.1

V: 5.5 I: 275 mA Watts: 1.5

V: 5.6 I: 379 mA Watts: 2.1

V: 5.6 I: 363 mA Watts: 2.0

V: 5.5 I: 313 mA Watts: 1.7

V: 5.5 I: 355 mA Watts: 1.9

V: 5.5 I: 343 mA Watts: 1.9

V: 5.5 I: 439 mA Watts: 2.4

V: 5.6 I: 403 mA Watts: 2.2

V: 5.5 I: 283 mA Watts: 1.5

V: 5.6 I: 445 mA Watts: 2.5

V: 5.5 I: 341 mA Watts: 1.9

V: 5.4 I: 389 mA Watts: 2.1

V: 5.5 I: 339 mA Watts: 1.9

V: 5.5 I: 349 mA Watts: 1.9

V: 5.5 I: 379 mA Watts: 2.1

V: 5.5 I: 312 mA Watts: 1.7

V: 5.6 I: 293 mA Watts: 1.7

V: 5.6 I: 377 mA Watts: 2.1

V: 5.6 I: 343 mA Watts: 1.9

V: 5.6 I: 292 mA Watts: 1.6

 

── 怕使用會有困擾的吧?? ──

 

 

 

 

 

當真電源惹的禍??《上》

利未記‧第十六章

亞倫的兩個兒子近到耶和華面前死了。死了之後,耶和華曉諭摩西說:

要告訴你哥哥亞倫,不可隨時進聖所的幔子內、到櫃上的施恩座前,免得他死亡,因為我要從雲中顯現在施恩座上。

亞倫進聖所,要帶一隻公牛犢為贖罪祭,一隻公綿羊為燔祭。

要穿上細麻布聖內袍,把細麻布褲子穿在身上,腰束細麻布帶子,頭戴細麻布冠冕;這都是聖服。他要用水洗身,然後穿戴。

要從以色列會眾取兩隻公山羊為贖罪祭,一隻公綿羊為燔祭。

亞倫要把贖罪祭的公牛奉上,為自己和本家贖罪;

也要把兩隻公山羊安置在會幕門口、耶和華面前,

為那兩隻羊拈鬮,一鬮歸與耶和華,一鬮歸與阿撒瀉勒。

亞倫要把那拈鬮歸與耶和華的羊獻為贖罪祭,

但那拈鬮歸與阿撒瀉勒的羊要活著安置在耶和華面前,用以贖罪,打發人送到曠野去,歸與阿撒瀉勒。

亞倫要把贖罪祭的公牛牽來宰了,為自己和本家贖罪;

拿香爐,從耶和華面前的壇上盛滿火炭,又拿一捧搗細的香料,都帶入幔子內,

在耶和華面前,把香放在火上,使香的煙雲遮掩法櫃上的施恩座,免得他死亡;

也要取些公牛的血,用指頭彈在施恩座的東面,又在施恩座的前面彈血七次。

隨後他要宰那為百姓作贖罪祭的公山羊,把羊的血帶入幔子內,彈在施恩座的上面和前面,好像彈公牛的血一樣。

他因以色列人諸般的污穢、過犯,就是他們一切的罪愆,當這樣在聖所行贖罪之禮,並因會幕在他們污穢之中,也要照樣而行。

他進聖所贖罪的時候,會幕裡不可有人,直等到他為自己和本家並以色列全會眾贖了罪出來。

他出來,要到耶和華面前的壇那裡,在壇上行贖罪之禮,又要取些公牛的血和公山羊的血,抹在壇上四角的周圍;

也要用指頭把血彈在壇上七次,潔淨了壇,從壇上除掉以色列人諸般的污穢,使壇成聖。

亞倫為聖所和會幕並壇獻完了贖罪祭,就要把那隻活著的公山羊奉上。

兩手按在羊頭上,承認以色列人諸般的罪孽過犯,就是他們一切的罪愆,把這罪都歸在羊的頭上,藉著所派之人的手,送到曠野去。

要把這羊放在曠野,這羊要擔當他們一切的罪孽,帶到無人之地。

亞倫要進會幕,把他進聖所時所穿的細麻布衣服脫下,放在那裡,

又要在聖處用水洗身,穿上衣服,出來,把自己的燔祭和百姓的燔祭獻上,為自己和百姓贖罪。

贖罪祭牲的脂油要在壇上焚燒。

那放羊歸與阿撒瀉勒的人要洗衣服,用水洗身,然後進營。

作贖罪祭的公牛和公山羊的血既帶入聖所贖罪,這牛羊就要搬到營外,將皮、肉、糞用火焚燒。

焚燒的人要洗衣服,用水洗身,然後進營。

每逢七月初十日,你們要刻苦己心,無論是本地人,是寄居在你們中間的外人,什麼工都不可做;這要作你們永遠的定例。

因在這日要為你們贖罪,使你們潔淨。你們要在耶和華面前得以潔淨,脫盡一切的罪愆。

這日你們要守為聖安息日,要刻苦己心;這為永遠的定例。

那受膏、接續他父親承接聖職的祭司要穿上細麻布的聖衣,行贖罪之禮。

他要在至聖所和會幕與壇行贖罪之禮,並要為眾祭司和會眾的百姓贖罪。

這要作你們永遠的定例─就是因以色列人一切的罪,要一年一次為他們贖罪。於是,亞倫照耶和華所吩咐摩西的行了。

 

雖然自樹莓派 B+ 以來,基金會並沒有公開設計的電路圖,或許藉由逆向工程? adafruit 網站有一篇專文介紹《 Power Supply 》也許可以一窺堂奧︰

raspberry_pi_b_power

raspberry_pi_modelb_powerin

raspberry_pi_modelb_buck

There’s still the microUSB jack on the left, and the 1A fuse has been upgraded to a 2A fuse. There’s also a DMG2305UX P-Channel MOSFET. This acts as a polarity protection switch but is much lower ‘drop-out’ than a diode. It has only 52mΩ resistance so @ 2A its about 0.1V voltage drop. Most diodes would be at least 0.5V.

To the right is a protection TVS diode (D5 part #SMBJ5) which protects from over-voltages.

在那篇文章裡沒有提到的是《 Under-voltage warnings 》︰
The B+ has an under voltage detect trigger which results in the power led going off when voltage drops below about 4.65V. The signal is also available on a gpio line (GPIO35).
……

APX803-circuits

電壓監督

這有什麼重要的嗎?假使說合理的推測︰樹莓派 2B 的電源設計相同於 B+ ,那麼『挑剔 SD 卡』是否與此相關的呢??畢竟如果『電源不給力』,能夠『跑得好』耶!!

 

─── 閃動的 PWR LED 有意義嗎?終究追尋始於觀察。───

 

 

 

 

RPI2 Ready To Go !?

樹莓派 2 B 已經發行一個月了,在《春雷早發︰樹莓派 2 Model B ︰早鳥篇》裡談到的 GPIO 問題大體都解決了。  kernel 也已經更新至︰

pi@raspberrypi ~ $ cat /proc/version 
Linux version 3.18.7-v7+ (dc4@dc4-XPS13-9333) (gcc version 4.8.3 20140303 (prerelease) (crosstool-NG linaro-1.13.1+bzr2650 - Linaro GCC 2014.03) ) #755 SMP PREEMPT Thu Feb 12 17:20:48 GMT 2015

現下最大的麻煩大概是

Pi 2 is much more picky than B+ when it comes to memory cards and throws mmcblk0 errors randomly when rebooting #372

就作者測試所知,這個問題也許出在『 kernel 』﹐因為同一片 SD card 如果用 Debian 8 少有問題,然而在 raspbian 上卻會發生

RPI2 Boot issues

。假使你有幸碰到,最簡單的解決方案就是

嘗試多開幾次機!!或者在『 /boot/config.txt 』上加上一行

kernel=kernel7.img

直接告訴 start.elf 使用 arm v7 的 kernel ,據聞這可以增加開機成功率!?或許再更新 raspberrypi/firmware

pi@raspberrypi ~ $ sudo rpi-update
 *** Raspberry Pi firmware updater by Hexxeh, enhanced by AndrewS and Dom
 *** Performing self-update
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  8107  100  8107    0     0  14692      0 --:--:-- --:--:-- --:--:-- 26067
 *** Relaunching after update
 *** Raspberry Pi firmware updater by Hexxeh, enhanced by AndrewS and Dom
 *** We're running for the first time
 *** Backing up files (this will take a few minutes)
 *** Backing up firmware
 *** Backing up modules 3.18.7-v7+
 *** Downloading specific firmware revision (this will take a few minutes)
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   168    0   168    0     0    144      0 --:--:--  0:00:01 --:--:--   197
100 43.4M  100 43.4M    0     0   451k      0  0:01:38  0:01:38 --:--:--  467k
 *** Updating firmware
 *** Updating kernel modules
 *** depmod 3.18.8-v7+
 *** depmod 3.18.8+
 *** Updating VideoCore libraries
 *** Using HardFP libraries
 *** Updating SDK
 *** Running ldconfig
 *** Storing current firmware revision
 *** Deleting downloaded files
 *** Syncing changes to disk
 *** If no errors appeared, your firmware was successfully updated to 6f1db5b734a8cf5217cafd983b1ff9c84c1c5013
 *** A reboot is needed to activate the new firmware

pi@raspberrypi ~ $ sudo reboot

Broadcast message from root@raspberrypi (pts/0) (Wed Mar  4 17:07:55 2015):
The system is going down for reboot NOW!

pi@raspberrypi ~ $ cat /proc/version 
Linux version 3.18.8-v7+ (dc4@dc4-XPS13-9333) (gcc version 4.8.3 20140303 (prerelease) (crosstool-NG linaro-1.13.1+bzr2650 - Linaro GCC 2014.03) ) #764 SMP PREEMPT Tue Mar 3 15:22:38 GMT 2015

彷彿不管用??

是否勇敢進入『 RPI BCM2708 Parameters 』調適的世界︰

# 嘗試批配 SD 卡宣稱之 high speed mode emmc_clock_freq 

pi@raspberrypi ~ $ cat /proc/cmdline 
dma.dmachans=0x7f35 bcm2708_fb.fbwidth=640 bcm2708_fb.fbheight=480 bcm2709.boardrev=0xa01041 bcm2709.serial=0xfc60130d smsc95xx.macaddr=B8:27:EB:60:13:0D bcm2708_fb.fbswap=1 bcm2709.disk_led_gpio=47 bcm2709.disk_led_active_low=0 vc_mem.mem_base=0x3dc00000 vc_mem.mem_size=0x3f000000  sdhci-bcm2708.emmc_clock_freq=480000000 dwc_otg.lpm_enable=0 console=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 cgroup_enable=memory elevator=deadline rootwait splash quiet plymouth.ignore-serial-consoles

 

說不定會有意料之外的驚奇!!