Log in

View Full Version : Beta Teams: SmartDashboard 2.0


Joe Ross
27-12-2013, 15:36
What do you guys think of SmartDashboard 2.0 (or is it SmartDashboard FX, or SFX?).

Based on your testing, are you planning to use it this season?
What was your favorite feature(s)?
Any issues teams should be aware of?
Did anyone try to make any custom widgets or plugins? Was it hard to learn JavaFX? Was there any documentation for making custom widgets or plugins?
Was the camera viewer more stable then the original SmartDashboard. Did anyone do any vision processing?
Did anyone try running it on the classmate?
Is it stable when running for long periods of time?

For those not familiar with the new SmartDashboard, there is some information here: http://wpilib.screenstepslive.com/s/3120/m/7961/l/151644-the-new-smartdashboard-sfx

krieck
27-12-2013, 21:26
For the beta testers, I'll throw out another question: Was Java 7 required for the new tools? It looks like some of the latest development JARs won't currently execute using Java 6.

I ask because some of our team's older laptops may not be able to run the newest JDK.

NWChen
28-12-2013, 12:37
Java beta tester here. If you haven't seen SD2.0/SFX yet, look at Joe's link (http://wpilib.screenstepslive.com/s/3120/m/7961/l/151644-the-new-smartdashboard-sfx).

What do you guys think of SmartDashboard 2.0 (or is it SmartDashboard FX, or SFX?). I've heard it most frequently referred to as SFX. For debugging purposes it's better than SmartDashboard1.0: the record functionality, more widgets, being able to use (JavaFX, not browser) CSS to customize widgets, and multiple tabs (e.g. for SmartDashboard and for LiveWindow) make viewing data easier.

Based on your testing, are you planning to use it this season? Yes, we think it'll speed up debugging, if not be more aesthetically pleasing on the Driver Station (if we choose to use it there).

What was your favorite feature(s)? The record/playback functionality. We can play back data at any time. Something suggested by Dan Lavin on 694 was collecting data in teleop and using it for autonomous, which I know some teams have attempted but might be easier this year with the addition of record/playback.

Any issues teams should be aware of? There were one or two nonfunctioning buttons (like the data source button) on the interface, and we had to run SFX from terminal java -jar sfx.jar to get some other functions working. Since this was beta, though, it'll probably be fixed by build season. It also may have been an error just on our platform, we only tested SFX on one laptop running Windows 7.

Did anyone try to make any custom widgets or plugins? Was it hard to learn JavaFX? Was there any documentation for making custom widgets or plugins? Beyond using CSS to customize widgets, I don't know anyone who attempted to make a custom widget specifically for SFX. ScreenSteps links to a JavaFX CSS reference page (http://docs.oracle.com/javafx/2/api/javafx/scene/doc-files/cssref.html) and that's all.

Was the camera viewer more stable then the original SmartDashboard. Did anyone do any vision processing? I'm not able to answer this, we didn't do any vision processing and I can't recall or find documentation on camera viewing in SFX.

Did anyone try running it on the classmate? Our setup was an HP Probook 4540s, so I can't answer this either, sorry.

Is it stable when running for long periods of time? Seems to be - at one point we had it running for about 45 minutes, so unlike SmartDashboard 1.0 it doesn't crash after a brief period of time.

For the beta testers, I'll throw out another question: Was Java 7 required for the new tools? It looks like some of the latest development JARs won't currently execute using Java 6. Java 7 is required:
"The new dashboard requires a current version of Oracle Java 7 (minimum release 7u6) to be installed on your system to get JavaFX."

Hope that helped.

byteit101
05-01-2014, 13:35
What do you guys think of SmartDashboard 2.0 (or is it SmartDashboard FX, or SFX?).
Main developer here, and even I don't know what to call it. I first thought of 2.0, but then somebody said the current version was 2.0 so it should be 3.0. To avoid taking a stance until we could figure it out, I called the repo SFX because it used JavaFX, however we never really figured it out. Jenkins is 3.0 for the old SVN repo, 2.0 for the current git repo, and I usualy call it sfx


Any issues teams should be aware of?
Did anyone try to make any custom widgets or plugins? Was it hard to learn JavaFX? Was there any documentation for making custom widgets or plugins?
Unfortunatly I need to do this as there is not much documetation on it. Fairly simple as you just need to implment an interface (Control) and I already have examples in Java, JRuby, and FXML.
EDIT: https://usfirst.collab.net/sf/wiki/do/viewPage/projects.smartdashboard2/wiki/CustomControls


Was the camera viewer more stable then the original SmartDashboard. Did anyone do any vision processing?
Vision processing is not built in (yet) but it should be trivial to make a custom control to do it.

For the beta testers, I'll throw out another question: Was Java 7 required for the new tools? It looks like some of the latest development JARs won't currently execute using Java 6.[/QUOTE]
Correct, sfx requires JavaFX 2.2, which is bundled with 7u6, however if you are on Windows, you can supposedly get it to run with 6. We have not tried this.

charr
06-01-2014, 21:44
Java beta tester here. If you haven't seen SD2.0/SFX yet, look at Joe's link (http://wpilib.screenstepslive.com/s/3120/m/7961/l/151644-the-new-smartdashboard-sfx).

I've heard it most frequently referred to as SFX. For debugging purposes it's better than SmartDashboard1.0: the record functionality, more widgets, being able to use (JavaFX, not browser) CSS to customize widgets, and multiple tabs (e.g. for SmartDashboard and for LiveWindow) make viewing data easier.

Yes, we think it'll speed up debugging, if not be more aesthetically pleasing on the Driver Station (if we choose to use it there).

The record/playback functionality. We can play back data at any time. Something suggested by Dan Lavin on 694 was collecting data in teleop and using it for autonomous, which I know some teams have attempted but might be easier this year with the addition of record/playback.

There were one or two nonfunctioning buttons (like the data source button) on the interface, and we had to run SFX from terminal java -jar sfx.jar to get some other functions working. Since this was beta, though, it'll probably be fixed by build season. It also may have been an error just on our platform, we only tested SFX on one laptop running Windows 7.

Beyond using CSS to customize widgets, I don't know anyone who attempted to make a custom widget specifically for SFX. ScreenSteps links to a JavaFX CSS reference page (http://docs.oracle.com/javafx/2/api/javafx/scene/doc-files/cssref.html) and that's all.

I'm not able to answer this, we didn't do any vision processing and I can't recall or find documentation on camera viewing in SFX.

Our setup was an HP Probook 4540s, so I can't answer this either, sorry.

Seems to be - at one point we had it running for about 45 minutes, so unlike SmartDashboard 1.0 it doesn't crash after a brief period of time.

Java 7 is required:
"The new dashboard requires a current version of Oracle Java 7 (minimum release 7u6) to be installed on your system to get JavaFX."

Hope that helped.

That link is dead. Do you have the correct one?

NWChen
06-01-2014, 23:18
That link is dead. Do you have the correct one?

http://wpilib.screenstepslive.com/s/3120/m/7932/l/163009-the-new-smartdashboard-sfx

charr
13-01-2014, 12:59
Thanks.

I haven't tested it yet but thought I'd ask. Does the new smartdashboard use the current Network Tables protocol? Or asking another way, it is compatible with the old smartdashboard?

BradAMiller
14-01-2014, 20:13
Thanks.

I haven't tested it yet but thought I'd ask. Does the new smartdashboard use the current Network Tables protocol? Or asking another way, it is compatible with the old smartdashboard?

Yes, same network tables, same protocol for SmartDashboard and Test mode.

Ipiano
20-01-2014, 20:04
Based on your testing, are you planning to use it this season?
We WERE planning to use it, but in the final release the RobotPreferences widget(which didn't work well, but could have been improved) was removed, and that's something we use heavily to define our autonomous. If we can find a workaround, we will use the dashboard.

What was your favorite feature(s)?
I really liked the ability to rewind the data, but it's a little buggy.
Sometime last year the camera feed stopped working, but it seems to work in SFX. I would assume the memory leak was fixed, but I haven't used it much to be able to say for sure.

Any issues teams should be aware of?
If you try to change the settings for what to do when new widgets are added and use a custom rule, then the "x" and close buttons on the settings dialogue stop working

Did anyone try to make any custom widgets or plugins? Was it hard to learn JavaFX? Was there any documentation for making custom widgets or plugins?
I did not. But last year I did, and unless FX is a LOT different that Java Swing, it's not TOO hard. No, I don't think there was documentation, but I didn't look either.

Was the camera viewer more stable then the original SmartDashboard. Did anyone do any vision processing?
It actually worked, which is more than can be said for the widget last year. It stopped working at some point and we don't know why.

Did anyone try running it on the classmate?
Not me.

Is it stable when running for long periods of time?
I don't know what qualifies as "long periods" but we prefer not to close it because it takes a while to start up(may be an issue with the computer), and we haven't seen it crash yet.


I am of the opinion that an update will be released because there was the option to change placed widgets to different types(as is stated in the online tutorial) and that and the RobotPreferences widget, both very useful features, were removed.

byteit101
21-01-2014, 16:31
Based on your testing, are you planning to use it this season?
We WERE planning to use it, but in the final release the RobotPreferences widget(which didn't work well, but could have been improved) was removed, and that's something we use heavily to define our autonomous. If we can find a workaround, we will use the dashboard.
As SFX was a fresh re-write, it was not removed but simply not yet added. It should be fairly simple to add back (if you want to do it we are welcoming patches)


What was your favorite feature(s)?
I really liked the ability to rewind the data, but it's a little buggy.
Sometime last year the camera feed stopped working, but it seems to work in SFX. I would assume the memory leak was fixed, but I haven't used it much to be able to say for sure.

Mind describing the bug? possibly even report it on the issues page? We can't fix it if we don't know what it is...


Any issues teams should be aware of?
If you try to change the settings for what to do when new widgets are added and use a custom rule, then the "x" and close buttons on the settings dialogue stop working

Interesting, I will investigate


Did anyone try to make any custom widgets or plugins? Was it hard to learn JavaFX? Was there any documentation for making custom widgets or plugins?
I did not. But last year I did, and unless FX is a LOT different that Java Swing, it's not TOO hard. No, I don't think there was documentation, but I didn't look either.

FX is a LOT different than Swing. JavaFX documentation is found at oracle.com, basic guide is found https://usfirst.collab.net/sf/wiki/do/viewPage/projects.smartdashboard2/wiki/CustomControls


Was the camera viewer more stable then the original SmartDashboard. Did anyone do any vision processing?
It actually worked, which is more than can be said for the widget last year. It stopped working at some point and we don't know why.

Vision Processing is not built in yet. Kind of odd the viewer was more stable as the image fetching code is literally the only bit of code that is the same between the new and old... Either way, both will be fixed better soon with VideoCore branch.


Did anyone try running it on the classmate?
Not me.

Is it stable when running for long periods of time?
I don't know what qualifies as "long periods" but we prefer not to close it because it takes a while to start up(may be an issue with the computer), and we haven't seen it crash yet.

Playback dumps >5min (or so) data, so after ~5 minutes it should be stable memory usage. If it does crash, please file a bug. Regarding startup, it is much more variable as there are many more features supported. We are working on making it load faster.


I am of the opinion that an update will be released because there was the option to change placed widgets to different types(as is stated in the online tutorial) and that and the RobotPreferences widget, both very useful features, were removed.
The morph feature was disabled at the last minute (Dec 31) because it had some very odd bugs that had strange interactions and we felt it was easier to disable it and have fewer bugs for the first release. It will be re-enabled when we sort those bugs out.
EDIT: almost forgot, but you can still do it manually. Just drag out what you want left side and choose the type/path.
RobotPreferences was never added yet, but see first comment

Ipiano
28-01-2014, 21:09
Info about RobotPreferences!!

I feel like a complete idiot right now.
I was expecting RobotPreferences to be implemented as they were in SmartDashboard 1.0, in a widget.

They ARE implemented, just not as I had thought they would be. The are on the list of possible name-value pairs that can be added to the SFX board, just like any value from the robot.

I'm extremely sorry for any confusion I may have caused in this topic.

byteit101
29-01-2014, 11:41
I was expecting RobotPreferences to be implemented as they were in SmartDashboard 1.0, in a widget.

They ARE implemented, just not as I had thought they would be. The are on the list of possible name-value pairs that can be added to the SFX board, just like any value from the robot.

That is one of the reasons we moved to this new architecture, as now any value can be used even if its inside what is supposed to be a control. So yes, they will work like that raw.

That being said, it is planned to add a widget sort of thing for them eventually, but as you can see, its not entirely necessary for using them. Thus, they are not "implemented" yet, its just the default exposure of all properties in a value tree.

ksanger
07-03-2014, 17:28
I wish the example x-yLocation was better. I've been working on it for hours and can not get it to work yet. Currently stuck on defining xValue. Its not an int. Its a SmartValue? Don't know what getObservable() does. I'm pretty new to Java, yet this seams impossible. SFX appears overly complex to me. We used to have an add-on that would find objects in the camera image and report them to the smartDashboard. However this year I've been told we are running SFX.

We used to be able to test seeing the camera and developing code on the laptop to process the image without a cRio present. Does SFX run without the cRio? Or is it not responding because there is no table source without a cRio?

I changed the add control to true and the window hangs open just like posted here. Again suspect its because a cRio is not at my house.

I don't believe we will have any image software again this year.