Install on raspberry

From Rsewiki
(Difference between revisions)
Jump to: navigation, search
(Packages needed)
 
(199 intermediate revisions by 2 users not shown)
Line 1: Line 1:
Short note on installation of (parts of) mobotware on Raspberry Pi
+
Back to [[Robobot]]
  
=== Prerequisite ===
+
Back to [[Flexbot]]
  
First install 2012-10-28-wheezy-raspbian on the raspberry Pi flashdisk and expand the flash-disk to at least 4GB - see the instructions on http://elinux.org/RaspberryPiBoardBeginners
 
  
Assuming this is up and running - with internet access
+
== Prerequisite ==
  
=== Packages needed ===
+
* Raspberry pi - version 3 or 4
 +
* SD-card preferably at least 16Gb
 +
* Monitor with HDMI (version 3) or micro HDMI (version 4) cable
 +
* keyboard - and optional a mouse
 +
* Access to network (wired or wifi)
 +
* Power - either an USB charger or cable to a PC (micro USB (version 3) or USB-C (version 4)
  
The following packeges needs to be installed - e.g. using apt-get like:
+
It should be possible to start using USB or wifi connection from a PC without extra screen or keyboard, find solutions on internet - I have not tried.
  
sudo apt-get install subversion
+
====Make SD card a FAT32 partision, if reusing an old card====
  
Package list:
+
A new SD-card is fine as is, else
  
subversion  (to fetch mobotware from SVN)
+
see http://qdosmsq.dunbar-it.co.uk/blog/2013/06/noobs-for-raspberry-pi/ for instruction to prepare any old or new SD-card
libexpat-dev  (RHD)
+
pciutils-dev  (RHD)
+
libncurses-dev (RHD)
+
bison          (MRC)
+
libsdl-dev    (MRC)
+
telnet        (MRC test)
+
  
Get and unpack mobotware - you need the following directories only:
+
====Add boot-files to SD card====
mobotware/aumat
+
mobotware/mrc
+
mobotware/rhd
+
mobotware/build
+
The rest of the directories can be deleted, so can rhd/branches
+
  
=== Build ===
+
=====RPI imager =====
Build the needed parts of mobotware, e.g.:
+
cd ~/mobotware/aumat/trunk
+
make
+
cd ../../rhd/trunk
+
make
+
cd ../../mrc/trunk
+
make
+
In this order
+
  
Then collect the configuration and binary files in a test directory
+
Version 10 (buster) is easily installed using the 'Raspberry pi imager',
 +
on Linux install with
  
=== Test ===
+
snap install rpi-imager
 +
rpi-imager
  
make a test directory and fill it with the needed configuration and binary files, e.g.
+
and follow the screen
mkdir live
+
cd live
+
cp -r ~/mobotware/build/config/gogo/* .
+
ln -s ~/mobotware/rhd/trunc/build/bin/rhd .
+
ln -s ~/mobotware/rhd/trunk/build/bin/rhdtest .
+
ln -s ~/mobotware/mrc/trunk/mrc/mrc .
+
  
You now need to modify the rhdconfig.xml file:
+
=====manual =====
Change the path to plugins, using e.g. nano
+
nano -w rhdconfig.xml
+
Change the line (assuming you use the default pi user)
+
from: <plugins basepath="/usr/local/smr/lib/rhdplugin/">
+
to:  <plugins basepath="/home/pi/mobotware/rhd/trunk/build/lib/rhdplugin/">
+
In the rhdconfig.xml there is already a number og plugins, this list need to be updated to your configuration.
+
  
To test if the RHD is running you may just change the attribute critical="true" to critical="false", the RHD will then continue even if the plugin fails to initialize. If some plugin is not found - e.g. maestro12ch.so.1 (it is not compiled by default) - then delete it from the rhdconfig.xml file, or change enable="true" to enable="false" for this plugin.
+
or  
  
The file calib/robot.conf needs update too.
+
Get the install zip-file from https://www.raspberrypi.org/downloads/noobs/  
You may use the configuration files in mobotware/build/config for inspiration
+
  
Now start the RHD (in the live directory):
+
Then unpack NOOBS zip-file to the new disk (use the newest version), like
  ./rhd
+
for the network version
It should end by saying "RHD is running", else check the rhdconfig.xml as above.
+
  unzip NOOBS_lite_v3_5_1.zip -d /media/xxx/yyyy  or
 +
unzip ~/Downloads/raspberry/NOOBS_lite_v3_5_1.zip  (if you are on the empty flash)
 +
or for the full version
 +
unzip NOOBS_v3_5_1.zip -d /media/xxx/yyyy  or
 +
unzip ~/Downloads/raspberry/NOOBS_v3_5_1.zip  (if you are on the empty flash)
  
OPen a new terminal tab and run rhdtest to see if it is alive:
+
====Reboot====
  ./rhdtest
+
 
And type
+
* Insert SD card on Raspberry,
  connect
+
* Mount a heatsink - especially needed on version 4,
You should now see a list of variables, where at least the Tick is updating.
+
* Connect monitor, keyboard and (USB) power
 +
 
 +
That is all, Raspberry should boot on that, and take some time to prepare the SD-Card.
 +
Or see instructions on e.g.: https://www.raspberrypi.org/help/noobs-setup/
 +
 
 +
* Boot the raspberry and install the Raspberry Pi OS full (Debian).
 +
* On the bottom of the screen select keyboard layout and language,
 +
 
 +
Settings
 +
 
 +
* Leave the pi password as is (for future reuse)
 +
* Select language (prefer English - also for future reuse)
 +
* select wifi access - if not using a cable.
 +
 
 +
==Usefull Linux commands==
 +
 
 +
Here are some common commands in Linux
 +
 
 +
  ls    (directory file list)
 +
cd    (change to home directory)
 +
cd some_directory    (change to a subdirectory)
 +
exit  (logout, e.g. of a ssh session)
 +
grep -n string_to_look_for_in_a_file  *.cpp    (find a string in a file, e.g. a variable or a function)
 +
  sudo some_command    (execute a command as "root" - root is a superuser with administrator rights to everything)
 +
pkill some_application_name  (stop (or kill) a running process with name "some_application_name")
 +
pgrep some_application_name  (see if a process is running - good to use before a kill)
 +
mv  from_file to_file    (rename a file)
 +
cp  from_file to_file    (copy a file)
 +
rm  some_file            (remove (delete) a file)
 +
nano some_file          (simple text editor)
 +
zip, unzip              (pack or unpack files -  try zip --help  to see how.
 +
top    (see process load and memory usage)
 +
make    (compile all as described in the "Makefile" in the same directory)
 +
make -j4 (compile using up to 4 CPU cores - faster if more files need to be compiled)
 +
 
 +
All commands have an online help if you add --help or -h after the command.
 +
If this is not enough, then try
 +
man ls
 +
to get the manual page for the ls command.
 +
 
 +
== Configure ==
 +
 
 +
==== Raspberry ====
 +
 
 +
use raspi-config, start a terminal:
 +
 
 +
sudo raspi-config
 +
 
 +
Using ''raspi-config''
 +
Enable Camera
 +
Set hostname (one word, no space)
 +
Enable SSH
 +
Disable Serial login
 +
boot as a console with login
 +
Update firmware
 +
Set locale to "en_DK.UTF-8 UTF-8" (danish keyboard, but English language)
 +
 
 +
=== Update operating system ===
 +
 
 +
Ensure you have internet access, then
 +
 
 +
sudo apt-get update
 +
sudo apt-get dist-upgrade
 +
sudo reboot

Latest revision as of 09:54, 24 December 2021

Back to Robobot

Back to Flexbot


Contents

[edit] Prerequisite

  • Raspberry pi - version 3 or 4
  • SD-card preferably at least 16Gb
  • Monitor with HDMI (version 3) or micro HDMI (version 4) cable
  • keyboard - and optional a mouse
  • Access to network (wired or wifi)
  • Power - either an USB charger or cable to a PC (micro USB (version 3) or USB-C (version 4)

It should be possible to start using USB or wifi connection from a PC without extra screen or keyboard, find solutions on internet - I have not tried.

[edit] Make SD card a FAT32 partision, if reusing an old card

A new SD-card is fine as is, else

see http://qdosmsq.dunbar-it.co.uk/blog/2013/06/noobs-for-raspberry-pi/ for instruction to prepare any old or new SD-card

[edit] Add boot-files to SD card

[edit] RPI imager

Version 10 (buster) is easily installed using the 'Raspberry pi imager', on Linux install with

snap install rpi-imager
rpi-imager

and follow the screen

[edit] manual

or

Get the install zip-file from https://www.raspberrypi.org/downloads/noobs/

Then unpack NOOBS zip-file to the new disk (use the newest version), like for the network version

unzip NOOBS_lite_v3_5_1.zip -d /media/xxx/yyyy  or
unzip ~/Downloads/raspberry/NOOBS_lite_v3_5_1.zip  (if you are on the empty flash)

or for the full version

unzip NOOBS_v3_5_1.zip -d /media/xxx/yyyy  or
unzip ~/Downloads/raspberry/NOOBS_v3_5_1.zip  (if you are on the empty flash)

[edit] Reboot

  • Insert SD card on Raspberry,
  • Mount a heatsink - especially needed on version 4,
  • Connect monitor, keyboard and (USB) power

That is all, Raspberry should boot on that, and take some time to prepare the SD-Card. Or see instructions on e.g.: https://www.raspberrypi.org/help/noobs-setup/

  • Boot the raspberry and install the Raspberry Pi OS full (Debian).
  • On the bottom of the screen select keyboard layout and language,

Settings

  • Leave the pi password as is (for future reuse)
  • Select language (prefer English - also for future reuse)
  • select wifi access - if not using a cable.

[edit] Usefull Linux commands

Here are some common commands in Linux

ls     (directory file list)
cd     (change to home directory)
cd some_directory    (change to a subdirectory)
exit   (logout, e.g. of a ssh session)
grep -n string_to_look_for_in_a_file  *.cpp     (find a string in a file, e.g. a variable or a function)
sudo some_command    (execute a command as "root" - root is a superuser with administrator rights to everything)
pkill some_application_name  (stop (or kill) a running process with name "some_application_name")
pgrep some_application_name  (see if a process is running - good to use before a kill)
mv  from_file to_file    (rename a file)
cp  from_file to_file    (copy a file)
rm  some_file            (remove (delete) a file)
nano some_file           (simple text editor)
zip, unzip               (pack or unpack files -  try zip --help   to see how.
top     (see process load and memory usage)
make    (compile all as described in the "Makefile" in the same directory)
make -j4 (compile using up to 4 CPU cores - faster if more files need to be compiled)

All commands have an online help if you add --help or -h after the command. If this is not enough, then try

man ls

to get the manual page for the ls command.

[edit] Configure

[edit] Raspberry

use raspi-config, start a terminal:

sudo raspi-config

Using raspi-config

Enable Camera
Set hostname (one word, no space)
Enable SSH
Disable Serial login
boot as a console with login
Update firmware
Set locale to "en_DK.UTF-8 UTF-8" (danish keyboard, but English language)

[edit] Update operating system

Ensure you have internet access, then

sudo apt-get update
sudo apt-get dist-upgrade
sudo reboot
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox