Giter Site home page Giter Site logo

interbotix / hros1-framework Goto Github PK

View Code? Open in Web Editor NEW
54.0 54.0 40.0 1.07 MB

HR-OS1 Framework, based on the Darwin-OP project. Intended for use on HR-OS1 Humanoid Robot platforms.

Home Page: http://www.trossenrobotics.com/HR-OS1

License: GNU General Public License v3.0

C++ 82.59% C 6.23% Makefile 1.38% JavaScript 4.27% HTML 5.33% AGS Script 0.06% Shell 0.14%

hros1-framework's People

Contributors

jbarrow avatar kurte avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

hros1-framework's Issues

Gyro and Accel readings are incorrect

Verified on multiple HR-OS1's using the Arbotix Pro by running walk_tuner, entering the command: mon, and tipping the robot:

Accel F/B and L/R are swapped
Gyro L/R or F/B was inverted I forget which off hand.

A fix for this exists in my experimentation branch.
r3n33@f93f65e

Edison restarts after connection made with ps3_demo

I ran ./start_edison_bluez5 , and the connection with the controller worked fine. However, the Edison restarted within a few seconds of the connection being made. This has been a repeat issue with me.

Here is the code for ./start_edsion_bluez5:
#!/bin/sh -e
rfkill block bluetooth &
killall demo &
sleep 2
./demo &
sleep 2
rfkill unblock bluetooth &

Here's what my result looks like after ./start_edison_bluez5:

[ 1288.930920] Bluetooth: Frame Reassembly Failed
killall: demo: no process killed
Bluetooth HID daemon
joymixer started.
Starting PS3 l2cap server.
Sitting = 9012, Squating = 22, Standing = 65
Robot is Ready
Unmounting /home...
Unmounting /boot...
[ OK ] Stopped target Sound Card.
[ OK ] Removed slice system-systemd\x2dfsck.slice.
Stopping Daemon to receive the wpa_supplicant event...
Stopping Hostname Service...
Stopping Daemon to receive the wpa_supplicant event...
Stopping Bluetooth service...
[ OK ] Stopped target Multi-User System.
Stopping Edison PWR button handler...
Stopping The Edison status and configuration service...
Unmounting Mount for factory...
Stopping Avahi mDNS/DNS-SD Stack...
root@localhost:~/HROS1-Framework/Linux/project/ps3_demo# Stopping Intel_XDK_Daemon...
Stopping Weaved-HTTP...
Stopping WPA supplicant service...
Stopping Bluetooth rf kill event daemon...
Stopping PulseAudio Sound System...
Stopping Weaved-SSH...
Stopping Daemon to handle arduino sketches...
Stopping Mosquitto - lightweight server implementati...SN protocols...
Stopping Network Name Resolution...
[ OK ] Stopped target Login Prompts.
Stopping Serial Getty on ttyMFD2...
Stopping Getty on tty1...
Stopping D-Bus System Message Bus...
Stopping Login Service...
Stopping Watchdog sample daemon...
Starting Store Sound Card State...
[ OK ] Stopped Edison PWR button handler.
[ OK ] Stopped Avahi mDNS/DNS-SD Stack.
[ OK ] Stopped Bluetooth rf kill event daemon.
[ OK ] Stopped Daemon to handle arduino sketches.
[ OK ] Stopped D-Bus System Message Bus.
[ OK ] Stopped Login Service.
[ OK ] Stopped Watchdog sample daemon.
[ OK ] Stopped Bluetooth service.
[ OK ] Stopped Serial Getty on ttyMFD2.
[ OK ] Stopped Getty on tty1.
[ OK ] Stopped Intel_XDK_Daemon.
[ OK ] Stopped Network Name Resolution.
[ OK ] Stopped Mosquitto - lightweight server implementatio...T-SN protocols.
[ OK ] Stopped Hostname Service.
[ OK ] Stopped The Edison status and configuration service.
[ OK ] Stopped PulseAudio Sound System.
[ OK ] Failed unmounting /home.
[ OK ] Unmounted /boot.
[ OK ] Unmounted Mount for factory.
[ OK ] Started Store Sound Card State.
[ OK ] Stopped Weaved-HTTP.
[ OK ] Stopped Weaved-SSH.
Stopping Zero-configuration networking...
[ OK ] Removed slice system-getty.slice.
[ OK ] Removed slice system-serial\x2dgetty.slice.
Stopping Permit User Sessions...
[ OK ] Stopped Permit User Sessions.
[ OK ] Stopped target Remote File Systems.
[ OK ] Stopped Daemon to receive the wpa_supplicant event.
[ OK ] Stopped Daemon to receive the wpa_supplicant event.
[ OK ] Stopped Daemon to receive the wpa_supplicant event.
[ OK ] Stopped WPA supplicant service.
[ OK ] Stopped Zero-configuration networking.
[ OK ] Stopped target Basic System.
[ OK ] Stopped target Slices.
[ OK ] Removed slice User and Session Slice.
[ OK ] Stopped target Paths.
[ OK ] Stopped target Timers.
[ OK ] Stopped target Sockets.
[ OK ] Closed sshd.socket.
[ OK ] Closed Avahi mDNS/DNS-SD Stack Activation Socket.
[ OK ] Closed D-Bus System Message Bus Socket.
[ OK ] Stopped target System Initialization.
Stopping Load/Save RF Kill Switch Status of rfkill3...
Stopping Load/Save RF Kill Switch Status of rfkill2...
Stopping Load/Save RF Kill Switch Status of rfkill1...
Stopping Load/Save RF Kill Switch Status of rfkill0...
Stopping Network Time Synchronization...
Stopping Apply Kernel Variables...
[ OK ] Stopped Apply Kernel Variables.
Stopping Load/Save Random Seed...
Stopping Load Kernel Modules...
[ OK ] Stopped Load Kernel Modules.
Stopping Update UTMP about System Boot/Shutdown...
[ OK ] Stopped target Swap.
[ OK ] Stopped target Network.
[ OK ] Stopped Network Time Synchronization.
[ OK ] Stopped Load/Save RF Kill Switch Status of rfkill3.
[ OK ] Stopped Load/Save RF Kill Switch Status of rfkill2.
[ OK ] Stopped Load/Save RF Kill Switch Status of rfkill1.
[ OK ] Stopped Load/Save RF Kill Switch Status of rfkill0.
[ OK ] Stopped Load/Save Random Seed.
[ OK ] Stopped Update UTMP about System Boot/Shutdown.
[ OK ] Removed slice system-systemd\x2drfkill.slice.
Stopping Create Volatile Files and Directories...
[ OK ] Stopped Create Volatile Files and Directories.
[ OK ] Stopped target Local File Systems.
[ OK ] Unset automount home.automount.
[ OK ] Unset automount boot.automount.
Unmounting /var/volatile...
Unmounting Temporary Directory...
[ OK ] Unmounted /var/volatile.
[ OK ] Unmounted Temporary Directory.
[ OK ] Reached target Unmount All Filesystems.
[ OK ] Stopped target Local File Systems (Pre).
Stopping Remount Root and Kernel File Systems...
[ OK ] Stopped Remount Root and Kernel File Systems.
[ OK ] Reached target Shutdown.

I'm not sure exactly where the issue is, and I would love some pointers or help. Thanks!

ps3_demo no connection to controller

Sorry abut this if it is an easy fix; I am very new to Raspbian and Linux.

My problem is with ps3_demo. Everything seems to work until I get to the action of sudo ./start_rpi.

When I run sudo ./sixpair_rpi, I get:
Current Bluetooth master: xx:xx:xx:xx:xx:xx
Setting master bd_addr to xx:xx:xx:xx:xx:xx

However, when I run sudo ./start_rpi, the controller will wait an eternity and never connect. I get:
demo: no process found
Bluetooth HID daemon
joymixer started.
Starting PS3 l2cap server
Sitting = 8993, Squatting = 29, Standing = 65
Robot is Ready

Does anyone know how to troubleshoot this? I've tried so many different possible solutions (blueman applet, sixaxis pair tool, etc.) but can't figure out why it won't work. I have narrowed down the problems a bit; I know it's not the battery or another trivial hardware issue.

FYI: I am working with a Raspberry Pi B+ running Raspbian Jessie with an ArbotiX Pro CM-730 Microcontroller. My bluetooth dongle is a CSR V4.0, and I am using Bluez5.

ps3_demo uses 100% CPU

In main.cpp, main() there is a while(1) with no delay causing 100% CPU usage. A small usleep() will help.

recipe for target 'main.o' failed

While making 'dxl_monitor" after re-fleshing the Edison (edison-image-ww18-15, as well as updating my kernel to ver 3.10.17-yocto-standard #1 SMP PREEMPT Sat May 23 20:03:39 CEST 2015 i686 GNU/Linux), a 'recipe for target 'main.o' failed' keeps on popping up, any solutions?

Steven


here the screen

root@Robo-Steven:/HROS1-Framework/Linux/project/dxl_monitor#
root@Robo-Steven:
/HROS1-Framework/Linux/project/dxl_monitor# make
make -C ../../build
make[1]: Entering directory '/home/root/HROS1-Framework/Linux/build'
mkdir -p ../lib/
ar cr ../lib/darwin.a ../../Framework/src/CM730.o ../../Framework/src/math/Matrix.o ../../Framework/src/math/Plane.o ../../Framework/src/math/Point.o ../../Framework/src/math/Vector.o ../../Framework/src/math/QuadraticStateTransform.o ../../Framework/src/math/MotionState.o ../../Framework/src/motion/JointData.o ../../Framework/src/motion/Kinematics.o ../../Framework/src/motion/MotionManager.o ../../Framework/src/motion/MotionStatus.o ../../Framework/src/motion/AngleEstimator.o ../../Framework/src/motion/modules/Action.o ../../Framework/src/motion/modules/Head.o ../../Framework/src/motion/modules/Walking.o ../../Framework/src/vision/BallFollower.o ../../Framework/src/vision/PS3BallFollower.o ../../Framework/src/vision/LineFollower.o ../../Framework/src/vision/RobotFollower.o ../../Framework/src/vision/ConnectRegions.o ../../Framework/src/vision/RadonTransform.o ../../Framework/src/vision/BallTracker.o ../../Framework/src/vision/ColorFinder.o ../../Framework/src/vision/Image.o ../../Framework/src/vision/ImgProcess.o ../../Framework/src/minIni/minIni.o ../../Framework/src/controller/PS3Controller.o ../../Framework/src/commander/SerialInputCommander.o LinuxActionScript.o LinuxCamera.o LinuxCM730.o LinuxMotionTimer.o LinuxNetwork.o
make[1]: Leaving directory '/home/root/HROS1-Framework/Linux/build'
g++ -g -O2 -shared -D_GNU_SOURCE -DLINUX -Wall -I../../include -I../../../Framework/include -c -o cmd_process.o cmd_process.cpp
g++ -g -O2 -shared -D_GNU_SOURCE -DLINUX -Wall -I../../include -I../../../Framework/include -c -o main.o main.cpp
main.cpp:14:12: error: cannot declare variable 'linux_cm730' to be of abstract type 'Robot::LinuxCM730'
LinuxCM730 linux_cm730("/dev/ttyUSB0");
^
In file included from ../../include/LinuxDARwIn.h:13:0,
from main.cpp:5:
../../include/LinuxCM730.h:17:8: note: because the following virtual functions are pure within 'Robot::LinuxCM730':
class LinuxCM730 : public PlatformCM730
^
In file included from ../../../Framework/include/DARwIn.h:11:0,
from ../../include/LinuxDARwIn.h:11,
from main.cpp:5:
../../../Framework/include/CM730.h:39:23: note: virtual bool Robot::PlatformCM730::SetBaud(int)
virtual bool SetBaud(int baud) = 0;
^
main.cpp: In function 'int main()':
main.cpp:48:4: warning: 'char* gets(char_)' is deprecated (declared at /usr/include/stdio.h:638) [-Wdeprecated-declarations]
gets(input);
^
main.cpp:48:14: warning: 'char_ gets(char_)' is deprecated (declared at /usr/include/stdio.h:638) [-Wdeprecated-declarations]
gets(input);
^
: recipe for target 'main.o' failed
make: *_* [main.o] Error 1
root@Robo-Steven:~/HROS1-Framework/Linux/project/dxl_monitor#

Did this whole project stop

Since the last commit happened 2 years ago, I wanted to know wether or not the whole project was just shut down?

Wonder if reference to CM730 should change to Arbotix Pro?

I have been wondering if the file names and structure names and messages should be updated to refer to the Arbotix Pro instead of the CM-730?

Example: (Especially with RPI2), when the processor tries to start up the Arbotix Pro and the communication fails it mentions the CM730 which does not exist.

But more to the point. Currently the firmware registers of the Arbotix Pro are not the same as those on the CM-730.

Example the IMU registers are not quite the same. The X and Y are swapped in one case and in another the direction of another register is reversed.

Likewise: the Analog values are not defined in the same order. On CM730 Microphones are on Analog 1 and 8, but on Arbotix Pro they are on 1 and 2. In this case this can be compensated for by moving wires around. But in addition here. Analog2 on the CM730 is actually the 2nd Analog pin, but on Arbotix Pro is actually the third... Again maybe not a big deal but somewhat confusing.

Another option would be to update the firmware of the Arbotix Pro to again match with the CM730.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.