LoginSignup
2
0

More than 1 year has passed since last update.

1. 概要

Linux や Android などを動作させるアプリケーションプロセッサはネットワークへの接続は不可欠です。
さらに言うと、ワイヤーラインよりワイヤレス(WiFi)での接続は重要な要素になっています。
そこで、Intel SoCFPGA に Debian 9 や Ubuntu 18.04 をインストールし、USB Wireless Network Adapter (俗に言う WiFi ドングル) を使用し、WiFi に接続する方法を紹介します。
なお、USB WiFi Adapter は他の物でも可能とは思われますが、その場合、Kernel の Config 設定に変更が必要になる可能性があります。

今回は2つのデバイスで確認しました。
1つは随分昔に購入し机の中に眠っていたもの、もう1つは最近でも購入は可能で、千円以下で購入できるものです。

1-1.jpg

1-1. 適用条件

OS : Debian 9 / Ubuntu 18.04

Kernel : 5.4 以上

2. Kernel の作成

2-1. make の準備

Tool Chain や Kernel ソースを取得し、任意の Config 設定をします。

詳細はこちらを参照ください。https://rocketboards.org/

2-2. Wireless Network の設定

$ make menuconfig

メニューで Wireless Network の設定を有効にします。
下記の項目を Enable にします。

[*]Networking support
    -*- Wireless --->
        <*> cfg80211 - wireless configuration API
        <*> Generic IEEE 802.11 Networking Stack (mac80211)
Device Driver
    [*] Network device support --->
        [*] Wireless LAN --->
            <*> Realtek rtlwifi famiry of devices (NEW) --->
                <*> Realtek RTL8192CU/RTL8188CU USB Wireless Network Adapter
    [*] Staging drivers --->
        [M] Realtek RTL8188EU Wireless LAN NIC driver
            [*] Realtek RTL8188EU AP mode (NEW)

< 共通 >
2-1.png

< RTL8188CUSを使用する場合 >

2-2.png

2-3.png

< RTL8188EUSを使用する場合 >

2-4.png

2-3. make の実行

$ make zImage

zImage が arc/arm/boot に作成出来たら、SD カードの FAT パーティションの zImage と置き換え、準備完了です。

3. Debian 9 への組み込み

USB ポートに USB WiFi Adapter を挿入して起動します。

3-1. USB の認識確認

USB WiFi Adapter が認識されていることを確認します。

# lsusb

3-1.jpg

3-2. IP アドレスの確認

# ip a

3-2.jpg

3-2-1. 起動ログの確認

# dmesg | grep fail

起動ログに下記のようなメッセージが表示されている場合、Firmware のインストールが必要です。

3-2-1.jpg

3-2-2. Firmware のインストール

一旦、Ethrnet ケーブルを挿入し下記でインストールします。

# apt install firmware-realtek

3-2-2.jpg

reboot します。

3-3. ネットワークマネージャの設定

3-3-1. デバイス一覧を表示

# nmcli dev

3-3-1.jpg

※ wlan0 が "unavailable" と表示されている場合は、下記のモジュールを削除してください。

3-3-1A.jpg

# apt remove openresolv dhcpcd5

TYPE が wifi で STATE が disconnected のデバイスが存在している事を確認し、On にします。

# nmcli r wifi on

3-3-2. AP 一覧を表示

接続可能な AP の一覧が表示されますので、この中から接続する AP の SSID を調べます。

# nmcli dev wifi

3-3-2.jpg

3-3-3. AP に接続する

AP の SSID とパスワードを指定して接続します。

# nmcli dev wifi connect "<SSID>" password "<Password>"

3-3-3.jpg

3-4. 接続の確認

# ip a
# apt update

IP アドレスが取得出来ていて、ネットワークに接続出来ている事を確認します。

4. Ubuntu 18.04 への組み込み

zImage を置き換え、USB ポートに USB WiFi Adapter を挿入して起動します。

4-1. USB の認識確認

USB WiFi Adapter が認識されていることを確認します。

# lsusb

4-2. ネットワークマネージャの設定

4-2-1. デバイス一覧を表示

# nmcli dev

4-2-1.jpg

TYPE が wifi で STATE が disconnected のデバイスが存在している事を確認し、On にします。

# nmcli r wifi on

4-2-2. AP 一覧を表示

# nmcli dev wifi

4-2-2.jpg

4-2-3. AP に接続する

AP の SSID とパスワードを指定して接続します。

# nmcli dev wifi connect "<SSID>" password "<Password>"

4-2-3.jpg

4-3. 接続の確認

# ip a

4-3.jpg

IP アドレスが取得出来ている事を確認します。

4-3-1. 外部への接続確認

DNS の設定が書き換わってしまい、外部サイトへの接続に失敗する可能性があります。

# apt update

apt update で下記のようにエラーになる場合は以下の対処をしてください。

4-3-1.jpg

4-3-2. DSN 設定ファイルの変更

resolv.conf のリンク先ファイルを特定し、リンクを切り離してファイルをコピーします。

# ls -l /etc/resolv.conf
# rm /etc/resolv.conf
# cp /run/connman/resolv.conf /etc/

4-3-2A.jpg

# vi /etc/resolv.conf

nameserver の後を "8.8.8.8" に変更します。

nameserver 8.8.8.8

4-3-2B.jpg

4-3-3. ネットワークマネージャ設定の変更

ネットワークマネージャの設定ファイルの [main] セクションに "dns=none" を追加して DNS の書き換えを抑止します。

# vi /etc/NetworkManager/NetworkManager.conf

[main]
plugins=ifupdown,keyfile
dns=none

4-3-4. 接続の確認

Ping を打って外部への接続が正しく行われるか確認します。

# ping google.com

4-3-5. Reboot 後の再接続

Reboot すると DNS が書き換えられ、外部への接続が出来なくなる場合がありますが、再度 "4-3-2. DSN 設定ファイルの変更" を行う事で接続出来るようになります。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0