[AI] Comma four / C4 硬體資訊初探:用 SSH 讀出實機規格

comma four / C4 硬體資訊初探:用 SSH 讀出實機規格

這篇主要是記錄我用 SSH 從 comma four / C4 實機讀到的硬體資訊。 調查方式不是拆機,而是把裝置接上家裡 Wi-Fi,透過 read-only 腳本從 Linux、sysfs、device tree、kernel log 與 openpilot 環境中整理出可公開分享的硬體規格。

這份紀錄的重點是「系統實際看得到什麼」,不代表官方完整規格,也不代表車上 onroad 狀態下的最終表現。

快速摘要

項目本次調查結果
Device modelcomma mici
Device tree modelcomma mici
Device tree compatibleqcom,sda845-mtp / qcom,sda845 / qcom,mtp
OSUbuntu 24.04.4 LTS
System version/VERSION = 18.4
KernelLinux 4.9.103 aarch64
SoCQualcomm SDM845
CPU8 cores possible;本次 survey 時 CPU0–CPU3 online、CPU4–CPU7 offline
RAMLinux 可見 3.52 GiB
推測實體 RAM4GB class
Swap0 kB
StorageUFS,128GB class
Main storage detected113.6 GiB
Openpilot branchinfiniteCable2/openpilot master
Openpilot commit78e4850764ac17dc5fb638a9d2902ab1b5a61d51

Device identity

系統辨識到的裝置名稱如下:

Device model: comma mici
Device tree model: comma mici
Device tree compatible: qcom,sda845-mtp, qcom,sda845, qcom,mtp

比較有趣的是,系統層看到的是 comma mici,不是直接顯示 comma four。 從 device tree 來看,平台是 Qualcomm SDM845 系列,也就是 Snapdragon 845 這個世代的硬體基礎。

SoC / CPU

CPU 資訊顯示為 Qualcomm SDM845,AArch64 架構。 比較容易誤會的是核心數。單看 nproc 會看到 4,但 lscpu/proc/cpuinfo 顯示:

CPU(s): 8
On-line CPU(s): 0-3
Off-line CPU(s): 4-7

也就是說,硬體上看得到 8 個 CPU core,但這次在離車、Wi-Fi survey 的狀態下,只有 CPU0–CPU3 online。 CPU4–CPU7 這組 big cores 在本次資料收集當下是 offline。

CPU狀態類型Max freq
CPU0–CPU3onlineKryo Silver class1.766 GHz
CPU4–CPU7offline at survey timeKryo Gold class2.803 GHz

這裡不能直接下結論說 C4 只跑四核心。比較合理的解讀是:這次 survey 是 off-car / idle-ish 狀態,CPU online policy 可能跟 onroad 負載狀態不同。

Memory / RAM

這次最想確認的其實就是 RAM。

MemTotal: 3694596 kB
Approx RAM: 3.52 GiB
SwapTotal: 0 kB
CmaTotal: 204800 kB

Linux 可見 RAM 約 3.52 GiB,因此可以合理推測實體 RAM 是 4GB class。 多出來不見的部分,應該被 kernel、camera、GPU、modem、wlan、reserved memory 等區域保留。

重點是:這台不是 6GB,也不是 8GB。從目前實測看起來,C4 是 4GB 等級。 另外本次沒有 swap,所以如果之後玩不同 openpilot fork,記憶體壓力仍然值得觀察。

Storage / partition layout

Storage 顯示為 UFS,容量是 128GB class。Linux 主要看到的 /dev/sda 為 113.6 GiB。

Storage type: UFS
Storage total: 113.6G
Partition table: GPT
PartitionSizeFSMount point
/dev/sda232Msquashfs/persist
/dev/sda611.6Gext4not mounted
/dev/sda711.6Gext4/
/dev/sda1016Mext4/systemrw
/dev/sda11128Mext4/cache
/dev/sda1290.1Gext4/data

另外還有多個 UFS LUN,例如 /dev/sdb/dev/sdc/dev/sdd/dev/sde/dev/sdf。 其中 /dev/sde 底下有 firmware、dsp 等分割,這很像 Qualcomm 平台常見的 firmware / modem / dsp 類分割配置。

這次使用量如下:

Root: 4.3G / 3.7G used / 352M available,92% used
Data: 89G / 75G used / 8.9G available,90% used

/data 最大的來源是:

/data/media         71G
/data/openpilot     1.7G
/data/safe_staging  2.6G
/data/scons_cache   959M

這代表 C4 的 128GB storage 很容易被 route / realdata 吃掉。 如果要拿來長期測不同 branch,空間管理會是很現實的問題。

Wi-Fi

Wi-Fi 這次看到的是 Qualcomm integrated WLAN,driver 為 icnss

Wi-Fi chipset: Qualcomm integrated WLAN via ICNSS
Wi-Fi driver: icnss
Wi-Fi standard: 802.11ac capability visible

Kernel log 裡有看到 VHT capability,所以可以確認至少有 802.11ac 相關能力。 不過這次腳本沒有成功整理出完整 channel / band table,因此目前不硬寫完整 Wi-Fi band 規格。

LTE / cellular

LTE modem 這次抓到很明確:

Quectel Wireless Solutions Co., Ltd. EG916Q-GL
USB VID:PID = 2c7c:6007

系統也看到:

qmicli available
ModemManager not running
WWAN interface: rmnet_ipa0
ttyUSB0 ~ ttyUSB3

USB tree 顯示這顆 LTE modem 掛在 USB 2.0 root hub 下,並出現多個 serial interface。 目前這次 read-only survey 沒有取得完整 LTE band list,所以先不硬寫支援頻段。

LTE modem: Quectel EG916Q-GL
Interface: USB serial option / CDC / rmnet / QMI clues
Supported LTE bands: not confirmed in this survey

Camera system

Camera 這邊系統節點不少:

/dev/media0
/dev/media1
/dev/video0
/dev/video1
/dev/video2
/dev/video32
/dev/video33
/dev/v4l-subdev0 ~ /dev/v4l-subdev14

Kernel log 也看到 Qualcomm camera pipeline 相關元件,例如:

cam_cc-sdm845
cam_isp
cam_jpeg
csiphy
vfe
ife

這代表 C4 的 camera pipeline 是走 Qualcomm / MIPI CSI / V4L2 這類架構。 但要注意:video node 數量不等於實體鏡頭數量,因為 /dev/video* 可能包含 ISP、metadata、processing node,不一定每個都對應一顆實體 camera。

這次因為系統缺少 v4l2-ctlmedia-ctl,沒有辦法把 sensor 型號、解析度、format 拆得更完整。

Camera interface: Qualcomm camera stack / MIPI CSI / V4L2 nodes
Video nodes: 5
Media nodes: 2
Sensor model: not exposed in this survey

IMU / motion sensors

IIO 這次有看到裝置:

/sys/bus/iio/devices/iio:device0

但 sensor 名稱沒有被清楚解出來。 Kernel log 有 sensors / SLPI / fastrpc 相關線索,代表感測器可能是透過 Qualcomm sensor subsystem 在跑。 目前不建議硬寫 accelerometer / gyroscope 的實際型號。

IMU: present, but accelerometer / gyroscope model not exposed by this survey
IIO devices: 1 main IIO device observed in raw output
Sensor subsystem: Qualcomm sensor / SLPI clues visible

GNSS / GPS

這次沒有抓座標,只看硬體線索。

/dev/ttyHS0
/dev/ttyUSB0
/dev/ttyUSB1
/dev/ttyUSB2
/dev/ttyUSB3

GNSS 相關 thermal zone 也有出現:

gnss thermal zone

不過這次還不能確認 GNSS 是獨立晶片、SoC integrated GNSS,還是經由 LTE modem 提供。

GNSS: Qualcomm / modem / location-service clues visible
Current location: not collected
GNSS source: not confirmed

Display / touch

Display 這次看到的是 DRM / DSI 介面:

/dev/dri/card0
card0-DSI-1
card0-Virtual-1

Kernel log 裡出現:

bantian_amoled

所以可以合理記錄為 DSI AMOLED panel 線索。

Touch 方面看到 input device:

fts_ts

這通常是 FocalTech touch driver 命名風格,但目前只有 kernel input 名稱,因此先不寫死成特定觸控 IC 型號。

Display: DSI AMOLED panel clues, card0-DSI-1
Touch: fts_ts input device
Resolution: not confirmed in this survey

Audio

Audio 是 Qualcomm SDM845 平台常見的 Tavil sound card:

sdm845-tavil-snd-card

ALSA 裝置如下:

Playback: MultiMedia1
Capture: MultiMedia1
Audio: sdm845-tavil-snd-card
Playback device: available
Capture device: available
Microphone / speaker detail: not further identified in this survey

Power / PMIC / battery

Power supply nodes 有看到:

battery
bms
dc
main
pc_port
usb

本次 survey 當下也看到 battery present,容量約 68%。 這表示系統層可以看到內部 battery / BMS 類節點。

PMIC 相關 log:

PM8998 v2.0
PM8005 v2.0
PMI8998 v2.1
Power supply nodes: battery, bms, dc, main, pc_port, usb
PMIC clues: PM8998 / PM8005 / PMI8998
Battery: present

Thermal

這次 thermal zone 非常多,總共 73 個。 比較有參考價值的節點包括:

Thermal zoneSurvey temp
cpu0-silver-usr約 59°C
cpu1-silver-usr約 59°C
gpu0-usr約 52°C
gpu1-usr約 53°C
ddr-usr約 54°C
wlan-usr約 54°C
camera-usr約 56°C
bottom_soc約 52°C
gnss約 49°C
lmh-dcvs-00 / 0175°C

另外有些 sensor 顯示 -30°C 或 -40°C,這通常比較像是無效值、未接 sensor 或 disabled 狀態,不應該拿來當實際溫度。

這邊的重點是:C4 即使只是家裡 Wi-Fi survey,SoC / camera / WLAN / DDR 溫度也已經落在 50~60°C 區間。 如果裝在車上、又遇到台灣夏天前擋曝曬,thermal behavior 會很值得另外測。

Vehicle interface / CAN

這次是 Phase 1,只在家裡 Wi-Fi 下調查 C4 本體,沒有接車。 所以 CAN 這段目前只能寫:

CAN interface count: 0 in this off-car survey
CAN FD support: not confirmed by this survey
No CAN sockets were opened
No CAN messages were sent

這不代表 C4 沒有 CAN FD,也不代表 OBD-C 不存在。 只是本次調查沒有在車上,無法用這份資料判斷車端 CAN / fingerprint 行為。

初步結論

  1. RAM 基本上可以當 4GB class 看待。
    Linux 可見 3.52 GiB,不是 6GB / 8GB。
  2. SoC 是 SDM845 平台,但本次只有 4 cores online。
    8 cores possible,big cores 在 survey 狀態下 offline。這點可以之後在 onroad 狀態再觀察。
  3. Storage 是 128GB UFS class,但 route log 很容易吃空間。
    /data/media 已經吃掉 71GB,後續玩 branch 前最好先清空或備份資料。
  4. LTE modem 明確是 Quectel EG916Q-GL。
    但 LTE band list 尚未從本次腳本確認,不要亂寫。
  5. Wi-Fi 至少有 802.11ac capability 線索。
    完整 band / channel table 尚未整理成功。
  6. Camera pipeline 是 Qualcomm camera stack / MIPI CSI / V4L2 節點。
    但 sensor 型號還沒解出來,video node 數量也不能直接等於實體鏡頭數。
  7. Thermal 很值得後續單獨測。
    在家 survey 就已經看到不少 50~60°C 節點,車上夏天曝曬應該更值得觀察。

下一步

Phase 1.1:補硬體規格缺口

  • 補 Wi-Fi channel / band table
  • 補 LTE band list
  • 補 camera sensor / format
  • 補 display resolution
  • 補 IMU sensor 名稱
  • 補 onroad / offroad CPU online 差異

Phase 2:裝車後做 passive data collection

  • 不送 CAN
  • 只收 fingerprint / CarParams / FW version
  • 確認 Caddy 5 MQB EVO 為什麼無法自動抓車型
  • 比對 infiniteCable2 裡現有 MQB EVO 設定

目前這篇先當作 C4 硬體調查第一版。簡單講:C4 本體看起來不是算力怪獸,而是一台小型化、整合度高、但資源不算非常寬裕的 openpilot 平台。接下來真正好玩的,還是把它丟回車上看 MQB EVO 怎麼跑。

留言

這個網誌中的熱門文章

[旅遊]日本大阪部品(上) - 南海部品