Short Bug Report

This is where you talk about the EV3 software itself, installation issues, and programming talk.

Moderators: roger, gloomyandy, skoehler

Re: Short Bug Report

Postby gloomyandy » Wed Feb 05, 2014 10:21 am

Hi Roger,
do you mean the problem of the EV3 sort of locking up when you unplug the USB connection? If so I'm not sure we understand that problem well at the moment, so I don't think we have a fix for it.

Andy
User avatar
gloomyandy
leJOS Team Member
 
Posts: 3645
Joined: Fri Sep 28, 2007 2:06 pm
Location: UK

Re: Short Bug Report

Postby saturn_at_sky » Fri Feb 07, 2014 4:54 pm

Since my developenemt of EV3 robots, I found some new bugs:

1) Files Menu: if there are more than 7 files and a name of a file is longer than 16 letters, if you scroll the screen, the 17. letter is assigned to the line above or below.

2) You have interchanged the sound of the satements: Sound.beepSequenceUp() and Sound.beepSequence()

3) Starting the Utility EV3Console, Console output:
Failed to connect to null: java.net.ConnectException: Connection refused: connect
Failed to connect to EV3

4) Starting the Utility EV3Control, Console output:
Code: Select all
Closing the connection
Adding 192.168.178.21
Adding 192.168.178.21
Adding 192.168.178.21
Found EV3 192.168.178.21
Name is 192.168.178.21
Connecting to 192.168.178.21
Connected to 192.168.178.21(192.168.178.21)
Connected to 192.168.178.21 192.168.178.21
java.rmi.ConnectException: Connection refused to host: 192.168.0.9; nested exception is:
   java.net.ConnectException: Connection timed out: connect
   at sun.rmi.transport.tcp.TCPEndpoint.newSocket(Unknown Source)
   at sun.rmi.transport.tcp.TCPChannel.createConnection(Unknown Source)
   at sun.rmi.transport.tcp.TCPChannel.newConnection(Unknown Source)
   at sun.rmi.server.UnicastRef.invoke(Unknown Source)
   at java.rmi.server.RemoteObjectInvocationHandler.invokeRemoteMethod(Unknown Source)
   at java.rmi.server.RemoteObjectInvocationHandler.invoke(Unknown Source)
   at com.sun.proxy.$Proxy0.getProgramNames(Unknown Source)
   at lejos.ev3.tools.EV3Control.createProgramsTable(EV3Control.java:932)
   at lejos.ev3.tools.EV3Control.showFiles(EV3Control.java:289)
   at lejos.ev3.tools.EV3Control.connect(EV3Control.java:1474)
   at lejos.ev3.tools.EV3Control.access$2(EV3Control.java:1445)
   at lejos.ev3.tools.EV3Control$3.actionPerformed(EV3Control.java:246)
   at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
   at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
   at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
   at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
   at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
   at java.awt.Component.processMouseEvent(Unknown Source)
   at javax.swing.JComponent.processMouseEvent(Unknown Source)
   at java.awt.Component.processEvent(Unknown Source)
   at java.awt.Container.processEvent(Unknown Source)
   at java.awt.Component.dispatchEventImpl(Unknown Source)
   at java.awt.Container.dispatchEventImpl(Unknown Source)
   at java.awt.Component.dispatchEvent(Unknown Source)
   at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
   at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
   at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
   at java.awt.Container.dispatchEventImpl(Unknown Source)
   at java.awt.Window.dispatchEventImpl(Unknown Source)
   at java.awt.Component.dispatchEvent(Unknown Source)
   at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
   at java.awt.EventQueue.access$200(Unknown Source)
   at java.awt.EventQueue$3.run(Unknown Source)
   at java.awt.EventQueue$3.run(Unknown Source)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
   at java.awt.EventQueue$4.run(Unknown Source)
   at java.awt.EventQueue$4.run(Unknown Source)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
   at java.awt.EventQueue.dispatchEvent(Unknown Source)
   at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
   at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
   at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
   at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
   at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
   at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: java.net.ConnectException: Connection timed out: connect
   at java.net.DualStackPlainSocketImpl.connect0(Native Method)
   at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)
   at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
   at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
   at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
   at java.net.PlainSocketImpl.connect(Unknown Source)
   at java.net.SocksSocketImpl.connect(Unknown Source)
   at java.net.Socket.connect(Unknown Source)
   at java.net.Socket.connect(Unknown Source)
   at java.net.Socket.<init>(Unknown Source)
   at java.net.Socket.<init>(Unknown Source)
   at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(Unknown Source)
   at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(Unknown Source)
   ... 48 more
java.rmi.ConnectException: Connection refused to host: 192.168.0.9; nested exception is:
   java.net.ConnectException: Connection timed out: connect
   at sun.rmi.transport.tcp.TCPEndpoint.newSocket(Unknown Source)
   at sun.rmi.transport.tcp.TCPChannel.createConnection(Unknown Source)
   at sun.rmi.transport.tcp.TCPChannel.newConnection(Unknown Source)
   at sun.rmi.server.UnicastRef.invoke(Unknown Source)
   at java.rmi.server.RemoteObjectInvocationHandler.invokeRemoteMethod(Unknown Source)
   at java.rmi.server.RemoteObjectInvocationHandler.invoke(Unknown Source)
   at com.sun.proxy.$Proxy0.getSampleNames(Unknown Source)
   at lejos.ev3.tools.EV3Control.createSamplesTable(EV3Control.java:973)
   at lejos.ev3.tools.EV3Control.showFiles(EV3Control.java:290)
   at lejos.ev3.tools.EV3Control.connect(EV3Control.java:1474)
   at lejos.ev3.tools.EV3Control.access$2(EV3Control.java:1445)
   at lejos.ev3.tools.EV3Control$3.actionPerformed(EV3Control.java:246)
   at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
   at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
   at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
   at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
   at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
   at java.awt.Component.processMouseEvent(Unknown Source)
   at javax.swing.JComponent.processMouseEvent(Unknown Source)
   at java.awt.Component.processEvent(Unknown Source)
   at java.awt.Container.processEvent(Unknown Source)
   at java.awt.Component.dispatchEventImpl(Unknown Source)
   at java.awt.Container.dispatchEventImpl(Unknown Source)
   at java.awt.Component.dispatchEvent(Unknown Source)
   at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
   at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
   at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
   at java.awt.Container.dispatchEventImpl(Unknown Source)
   at java.awt.Window.dispatchEventImpl(Unknown Source)
   at java.awt.Component.dispatchEvent(Unknown Source)
   at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
   at java.awt.EventQueue.access$200(Unknown Source)
   at java.awt.EventQueue$3.run(Unknown Source)
   at java.awt.EventQueue$3.run(Unknown Source)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
   at java.awt.EventQueue$4.run(Unknown Source)
   at java.awt.EventQueue$4.run(Unknown Source)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
   at java.awt.EventQueue.dispatchEvent(Unknown Source)
   at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
   at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
   at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
   at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
   at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
   at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: java.net.ConnectException: Connection timed out: connect
   at java.net.DualStackPlainSocketImpl.connect0(Native Method)
   at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)
   at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
   at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
   at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
   at java.net.PlainSocketImpl.connect(Unknown Source)
   at java.net.SocksSocketImpl.connect(Unknown Source)
   at java.net.Socket.connect(Unknown Source)
   at java.net.Socket.connect(Unknown Source)
   at java.net.Socket.<init>(Unknown Source)
   at java.net.Socket.<init>(Unknown Source)
   at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(Unknown Source)
   at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(Unknown Source)
   ... 48 more
User avatar
saturn_at_sky
New User
 
Posts: 21
Joined: Wed Jan 08, 2014 1:55 pm
Location: Germany

Re: Short Bug Report

Postby lawrie » Fri Feb 07, 2014 9:19 pm

Thanks for the information.

I will look at (1).

I think Andy has just fixed (2).

3. EV3Console is really a command line utility, and expects the name or IP address of the EV3 parameter. It really needs command line checking, but I have not decided what to do about command line tools yet. It will probably work if you give it the IP address as a parameter.

(4) is a known problem mentioned in other forum posts. It was fixed in EV3Menu just after the 0.5.0 release. You need to build the head version of EV3Menu and reboot the EV3 to pick up the fix. It will be fixed in the release, which should be out in a day or two.
lawrie
leJOS Team Member
 
Posts: 842
Joined: Mon Feb 05, 2007 1:27 pm

Re: Short Bug Report

Postby lawrie » Sat Feb 08, 2014 4:08 pm

I had a quick look at the Files menu problem, but could not spot a problem with the code and could not reproduce the problem. I think I will leave this until I do more extensive changes to the menu. It needs quite a few cosmetic improvements.

If you or anyone else can give me a screen shot of this problem, it would help. Running EV3Control or EV3ConsoleViewer is the easiest way to get screen shots of the LCD screen.
lawrie
leJOS Team Member
 
Posts: 842
Joined: Mon Feb 05, 2007 1:27 pm

Re: Short Bug Report

Postby daspfanni2000 » Sat Feb 08, 2014 9:21 pm

It will be fixed in the release, which should be out in a day or two.


I am SO looking forward to it! Rock'n'Roll!

:lol:

Looking forward to the new motor code!
daspfanni2000
New User
 
Posts: 19
Joined: Sun Dec 22, 2013 5:34 pm

Re: Short Bug Report

Postby daspfanni2000 » Sat Feb 08, 2014 10:39 pm

Oh and I just found one thing that maybe should be corrected.

Code: Select all
Button.LEDPattern(7);


If you set an LED blinking pattern, at the end of the program, when Lejos (menu) takes over again, the pattern should be stopped to defaults.
daspfanni2000
New User
 
Posts: 19
Joined: Sun Dec 22, 2013 5:34 pm

Re: Short Bug Report

Postby tigger » Mon Feb 17, 2014 8:52 pm

Hi Andy,

maybe a known problem:

Using method setFloodlight(false); will result in an InvalidArgumentException because only Color.BLUE, Color.RED and Color.WHITE currently is mapped in setFloodlight(), but the implementation of setFloodlight(boolean) will try to set Color.NONE.

A quick look into source shows that there is no "setLight", it's only the mapping to the three operating modes of the sensor. But even without an operating mode like "off" the method setFlootlight(boolean onOff) should not run into a RuntimeException which is only visible with jrun -jar <program> at command line. Better a simple NOOP in this operation combined with a quick notice in API doc there is no possibility to turn off light sensors light at the moment.
tigger
New User
 
Posts: 17
Joined: Mon Feb 10, 2014 10:04 pm

Re: Short Bug Report

Postby gloomyandy » Mon Feb 17, 2014 9:06 pm

Thanks for the report. I'm not sure that ignoring the error is correct. We should either find a way to implement the method or remove the interface, if all else fails the exception is probably correct (though we do need to find a way to have exceptions trapped by the menu). Silently ignoring the issue is probably not a good thing to do.
User avatar
gloomyandy
leJOS Team Member
 
Posts: 3645
Joined: Fri Sep 28, 2007 2:06 pm
Location: UK

Re: Short Bug Report

Postby tigger » Mon Feb 17, 2014 9:19 pm

Silently ignoring the issue is probably not a good thing to do.


Good point.

But for anyone not familiar with linux command line a runtime exception may hard to detect, and behaviors like this (setFloodlight(false) was used while init the robot, I doesn't expect a problem with such an API command) can be confusing and frustrating. So I would prefer a simple notice in JavaDoc API not to use this method at the moment.

By the way: the current release 0.6 is working VERY WELL for me, I have hours of fun (and hours to learn Java as well) with my EV3 using it. My current robot is a simple one with a drive motor and a steering motor, and I try to use the color sensor as "floodlight". Today I added the RC code, next days some autonomous behaviors will follow.

I can't imagine coding complex bots like this using Lego Software so I really enjoy leJOS. :D
tigger
New User
 
Posts: 17
Joined: Mon Feb 10, 2014 10:04 pm

Re: Short Bug Report

Postby roger » Tue Feb 18, 2014 2:49 am

Still a problem with EV3Control

I entered 10.0.0.6 as the device name (it works in eclipse to download code) and pressed the connect button.
The console output is:
Connecting to 10.0.0.6
Connected to 10.0.0.6(10.0.0.6)
Connected to 10.0.0.6 10.0.0.6
java.rmi.ConnectException: Connection refused to host: 10.0.1.1; nested exception is:
java.net.ConnectException: Connection timed out: connect ....
I think I am using the latest version. Eclipse shows it as eve 0.6.0-alpha. My SD card image was updated with the 0.6.0 release.
BTW, I have not been able to connect via USB cable either, so I am probably doing something wrong.
Roger
roger
Moderator
 
Posts: 350
Joined: Fri Jun 01, 2007 4:31 am
Location: Berkeley, CA

Re: Short Bug Report

Postby lawrie » Tue Feb 18, 2014 12:54 pm

Hi Roger, Try pressing the search button and see if it detects an EV3. Then select it and press Connect.

There seems to be something odd with your IP addresses. What IP address(es) does the menu show?

Lawrie
lawrie
leJOS Team Member
 
Posts: 842
Joined: Mon Feb 05, 2007 1:27 pm

Re: Short Bug Report

Postby gloomyandy » Tue Feb 18, 2014 1:11 pm

Hi Lawrie,
I assume that 10.0.0.6 is a WiFi address, some routers use the 10.0.0.0 range.
User avatar
gloomyandy
leJOS Team Member
 
Posts: 3645
Joined: Fri Sep 28, 2007 2:06 pm
Location: UK

Re: Short Bug Report

Postby roger » Tue Feb 18, 2014 8:10 pm

When I turn on the EV3, 2 addresses show: 10.0.1.1 and 10.0.0.6. To download code from Eclipse using USB, I use first one is the ev3.host name; to download using the wifi network, I use the second.
Roger
roger
Moderator
 
Posts: 350
Joined: Fri Jun 01, 2007 4:31 am
Location: Berkeley, CA

Re: Short Bug Report

Postby lawrie » Tue Feb 18, 2014 8:39 pm

Hi Roger, the problem you are getting seems to be that the menu is telling EV3Control to connect to RMI using 10.0.1.1 rather than 10.0.0.6. I found on my system that the menu has to specify the IP address and not rely on the one that RMI deduces by default. If there are two IP addresses, it uses the second one, which should be the Wifi address, In your case, it seems to be using the first one, 10.0.1.1. I do not understand all this very well, and there may be a better way to do things. What I currently do seems to work for most people, but not for you. What order on the screen are IP addresses displayed? Which comes first 10.0.1.1 or 10.0.0.6?

Lawrie
lawrie
leJOS Team Member
 
Posts: 842
Joined: Mon Feb 05, 2007 1:27 pm

Re: Short Bug Report

Postby roger » Wed Feb 19, 2014 7:35 am

Hi Lawrie,
After shutting down the EV3 and restarting, EVControl now connects properly to the brick. I was so happy to see it working that I spent some time testing it. Here are my results:
Motors: only A,B and C are recognized; the motor connected to port D does not respond, and even when port D is selected, an error is displayed "at least 1 motor must be selected" All combinations of forward, backward, and checking reverse result in the same motor rotation.
Sensors: I have tested gyro, color and ultrasonic sensors on all 4 ports. All 3 work correctly on ports 1,3 and 4, but on port2 the console output is:
Sensor type is EV3 Color
Sensor class is lejos.hardware.sensor.EV3ColorSensor
Port is S2
Created constructor
Failed to create sensor class: java.lang.reflect.InvocationTargetException
Cause: java.lang.NullPointerException
java.lang.NullPointerException
at lejos.remote.ev3.RemoteIOPort.getName(RemoteIOPort.java:71)
at lejos.remote.ev3.RemoteUARTPort.open(RemoteUARTPort.java:19)
at lejos.remote.ev3.RemotePort.open(RemotePort.java:69)
at lejos.hardware.sensor.UARTSensor.<init>(UARTSensor.java:59)
at lejos.hardware.sensor.UARTSensor.<init>(UARTSensor.java:36)
at lejos.hardware.sensor.EV3ColorSensor.<init>(EV3ColorSensor.java:89)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
But the sensor test in Samples reads port 2 with no problems.
The Wifi tab works correctly - it detects all the access ports that my ipad does.
Thanks for your help.
Roger
roger
Moderator
 
Posts: 350
Joined: Fri Jun 01, 2007 4:31 am
Location: Berkeley, CA

PreviousNext

Return to EV3 Software

Who is online

Users browsing this forum: No registered users and 1 guest

more stuff