• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 608
  • Last Modified:

Minimal Ubuntu distro for my mobile robot (pandaboard)

I'm developing a mobile robot application and i'm using a high-level board (pandaboard es) which can run linux operating system and a low I/O board to manage the sensors.

These two boards share data over ethernet while the high-level board controls a motor driver by using the USB port.

At the moment, i've installed Ubuntu Maverick on the high-level board and it works great.

The problem is that i'd like to minimize all the operating system functions, to use just the command line (i do not need the X server) and to avoid not-necessary resources consumption.

What i need to do on the high-level board is just to run a C program which takes information from the ethernet, do some calculations and send data over the USB.

So, what i need is:

- use ethernet
- use boost library, multi threading, I/O operations
- read/write on serial port (USB) with termios library
- sometimes, use a remote connection in order to control the system from another pc

Furthermore, i need to let the C program start automatically when the operatin system is powered up.

It is possible to start the C program when the operating system is on?
I have to use a bash script to do this?

Is there any Ubuntu minimal distro which i can use for my purpose?

(This is the board i'm using: http://en.wikipedia.org/wiki/PandaBoard)
0
ichigokurosaki
Asked:
ichigokurosaki
  • 2
  • 2
  • 2
  • +1
1 Solution
 
eagerCommented:
Look at Damn Small Linux or TinyLinux.  I don't know if there are ports to ARM.
0
 
Kalpesh ChavanSenior Software EngineerCommented:
use Fedora form Arm

http://fedoraproject.org/wiki/Architectures/ARM

Yes You can put application at start up by Creating Service

just place your command in start ,  stop  functions


#!/bin/bash
#
# Fedora-Service Update notification daemon
#
# Author:       TheLinuxBlog.com
#
# chkconfig:    1000 50 50
#
# description:  This is a test Fedora Service \
#               Second line of the fedora service template.
# processname:  FedoraTemplate
#
RETVAL=0;
 
start() {
echo "Starting Fedora-Service"
}
 
stop() {
echo "Stopping Fedora-Service"
}
 
restart() {
stop
start
}
 
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
*)
echo $"Usage: $0 {start|stop|restart}"
exit 1
esac
 
exit $RETVAL

Open in new window


save it in /etc/init.d/ directory as ABC
chmod +x /etc/init.d/ABC
to put at statrtup

chkconfig --add ABC

Open in new window


Note: login as Root User
0
 
TobiasHolmCommented:
Compile the kernel yourself to build your own dist! Or use TinyCore Linux.

Regards, Tobias
0
Cloud Class® Course: Certified Penetration Testing

This CPTE Certified Penetration Testing Engineer course covers everything you need to know about becoming a Certified Penetration Testing Engineer. Career Path: Professional roles include Ethical Hackers, Security Consultants, System Administrators, and Chief Security Officers.

 
ichigokurosakiAuthor Commented:
Hi Tobias, is there some tutorial which can explain me how to build my own dist?
0
 
TobiasHolmCommented:
Read here how to compile Linux from scratch: http://www.linuxfromscratch.org/

Regards, Tobias
0
 
eagerCommented:
Building a new distro is a bit of work.   Packages don't build without problem and resolving these issues can take time.  Finding a usable distro and configuring it would be a much easier path.  Ubuntu and other distros allow you to select which packages you want to install.

If you really want to build a distro, take a look at the Buildroot and Yocto projects.  These are designed to build kernel and root file systems for embedded Linux systems.

Buildroot:  http://buildroot.uclibc.org/
Yocto:  http://www.yoctoproject.org/
0
 
ichigokurosakiAuthor Commented:
Thanks for all you suggestions.

At the end, pandaboard was not suitable for me application so i had to switch to another hardware type and I decided to use a minimal Ubuntu installation.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Cloud Class® Course: Certified Penetration Testing

This CPTE Certified Penetration Testing Engineer course covers everything you need to know about becoming a Certified Penetration Testing Engineer. Career Path: Professional roles include Ethical Hackers, Security Consultants, System Administrators, and Chief Security Officers.

  • 2
  • 2
  • 2
  • +1
Tackle projects and never again get stuck behind a technical roadblock.
Join Now