Difference between revisions of "IOT-DIN-IMX8PLUS: Debian Linux: I/O Modules Guide"
(One intermediate revision by the same user not shown) | |||
Line 3: | Line 3: | ||
A gateway assembly includes one gateway (the left most unit) and multiple I/O Expansion modules. Module stacking is done from left to right. Up to 8 I/O Expansion Modules can be supported in one gateway assembly. | A gateway assembly includes one gateway (the left most unit) and multiple I/O Expansion modules. Module stacking is done from left to right. Up to 8 I/O Expansion Modules can be supported in one gateway assembly. | ||
The modules are interconnected using Compulab’s proprietary StackLink expansion connector that extends a series of the IOT-DIN-IMX8PLUS interfaces, creating a chain of peripherals. | The modules are interconnected using Compulab’s proprietary StackLink expansion connector that extends a series of the IOT-DIN-IMX8PLUS interfaces, creating a chain of peripherals. | ||
+ | |||
+ | === I/O Expansion Modules Stacking Rules === | ||
+ | * There can be up-to 8 I/O Expansion Modules in one assembly | ||
+ | * IFM-WB modules can only be installed in position A (next to main gateway) | ||
+ | * There can be up-to 3 (in total) modules of types IFM-RS485, IFM-RS232, IFM-WB | ||
+ | * There can be up-to 4 IFM-DI8O8 modules | ||
+ | * There can be only 1 IFM-ADC8 module | ||
= I/O Modules Configuration = | = I/O Modules Configuration = | ||
Line 75: | Line 82: | ||
| align="" |''Blinking Amber'' | | align="" |''Blinking Amber'' | ||
| align="" | Unrecognized I/O module or invalid configuration | | align="" | Unrecognized I/O module or invalid configuration | ||
− | | align="" | Check the log for details | + | | align="" | Check the [[IOT-DIN-IMX8PLUS:_Debian_Linux:_I/O_Modules_Guide#Stack_Detection_Info|log]] for details |
|- | |- | ||
Line 84: | Line 91: | ||
StackLink configurator script stores stack detection info log in the following designated location: | StackLink configurator script stores stack detection info log in the following designated location: | ||
+ | <!-- | ||
<pre> | <pre> | ||
/run/iotdin-imx8p/log/iotdin-imx8p.stack.log* | /run/iotdin-imx8p/log/iotdin-imx8p.stack.log* | ||
+ | </pre> | ||
+ | --> | ||
+ | <pre> | ||
+ | /run/iotdin-imx8p/log/iotdin-imx8p.stack.log.<YYYYMMDD_HHMMSS> | ||
</pre> | </pre> | ||
Line 94: | Line 106: | ||
In case of invalid IFM stack status: | In case of invalid IFM stack status: | ||
# Check the stack detection log | # Check the stack detection log | ||
+ | # Double check if a desired stack conforms the [[IOT-DIN-IMX8PLUS:_Debian_Linux:_I/O_Modules_Guide#I.2FO_Expansion_Modules_Stacking_Rules | Stacking Rules]] | ||
# Verify proper mechanical attachment of modules | # Verify proper mechanical attachment of modules | ||
# Contact technical support | # Contact technical support | ||
Line 103: | Line 116: | ||
= IFM-DI8O8 = | = IFM-DI8O8 = | ||
IFM-DI8O8 module provides an isolated block of eight digital inputs and a block of eight digital outputs.<br> | IFM-DI8O8 module provides an isolated block of eight digital inputs and a block of eight digital outputs.<br> | ||
− | During O/S boot IOT-DIN-IMX8PLUS will automatically detect installed IFM-DI8O8 modules and create necessary access files in the front-plane directory. For additional details please refer to the [[IOT-DIN-IMX8PLUS: | + | During O/S boot IOT-DIN-IMX8PLUS will automatically detect installed IFM-DI8O8 modules and create necessary access files in the front-plane directory. For additional details please refer to the [[IOT-DIN-IMX8PLUS:_Debian_Linux:_I/O_Modules_Guide#I.2FO_Modules_Configuration|Configuration chapter]].<br> |
Use '''diodetect''' command to get an overview of all available Digital Inputs and Outputs: | Use '''diodetect''' command to get an overview of all available Digital Inputs and Outputs: | ||
<pre> | <pre> | ||
− | compulab@compulab-imx8mp:/opt/iotdin-imx8p/shell | + | compulab@compulab-imx8mp:~$ /opt/iotdin-imx8p/shell/diodetect |
Main Gateway: DI2O2 (2x DI; 2x DO) | Main Gateway: DI2O2 (2x DI; 2x DO) | ||
Stack Slot B: DI8O8 (8x DI; 8x DO) | Stack Slot B: DI8O8 (8x DI; 8x DO) | ||
</pre> | </pre> | ||
− | Use '''dioget''' and '''dioset''' commands to access digital inputs and digital outputs. | + | Use '''dioget''' and '''dioset''' commands to access digital inputs and digital outputs.<br> |
+ | It is recommended to set the following alias for more convenient work: | ||
+ | <pre>compulab@compulab-imx8mp:~$ dioget=/opt/iotdin-imx8p/shell/dioget</pre> | ||
+ | <pre>compulab@compulab-imx8mp:~$ dioset=/opt/iotdin-imx8p/shell/dioset</pre> | ||
== Reading Digital Inputs == | == Reading Digital Inputs == | ||
+ | Setup alias for more convenient work: | ||
+ | <pre>compulab@compulab-imx8mp:~$ dioget=/opt/iotdin-imx8p/shell/dioget</pre> | ||
+ | |||
<pre> | <pre> | ||
− | + | compulab@compulab-imx8mp:~$ sudo ${dioget} -h | |
− | compulab@compulab-imx8mp: | ||
Usage: dioget [options] <command> | Usage: dioget [options] <command> | ||
Line 136: | Line 154: | ||
Read state of input pin '''IN_4''' on IFM-DI8O8 installed in slot B: | Read state of input pin '''IN_4''' on IFM-DI8O8 installed in slot B: | ||
<pre> | <pre> | ||
− | compulab@compulab-imx8mp: | + | compulab@compulab-imx8mp:~$ sudo ${dioget} -m B 4 |
</pre> | </pre> | ||
== Setting Digital Outputs == | == Setting Digital Outputs == | ||
+ | Setup alias for more convenient work: | ||
+ | <pre>compulab@compulab-imx8mp:~$ dioset=/opt/iotdin-imx8p/shell/dioset</pre> | ||
+ | |||
<pre> | <pre> | ||
− | + | compulab@compulab-imx8mp:~$ sudo ${dioset} -h | |
− | compulab@compulab-imx8mp: | ||
Usage: dioset [options] <command> | Usage: dioset [options] <command> | ||
Line 163: | Line 183: | ||
Setting output pin '''OUT_4''' to HIGH state on IFM-DI8O8 installed in slot B: | Setting output pin '''OUT_4''' to HIGH state on IFM-DI8O8 installed in slot B: | ||
<pre> | <pre> | ||
− | compulab@compulab-imx8mp: | + | compulab@compulab-imx8mp:~$ sudo ${dioset} -m B 4 1 |
</pre> | </pre> | ||
+ | = IFM-ADC8 = | ||
+ | IFM-ADC8 provides eight single-ended analog input channels (0-7), divided into two blocks of 4. Inputs operate between 0-10V or 4-20mA ranges for use with industrial sensors. Each block can be set into current or voltage input mode via jumper.<br> | ||
+ | |||
+ | During O/S boot IOT-DIN-IMX8PLUS will automatically detect installed I/O modules and create necessary access files in the front-plane directory. For additional details please refer to the [[IOT-DIN-IMX8PLUS:_Debian_Linux:_I/O_Modules_Guide#I.2FO_Modules_Configuration|Configuration chapter]].<br> | ||
+ | |||
+ | '''Example'''<br> | ||
+ | Рead a detected value of channel '''5''' of IFM-ADC8 module installed in slot '''A''':<br> | ||
+ | <pre> | ||
+ | compulab@compulab-imx8mp:~$ X=5 ; slot=A | ||
+ | compulab@compulab-imx8mp:~$ sudo cat /run/iotdin-imx8p/stack/frontplane/${slot}/access/adc$((X/4))/in_voltage$((X%4))_raw | ||
+ | </pre> | ||
+ | <!-- | ||
= IFM-ADC = | = IFM-ADC = | ||
IFM-ADC8 provides eight single-ended analog input channels, divided into two blocks of 4. Inputs operate between 0-10V or 4-20mA ranges for use with industrial sensors. Each block can be set into current or voltage input mode via jumper.<br> | IFM-ADC8 provides eight single-ended analog input channels, divided into two blocks of 4. Inputs operate between 0-10V or 4-20mA ranges for use with industrial sensors. Each block can be set into current or voltage input mode via jumper.<br> | ||
Line 202: | Line 234: | ||
| ../run/iotdin-imx8p/stack/frontplane/A/access/adc1/in_voltage3_raw | | ../run/iotdin-imx8p/stack/frontplane/A/access/adc1/in_voltage3_raw | ||
|} | |} | ||
+ | --> | ||
= IFM-RS485 = | = IFM-RS485 = | ||
IFM-RS485 I/O module provides four half-duplex RS485 ports.</br> | IFM-RS485 I/O module provides four half-duplex RS485 ports.</br> | ||
− | During O/S boot IOT-DIN-IMX8PLUS will automatically detect installed I/O modules and create necessary access files in the front-plane directory. For additional details please refer to the [[IOT-DIN-IMX8PLUS: | + | During O/S boot IOT-DIN-IMX8PLUS will automatically detect installed I/O modules and create necessary access files in the front-plane directory. For additional details please refer to the [[IOT-DIN-IMX8PLUS:_Debian_Linux:_I/O_Modules_Guide#I.2FO_Modules_Configuration|Configuration chapter]].<br> |
===Example=== | ===Example=== | ||
Line 226: | Line 259: | ||
IFM-RS232 I/O module provides four 2-wire RS232 ports.</br> | IFM-RS232 I/O module provides four 2-wire RS232 ports.</br> | ||
− | During O/S boot IOT-DIN-IMX8PLUS will automatically detect installed I/O modules and create necessary access files in the front-plane directory. For additional details please refer to the [[IOT-DIN-IMX8PLUS: | + | During O/S boot IOT-DIN-IMX8PLUS will automatically detect installed I/O modules and create necessary access files in the front-plane directory. For additional details please refer to the [[IOT-DIN-IMX8PLUS:_Debian_Linux:_I/O_Modules_Guide#I.2FO_Modules_Configuration|Configuration chapter]].<br> |
===Example=== | ===Example=== | ||
Line 242: | Line 275: | ||
</pre> | </pre> | ||
Use <code>/run/iotdin-imx8p/stack/frontplane/D/access/tty'''X'''</code> to access port #'''X''' | Use <code>/run/iotdin-imx8p/stack/frontplane/D/access/tty'''X'''</code> to access port #'''X''' | ||
+ | |||
+ | = IFM-WB = | ||
+ | |||
+ | IFM-WB I/O module features one 802.11ax WiFi and one Bluetooth 5.3 BLE interfaces.</br> | ||
+ | During O/S boot IOT-DIN-IMX8PLUS will automatically detect installed I/O modules and create necessary access files in the front-plane directory. For additional details please refer to the [[IOT-DIN-IMX8PLUS:_Debian_Linux:_I/O_Modules_Guide#I.2FO_Modules_Configuration|Configuration chapter]].<br> | ||
+ | {{Note|IFM-WB module can only be installed in position A (next to main gateway)}} | ||
+ | |||
+ | For an IFM-WB module installed in slot A the configurator script will create the following access files: | ||
+ | <pre> | ||
+ | /run/iotdin-imx8p/stack/frontplane/ | ||
+ | |-- A | ||
+ | | |-- access | ||
+ | | | |-- bluetooth -> /sys/class/bluetooth/hci0 | ||
+ | | | `-- wlan -> /sys/class/net/wlan0 | ||
+ | | `-- type.WB | ||
+ | </pre> | ||
+ | |||
+ | === Example === | ||
+ | * Display WiFi network interface info | ||
+ | <pre> | ||
+ | compulab@compulab-imx8mp:~$ wlan=$(basename $(readlink -f /run/iotdin-imx8p/stack/frontplane/A/access/wlan)) | ||
+ | compulab@compulab-imx8mp:~$ sudo ifconfig ${wlan} | ||
+ | compulab@compulab-imx8mp:~$ sudo iwconfig ${wlan} | ||
+ | </pre> | ||
+ | * Display Bluetooth interface info | ||
+ | <pre> | ||
+ | compulab@compulab-imx8mp:~$ bt=$(basename $(readlink -f /run/iotdin-imx8p/stack/frontplane/A/access/bluetooth)) | ||
+ | compulab@compulab-imx8mp:~$ hciconfig ${bt} | ||
+ | </pre> | ||
+ | |||
+ | == WiFi == | ||
+ | === Enable/Disable WiFi Interface === | ||
+ | * To enable WiFi interface: | ||
+ | :<pre>compulab@compulab-imx8mp:~$ sudo nmcli radio wifi on</pre> | ||
+ | * To disable WiFi interface: | ||
+ | :<pre>compulab@compulab-imx8mp:~$ sudo nmcli radio wifi off</pre> | ||
+ | |||
+ | === Network Scanning === | ||
+ | * Sample WiFi scanning: | ||
+ | :<pre>compulab@compulab-imx8mp:~$ nmcli dev wifi list</pre> | ||
+ | :The output will show the list of Access Points and Ad-Hoc cells in range. | ||
+ | |||
+ | === Connecting to Access Point === | ||
+ | In the following example: | ||
+ | * Replace <SSID> and <PASSWORD> with the actual access point parameters: | ||
+ | :<pre>compulab@compulab-imx8mp:~$ sudo nmcli device wifi connect <SSID> password <PASSWORD> name WifiCon</pre> | ||
+ | * Disconnect wireless network: | ||
+ | :<pre>compulab@compulab-imx8mp:~$ sudo nmcli connection down WifiCon</pre> | ||
+ | * Connect wireless network again: | ||
+ | :<pre>compulab@compulab-imx8mp:~$ sudo nmcli connection up WifiCon</pre> | ||
+ | |||
+ | === Creating Access Point === | ||
+ | {{Note|Debian 12<br>ipv4 forwarding must be turned on manually}} | ||
+ | * Enable port forwarding: | ||
+ | :<pre>compulab@compulab-imx8mp:~$ sudo sed -i 's/^#\(net.ipv[4,6].*forward\)/\1/' /etc/sysctl.conf</pre> | ||
+ | |||
+ | * Enable wireless AP (replace ''<SSID>'' and ''<PASSWORD>'' with desired access point parameters): | ||
+ | :<pre>sudo nmcli device wifi hotspot ssid <SSID> password <PASSWORD> con-name HotspotCon</pre> | ||
+ | * Disable wireless AP: | ||
+ | :<pre>compulab@compulab-imx8mp:~$ sudo nmcli connection down HotspotCon</pre> | ||
+ | * Enable wireless AP again: | ||
+ | :<pre>compulab@compulab-imx8mp:~$ sudo nmcli connection up HotspotCon</pre> |
Latest revision as of 15:31, 16 July 2024
Contents
Overview
IOT-DIN-IMX8PLUS supports up to eight I/O Expansion Modules that can be stacked with the main gateway in order to extend the feature set of the system. A gateway assembly includes one gateway (the left most unit) and multiple I/O Expansion modules. Module stacking is done from left to right. Up to 8 I/O Expansion Modules can be supported in one gateway assembly. The modules are interconnected using Compulab’s proprietary StackLink expansion connector that extends a series of the IOT-DIN-IMX8PLUS interfaces, creating a chain of peripherals.
I/O Expansion Modules Stacking Rules
- There can be up-to 8 I/O Expansion Modules in one assembly
- IFM-WB modules can only be installed in position A (next to main gateway)
- There can be up-to 3 (in total) modules of types IFM-RS485, IFM-RS232, IFM-WB
- There can be up-to 4 IFM-DI8O8 modules
- There can be only 1 IFM-ADC8 module
I/O Modules Configuration
I/O expansion modules are managed as a front-plane of virtual slots that map device access files to physical I/O modules per their positions in the stack.
During O/S boot IOT-DIN-IMX8PLUS automatically runs the StackLink configurator script that detects I/O modules and configures the virtual device files used to address the hardware.
The script creates the IFM front-plane file directory that includes type and access files for all populated stack slots.
IFM Front-Plane
During O/S boot the StackLink configurator script creates the IFM front-plane file directory that includes type and access files for all populated stack slots (from A to last populated slot).
/run/iotdin-imx8p/stack/frontplane
Front-plane directory structure
Example I/O modules stack:
+----------+-------+-------+-------+-------+ | Slot # | A | B | C | D | +----------+-------+-------+-------+-------+ | IFM Type | ADC8 | DI8O8 | RS485 | RS232 | +----------+-------+-------+-------+-------+
Front-plane file directory:
/run/iotdin-imx8p/stack/frontplane |-- A | |-- access | | |-- adc0 -> /sys/bus/iio/devices/iio:device0 | | `-- adc1 -> /sys/bus/iio/devices/iio:device1 | `-- type.ADC8 |-- B | |-- access | | |-- di.map | | |-- do.map | | `-- gpiochip -> /dev/gpiochip6 | `-- type.DI8O8 |-- C | |-- access | | |-- tty0 -> /dev/ttyIFM_RSx_0_0 | | |-- tty1 -> /dev/ttyIFM_RSx_0_1 | | |-- tty2 -> /dev/ttyIFM_RSx_0_2 | | `-- tty3 -> /dev/ttyIFM_RSx_0_3 | `-- type.RS485 `-- D |-- access | |-- tty0 -> /dev/ttyIFM_RSx_1_0 | |-- tty1 -> /dev/ttyIFM_RSx_1_1 | |-- tty2 -> /dev/ttyIFM_RSx_1_2 | `-- tty3 -> /dev/ttyIFM_RSx_1_3 `-- type.RS232
Stack Detection Status
StackLink configurator script provides indication of I/O modules stack detection status using IOT-DIN-IMX8PLUS power LED:
Power LED | Status | Remarks |
Blinking Blue | Recognized and valid configuration | Normal operation |
Blinking Amber | Unrecognized I/O module or invalid configuration | Check the log for details |
Stack Detection Info
StackLink configurator script stores stack detection info log in the following designated location:
/run/iotdin-imx8p/log/iotdin-imx8p.stack.log.<YYYYMMDD_HHMMSS>
Stack Troubleshooting
DO NOT attach or detach I/O Expansion modules while the gateway is connected to DC power! Disconnect all power sources from the gateway before attaching or detaching I/O modules. |
In case of invalid IFM stack status:
- Check the stack detection log
- Double check if a desired stack conforms the Stacking Rules
- Verify proper mechanical attachment of modules
- Contact technical support
IFM Backplane
/run/iotdin-imx8p/stack/backplane
directory stores the system information about the physical hardware devices installed in the stack. These files should not be altered.
IFM-DI8O8
IFM-DI8O8 module provides an isolated block of eight digital inputs and a block of eight digital outputs.
During O/S boot IOT-DIN-IMX8PLUS will automatically detect installed IFM-DI8O8 modules and create necessary access files in the front-plane directory. For additional details please refer to the Configuration chapter.
Use diodetect command to get an overview of all available Digital Inputs and Outputs:
compulab@compulab-imx8mp:~$ /opt/iotdin-imx8p/shell/diodetect Main Gateway: DI2O2 (2x DI; 2x DO) Stack Slot B: DI8O8 (8x DI; 8x DO)
Use dioget and dioset commands to access digital inputs and digital outputs.
It is recommended to set the following alias for more convenient work:
compulab@compulab-imx8mp:~$ dioget=/opt/iotdin-imx8p/shell/dioget
compulab@compulab-imx8mp:~$ dioset=/opt/iotdin-imx8p/shell/dioset
Reading Digital Inputs
Setup alias for more convenient work:
compulab@compulab-imx8mp:~$ dioget=/opt/iotdin-imx8p/shell/dioget
compulab@compulab-imx8mp:~$ sudo ${dioget} -h Usage: dioget [options] <command> Read digital input state from a Digital I/O (DIO) module Command: -m <module> <offset> module: DIO module location: m|M - Main Gateway a|A - Virtual slot A ... h|H - Virtual slot H offset: input pin offset: <0..MaxOffset> Options: -h: display this help and exit
Example
Read state of input pin IN_4 on IFM-DI8O8 installed in slot B:
compulab@compulab-imx8mp:~$ sudo ${dioget} -m B 4
Setting Digital Outputs
Setup alias for more convenient work:
compulab@compulab-imx8mp:~$ dioset=/opt/iotdin-imx8p/shell/dioset
compulab@compulab-imx8mp:~$ sudo ${dioset} -h Usage: dioset [options] <command> Set the digital output state of a Digital I/O (DIO) module Command: -m <module> <offset> <state> module: DIO module location: m|M - Main Gateway a|A - Virtual slot A ... h|H - Virtual slot H offset: output pin offset: <0..MaxOffset> state: output pin state to be set: <0|1> Options: -h: display this help and exit
Example
Setting output pin OUT_4 to HIGH state on IFM-DI8O8 installed in slot B:
compulab@compulab-imx8mp:~$ sudo ${dioset} -m B 4 1
IFM-ADC8
IFM-ADC8 provides eight single-ended analog input channels (0-7), divided into two blocks of 4. Inputs operate between 0-10V or 4-20mA ranges for use with industrial sensors. Each block can be set into current or voltage input mode via jumper.
During O/S boot IOT-DIN-IMX8PLUS will automatically detect installed I/O modules and create necessary access files in the front-plane directory. For additional details please refer to the Configuration chapter.
Example
Рead a detected value of channel 5 of IFM-ADC8 module installed in slot A:
compulab@compulab-imx8mp:~$ X=5 ; slot=A compulab@compulab-imx8mp:~$ sudo cat /run/iotdin-imx8p/stack/frontplane/${slot}/access/adc$((X/4))/in_voltage$((X%4))_raw
IFM-RS485
IFM-RS485 I/O module provides four half-duplex RS485 ports.
During O/S boot IOT-DIN-IMX8PLUS will automatically detect installed I/O modules and create necessary access files in the front-plane directory. For additional details please refer to the Configuration chapter.
Example
For an IFM-RS485 module installed in slot C the configurator script will create the following access files:
/run/iotdin-imx8p/stack/frontplane/ |-- C | |-- access | | |-- tty0 | | |-- tty1 | | |-- tty2 | | `-- tty3 | `-- type.RS485
Use /run/iotdin-imx8p/stack/frontplane/C/access/ttyX
to access port #X
IFM-RS232
IFM-RS232 I/O module provides four 2-wire RS232 ports.
During O/S boot IOT-DIN-IMX8PLUS will automatically detect installed I/O modules and create necessary access files in the front-plane directory. For additional details please refer to the Configuration chapter.
Example
For an IFM-RS232 module installed in slot D the configurator script will create the following access files:
/run/iotdin-imx8p/stack/frontplane/ |-- D | |-- access | | |-- tty0 | | |-- tty1 | | |-- tty2 | | `-- tty3 | `-- type.RS232
Use /run/iotdin-imx8p/stack/frontplane/D/access/ttyX
to access port #X
IFM-WB
IFM-WB I/O module features one 802.11ax WiFi and one Bluetooth 5.3 BLE interfaces.
During O/S boot IOT-DIN-IMX8PLUS will automatically detect installed I/O modules and create necessary access files in the front-plane directory. For additional details please refer to the Configuration chapter.
IFM-WB module can only be installed in position A (next to main gateway) |
For an IFM-WB module installed in slot A the configurator script will create the following access files:
/run/iotdin-imx8p/stack/frontplane/ |-- A | |-- access | | |-- bluetooth -> /sys/class/bluetooth/hci0 | | `-- wlan -> /sys/class/net/wlan0 | `-- type.WB
Example
- Display WiFi network interface info
compulab@compulab-imx8mp:~$ wlan=$(basename $(readlink -f /run/iotdin-imx8p/stack/frontplane/A/access/wlan)) compulab@compulab-imx8mp:~$ sudo ifconfig ${wlan} compulab@compulab-imx8mp:~$ sudo iwconfig ${wlan}
- Display Bluetooth interface info
compulab@compulab-imx8mp:~$ bt=$(basename $(readlink -f /run/iotdin-imx8p/stack/frontplane/A/access/bluetooth)) compulab@compulab-imx8mp:~$ hciconfig ${bt}
WiFi
Enable/Disable WiFi Interface
- To enable WiFi interface:
compulab@compulab-imx8mp:~$ sudo nmcli radio wifi on
- To disable WiFi interface:
compulab@compulab-imx8mp:~$ sudo nmcli radio wifi off
Network Scanning
- Sample WiFi scanning:
compulab@compulab-imx8mp:~$ nmcli dev wifi list
- The output will show the list of Access Points and Ad-Hoc cells in range.
Connecting to Access Point
In the following example:
- Replace <SSID> and <PASSWORD> with the actual access point parameters:
compulab@compulab-imx8mp:~$ sudo nmcli device wifi connect <SSID> password <PASSWORD> name WifiCon
- Disconnect wireless network:
compulab@compulab-imx8mp:~$ sudo nmcli connection down WifiCon
- Connect wireless network again:
compulab@compulab-imx8mp:~$ sudo nmcli connection up WifiCon
Creating Access Point
Debian 12 ipv4 forwarding must be turned on manually |
- Enable port forwarding:
compulab@compulab-imx8mp:~$ sudo sed -i 's/^#\(net.ipv[4,6].*forward\)/\1/' /etc/sysctl.conf
- Enable wireless AP (replace <SSID> and <PASSWORD> with desired access point parameters):
sudo nmcli device wifi hotspot ssid <SSID> password <PASSWORD> con-name HotspotCon
- Disable wireless AP:
compulab@compulab-imx8mp:~$ sudo nmcli connection down HotspotCon
- Enable wireless AP again:
compulab@compulab-imx8mp:~$ sudo nmcli connection up HotspotCon