Embedded Linux A-Z

Embedded Linux A-Z

    • About
    • Beaglebone Black
    • STM32MP157
  • Facebook
  • GitHub
  • LinkedIn

[Yocto-MX93] 2. Kết nối wifi, test thử Chromium

1 cái hay khi dùng luôn image full tính năng từ hãng là bạn định thêm thắt gì khá đơn giản, và cũng có nhiều tài liệu từ hãng luôn

1. Thêm Chromium khi build

Đầu tiên, như mình đã bảo ở bài trước, tránh việc bạn sửa các file local.conf và bbalyers xong các bạn mới chạy source thì 2 file này. Thì ta chạy trước câu lệnh sau để khởi tạo môi trường build

MACHINE=imx93frdm DISTRO=fsl-imx-xwayland source sources/meta-imx-frdm/tools/imx-frdm-setup.sh -b frdm-imx93

Ta thêm layers meta-chromium vào bblayers.conf

BBLAYERS += "${BSPDIR}/sources/meta-browser/meta-chromium"

Ta cài chromium-ozone-wayland vào image hiện tại trong local.conf

CORE_IMAGE_EXTRA_INSTALL += "chromium-ozone-wayland"

Và tiến hành build lại

bitbake imx-full-image

Build Chromium là 1 quá trình ngốn tài nguyên lớn. Mình build Chromium cho Windows 10, xưa mất 8 tiếng, full 100% CPU (14 cores 20 luồng cộng với 32Gb RAM, 64Gb swap, và tốn 300Gb bộ nhớ). Ở đây, Chromium trên Arm cũng không nhẹ hơn là bao.

Nếu các bạn chỉ định kết nối wifi thì có thể sang phần 2, bỏ qua vụ Chromium nhé.

2. Kết nối wifi

2.1 Cài module moal

Image này đã sẵn module wifi, ta modprobe nó

modprobe moal mod_para=nxp/wifi_mod_para.conf

Ở đây NXP không dùng tên gọi wlan0 cho wifi mà lại dùng mlan0, Các bạn có thể check kết quả câu lệnh này, trước và sau khi modprobe module

ls -al /sys/bus/net

2.2 Sửa cấu hình wifi

Sửa interface config, set up cho mlan0 (Theo gợi ý là ta sẽ down uap0 đi, tránh xung đột)

ifconfig mlan0 up
# (Optional) ensure AP side not interfering:
ifconfig uap0 down 2>/dev/null || true

Tiếp theo ta conf cho wifi, khá tương tự với việc mình từng làm với USB wifi trước đây.

cat >/etc/wpa_supplicant.conf <<'EOF'
ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=0
update_config=1

network={
    ssid="YourHotspotSSID"
    key_mgmt=WPA-PSK
    psk="YourHotspotPassword"
}
EOF
mkdir -p /var/run/wpa_supplicant

2.3 Kết nối tới Internet

Ta kết nối tới mạng

killall wpa_supplicant 2>/dev/null || true
wpa_supplicant -B -i mlan0 -D nl80211 -c /etc/wpa_supplicant.conf

Cấp IP cho nó

udhcpc -i mlan0

Đúng ra tới đây thì là guide của hãng đã hết, tuy nhiên mình vẫn không vào được mạng. Sau khi tìm hiểu thêm, thì vấn đề là do DNS, ta chạy thêm câu lệnh sau

echo 'nameserver 8.8.8.8' > /etc/resolv.conf

Vậy là ngon rồi, giờ các bạn có thể vào Internet.

3. Sử dụng Chromium lướt web

Hiện tại thì mình tắt gpu để Chromium hoạt động chuẩn, chắc sẽ phải nghiên cứu để fix thêm

chromium --no-sandbox --disable-gpu https://embeddedlinux.blog

Mình có demo nhỏ sau

Chia sẻ:

  • Chia sẻ trên X (Mở trong cửa sổ mới) X
  • Chia sẻ lên Facebook (Mở trong cửa sổ mới) Facebook
Thích Đang tải…
Trước đó
Kế tiếp

Bình luận về bài viết này Hủy trả lời

  • Facebook
  • GitHub
  • LinkedIn
  • YouTube
  • TikTok
  • Bình luận
  • Đăng lại
  • Theo dõi Đã theo dõi
    • Embedded Linux A-Z
    • Đã có tài khoản WordPress.com? Đăng nhập.
    • Embedded Linux A-Z
    • Theo dõi Đã theo dõi
    • Đăng ký
    • Đăng nhập
    • URL rút gọn
    • Báo cáo nội dung
    • Xem toàn bộ bài viết
    • Quản lý theo dõi
    • Ẩn menu
%d