d'oh! That was at least part of the problem.
Still having some issues that might be related to the scope or static-ness of the variable. For some reason in order to acces it in a different class, the code wants us to make it static.
Code:
public static double speed;
public void disabledInit(){
prefs = Preferences.getInstance();
speed = prefs.getDouble("speed", 0.0);
SmartDashboard.putNumber("Pref speed", speed);
}
Code:
SmartDashboard.putNumber("Pref speed in different class", Robot.speed);
In smart dashboard we'll get
"Pref speed": # (this updates appropriately when we disable)
"Pref speed in different class": 0.0 (this stays at whatever we initially set it to no matter what this doesnt surprise me because it's declared as static).
Thanks for all the help so far.