groove-x / mqtt_bridge

mqtt_bridge provides a functionality to bridge between ROS and MQTT in bidirectional
MIT License
160 stars 146 forks source link

Unable to install inject #30

Closed mazharshaikh0593 closed 3 years ago

mazharshaikh0593 commented 4 years ago

Hello,

I'm trying to use this package for my Master's project work.

I have Ubuntu 20.4 with ROS noetic python3 as well as Ubuntu 16 with ROS kinetic python 2.7.

On noetic, I was able to install all the libraries and run mqtt_bridge successfully, but the codes in app.py and bridge.py don't support python3 language. For example, it doesn't take the base string data type. I tried using str instead-but in line 77 of bridge.py its causing me encoding errors. Do you have any workaround for this? Or m I missing something?

On kinetic, I m unable to install the inject python module. I ran pip2 as well as pip with both suggestions given in this forum. Error: Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-JEKfkg/inject/ It seems the inject python module doesn't support python2 now and only python3 is working with it.

Any suggestions or help is welcome. I tried lots of things. Thank you in advance.

mazharshaikh0593 commented 4 years ago

I was able to run the mqtt_bridge connection by installing the dependencies manually on kinetic using python 2.7. Everything works fine when I run the code with the MQTT broker locally. However, when I run the code on a separate machine and try to reach the broker on my machine by changing the host address from 'localhost' to 'my IP' I get an error (111: connection refused).

I'm using VMware workstation pro which is installed with ubuntu 16.04 and ROS kinetic version. The network connection is set to the NAT option on VM. Below are the config file details I input. I tried lots of ways to input the host address but got the same error. Anyone has idea what how to solve this? IS there a format In which the host address needs to be specified which I'm not following? Or the host address needs to be something else?

Config file:

host: 192.168.109.132 port: 1883

darkasassin44 commented 4 years ago

Same problem. I'm using Parallels to run Ubuntu 18.04(ROS melodic) on my Mac. Unfortunately, it's my first time I use mqtt_birdge. While I follow the guideline, installing requirements.txt, the same error occurred. 스크린샷 2020-08-31 14 35 41

So when I try to run the launch file, the following error has occurred. 스크린샷 2020-08-31 14 50 00

When you could run this mqtt_bridge successfully on Ubuntu 16, haven't you seen this error?

darkasassin44 commented 4 years ago

I found the solution for yours and mine. https://pypi.org/project/Inject/#description

check here to confirm both your python and inject module version. for me, I built ROS packages with python 2.7. 스크린샷 2020-08-31 17 42 37 therefore, I should have installed inject version 3.x.

so I did pip install Inject==3.5.4 and it solved.

mazharshaikh0593 commented 4 years ago

I was able to workaround that issue by manually installing the dependencies rather than through txt file.

Thank you.

On Mon, Aug 31, 2020, 9:45 AM darkasassin44 notifications@github.com wrote:

I found the solution for yours and mine. https://pypi.org/project/Inject/#description

check here to confirm both your python and inject module version. for me, I built ROS packages with python 2.7. [image: 스크린샷 2020-08-31 17 42 37] https://user-images.githubusercontent.com/54735854/91700805-5ff74200-ebb1-11ea-8a4a-35a4837f376a.png therefore, I should have installed inject version 3.x.

so I did pip install Inject==3.5.4 and it solved.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/groove-x/mqtt_bridge/issues/30#issuecomment-683650943, or unsubscribe https://github.com/notifications/unsubscribe-auth/AQWB6UOPH4YSIJOPYPBIFOLSDNPLZANCNFSM4QG2UJMA .

mengkeroborock commented 4 years ago

I found the solution for yours and mine. https://pypi.org/project/Inject/#description

check here to confirm both your python and inject module version. for me, I built ROS packages with python 2.7. 스크린샷 2020-08-31 17 42 37 therefore, I should have installed inject version 3.x.

so I did pip install Inject==3.5.4 and it solved.

good ~!

ledmonster commented 3 years ago

Sorry for replying too late. I fixed this issue on #37.