Solved

Minimal Ubuntu distro for my mobile robot (pandaboard)

Posted on 2012-03-15
7
559 Views
Last Modified: 2016-05-20
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
Comment
Question by:ichigokurosaki
  • 2
  • 2
  • 2
  • +1
7 Comments
 
LVL 8

Expert Comment

by:eager
ID: 37727346
Look at Damn Small Linux or TinyLinux.  I don't know if there are ports to ARM.
0
 
LVL 3

Accepted Solution

by:
kalpeshchavan earned 500 total points
ID: 37727936
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
 
LVL 18

Expert Comment

by:TobiasHolm
ID: 37728008
Compile the kernel yourself to build your own dist! Or use TinyCore Linux.

Regards, Tobias
0
Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

 

Author Comment

by:ichigokurosaki
ID: 37734528
Hi Tobias, is there some tutorial which can explain me how to build my own dist?
0
 
LVL 18

Expert Comment

by:TobiasHolm
ID: 37734703
Read here how to compile Linux from scratch: http://www.linuxfromscratch.org/

Regards, Tobias
0
 
LVL 8

Expert Comment

by:eager
ID: 37735240
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
 

Author Comment

by:ichigokurosaki
ID: 37848869
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

Featured Post

Microsoft Certification Exam 74-409

Veeam® is happy to provide the Microsoft community with a study guide prepared by MVP and MCT, Orin Thomas. This guide will take you through each of the exam objectives, helping you to prepare for and pass the examination.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Preface I don't like visual development tools that are supposed to write a program for me. Even if it is Xcode and I can use Interface Builder. Yes, it is a perfect tool and has helped me a lot, mainly, in the beginning, when my programs were small…
Windows programmers of the C/C++ variety, how many of you realise that since Window 9x Microsoft has been lying to you about what constitutes Unicode (http://en.wikipedia.org/wiki/Unicode)? They will have you believe that Unicode requires you to use…
The goal of this video is to provide viewers with basic examples to understand and use structures in the C programming language.
Video by: Grant
The goal of this video is to provide viewers with basic examples to understand and use while-loops in the C programming language.

816 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now