Remotive Labs provides integrations to various platforms (read more), however in many cases you might prefer to host the software in a machine of your choice. If so; you are in the correct location, keep reading.
prerequisites:
docker
docker-compose
git
inotify-tools
(optional)
Clone this repository and make sure you have docker
and docker-compose
installed, then run:
docker-compose up -d
This command only needs to be run once. It is persistent over system reboot -- the containers will be restarted after a reboot, over and over again.
Point your web browser at the machine running RemotiveBroker, an address like
http://192.0.2.42:8080/
.
Please note, the following license applies to the usage of Remotive Labs products, which is also shown when you run docker-compose up
in attached mode.
##########################################################################################
You are using software provided by Remotive Labs AB pursuant to the
terms of the End User License Agreement located at
https://www.remotivelabs.com/license. This license sets out the only
licensed rights granted to you with respect to this software.
By downloading or using such software, you accept and agree to the
terms of his license. This license is valid until 'your end date will be shown here'.
After this date, you need to either renew your license or cease
all use of the software.
##########################################################################################
DONE! Now improve your experience by applying next step.
In order to allow upgrades triggered by the user interface you need to install a custom service. To install and start this service (only needed once):
sudo scripts/install-service.sh
This script assumes that you are running on a host where
systemd
is present
Navigate to the About tab in the web interface, additional instructions can be found here.
RemotiveBroker support all can interfaces which supports socket-can
. Many USB
can connectors are supported by default by the linux kernel. Typically, it will appear
when you do ip a
then you simply need to do:
#can/canfd
ip link set can0 type can bitrate 500000 dbitrate 2000000 restart-ms 1000 berr-reporting on fd on
## less capable device
#can
ip link set can0 type can bitrate 500000 dbitrate 2000000 restart-ms 1000 berr-reporting on
## if above doesn't work try
ip link set can0 up type can bitrate 500000 restart-ms 1000
Remember to run as sudo if you run from shell
Setting up these interfaces on boot on Raspbian would look as follows
cat /etc/network/interfaces.d/can
auto can0
iface can0 inet manual
pre-up /sbin/ip link set can0 type can bitrate 500000 dbitrate 8000000 restart-ms 1000 berr-reporting on fd on
up /sbin/ip link set can0 txqueuelen 65536 up
down /sbin/ip link set can0 down
auto can1
iface can1 inet manual
pre-up /sbin/ip link set can1 type can bitrate 500000 dbitrate 8000000 restart-ms 1000 berr-reporting on fd on
up /sbin/ip link set can1 txqueuelen 65536 up
down /sbin/ip link set can1 down
## some devices do not support berr-reporting on
## if above doesn't work try
iface can2 inet manual
pre-up /sbin/ip link set can2 type can bitrate 500000 restart-ms 1000
up /sbin/ip link set can2 txqueuelen 65536 up
down /sbin/ip link set can2 down
These protocols are carried over ethernet, however dependent on you HW choice let us help. Reach out on [email protected]. Some guidance can be located below.
It's recommended to install a bridge module on the same host machine. The scrips provided here will install 2 services, allowing two Technica devices (thus enabling 2 flexray interfaces), one on port 51112 and the other on port 51113.
!> Make sure that your Technica devices is configured to use PLP
headers and also make sure to note specified Destination MAC
(available by clicking SPY
) typically 01:00:5e:00:00:00
.
Connect your Technica device to the secondary usb ethernet interface eth1
which is mentioned above. As multicast address provide Destination MAC
.
{
"chains": [
{
"type": "flexray",
"device_name": "flexray0",
"namespace": "MyFlexrayNamespace",
"config": {
"target_host": "127.0.0.1",
"target_port": 51112,
"hardware": "Technica_CM_CAN_COMBO",
"target_config": {
"interface": "eth1",
"multicast": "01:00:5e:00:00:00"
}
},
"database": "fibex_files/flexray.xml"
}
]
}
The binary located here need to be installed on the MX-4 T30 FR device. Go here for more information.
{
"chains": [
{
"type": "flexray",
"device_name": "flexray0",
"namespace": "MyFlexrayNamespace",
"config": {
"target_host": "127.0.0.1",
"target_port": 51111
},
"database": "fibex_files/flexray.xml"
}
]
}
This mode enables you to daisy chain machines running RemotiveBroker allowing you to increase number of physical interfaces. read more here
Our prebuild image contains binaries for ptp /home/pi/src/linuxptp typically there is a PTP Grandmaster, to connect go ahead and do:
sudo ./ptp4l -m -i eth0 -S --step_threshold=1 -f configs/automotive-slave.cfg
Make sure to specify correct interface in the example above
eth0
is used.
docker-compose down
When you upgrade; remember to upgrade THIS repository as well git pull
,
as examples are continuously updated and improved. You will also find the
latest pre-generated grpc files in this repository.
git pull
./upgrade.sh
Alternatively, just pull the latest container images manually:
docker-compose pull
To pull a specific version you can specify custom tag for REMOTIVEBROKER_TAG
or
REMOTIVEWEBAPP_TAG
, as in:
REMOTIVEBROKER_TAG=v1.2.3 docker-compose up -d
If you have done
Step 2/2
above, you can conveniently pick version from theAbout
in the user interface.
To start from a clean configuration you could do:
rm remotivelabs-bootstrap/configuration/boot
You can always reach out to us on [email protected]