KNEO Pi Configuration via the Command-Line¶
This guide provides instructions for configuring various aspects of the KNEO Pi development kit via the command line. The configurations allow users to adjust the system settings, network configurations, and advanced options as per their requirements.
System Configuration¶
Switch to the 'root' account before performing system-level configurations
If you are logged in remotely as alarm, use the command: su - root
Screen Resolution¶
Configure the system's screen resolution to match the display requirements.
By default, the KNEO Pi is set to 1280x720
resolution. This setting is balanced for performance to save computing resources, ensuring that the system can run applications smoothly without excessive CPU and memory usage.
Setting the resolution to 1920x1080
will provide higher display quality, but it comes with a trade-off. It will increase the CPU load by approximately 10% and also consume more DDR memory. This may impact overall system performance, especially on resource-intensive tasks.
Refer to the images below to configure the monitor resolution
Then, setResolution
with the desired resolution (e.g., 1920x1080
or 1280x720
).
Expand SD Card Space¶
Expand the filesystem to utilize the entire available space on the SD card.
To save time during the SD card programming process, the system image is created with a smaller size than the actual capacity of the SD card, typically less than 16GB. However, if your SD card has a capacity larger than 16GB, the unused space will not be available for use by the system until it is expanded.
Command:
Warning
Expanding the partition will erase data if not done correctly. Ensure to back up important data before proceeding.
Configure Timezone or Date/Time¶
Set the correct timezone or synchronize system time with an NTP server.
Command to configure timezone:
Replace<Region/City>
with your local timezone (e.g., Asia/Taipei
).
Check available zones:
Command to configure date/time:
# Configure date only
$ timedatectl set-time "2016-11-12"
# Configure time only
$ timedatectl set-time "18:10:40"
# Configure both date and time
$ timedatectl set-time "2016-11-12 18:10:40"
Warning
The KNEO Pi does not have a Real-Time Clock (RTC) module to maintain the system clock when powered off.
Ensure the device has network access to synchronize the time using NTP, or manually configure the clock after each reboot.
Configure Hostname¶
Change the system's hostname to a custom name.
Command:
Replace<new_hostname>
with your desired hostname.
General naming rules
Allowed Characters
- Lowercase letters (a-z)
- Digits (0-9)
- Hyphens (-) as separators (but not at the beginning or end of the hostname)
Invalid Characters
- Uppercase letters (e.g., MyHost is invalid)
- Special characters, such as: . _ (underscore) . . (dot, except in fully qualified domain names, like hostname.domain.com) . Spaces
Length Restrictions
- Between 1 and 63 characters for a single hostname label.
- The full hostname, including any domain (e.g., hostname.example.com), should not exceed 253 characters.
Changing the hostname may affect network connectivity
See more Resolve kneopi.local with mDNS for further information
Networking Configuration¶
Networking on your KNEO Pi can be configured for both Ethernet and Wi-Fi. Use the following steps to assign a static IP or enable DHCP for either interface. The KNEO Pi uses NetworkManager as the default networking daemon
Assign Static IP or DHCP¶
-
View Available Connections To check the status of your current connections or available interfaces:
-
Assign a Static IP To configure a static IP for an interface (e.g., Ethernet or Wi-Fi):
Replace$ nmcli con mod "<connection-name>" ipv4.addresses <static-ip>/<subnet-mask> $ nmcli con mod "<connection-name>" ipv4.gateway <gateway-ip> $ nmcli con mod "<connection-name>" ipv4.dns "<dns1>,<dns2>" $ nmcli con mod "<connection-name>" ipv4.method manual
<connection_name>
with the NAME of your connection, usuallyeth0
orwlan0
Replace<static-ip>
,<subnet-mask>
,<gateway-ip>
,<dns>
according to your environmentFor example (configure everything together)
-
Enable DHCP (Enabled by default)
-
Connect to Wi-Fi (optional)
If using a USB Wi-Fi adapter, ensure it is recognized by the system, then connect to a Wi-Fi network:
Verified USB Wi-Fi adapters
- tp-link Archer T3U Nano, rtl8822bu
- tp-link Archer T2U Nano, rtl8812au
Once connected, confirm the assigned IP address using:
-
Disconnect and reconnect the networks to make the changes effective
Replace<connection_name>
with the NAME of your connection, usuallyeth0
orwlan0
Advanced Configuration¶
Configure USB2.0/USB 3.0 Port as Device Mode¶
The USB2.0/USB 3.0 port on the KNEO Pi can be configured to operate in device mode, allowing the KNEO Pi to function as a peripheral device when connected to a host system. Configure the USB2.0/USB 3.0 port to function in device mode
[root@kneo-pi ~]# cd /mnt/flash/kneo_pi
[root@kneo-pi kneo_pi]# sh set_usb_mode.sh
[ 1011.105228] loop0: detected capacity change from 0 to 124805120
[ 1011.113349] FAT-fs (loop0): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
Please enter option for USB U2 port(default: 0)
[0] U2 port: HOST mode
[1] U2 port: device (peripheral) mode
1
Please enter option for USB U3 port(default: 0)
[0] U3 port: HOST mode
[1] U3 port: device (peripheral) mode
1
New U2_mode: device
New U3_mode: device
updated config ok, but still need to reboot system to apply new setting for linux kernel
Warning
- Switching to device mode may interfere with other USB peripherals connected to the system.
- Reboot is required
Configure MAC Address¶
Set a custom MAC address for network interfaces permanently.
<new_mac>
with the desired MAC address (e.g., 00:14:22:01:23:45
)
Apply the changes:
OR reboot:
Warning
- Changing the MAC address can affect network access if there are network policies based on MAC filtering.
- Reboot is required
Enable/Disable ZRAM as Swap (enabled by default)¶
Enable or disable the use of ZRAM for compressed swap space to gain larger memroy space.
Command to enable/disable ZRAM:
Warning
- Enabling ZRAM can help performance on systems with limited RAM but may affect overall system stability if not properly configured.
- Reboot is required
Enable/Disable Dummy UDC USB Device for Proprietary NPU Core (enabled by default)¶
Enable or disable the dummy USB device used for the proprietary NPU core.
Command to enable/disable:
Warning
- This feature is specific to certain hardware configurations. Misuse may cause the NPU to become unresponsive.
- Reboot is required
Configure USB over Ethernet (disabled by default)¶
Enable or disable USB over Ethernet functionality.
Command:
Warning
- Enabling USB over Ethernet will affect USB network traffic, so ensure this feature is needed for your use case.
- Set the USB Port you use as Device Mode is required
- Reboot is required
Restricted Configurations¶
- Keyboard Layout (US Layout Only)
- DDR Reservation for System
- Disable HDMI Display. Currently, mipi display is not supported in KNEO Pi usage.