Hi all, thank you so much for the help so far with the setting up of
xenomai, however I am still stuck with rtnet. Am i missing something to
find the 6 different slaves on the robot?
I thought that by modifying the tdma.conf, i will at least be able to get a
response from the ip of the slave but till now i have no success.
I have also tried changing the ipaddress, but decided to revert back to
default to see if i am making a mistake there.
And my computer have a tendency to freeze after i start rtnet and check the
rtroute.

Will appreciate any help i can get with regards to this matter.

Please do correct me if i am making a mistake.

after loading into xenomai kernel, I do the following commands :

sudo ifconfig eth0 down

sudo rmmod e1000e

cd /usr/xenomai

sudo ./rtnet start

waiting for slaves.

sudo ./rtifconfig

rteth0    Medium: Ethernet  Hardware address: 1C:69:7A:0F:04:42
          IP address: 10.0.0.1  Broadcast address: 10.255.255.255
          UP BROADCAST  MTU: 1500

rtlo      Medium: Local Loopback
          IP address: 127.0.0.1
          UP LOOPBACK RUNNING  MTU: 1500

sudo ./rtroute

Host Routing Table
Hash Destination HW Address Device
00 0.0.0.0   00:00:00:00:00:00 rtlo
01 10.0.0.1   00:00:00:00:00:00 rtlo
01 127.0.0.1   00:00:00:00:00:00 rtlo
3F 10.255.255.255 FF:FF:FF:FF:FF:FF rteth0

dmesg
[  566.798184] TDMA: Failed to transmit sync frame!

cat rtnet.conf

# This file is usually located in <PREFIX>/etc/rtnet.conf
# Please adapt it to your system.
# This configuration file is used with the rtnet script.

# RTnet installation path
prefix="/usr/xenomai"
exec_prefix="${prefix}"
RTNET_MOD="/lib/modules/`uname -r`/kernel/drivers/xenomai/net"
RTIFCONFIG="${exec_prefix}/sbin/rtifconfig"
RTCFG="${exec_prefix}/sbin/rtcfg"
TDMACFG="${exec_prefix}/sbin/tdmacfg"

# Module suffix: ".o" for 2.4 kernels, ".ko" for later versions
MODULE_EXT=".ko"



# RT-NIC driver
RT_DRIVER="rt_e1000e"
RT_DRIVER_OPTIONS=""

# PCI addresses of RT-NICs to claim (format: 0000:00:00.0)
#   If both Linux and RTnet drivers for the same hardware are loaded, this
#   list instructs the start script to rebind the given PCI devices,
detaching
#   from their Linux driver, attaching it to the RT driver above. Example:
#   REBIND_RT_NICS="0000:00:19.0 0000:01:1d.1"
REBIND_RT_NICS="0000:00:1f.6"

# IP address and netmask of this station
#   The TDMA_CONFIG file overrides these parameters for masters and backup
#   masters. Leave blank if you do not use IP addresses or if this station
is
#   intended to retrieve its IP from the master based on its MAC address.
IPADDR="10.0.0.1"
NETMASK="255.255.255.0"

# Start realtime loopback device ("yes" or "no")
RT_LOOPBACK="yes"

# Use the following RTnet protocol drivers
RT_PROTOCOLS="udp packet"

# Start capturing interface ("yes" or "no")
RTCAP="yes"



# Common RTcfg stage 2 config data (master mode only)
#   The TDMA_CONFIG file overrides this parameter.
STAGE_2_SRC=""

# Stage 2 config data destination file (slave mode only)
STAGE_2_DST=""

# Command to be executed after stage 2 phase (slave mode only)
STAGE_2_CMDS=""

# TDMA mode of the station ("master" or "slave")
#   Start backup masters in slave mode, it will then be switched to master
#   mode automatically during startup.
TDMA_MODE="master"

# Master parameters

# Simple setup: List of TDMA slaves
#TDMA_SLAVES="10.0.0.2"

# Simple setup: Cycle time in microsecond
#TDMA_CYCLE="5000"

# Simple setup: Offset in microsecond between TDMA slots
#TDMA_OFFSET="200"

# Advanced setup: Config file containing all TDMA station parameters
#   To use this mode, uncomment the following line and disable the
#   three master parameters above (SLAVES, CYCLE, and OFFSET).
TDMA_CONFIG="${prefix}/etc/tdma.conf"


cat tdma.conf

#
# Examplary TDMA configuration file
#

# Primary master

master:
ip 10.0.0.1
cycle 5000
slot 0 0
slot 1 1000


# Backup master
#  Cycle is defined by the primary master

backup-master:
ip 10.0.0.2
backup-offset 200
slot 0 400


# Slave A
#  MAC is unknown, slave will be pre-configured to the given IP

slave:
ip 10.0.0.3
slot 0 2000
slot 1 2200 1/2


# Slave B
#  IP is assigned to the slave via its known MAC address

slave:
ip 10.0.0.4
mac 00:12:34:56:AA:FF
slot 0 2400
slot 1 2200 2/2

Reply via email to