documentation: Update README #4
74
README.md
74
README.md
|
@ -1,55 +1,44 @@
|
||||||
# Quectel EG25-G GSM Modem
|
# Quectel EG25-G GSM Modem
|
||||||
|
|
||||||
## Kernel Changes
|
## Quectel Setup
|
||||||
This package requires the Spiri Mu kernel and modifications to the following files:
|
The Quectel should be conencted to a ConnectTech's Elroy board.
|
||||||
* drivers/usb/serial/option.c
|
The Quectel module requires to connect the antenna on the MAIN and GNSS sockets.
|
||||||
* drivers/usb/serial/usb_wwan.c
|
Make sure to use a SIM card with full access to the mobile network.
|
||||||
* drivers/net/usb/qmi_wwan.c
|
|
||||||
* drivers/net/usb/Makefile
|
|
||||||
|
|
||||||
It also requires these new files:
|
|
||||||
* drivers/net/usb/GobiUSBNet.c
|
|
||||||
* drivers/net/usb/QMI.c
|
|
||||||
* drivers/net/usb/QMI.h
|
|
||||||
* drivers/net/usb/QMIDevice.c
|
|
||||||
* drivers/net/usb/QMIDevice.h
|
|
||||||
* drivers/net/usb/Structs.h
|
|
||||||
|
|
||||||
All these modifications and additions are part of the Spiri Mu kernel. The files are represented in https://git.spirirobotics.com/Spiri/mu_kernel_sources as symlinks from this repository.
|
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
Clone the repository:
|
Clone the repository:
|
||||||
```
|
```
|
||||||
cd ~/git
|
mkdir ~/git/ && cd ~/git/
|
||||||
git clone https://git.spirirobotics.com/Spiri/mu_packages.git
|
git clone https://git.spirirobotics.com/dchvs/eg25-g.git
|
||||||
```
|
cd eg25-g/
|
||||||
|
|
||||||
Create a udhcpc symbolic link:
|
|
||||||
```
|
|
||||||
cd /bin
|
|
||||||
sudo ln -s busybox udhcpc
|
|
||||||
```
|
```
|
||||||
|
|
||||||
Create udhcpc directories, copy in the script, and give it execution permission:
|
Create udhcpc directories, copy in the script, and give it execution permission:
|
||||||
```
|
```
|
||||||
sudo mkdir -p /usr/share/udhcpc
|
sudo mkdir -p /usr/share/udhcpc
|
||||||
sudo mkdir -p /etc/udhcpc/
|
sudo mkdir -p /etc/udhcpc/
|
||||||
sudo cp ~/git/mu_packages/eg25-g/default.script /usr/share/udhcpc
|
sudo cp quectel-CM/default.script /usr/share/udhcpc/
|
||||||
sudo cp ~/git/mu_packages/eg25-g/default.script /etc/udhcpc
|
sudo cp quectel-CM/default.script /etc/udhcpc/
|
||||||
|
|
||||||
sudo chmod +x /usr/share/default.script
|
sudo chmod +x /usr/share/default.script
|
||||||
sudo chmod +x /etc/udhcpc/default.script
|
sudo chmod +x /etc/udhcpc/default.script
|
||||||
```
|
```
|
||||||
|
Create a udhcpc symbolic link:
|
||||||
|
```
|
||||||
|
sudo ln -s /bin/busybox /bin/udhcpc
|
||||||
|
```
|
||||||
|
|
||||||
Build the application:
|
Build the application:
|
||||||
```
|
```
|
||||||
cd ~/git/mu_packages/eg25-g/quectel-CM
|
cd quectel-CM/quectel-CM
|
||||||
make
|
make
|
||||||
```
|
```
|
||||||
|
|
||||||
## Running
|
## Running
|
||||||
The following command launches the package, with [apn-name] being substituted with the APN of the wireless provider. For BICS, the APN is bicsapn. To run this in the background, add & to the end of the command.
|
The following command launches the package, with [apn-name] being substituted with the APN of the wireless provider. For BICS, the APN is bicsapn. To run this in the background, add & to the end of the command.
|
||||||
```
|
```
|
||||||
sudo ./git/mu_packages/eg25-g/quectel-CM/quectel -s [apn-name]
|
sudo ~/git/eg25-g/quectel-CM/quectel-CM -s [apn-name] &
|
||||||
```
|
```
|
||||||
|
|
||||||
## Troubleshooting
|
## Troubleshooting
|
||||||
|
@ -61,9 +50,36 @@ dmesg | grep GSM
|
||||||
If the modem has successfully connected to a tower and is being served an IP address, then the following command will show an IP address being served:
|
If the modem has successfully connected to a tower and is being served an IP address, then the following command will show an IP address being served:
|
||||||
```
|
```
|
||||||
ifconfig eth1
|
ifconfig eth1
|
||||||
|
ping -I eth1 www.google.com
|
||||||
```
|
```
|
||||||
|
|
||||||
## Documentation
|
## Appends
|
||||||
|
#### Kernel Changes
|
||||||
|
The Driver for the EG25-G Quectel module consists has the following structure on the Kernel space side, for interfacing it and adding its Network packets transmisions on Kernel.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
.
|
||||||
|
├── kernel
|
||||||
|
└── kernel-4.9-spiri
|
||||||
|
└── drivers
|
||||||
|
└── net
|
||||||
|
└── usb
|
||||||
|
├── GobiUSBNet.c
|
||||||
|
├── Kconfig
|
||||||
|
├── Makefile
|
||||||
|
├── QMI.c
|
||||||
|
├── QMIDevice.c
|
||||||
|
├── QMIDevice.h
|
||||||
|
├── QMI.h
|
||||||
|
└── Structs.h
|
||||||
|
```
|
||||||
|
In order to add the Driver to the Kernel, the following reference Kernel files are patched:
|
||||||
|
|
||||||
|
* drivers/usb/serial/option.c
|
||||||
|
* drivers/usb/serial/usb_wwan.c
|
||||||
|
* drivers/net/usb/qmi_wwan.c
|
||||||
|
|
||||||
|
#### Documentation
|
||||||
* <a href="https://nextcloud.spirirobotics.com/f/3971">Cellular modem hardware design</a>
|
* <a href="https://nextcloud.spirirobotics.com/f/3971">Cellular modem hardware design</a>
|
||||||
* <a href="https://nextcloud.spirirobotics.com/f/3970">Cellular modem PPP</a>
|
* <a href="https://nextcloud.spirirobotics.com/f/3970">Cellular modem PPP</a>
|
||||||
* <a href="https://nextcloud.spirirobotics.com/f/3968">Cellular modem AT commands</a>
|
* <a href="https://nextcloud.spirirobotics.com/f/3968">Cellular modem AT commands</a>
|
||||||
|
|
Loading…
Reference in New Issue