Solved

Minimal Ubuntu distro for my mobile robot (pandaboard)

Posted on 2012-03-15
7
554 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
Highfive + Dolby Voice = No More Audio Complaints!

Poor audio quality is one of the top reasons people don’t use video conferencing. Get the crispest, clearest audio powered by Dolby Voice in every meeting. Highfive and Dolby Voice deliver the best video conferencing and audio experience for every meeting and every room.

 

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

Enabling OSINT in Activity Based Intelligence

Activity based intelligence (ABI) requires access to all available sources of data. Recorded Future allows analysts to observe structured data on the open, deep, and dark web.

Join & Write a Comment

Have you ever been frustrated by having to click seven times in order to retrieve a small bit of information from the web, always the same seven clicks, scrolling down and down until you reach your target? When you know the benefits of the command l…
This is a short and sweet, but (hopefully) to the point article. There seems to be some fundamental misunderstanding about the function prototype for the "main" function in C and C++, more specifically what type this function should return. I see so…
The goal of this video is to provide viewers with basic examples to understand opening and writing to files in the C programming language.
The goal of this video is to provide viewers with basic examples to understand and use switch statements in the C programming language.

708 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

19 Experts available now in Live!

Get 1:1 Help Now