Those do not belong to the processor, They are coming from the FPGA,
RK3399 - (gpiochip1 to gpiochip4)
There is 1 internal gpio expander, which makes gpiochip5
Now on top of that, when you use periplex other gpiochips will be created.
So let say, In the JSON file you’ve created 1 gpiochip then it will be assigned as gpiochip6, if you create more then more gpiochips will be created.
Okay, Understood .
This is my json file:
{
“uart”: [
{
“id”: 0,
“TX”: “GPIOT_RXP28”,
“RX”: “GPIOT_RXN28”
}
],
“i2c”: ,
"gpio": [
{
"id": 1,
"GPIO-0": "GPIOR_168",
"GPIO-1": "GPIOL_17",
"GPIO-2": "GPIOL_20",
"GPIO-3": "GPIOL_18",
"GPIO-4": "GPIOR_187",
"GPIO-5": "GPIOL_24",
"GPIO-6": "GPIOL_66",
"GPIO-7": "GPIOL_62"
}
],
"pwm": [],
"ws": [],
"spi":[],
"onewire": [],
"can": [],
"i2s": []
}
so GPIOR_168 is gpiochip6, pin = 0
and GPIOL_20 is gpiochip6, pin = 2
1 Like
Okay . Any update regarding gpio handling ?
We’ve fixed some things and added new protocols as well. Follow below instruction to update the periplex,
sudo apt update && sudo apt upgrade
sudo apt install periplex
After installing the latest periplex, make sure you once power off the board, unplug the adapter and again plug the adapter.
Now you can run periplex-sync again and you can try doing whatever you were doing before.
This should fix everything, let us know the feedback.
Make sure you update the JSON like Usage guide for Periplex | Vicharak
We have added protocols and due to that the JSON protocol additions are required.
Thanks, I will check and update you
1 Like
Hello @djkabutar ,
This is my updated JSON file. But not showing ttyPERI0 and gpiochip6
vicharak@vicharak:~/Desktop/JSON_files$ cat test.json
{
“uart”: [
{
“id”: 0,
“TX”: “GPIOT_RXP28”,
“RX”: “GPIOT_RXN28”
}
],
“i2cmaster”: ,
"gpio": [
{
"id": 1,
"GPIO-0": "GPIOR_168",
"GPIO-1": "GPIOL_17",
"GPIO-2": "GPIOL_20",
"GPIO-3": "GPIOL_18",
"GPIO-4": "GPIOR_187",
"GPIO-5": "GPIOL_24",
"GPIO-6": "GPIOL_66",
"GPIO-7": "GPIOL_62"
}
],
"pwm": [],
"ws": [],
"spi":[],
"onewire": [],
"can": [],
"i2s": [],
"i2cslave": [],
"jtag": [],
"dht": []
}
Can you share me the output of
systemctl status periplexer
vicharak@vicharak:~/Desktop/JSON_files$ systemctl status periplexer
× periplexer.service - Periplexer Service
Loaded: loaded (/etc/systemd/system/periplexer.service; enabled; vendor preset: enabled)
Active: failed (Result: signal) since Sat 2026-01-31 09:57:32 IST; 13min ago
Process: 684 ExecStartPre=/usr/bin/sleep 3 (code=exited, status=0/SUCCESS)
Process: 1378 ExecStart=/usr/bin/periplexer (code=killed, signal=SEGV)
Main PID: 1378 (code=killed, signal=SEGV)
CPU: 25ms
vicharak@vicharak:~$ systemctl status rah
● rah.service - Rah Service
Loaded: loaded (/etc/systemd/system/rah.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2026-01-31 10:29:44 IST; 9min ago
Main PID: 1454 (rah_service)
Tasks: 3 (limit: 2283)
Memory: 952.0K
CPU: 158ms
CGroup: /system.slice/rah.service
└─1454 /usr/bin/rah_service
I am using this commands for Restart periplexer, so now its showing
sudo systemctl daemon-reload
sudo systemctl restart periplexer
sudo systemctl status periplexer
Try rebooting your board once & check if it works as is, I’ll test it on our boards as well.
After rebooting the system not showing uart & gpio
I’ve created the same scenario as you, I’ll fix that and let you know
Okay, Please let me know when it is fixed.
There was issue in the service file, we have changed it, you can apply this way,
sudo apt update
sudo apt install periplex
Make sure you do periplex-sync again after update