RTNet - vnic0 question

Laurentiu-Cristian Duca laurentiu.duca at gmail.com
Thu Aug 22 09:39:26 CEST 2019


Hello Jan and friends

  Thank you for your fast answer. Please find below the details.

On 8/21/19, Jan Kiszka <jan.kiszka at siemens.com> wrote:
> On 21.08.19 16:20, Laurentiu-Cristian Duca via Xenomai wrote:
>> Hello rtnet community,
>>
>>    I successfully tested the examples rtt-sender and rtt-responder
>> within a rtnet made from one beaglebone black and one
>> qemu-x86_64-8139too,
>> with tdma and also with nomac.
>
> Are we talking about some legacy Xenomai or even RTnet version? Or where did
> you
> get the examples from? They are not part of RTnet in Xenomai 3.
>
  I got the examples from rtnet-0.9.13. I know they are quite old, but
I needed a start point.
Are these obsolete? Do you have any examples for Xenomai 3?
rtnet-0.9.13/examples/xenomai/posix/rtt-sender.c
rtnet-0.9.13/examples/xenomai/posix/rtt-responder.c

>>
>>    I have noted that the presence of vnic0 as an up and fully
>> configured interface is mandatory,
>> even if rteth0 is up and fully configured.
>> Otherwise the rtt-sender announces "sendto failed: Network is
>> unreachable".
>> Could anybody tell me why is this happening?
>>
>>    I have also noted that if I disable vnic0 (ifconfig vnic0 down),
>> rtping works if rteth0 is up and fully configured.
>> Why does not work rtt-sender in this case?
>> Could it be a problem with rtnet drivers?
>
> I bet your examples are falling back to normal network here, and that is
> provided between your test nodes via the vnics. This leads to my first
> question:
> Where did you pick the examples up, how did you build them etc.? Also, did
> you
> make sure that rtudp was loaded?

   I am 100% sure that rtudp was loaded. The modules were loaded by a script:
modprobe rt_smsc && modprobe rt_davinci_mdio && modprobe rt_ticpsw
modprobe rtipv4 && modprobe rtpacket && modprobe rtudp
modprobe rtmac
modprobe nomac
#modprobe tdma

  I used robertcnelson Xenomai 3.0.9 patch for beaglebone black linux
4.14.108. It's on github.
I have also copied the rtnet header files to xenomai-userspace
include. The files compile without warnings.
The makefile is:
# Tested with linaro toolchain
(gcc-linaro-7.4.1-2019.02-x86_64_arm-linux-gnueabihf)
CC = arm-linux-gnueabihf-gcc
XENO_INSTALL = /home/laur/lucru/raspberry-pi/robertcnelson/ti-linux-kernel-dev/ignore/xenomai-userspace
RTNET_INSTALL = /home/laur/lucru/raspberry-pi/robertcnelson/rtnet-hiddeate2m

#XENO_CONFIG :=
/home/laur/lucru/raspberry-pi/robertcnelson/ti-linux-kernel-dev/ignore/xenomai-userspace/usr/xenomai/bin/xeno-config
#/usr/xenomai/bin/xeno-config
#CFLAGS := $(shell $(XENO_CONFIG)   --posix --alchemy --cflags)
#LDFLAGS := $(shell $(XENO_CONFIG)  --posix --alchemy --ldflags)

LIBCFLAGS = -Wall -I$(XENO_INSTALL)/usr/xenomai/include/cobalt
LIBCFLAGS += -I$(XENO_INSTALL)/usr/xenomai/include

CFLAGS = -Wall -I$(XENO_INSTALL)/usr/xenomai/include/cobalt
CFLAGS += -I$(XENO_INSTALL)/usr/xenomai/include/alchemy
-I$(XENO_INSTALL)/usr/xenomai/include
CFLAGS += -march=armv7-a -mfpu=vfpv4 -D_GNU_SOURCE -D_REENTRANT
-D__COBALT__ -D__COBALT_WRAP_
CFLAGS += -I$(RTNET_INSTALL)/stack/include

LFLAGS = -lalchemy -lcopperplate
$(XENO_INSTALL)/usr/xenomai/lib/xenomai/bootstrap.o
LFLAGS += -Wl,--wrap=main -Wl,--wrap=malloc -Wl,--wrap=free
#-Wl,--dynamic-list=$(XENO_INSTALL)/usr/xenomai/lib/dynlist.ld
LFLAGS += -L$(XENO_INSTALL)/usr/xenomai/lib -lcobalt -lpthread -lrt
LFLAGS +=  -march=armv7-a -mfpu=vfpv4 -Llib

all: rtt-sender rtt-responder
rtt-sender: rtt-sender.o
	$(CC) -o rtt-sender rtt-sender.o $(LFLAGS)
rtt-sender.o: rtt-sender.c
	$(CC) -c -o rtt-sender.o rtt-sender.c $(CFLAGS) $(LIBCFLAGS)
(same for rtt-responder)


Kind regards,
L-C.



More information about the Xenomai mailing list