Sometimes I feel we are the only people using RobotBuilder to generate C++ code, then SmartDashboard to test motors and sensors in Test Mode.
If I make a simple subsystem with 2 old style talon speed controllers and use the default names, I get the following code in robotmap.cpp.
subsystem1SpeedController1.reset(new Talon(0)); lw->AddActuator("Subsystem 1", "Speed Controller 1", std::static_pointer_cast<Talon>(subsystem1SpeedController1)); subsystem1SpeedController2.reset(new Talon(1)); lw->AddActuator("Subsystem 1", "Speed Controller 2", std::static_pointer_cast<Talon>(subsystem1SpeedController2));
When I deploy and run in Test Mode, SmartDashboard displays an empty box labelled “Subsystem 1”
If I remove the spaces from “Speed Controller 1”, like shown below, everything works as expected.
subsystem1SpeedController1.reset(new Talon(0)); lw->AddActuator("Subsystem 1", "Speed1", std::static_pointer_cast<Talon>(subsystem1SpeedController1)); subsystem1SpeedController2.reset(new Talon(1)); lw->AddActuator("Subsystem 1", "Speed2", std::static_pointer_cast<Talon>(subsystem1SpeedController2));
I had similar experiences when I played with Preferences last Fall. Spaces are sometimes not your friend.