So I finally got the driver working on CentOS…

The device I have is a Digi PortServer 16 on ip (I can check this by telnetting to that ip).

So, next I ran this…

/usr/bin/dgrp/config/dgrp_cfg_node -v -v init a 16

And this is the result…

[root@localhost dev]# ls
arpd loop2 md2 nst0 ram3 stdin tty tty3 tty51 ttyS7
cdrom loop3 md20 nst0a ram4 stdout tty0 tty30 tty52 urandom
console loop4 md21 nst0l ram5 systty tty1 tty31 tty53 usersock
core loop5 md22 nst0m ram6 tap0 tty10 tty32 tty54 vcs
cpu loop6 md23 null ram7 tap1 tty11 tty33 tty55 vcs1
device-mapper loop7 md24 par0 ram8 tap10 tty12 tty34 tty56 vcs2
disk lp0 md25 parport0 ram9 tap11 tty13 tty35 tty57 vcs3
dm-0 lp1 md26 parport1 ramdisk tap12 tty14 tty36 tty58 vcs4
dm-1 lp2 md27 parport2 random tap13 tty15 tty37 tty59 vcs5
dnrtmsg lp3 md28 parport3 rawctl tap14 tty16 tty38 tty6 vcs6
event0 MAKEDEV md29 port root tap15 tty17 tty39 tty60 vcsa
fd mapper md3 ppp route tap2 tty18 tty4 tty61 vcsa1
full md0 md30 ptmx route6 tap3 tty19 tty40 tty62 vcsa2
fwmonitor md1 md31 pts rtc tap4 tty2 tty41 tty63 vcsa3
gpmctl md10 md4 ram sda tap5 tty20 tty42 tty7 vcsa4
hda md11 md5 ram0 sda1 tap6 tty21 tty43 tty8 vcsa5
hw_random md12 md6 ram1 sda2 tap7 tty22 tty44 tty9 vcsa6
initctl md13 md7 ram10 shm tap8 tty23 tty45 ttyS0 VolGroup00
input md14 md8 ram11 skip tap9 tty24 tty46 ttyS1 xfrm
ip6_fw md15 md9 ram12 st0 tape tty25 tty47 ttyS2 XOR
kmsg md16 mem ram13 st0a tape1 tty26 tty48 ttyS3 zero
log md17 mice ram14 st0l tape2 tty27 tty49 ttyS4
loop0 md18 net ram15 st0m tape3 tty28 tty5 ttyS5
loop1 md19 nflog ram2 stderr tcpdiag tty29 tty50 ttyS6
[root@localhost dev]# /usr/bin/dgrp/config/dgrp_cfg_node -v -v init a 16
/usr/bin/dgrp/config/dgrp_cfg_node: init requested for node a
/usr/bin/dgrp/config/dgrp_cfg_node: testing for a loaded module
/usr/bin/dgrp/config/dgrp_cfg_node: double checking the load
/usr/bin/dgrp/config/dgrp_cfg_node: testing for a in /proc
/usr/bin/dgrp/config/dgrp_cfg_node: double checking the addition of a
/usr/bin/dgrp/config/dgrp_cfg_node: making the special devices for a
/usr/bin/dgrp/config/dgrp_cfg_node: testing for a daemon for a
/usr/bin/dgrp/config/dgrp_cfg_node: testing for a daemon for a
/usr/bin/dgrp/config/dgrp_cfg_node: testing for a loaded module
/usr/bin/dgrp/config/dgrp_cfg_node: testing for a a in /proc
/usr/bin/dgrp/config/dgrp_cfg_node: attempting to start a daemon for a
/usr/bin/dgrp/config/dgrp_cfg_node: operation completed (init node a)
[root@localhost dev]# ls
arpd cu_dgrp_a_26 cu_dgrp_a_62 md12 parport2 pr_dgrp_a_27 pr_dgrp_a_63 stdin tty22 tty59 tty_dgrp_a_22 tty_dgrp_a_59
cdrom cu_dgrp_a_27 cu_dgrp_a_63 md13 parport3 pr_dgrp_a_28 pr_dgrp_a_7 stdout tty23 tty6 tty_dgrp_a_23 tty_dgrp_a_6
console cu_dgrp_a_28 cu_dgrp_a_7 md14 port pr_dgrp_a_29 pr_dgrp_a_8 systty tty24 tty60 tty_dgrp_a_24 tty_dgrp_a_60
core cu_dgrp_a_29 cu_dgrp_a_8 md15 ppp pr_dgrp_a_3 pr_dgrp_a_9 tap0 tty25 tty61 tty_dgrp_a_25 tty_dgrp_a_61
cpu cu_dgrp_a_3 cu_dgrp_a_9 md16 pra00 pr_dgrp_a_30 ptmx tap1 tty26 tty62 tty_dgrp_a_26 tty_dgrp_a_62
cua00 cu_dgrp_a_30 device-mapper md17 pra01 pr_dgrp_a_31 pts tap10 tty27 tty63 tty_dgrp_a_27 tty_dgrp_a_63
cua01 cu_dgrp_a_31 disk md18 pra02 pr_dgrp_a_32 ram tap11 tty28 tty7 tty_dgrp_a_28 tty_dgrp_a_7
cua02 cu_dgrp_a_32 dm-0 md19 pra03 pr_dgrp_a_33 ram0 tap12 tty29 tty8 tty_dgrp_a_29 tty_dgrp_a_8
cua03 cu_dgrp_a_33 dm-1 md2 pra04 pr_dgrp_a_34 ram1 tap13 tty3 tty9 tty_dgrp_a_3 tty_dgrp_a_9
cua04 cu_dgrp_a_34 dnrtmsg md20 pra05 pr_dgrp_a_35 ram10 tap14 tty30 ttya00 tty_dgrp_a_30 ttyS0
cua05 cu_dgrp_a_35 event0 md21 pra06 pr_dgrp_a_36 ram11 tap15 tty31 ttya01 tty_dgrp_a_31 ttyS1
cua06 cu_dgrp_a_36 fd md22 pra07 pr_dgrp_a_37 ram12 tap2 tty32 ttya02 tty_dgrp_a_32 ttyS2
cua07 cu_dgrp_a_37 full md23 pra08 pr_dgrp_a_38 ram13 tap3 tty33 ttya03 tty_dgrp_a_33 ttyS3
cua08 cu_dgrp_a_38 fwmonitor md24 pra09 pr_dgrp_a_39 ram14 tap4 tty34 ttya04 tty_dgrp_a_34 ttyS4
cua09 cu_dgrp_a_39 gpmctl md25 pra10 pr_dgrp_a_4 ram15 tap5 tty35 ttya05 tty_dgrp_a_35 ttyS5
cua10 cu_dgrp_a_4 hda md26 pra11 pr_dgrp_a_40 ram2 tap6 tty36 ttya06 tty_dgrp_a_36 ttyS6
cua11 cu_dgrp_a_40 hw_random md27 pra12 pr_dgrp_a_41 ram3 tap7 tty37 ttya07 tty_dgrp_a_37 ttyS7
cua12 cu_dgrp_a_41 initctl md28 pra13 pr_dgrp_a_42 ram4 tap8 tty38 ttya08 tty_dgrp_a_38 urandom
cua13 cu_dgrp_a_42 input md29 pra14 pr_dgrp_a_43 ram5 tap9 tty39 ttya09 tty_dgrp_a_39 usersock
cua14 cu_dgrp_a_43 ip6_fw md3 pra15 pr_dgrp_a_44 ram6 tape tty4 ttya10 tty_dgrp_a_4 vcs
cua15 cu_dgrp_a_44 kmsg md30 pr_dgrp_a_0 pr_dgrp_a_45 ram7 tape1 tty40 ttya11 tty_dgrp_a_40 vcs1
cu_dgrp_a_0 cu_dgrp_a_45 log md31 pr_dgrp_a_1 pr_dgrp_a_46 ram8 tape2 tty41 ttya12 tty_dgrp_a_41 vcs2
cu_dgrp_a_1 cu_dgrp_a_46 loop0 md4 pr_dgrp_a_10 pr_dgrp_a_47 ram9 tape3 tty42 ttya13 tty_dgrp_a_42 vcs3
cu_dgrp_a_10 cu_dgrp_a_47 loop1 md5 pr_dgrp_a_11 pr_dgrp_a_48 ramdisk tcpdiag tty43 ttya14 tty_dgrp_a_43 vcs4
cu_dgrp_a_11 cu_dgrp_a_48 loop2 md6 pr_dgrp_a_12 pr_dgrp_a_49 random tty tty44 ttya15 tty_dgrp_a_44 vcs5
cu_dgrp_a_12 cu_dgrp_a_49 loop3 md7 pr_dgrp_a_13 pr_dgrp_a_5 rawctl tty0 tty45 tty_dgrp_a_0 tty_dgrp_a_45 vcs6
cu_dgrp_a_13 cu_dgrp_a_5 loop4 md8 pr_dgrp_a_14 pr_dgrp_a_50 root tty1 tty46 tty_dgrp_a_1 tty_dgrp_a_46 vcsa
cu_dgrp_a_14 cu_dgrp_a_50 loop5 md9 pr_dgrp_a_15 pr_dgrp_a_51 route tty10 tty47 tty_dgrp_a_10 tty_dgrp_a_47 vcsa1
cu_dgrp_a_15 cu_dgrp_a_51 loop6 mem pr_dgrp_a_16 pr_dgrp_a_52 route6 tty11 tty48 tty_dgrp_a_11 tty_dgrp_a_48 vcsa2
cu_dgrp_a_16 cu_dgrp_a_52 loop7 mice pr_dgrp_a_17 pr_dgrp_a_53 rtc tty12 tty49 tty_dgrp_a_12 tty_dgrp_a_49 vcsa3
cu_dgrp_a_17 cu_dgrp_a_53 lp0 net pr_dgrp_a_18 pr_dgrp_a_54 sda tty13 tty5 tty_dgrp_a_13 tty_dgrp_a_5 vcsa4
cu_dgrp_a_18 cu_dgrp_a_54 lp1 nflog pr_dgrp_a_19 pr_dgrp_a_55 sda1 tty14 tty50 tty_dgrp_a_14 tty_dgrp_a_50 vcsa5
cu_dgrp_a_19 cu_dgrp_a_55 lp2 nst0 pr_dgrp_a_2 pr_dgrp_a_56 sda2 tty15 tty51 tty_dgrp_a_15 tty_dgrp_a_51 vcsa6
cu_dgrp_a_2 cu_dgrp_a_56 lp3 nst0a pr_dgrp_a_20 pr_dgrp_a_57 shm tty16 tty52 tty_dgrp_a_16 tty_dgrp_a_52 VolGroup00
cu_dgrp_a_20 cu_dgrp_a_57 MAKEDEV nst0l pr_dgrp_a_21 pr_dgrp_a_58 skip tty17 tty53 tty_dgrp_a_17 tty_dgrp_a_53 xfrm
cu_dgrp_a_21 cu_dgrp_a_58 mapper nst0m pr_dgrp_a_22 pr_dgrp_a_59 st0 tty18 tty54 tty_dgrp_a_18 tty_dgrp_a_54 XOR
cu_dgrp_a_22 cu_dgrp_a_59 md0 null pr_dgrp_a_23 pr_dgrp_a_6 st0a tty19 tty55 tty_dgrp_a_19 tty_dgrp_a_55 zero
cu_dgrp_a_23 cu_dgrp_a_6 md1 par0 pr_dgrp_a_24 pr_dgrp_a_60 st0l tty2 tty56 tty_dgrp_a_2 tty_dgrp_a_56
cu_dgrp_a_24 cu_dgrp_a_60 md10 parport0 pr_dgrp_a_25 pr_dgrp_a_61 st0m tty20 tty57 tty_dgrp_a_20 tty_dgrp_a_57
cu_dgrp_a_25 cu_dgrp_a_61 md11 parport1 pr_dgrp_a_26 pr_dgrp_a_62 stderr tty21 tty58 tty_dgrp_a_21 tty_dgrp_a_58

The question is now…

What is what?

Why are there so many new ones?

Which tty’s relate to which ports on the port server?

How can I find out?

So many questions, so few answers, I feel like i’ve missed out on some documentation somewhere, yet I can’t locate anything additional.

I look forward to your responses.

So i’m reading this…


On page 3-8 (22 of 34) it explains a bit more.

However, its only got 16 ports, so why are there so many?

After closer examination I noticed there are some tty’s as follows:

ttya00 to ttya15

00 relates to physical port 1, so 15 relates to physical port 16.

I figured out I had a printer on ttya14, which is physical port 15, and managed to output using:

echo 'testing
’ > /dev/ttya14

Hope this helps others.

The cu* devices are deprecated and no longer used in Linux. The pr* devices are used for transparent printing and the tty* devices are the standard devices.

What version of the RealPort driver are you using?

The most current “beta” version of the RealPort driver should NOT register 64 ports with sysfs/UDEV when you only have 16.

As for the naming itself, the current beta driver has been transitioned to fully support UDEV now:

This makes the tty naming go back to the way it should be.

Scott Kilau