Comments (7)
Taking the simple loop program here and throwing in a ecl::SigSlotsManager<>::printStatistics();
at the end of the constructor I get:
Topics
Name: /kobuki/controller_info
# Subscribers: 0
# Publishers : 1
Name: /kobuki/stream_data
# Subscribers: 1
# Publishers : 1
Possible problems:
- You're not calling
kobuki.init(parameters)
anywhere - The parameters are invalid (init will return with an exception, see here)
from kobuki_core.
I'm going crazy, when i'm in kobuki.cpp
Kobuki :: init (Parameters & parameters) {
...
Thread.start (& Kobuki :: spin, * this);
Ecl :: SigSlotsManager <> :: printStatistics ();
}
The print value is:
Topics
Name: / kobuki / controller_info
# Subscribers: 0
# Publishers: 1
Name: / kobuki / stream_data
# Subscribers: 0
# Publishers: 1
But when i am in simple_loop.cpp
Kobuki.init (parameters);
ecl :: SigSlotsManager <> :: printStatistics ();
prints the result:
Topics
The parameters are valid in kobuki.cpp, but in simple_loop.cpp call Kobuki.init(parameters) function, Topics did not print. Looking forward to your reply, thank you
By the way, this kobuki project is my cross compiler arm so library running on the development board.
Cross-compilation steps:
cd ~ / kobuki_core
export PATH = ~ / kobuki_core / src / catkin / bin /: $ {PATH}
catkin_make -DCMAKE_TOOLCHAIN_FILE = ~ / kobuki_core / src / catkin / catkin.toolchain.cmake
cd build;make install
catkin.toolchain.cmake:
SET (CMAKE_SYSTEM_NAME Linux)
SET (CMAKE_C_COMPILER "/ usr / bin / my-ndk-toolchain / bin / arm-linux-androideabi-gcc")
SET (CMAKE_CXX_COMPILER "/ usr / bin / my-ndk-toolchain / bin / arm-linux-androideabi-g ++")
SET (CMAKE_FIND_ROOT_PATH "/ usr / bin / my-ndk-toolchain / sysroot /")
from kobuki_core.
Try without the cross compiler. This shouldn't have any relation, but first thing to do when you have a problem that has no immediate leads - simplify what you are doing until something comes up.
Which branches of ecl
and kobuki
are you using?
from kobuki_core.
thank you very much for your reply! without cross compile and run simple_loop.cpp this project is successful. How do I run this project using cross compilation? Is there a problem with my cross-compilation steps? Ecl and kobuk's branch is downloaded at :
http://yujinrobot.github.io/kobuki/doxygen/enInstallationLinuxGuide.html
https://raw.githubusercontent.com/yujinrobot/kobuki_core/hydro/kobuki_core.rosinstall
Kobuki Core / Yujin stacks
- git: {local-name: catkin, version: 0.5.73, uri: 'https://github.com/ros/catkin.git'}
- git: {local-name: ecl_tool, version: 0.60.0, uri: 'https://github.com/stonier/ecl_tools.git'}
- git: {local-name: ecl_lite, version: 0.60.0, uri: 'https://github.com/stonier/ecl_lite.git'}
- git: {local-name: ecl_core, version: 0.60.5, uri: 'https://github.com/stonier/ecl_core.git'}
- git: {local-name: ecl_navigation, version: 0.60.0, uri: 'https://github.com/stonier/ecl_navigation.git'}
- git: {local-name: kobuki_core, version: hydro, uri: 'https://github.com/yujinrobot/kobuki_core.git'}
Looking forward to your reply!
from kobuki_core.
Ach, pretty old sources. Yujin hasn't had anyone updating those...
All of those libraries are very stable, but there has been a few bugfixes over the years...I'd try the latest releases (used in ROS kinetic):
- git: {local-name: catkin, version: kinetic-devel, uri: 'https://github.com/ros/catkin.git'}
- git: {local-name: ecl_tool, version: release/0.61-indigo-kinetic, uri: 'https://github.com/stonier/ecl_tools.git'}
- git: {local-name: ecl_lite, version: release/0.61-indigo-kinetic, uri: 'https://github.com/stonier/ecl_lite.git'}
- git: {local-name: ecl_core, version: release/0.61-indigo-kinetic, uri: 'https://github.com/stonier/ecl_core.git'}
- git: {local-name: ecl_navigation, version: release/0.60-indigo-kinetic, uri: 'https://github.com/stonier/ecl_navigation.git'}
- git: {local-name: kobuki_core, version: kinetic, uri: 'https://github.com/yujinrobot/kobuki_core.git'}
Looks like you're using the ndk cross compiler - making an android app based on the c++ lib? I think you're the first to try that I know of. Another company made a very simple java driver at one point but this should be better if it works. At any rate, it looks like sigslot publishers are not working for some reason. These are not rocket science though, but it might be that the NDK is having trouble with some of the template programming.
Can you create a very simple program that creates a signal and prints the statistics? Verify that it works on the non-cross compile and that it fails on the cross-compile. Then we can dig further there. I'd like to reproduce it here, but I don't have all of the infra/know how to get that running and to test it.
from kobuki_core.
That rosinstall has been updated... https://raw.githubusercontent.com/yujinrobot/kobuki_core/devel/kobuki_core.rosinstall
from kobuki_core.
Original problem has been resolved earlier in the thread.
from kobuki_core.
Related Issues (20)
- fatal error: ftdi.h: No such file or directory HOT 7
- about the inertia angle
- wrong code in kobuki_core/kobuki_driver/src/driver/packet_finder.cpp HOT 3
- Backport isnan fix to indigo HOT 2
- Kobuki 'no data stream, is kobuki turned on?' warning HOT 7
- can't create /dev/ttyUSB0 in firefly RK3288 Ubuntu image HOT 1
- How to use catkin to compile arm architecture .so file HOT 3
- kobuki_ftdi is failing to build in Kinetic HOT 1
- Autodocking crashes when bot rolls back off dock after autodocking HOT 1
- Getting input from external IMU
- Request for a ros2-ardent branch HOT 1
- Remove sound that plays when using driver HOT 1
- Repos file for building kobuki_core standalone HOT 1
- Doxygen link returns 404 HOT 1
- Confirm ros2 debs produce udev rules HOT 1
- Derefencing errors on the build farm
- bool PacketFinderBase::waitForPayloadAndEtx(const unsigned char * incoming, unsigned int numberOfIncoming, bool & foundPacket)
- Macro pollution with minor, major, patch in Melodic
- CMake version warnings in melodic, noetic
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from kobuki_core.