raspbian_stretch9_xenomai3.0.8.img.7z (created june 2019)
raspberrypi-kernel-4.9.80-rpi-xeno-3.0.8_armhf.debwhich you just have to install on a standard pi image to get xenomai support on that image. It installs the xenomai patched kernel, its modules and the xenomai tools and libraries in one go!
linux-headers-4.9.80-rpi-xeno-3.0.8+_4.9.80-rpi-xeno-3.0.8+-1_armhf.debNote: if you want to compile a kernel module using these linux headers you must first run the following command:
cd /usr/src/linux-headers-4.9.80-rpi-xeno-3.0.8+/ make -i modules_prepareIgnore the errors, it just only needs to recompile the scripts in the linux headers folder. These scripts are in intel format in the package because I cross compiled these debian packages on an intel machine and somehow the scripts where compiled for the local platform instead of the arm platform, so therefore we need to recompile them on the pi it self.
raspbian_jessie8_xenomai3.0.5.img.7z (created juli 2017)
make -i modules_prepareIgnore the errors, it just only needs to recompile the scripts in the linux headers folder. These scripts are in intel format in the package because I cross compiled these debian packages on an intel machine and somehow the scripts where compiled for the local platform instead of the arm platform, so therefore we need to recompile them on the pi it self.
user: pi passwd: raspberry user: root passwd: piFor working with xenomai the root user is preferred.
sudo raspi-config --expand-rootfs sudo shutdown -r now
wifi settings: SSID: ASUS_NDL 2.4 gigahertz PREFERRED SSID: ASUS_5G_NDL 5 gigahertz security: WPA2 personal password: ask-for-it
http://www.cs.ru.nl/lab/dyndns/
Note: at each boot the pi updates its ip address to the above server. The server also shows the time of update, so that you can see whether the entry is recent or old. If you connect an utp cable after booting you have to reboot the pi to have the ip send to the server. Also sometimes fetching an ip address is so slow for the first time that the dyndns update script is run before the new ip is fetched. On the next boot fetching the ip will be faster, so in that case just reboot. Luckily booting of the pi is very fast!!/sbin/ifconfigNote: at each login the pi automatically prints the mac and ip address of the eth0 and wlan0 interfaces
smb://<ip-address>/root user: root passwd: piOn windows you can access this share by typing the following in the explorer's address bar :
\\<ip-address>\root user: root passwd: pi
alias xeno-stat="cat /proc/xenomai/sched/stat" alias xeno-threads="cat /proc/xenomai/sched/threads" alias xeno-rt-threads="cat /proc/xenomai/sched/rt/threads" alias xeno-interrupts="cat /proc/xenomai/irq" alias xeno-version=/usr/xenomai/sbin/version # convenience methods to switch between cobalt and mercury # note: mercury is running on xenomai-cobalt patched kernel but without rt_preempt patch # => running on mercury on this image is thus just running on linux but then as high prio (fifo) thread within linux (independent cobalt) # => just to show portability xenomai programs from cobalt to mercury # => important: most rtdm drivers are only available for cobalt and are not available yet for mercury (eg. gpio rtdm driver) xeno-switch-cobalt() { ... } xeno-switch-mercury() { ... }
sudo apt-get update sudo apt-get dist-upgrade sudo apt-get install -y rpi-chromium-mods sudo apt-get install -y python-sense-emu python3-sense-emu python-sense-emu-docJust reboot the pi to login to do a graphical login to Pixel, which is on virtual console 7 (ctrl-alt-F7).