ROS on Android Phone | Finaly done with ROS(Robotic Operating System) on android

Standard

From: http://www.technolabsz.com/2012/03/ros-on-android-phone.html


ROS on Android Phone

 

Finaly done with ROS(Robotic Operating System) on android 

It was my 1 day work for getting an output from android to ROS Server .I will explain the procedure that i have done
Prerequisites:
1)android-sdk for linux -Refer the following site for manually download android component .Othervice you have to setup eclipse for doing it
2)platform-tools-This is the most required thing in this installation operation

Procedure:
1)Download android stack from ROS website
2)There is a README file in this stack describing the installation procedure .But there will some error when you follow it
Note :The error i got the installation operation is with adb
Starting of adb is like follows
#./adb kill-server
#./adb start-server
#./adb devices
It will print if the device is connected
#./adb shell
Set the Link path of python from README file
Change the link path according to your android path .Othervice it will show error
It is better to install Pythonforandroid and sl4a manually .
Set the adb path in .bashrc file on home folder
eg :export ADB=~/android-sdk/platform-tools/adb
After installation using make install command
You have to enter
$make cv_module
$make ros_sample 

After that you have to take pythonforandroid and press importmodule option
It will show cv.egg ,select and install it
Connect android phone and computer though a wifi network ,preferably through a router .
Take ros.py from sl4a script folder .Run it
It will ask for ROS_MASTER_URI ,for URI you have to note the IP of computer which running roscore .For eg:My system IP was 192.168.1.2 So theURI is

eg : ROS_MASTER_URI=http://192.168.1.2:11311
URI=http://IP:11311
Note:i have some issues in importing cv .So i commented the cvsection and working only on accelerometer ,vibrate ,speak functions
Here is the edited ros.py
#
#  ROS on Android
#  Sample ROS node
#
#  Copyright (c) 2011 Technische Universitaet Muenchen,
#  Distributed Multimodal Information Processing Group
#  http://vmi.lmt.ei.tum.de
#
#
from ros_android import *
import time
# load needed ROS packages
import roslib
import rospy
from std_msgs.msg import String
from std_msgs.msg import Int16
from sensor_msgs.msg import Image
#from cv_bridge import CvBridge, CvBridgeError
#import cv
# callback for /mobile/say
def cb_say(data):
rospy.loginfo(“I should say: %s”, data.data)
droid.makeToast(data.data)
droid.ttsSpeak(data.data)
# callback for /mobile/vibrate
def cb_vibrate(data):
droid.vibrate(data.data)
def main():
print “main()”
cam = CamHandler()
pub = rospy.Publisher(‘/mobile/acceleration’, String)
rospy.init_node(‘android’)
rospy.Subscriber(‘/mobile/say’, String, cb_say)
rospy.Subscriber(‘/mobile/vibrate’, Int16, cb_vibrate)
# start sensor polling in background
droid.startSensing()
while not rospy.is_shutdown():
# read the accelerometer and store result
acc = droid.sensorsReadAccelerometer().result
# if new sensor values have arrived, output them
if isinstance(acc[0], float):
# acc_str = “%s – Acc: %f %f %f” % (rospy.get_time(), acc[0], acc[1], acc[2])
acc_str = “X:%f Y:%f Z:%f” % (acc[0], acc[1], acc[2])
else:
# acc_str = “Time: %s – No acc. values” % rospy.get_time()
acc_str = “No values.”
rospy.loginfo(acc_str)
pub.publish(String(acc_str))
rospy.sleep(1.0)
# start-up main
main()
Here is the output
Videos

603 total views, no views today

Scripts to find and verify SSH logins to other machines by hacking back via Kippo

Standard

First we log all the connection attempts to my server(Live or new Virtual Machine) using the package called Kippo – http://code.google.com/p/kippo/.


Then we create this file I called grab_ssh_info.sh(Click for latest).


Then we can use the copy of /root/kippo_ssh_auths.log log to try and connect BACK to the door knockers machine and see if the login works.
If it does, add it to a success log(if new) and go on to the next one.
If it fails, ignore it. It will be deleted when we delete the copy of the log file at the end of the script.
I call this file test_ssh_info.sh


Small script(start_kippo.sh) for cron to make sure your Kippo is still running.
I noticed that the small VPS I was running would kill Kippo once awhile because I ran out of memory(32MB) and swap(32MB). So I tested every minute to see if needed starting again.


Set your log rotation to cycle the Kippo log every 24 hours or my scripts will be re testing a lot of ssh connections.
Set your cron to run them whenever. I recommend just before the logrotate cycle. Just make sure it is sequenced right. Do the grab script first.

1,049 total views, no views today

Steps to get to Motorola Droids boot menu

Standard

Use this to get the the boot menu to apply a update.zip to your system or to do other things.
Here are the exact instructions.
1. TURN OFF YOUR PHONE.
2. HOLD DOWN THE X KEY
3. TURN ON YOUR PHONE
4. When you see the cute exclamation mark triangle ….
5. HOLD DOWN THE UP VOLUME KEY
6. STILL HOLD IT DOWN
7. PRESS AND RELEASE THE CAMERA BUTTON
8. RELEASE THE UP VOLUME KEY
enjoy.

3,336 total views, no views today