Last night I tried to get MRL to connect to my Arduino so I could play with the InMoov starter finger kit and I've run into a few problems. First is when I click on the Tools menu and then Boards, the sub menu where I'd select Uno never shows up. When I mouse down to Serial Device I do get a sub menu but MRL (or the embedded Arduino IDE) never finds my Uno. I am able to see the Uno on /dev/tty.usbmodem641 using a standalone Arduino IDE installation and I was able to install the MRLComm.ino to the Uno through the external IDE. When I follow the tutorial for the Starter finger and put /dev/tty.usbmodem641 in the python script, it still isn't able to connect for the rest of the InMoov service.
So far I've tried it on both Mountain Lion (10.8) and Lion (10.7) with JDK 1.7.0.25 on both machines.
The main machine I've been trying to use it on is the 10.8 MacBook that I also use my 3D printer on. When I was working on the Tutorial I didn't have anything else connected or running to avoid conflicts.
Any ideas besides swithcing to windows? ;)
Hi kmcgerald and welcome in
Hi kmcgerald and welcome in MRL....
In order to solve your problem i have some questions :
What is a no-worky? :
A no-worky is a log that you send to GroG which contains a lot of information about what happened when something goes wrong!!!!
How can I send a no-worky? :
After something goes wrong , DON'T CLOSE MRL WINDOW!! and do what is showed in the pic below ;D
Best regards
Alessandruino
Hello and Weclome kmcgerald
Hello and Weclome kmcgerald !
As Alessandruino stated - a No-Worky would be of the most help when you get a chance to connect the Arduino.
In leu of the no-worky, my first question would be - Is your Mac 32 or 64 bit?
Regards,
GroG
OS X 10.8.4
OS X 10.8.4 64-bit
Silver-Samurai:myrobotlab.1529.20130701.1806 kmcgerald02$ java -version
java version "1.7.0_25"
Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
Java HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode)
Silver-Samurai:myrobotlab.1529.20130701.1806 kmcgerald02$ uname -a
Darwin Silver-Samurai.local 12.4.0 Darwin Kernel Version 12.4.0: Wed May 1 17:57:12 PDT 2013; root:xnu-2050.24.15~1/RELEASE_X86_64 x86_64
I just hooked up my arduino, pasted in the python script, changed rightSerialPort to "/dev/tty.usbmodem641" which I had verified with a standalone Arduino IDE before starting MRL, then I clicked the execute on the Python tab and when it could not connect to the arduino I sent a No Worky!
Hopefully we'll get this fixed.
Well, Quick diagnoses
Well, Quick diagnoses ...
(which is good, even though its not so good news)
So, MRL which runs on any device supporting Java (like your computer) needs to communicate to the Arduino service via serial port. This functionality is usually provided by the RXTX library - which includes a couple native libraries. The native libraries are used to talk to the hardware directly, something which Java usually avoids ...
Looking at it I can see there is no "folder" in our repository, for x86.64.mac ...
hmm .. I think the repo is a little messed up.. I'll fix it up, but can you tell me 2 things
Ya hopefully we'll get you fixed up and working soon...
BTW since MRL runs on Java much of it works on any platform (even Android's Dalvik JVM) .. but.. there are occasions where native access is the only possibility - in these situations the order of support is usually Linux, Windows, then Mac ...
Let's try it this way first .. I'm game if you are ;)
More info
I don't remember seeing any errors when I did the install of the Arduino Service from within MRL. I can easily download the newest version (nice to see you churning out new versions so actively) or blow away the current install and rerun the install to look if you think it will help more.
For now here's the recursive directory dump of the libraries directory.
Silver-Samurai:myrobotlab.1529.20130701.1806 kmcgerald02$ ls -R ../myrobotlab.1529.20130701.1806/libraries/
jar native zip
../myrobotlab.1529.20130701.1806/libraries//jar:
AutoComplete.License.txt freetts.jar jsapi-1.0-base.jar
RSyntaxTextArea.License.txt httpclient-4.2.5.jar jsapi.jar
RXTXcomm.jar httpclient-cache-4.2.5.jar jython.jar
TIDIGITS_8gau_13dCep_16k_40mel_130Hz_6800Hz.jar httpcore-4.2.4.jar log4j-1.2.14.jar
WSJ_8gau_13dCep_16k_40mel_130Hz_6800Hz.jar httpmime-4.2.5.jar myrobotlab.jar
WSJ_8gau_13dCep_8kHz_31mel_200Hz_3500Hz.jar ivy.jar rsyntaxtextarea.jar
autocomplete.jar javacpp.jar simple-xml-2.5.3.jar
batch.jar javacv.jar slf4j-api-1.6.1.jar
commons-codec-1.6.jar jgraphx.jar slf4j-log4j12-1.6.1.jar
commons-logging-1.1.1.jar jl1.0.1.jar sphinx4.jar
fluent-hc-4.2.5.jar jna.jar tags.jar
../myrobotlab.1529.20130701.1806/libraries//native:
x86.64.mac
../myrobotlab.1529.20130701.1806/libraries//native/x86.64.mac:
cv2.so libopencv_features2d.2.4.dylib libopencv_highgui.2.4.dylib libopencv_nonfree.2.4.dylib libopencv_ts.2.4.dylib
libopencv_calib3d.2.4.dylib libopencv_flann.2.4.dylib libopencv_imgproc.2.4.dylib libopencv_objdetect.2.4.dylib libopencv_video.2.4.dylib
libopencv_contrib.2.4.dylib libopencv_gpu.2.4.dylib libopencv_legacy.2.4.dylib libopencv_photo.2.4.dylib libopencv_videostab.2.4.dylib
libopencv_core.2.4.dylib libopencv_haartraining_engine.a libopencv_ml.2.4.dylib libopencv_stitching.2.4.dylib
../myrobotlab.1529.20130701.1806/libraries//zip:
haarcascades.zip hogcascades.zip lbpcascades.zip
As for being game for troubleshooting ... if I wasn't I wouldn't have created the forum ID. :) I'm a Linux guy at heart so I'm not the typical Mac user that expects everything to "Just work."
The repo was a bit messed
The repo was a bit messed up... I think I might have fixed it ...
The result after an install is you need to have a librxtxSerial64.jnilib in /myrobotlab.1529.20130701.1806/libraries//native/x86.64.mac: - which you dont ...
This is a repo change, so you should be good to just unzip your current myrobotlab into a different directory then try installing Arduino again ... do your recursive search and see if librxtxSerial64.jnilib exists ...
Let me know ...
Good Luck..
Fresh install still no worky after repo fix.
Silver-Samurai:myrobotlab.1529.20130701.1806 kmcgerald02$ ./myrobotlab.sh
createServices service count 2
java.lang.UnsatisfiedLinkError: no rxtxSerial64 in java.library.path thrown while loading gnu.io.RXTXCommDriver
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.myrobotlab.serial.SerialDeviceFactory.getSerialDeviceNames(Unknown Source)
at org.myrobotlab.serial.SerialDeviceFactory.getSerialDeviceNames(Unknown Source)
at org.myrobotlab.service.Arduino.querySerialDeviceNames(Unknown Source)
at org.myrobotlab.service.Arduino.<init>(Unknown Source)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at org.myrobotlab.service.Runtime.createService(Unknown Source)
at org.myrobotlab.service.Runtime.create(Unknown Source)
at org.myrobotlab.service.Runtime.create(Unknown Source)
at org.myrobotlab.service.Runtime.createAndStart(Unknown Source)
at org.myrobotlab.service.Runtime.createAndStart(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.myrobotlab.framework.Service.invoke(Unknown Source)
at org.myrobotlab.framework.Service.invoke(Unknown Source)
at org.myrobotlab.framework.Service.invoke(Unknown Source)
at org.myrobotlab.framework.Service.run(Unknown Source)
at java.lang.Thread.run(Thread.java:724)
Caused by: java.lang.NoClassDefFoundError: Could not initialize class gnu.io.RXTXVersion
at gnu.io.CommPortIdentifier.<clinit>(CommPortIdentifier.java:123)
at org.myrobotlab.serial.gnu.SerialDeviceFactoryGNU.getSerialDevices(Unknown Source)
at org.myrobotlab.serial.gnu.SerialDeviceFactoryGNU.getSerialDeviceNames(Unknown Source)
... 26 more
Silver-Samurai:myrobotlab.1529.20130701.1806 kmcgerald02$ ls -R libraries/
jar
libraries//jar:
AutoComplete.License.txt autocomplete.jar jython.jar rsyntaxtextarea.jar slf4j-log4j12-1.6.1.jar
RSyntaxTextArea.License.txt ivy.jar log4j-1.2.14.jar simple-xml-2.5.3.jar
RXTXcomm.jar jgraphx.jar myrobotlab.jar slf4j-api-1.6.1.jar
We're closer KMC .. unzip and
We're closer KMC .. unzip and install Arduino, but please send a no-worky BEFORE restarting but after the Arduino install finishes...
New no-worky
ok I blew away the directory, unzipped, started it, installed Arduino, when it asked to restart, I clicked No and sent a No-worky. I also copied the text from the new components window. I'll paste it below.
checking for latest version of log4j
attempting to retrieve log4j info
ERROR - [unresolved dependency: org.apache.log4j#log4j;latest.integration: configuration not found in org.apache.log4j#log4j;1.2.14: 'x86.64.mac'. It was required from org.apache.log4j#log4j-caller;working default]
checking for latest version of xml
attempting to retrieve xml info
ERROR - [unresolved dependency: org.simpleframework.xml#xml;latest.integration: configuration not found in org.simpleframework.xml#xml;2.5.3: 'x86.64.mac'. It was required from org.simpleframework.xml#xml-caller;working default]
checking for latest version of rxtx
attempting to retrieve rxtx info
rxtx - new artifacts downloaded
rxtx is installed
checking for latest version of arduino
attempting to retrieve arduino info
arduino is installed
finished processing updates
still no native
oh I just did an ls -R on the libraries directory. Still no native directory.
I copied and pasted the terminal output from when I first fired it up after install and after I restarted and failed to get it to see a serial port.
Silver-Samurai:myrobotlab.1529.20130701.1806 kmcgerald02$ ls -R libraries/
jar
libraries//jar:
AutoComplete.License.txt autocomplete.jar jython.jar rsyntaxtextarea.jar slf4j-log4j12-1.6.1.jar
RSyntaxTextArea.License.txt ivy.jar log4j-1.2.14.jar simple-xml-2.5.3.jar
RXTXcomm.jar jgraphx.jar myrobotlab.jar slf4j-api-1.6.1.jar
Silver-Samurai:myrobotlab.1529.20130701.1806 kmcgerald02$ ./myrobotlab.sh
createServices service count 2
:: loading settings :: file = ivychain.xml
:: resolving dependencies :: org.apache.log4j#log4j-caller;working
confs: [default]
found org.apache.log4j#log4j;1.2.14 in public-remote
[1.2.14] org.apache.log4j#log4j;latest.integration
:: resolution report :: resolve 875ms :: artifacts dl 0ms
---------------------------------------------------------------------
| | modules || artifacts |
| conf | number| search|dwnlded|evicted|| number|dwnlded|
---------------------------------------------------------------------
| default | 1 | 1 | 0 | 0 || 0 | 0 |
---------------------------------------------------------------------
:: problems summary ::
:::: WARNINGS
::::::::::::::::::::::::::::::::::::::::::::::
:: UNRESOLVED DEPENDENCIES ::
::::::::::::::::::::::::::::::::::::::::::::::
:: org.apache.log4j#log4j;1.2.14: configuration not found in org.apache.log4j#log4j;1.2.14: 'x86.64.mac'. It was required from org.apache.log4j#log4j-caller;working default
::::::::::::::::::::::::::::::::::::::::::::::
:: USE VERBOSE OR DEBUG MESSAGE LEVEL FOR MORE DETAILS
:: retrieving :: org.apache.log4j#log4j-caller
confs: [default]
0 artifacts copied, 0 already retrieved (0kB/7ms)
:: loading settings :: file = ivychain.xml
:: resolving dependencies :: org.simpleframework.xml#xml-caller;working
confs: [default]
found org.simpleframework.xml#xml;2.5.3 in public-remote
[2.5.3] org.simpleframework.xml#xml;latest.integration
:: resolution report :: resolve 154ms :: artifacts dl 0ms
---------------------------------------------------------------------
| | modules || artifacts |
| conf | number| search|dwnlded|evicted|| number|dwnlded|
---------------------------------------------------------------------
| default | 1 | 1 | 0 | 0 || 0 | 0 |
---------------------------------------------------------------------
:: problems summary ::
:::: WARNINGS
::::::::::::::::::::::::::::::::::::::::::::::
:: UNRESOLVED DEPENDENCIES ::
::::::::::::::::::::::::::::::::::::::::::::::
:: org.simpleframework.xml#xml;2.5.3: configuration not found in org.simpleframework.xml#xml;2.5.3: 'x86.64.mac'. It was required from org.simpleframework.xml#xml-caller;working default
::::::::::::::::::::::::::::::::::::::::::::::
:: USE VERBOSE OR DEBUG MESSAGE LEVEL FOR MORE DETAILS
:: retrieving :: org.simpleframework.xml#xml-caller
confs: [default]
0 artifacts copied, 0 already retrieved (0kB/5ms)
:: loading settings :: file = ivychain.xml
:: resolving dependencies :: gnu.io.rxtx#rxtx-caller;working
confs: [default]
found gnu.io.rxtx#rxtx;2.1-7r2 in public-remote
[2.1-7r2] gnu.io.rxtx#rxtx;latest.integration
downloading http://myrobotlab.googlecode.com/svn/trunk/myrobotlab/thirdParty/repo/g… ...
......................................... (69kB)
[SUCCESSFUL ] gnu.io.rxtx#rxtx;2.1-7r2!RXTXcomm.jar (254ms)
:: resolution report :: resolve 438ms :: artifacts dl 256ms
---------------------------------------------------------------------
| | modules || artifacts |
| conf | number| search|dwnlded|evicted|| number|dwnlded|
---------------------------------------------------------------------
| default | 1 | 1 | 1 | 0 || 1 | 1 |
---------------------------------------------------------------------
:: retrieving :: gnu.io.rxtx#rxtx-caller
confs: [default]
1 artifacts copied, 0 already retrieved (69kB/6ms)
:: loading settings :: file = ivychain.xml
:: resolving dependencies :: cc.arduino#arduino-caller;working
confs: [default]
found cc.arduino#arduino;1.0 in public-remote
[1.0] cc.arduino#arduino;latest.integration
:: resolution report :: resolve 293ms :: artifacts dl 0ms
---------------------------------------------------------------------
| | modules || artifacts |
| conf | number| search|dwnlded|evicted|| number|dwnlded|
---------------------------------------------------------------------
| default | 1 | 1 | 1 | 0 || 0 | 0 |
---------------------------------------------------------------------
:: retrieving :: cc.arduino#arduino-caller
confs: [default]
0 artifacts copied, 0 already retrieved (0kB/4ms)
Silver-Samurai:myrobotlab.1529.20130701.1806 kmcgerald02$ ./myrobotlab.sh
createServices service count 2
java.lang.UnsatisfiedLinkError: no rxtxSerial64 in java.library.path thrown while loading gnu.io.RXTXCommDriver
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.myrobotlab.serial.SerialDeviceFactory.getSerialDeviceNames(Unknown Source)
at org.myrobotlab.serial.SerialDeviceFactory.getSerialDeviceNames(Unknown Source)
at org.myrobotlab.service.Arduino.querySerialDeviceNames(Unknown Source)
at org.myrobotlab.service.Arduino.<init>(Unknown Source)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at org.myrobotlab.service.Runtime.createService(Unknown Source)
at org.myrobotlab.service.Runtime.create(Unknown Source)
at org.myrobotlab.service.Runtime.create(Unknown Source)
at org.myrobotlab.service.Runtime.createAndStart(Unknown Source)
at org.myrobotlab.service.Runtime.createAndStart(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.myrobotlab.framework.Service.invoke(Unknown Source)
at org.myrobotlab.framework.Service.invoke(Unknown Source)
at org.myrobotlab.framework.Service.invoke(Unknown Source)
at org.myrobotlab.framework.Service.run(Unknown Source)
at java.lang.Thread.run(Thread.java:724)
Caused by: java.lang.NoClassDefFoundError: Could not initialize class gnu.io.RXTXVersion
at gnu.io.CommPortIdentifier.<clinit>(CommPortIdentifier.java:123)
at org.myrobotlab.serial.gnu.SerialDeviceFactoryGNU.getSerialDevices(Unknown Source)
at org.myrobotlab.serial.gnu.SerialDeviceFactoryGNU.getSerialDeviceNames(Unknown Source)
... 26 more
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.myrobotlab.serial.SerialDeviceFactory.getSerialDeviceNames(Unknown Source)
at org.myrobotlab.serial.SerialDeviceFactory.getSerialDeviceNames(Unknown Source)
at org.myrobotlab.service.Arduino.querySerialDeviceNames(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.myrobotlab.framework.Service.invoke(Unknown Source)
at org.myrobotlab.framework.Service.invoke(Unknown Source)
at org.myrobotlab.framework.Service.invoke(Unknown Source)
at org.myrobotlab.framework.Service.run(Unknown Source)
at java.lang.Thread.run(Thread.java:724)
Caused by: java.lang.NoClassDefFoundError: Could not initialize class gnu.io.CommPortIdentifier
at org.myrobotlab.serial.gnu.SerialDeviceFactoryGNU.getSerialDevices(Unknown Source)
at org.myrobotlab.serial.gnu.SerialDeviceFactoryGNU.getSerialDeviceNames(Unknown Source)
... 16 more
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.myrobotlab.serial.SerialDeviceFactory.getSerialDeviceNames(Unknown Source)
at org.myrobotlab.serial.SerialDeviceFactory.getSerialDeviceNames(Unknown Source)
at org.myrobotlab.service.Arduino.querySerialDeviceNames(Unknown Source)
at org.myrobotlab.service.Arduino.<init>(Unknown Source)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at org.myrobotlab.service.Runtime.createService(Unknown Source)
at org.myrobotlab.service.Runtime.create(Unknown Source)
at org.myrobotlab.service.Runtime.create(Unknown Source)
at org.myrobotlab.service.Runtime.createAndStart(Unknown Source)
at org.myrobotlab.service.Runtime.createAndStart(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.myrobotlab.framework.Service.invoke(Unknown Source)
at org.myrobotlab.framework.Service.invoke(Unknown Source)
at org.myrobotlab.framework.Service.invoke(Unknown Source)
at org.myrobotlab.framework.Service.run(Unknown Source)
at java.lang.Thread.run(Thread.java:724)
Caused by: java.lang.NoClassDefFoundError: Could not initialize class gnu.io.CommPortIdentifier
at org.myrobotlab.serial.gnu.SerialDeviceFactoryGNU.getSerialDevices(Unknown Source)
at org.myrobotlab.serial.gnu.SerialDeviceFactoryGNU.getSerialDeviceNames(Unknown Source)
... 26 more
Rinse, Lather, Repeat
Rinse, Lather, Repeat ....
Saw it, fixed it.... I feel more warm an fuzzy - try the same thing - the repo has been updated....
Thanks, that was helpful...
THANKS!!
Works now. Speech works, voice commands work, manual controls work, and the Finger Starter works.
Thanks for working through this with me and being such an engaged developer.
Now I need to fire up the my Prusa Air 2 and start printing a full hand... well maybe tomorrow.
YAY !
IT...