Robobot B

From Rsewiki
(Difference between revisions)
Jump to: navigation, search
(Software installation Raspberry Pi)
(Software installation Raspberry Pi)
Line 24: Line 24:
  
 
* [[Robobot install on Raspberry]]
 
* [[Robobot install on Raspberry]]
 
+
* DTU network and time setup: [[Network setup]]
 
+
* [[Enable autostart]] and IP display
===User and network (WiFi)===
+
 
+
Connect to DTU Wifi
+
 
+
* use NTP (network time protocol) with DTU network (require ntp and ntpdate packages)
+
* connect to DTU network without showing secret password
+
 
+
Instructions here [[Network setup]]
+
 
+
===Enable autostart===
+
 
+
====Display of IP====
+
 
+
Start app to display IP on Regbot display, log CPU temperature and synchronize hostname
+
 
+
Make an on-rebbot script in the home directory
+
 
+
cp ~/svn/robobot/setup/on_reboot.bash ~/
+
 
+
This file is something like:
+
 
+
#!/bin/bash
+
# script to start applications after a reboot
+
#
+
# run the app to show IP of raspberry on the Teensy display.
+
mkdir -p /home/local/svn/log
+
cd /home/local/svn/log
+
# save the last reboot date
+
echo "Rebooted" >> rebootinfo.txt
+
date >> rebootinfo.txt
+
../robobot/ip_disp/build/ip_disp &
+
# save PID for debugging
+
echo "ip_disp started with PID:" >> rebootinfo.txt
+
pgrep -l ip_disp >> rebootinfo.txt
+
exit 0
+
 
+
Use crontab to run this script at reboot
+
 
+
crontab -e
+
 
+
If asked, select the preferred editor (suggesting nano).
+
 
+
Add this line at the end:
+
@reboot /home/local/on_reboot.bash
+
 
+
====Hostname update====
+
 
+
A script updates the Raspberry Pi hostname, with the name in ''~/svn/log/robotname''.
+
The script ''rename_host.bash'' is:
+
#!/bin/bash
+
hn=`hostname`
+
f="/home/local/svn/log/robotname"
+
if [ -f $f ];
+
then
+
  nn=`cat $f`
+
  yy= $(expr length $nn)
+
  if [ $yy -gt 2 ];
+
  then
+
    if [ $hn != $nn ];
+
    then
+
      hostnamectl set-hostname $nn
+
      # seems like /etc/hosts is not updated, but /etc/hostname is
+
      sed -i "s/$hn/$nn/g" /etc/hosts
+
    else
+
      echo Same hostname, all is fine.
+
    fi
+
  fi
+
else
+
  echo "File >" $f "< not found."
+
fi
+
 
+
The script needs to be run as root, it is therefore set to run as part of the boot process.
+
 
+
Create the script in /etc/init.d
+
 
+
sudo nano /etc/init.d/host_rename.sh
+
 
+
Enter the following lines into the new file
+
 
+
#!/bin/bash
+
bash /home/local/svn/robobot/setup/rename_host.bash
+
 
+
Make the file executable and add it to run-level 2 (before networking is started)
+
 
+
sudo chmod +x /etc/init.d/host_rename.sh
+
sudo ln -s /etc/init.d/host_rename.sh /etc/rc2.d/S99host_rename
+
 
+
The script is then executed when the Raspberry boots, and if the hostname does not match that of the Teensy, then the hostname is modified.
+
  
  

Revision as of 10:49, 22 October 2023

This page is is for development nodes and user description of the simplified version of Robobot

Contents

Robobot B description

This section is intended for users.

Robobot-in-blocks-2024.png Robobot-design-2024.png

Overview

Development notes

This section is for development notes.

Software installation Raspberry Pi


Robobot base software

To make the initial copy from the repository

cd
cd svn
svn checkout svn://repos.gbar.dtu.dk/jcan/robobot

To update with a new version

cd
cd svn/robobot
svn update

Teensy

Software tool chain installation

Old Robobot pages

robobot an extension to Regbot with a raspberry pi for more extended missions, but uses mission code in Teensy, like Regbot.

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox