Noam Zaks
4e424d51f4
[wpilibj] DifferentialDrivetrainSim: Rename constants to match the style guide ( #3312 )
2021-05-01 07:09:23 -07:00
Thad House
6b50323b07
[cscore] Use Lock2DSize if possible for Windows USB cameras ( #3326 )
...
Can remove a memory copy in many cases. This also fixes a bug where any mjpeg cameras on windows wouldn't work if the fast path was taken.
2021-05-01 07:07:37 -07:00
Tyler Veness
65c148536d
[wpilibc] Fix "control reaches end of non-void function" warning ( #3324 )
2021-05-01 07:05:21 -07:00
Peter Johnson
f99f62bee4
[wpiutil] uv Handle: Use malloc/free instead of new/delete ( #3325 )
...
This avoids asan warnings for deleting a different pointer type.
2021-05-01 07:04:14 -07:00
Tyler Veness
365f5449ca
[wpimath] Fix MecanumDriveKinematics ( #3266 )
2021-04-30 15:50:16 -07:00
Starlight220
ff52f207cc
[glass, wpilib] Rewrite Mechanism2d ( #3281 )
...
Substantially improves Mechanism2d by moving it to NetworkTables and adding
a robot API to create the mechanism elements, instead of requiring a JSON file.
Co-authored-by: Peter Johnson <johnson.peter@gmail.com >
2021-04-30 13:43:59 -07:00
Tyler Veness
ee0eed143a
[wpimath] Add DCMotor factory function for Romi motors ( #3319 )
2021-04-29 09:59:35 -07:00
Thad House
5127380727
[hal] Add HAL_GetLastError to enable better error messages from HAL calls ( #3320 )
...
This uses thread local storage so a full error string can be provided, not just an error code.
2021-04-29 09:56:54 -07:00
Noam Zaks
ced654880c
[glass, outlineviewer] Update Mac icons to macOS 11 style ( #3313 )
2021-04-25 17:30:45 -07:00
Peter Johnson
936d3b9f83
[templates] Add Java template for educational robot ( #3309 )
...
Educational robot is a very minimal template designed for educational use
(rather than competition).
v2021.3.1
2021-04-24 20:22:39 -07:00
Jeff Hutchison
6e31230adc
[examples] Fix odometry update in SwerveControllerCommand example ( #3310 )
...
The Drive Subsystem was supplying an incorrectly constructed
Rotation2d to the odometry update method. Rotation2d constructor
was being called with heading in degrees, not radians as required.
2021-04-24 20:07:04 -07:00
Peter Johnson
05ebe93180
Merge branch 'main' into 2022
2021-04-19 18:45:31 -07:00
Prateek Machiraju
aaf24e2552
[wpilib] Fix initial heading behavior in HolonomicDriveController ( #3290 )
2021-04-18 21:00:11 -07:00
Peter Johnson
8d961dfd25
[wpilibc] Remove ErrorBase ( #3306 )
...
Replace with new exception-based error reporting, consistent with Java.
This also builds stacktraces into the reporting/exceptions.
2021-04-18 20:35:29 -07:00
Peter Johnson
659b37ef9d
[wpiutil] StackTrace: Include offset on Linux ( #3305 )
2021-04-18 20:34:39 -07:00
Peter Johnson
0abf6c9045
[wpilib] Move motor controllers to motorcontrol package ( #3302 )
...
Also deprecate SpeedController in favor of motorcontrol.MotorController and
SpeedControllerGroup in favor of motorcontrol.MotorControllerGroup.
The MotorController interface is derived from the SpeedController interface
so that code such as SpeedController x = new VictorSP(1) continues to
compile (just with a warning).
SpeedControllerGroup and MotorControllerGroup are independent classes;
both implement the MotorController interface.
2021-04-17 11:27:16 -07:00
Tyler Veness
4630191fa4
[wpiutil] circular_buffer: Use value initialization instead of passing zero ( #3303 )
...
This enables use of types that have a no-args constructor rather than one that takes an explicit zero value.
For numeric types, value initialization will result in a zero value, so this is not a functional change.
2021-04-15 11:50:07 -07:00
Peter Johnson
b7b178f49c
[wpilib] Remove Potentiometer interface
2021-04-13 22:40:55 -07:00
Peter Johnson
687066af3d
[wpilib] Remove GyroBase
2021-04-13 22:40:55 -07:00
Peter Johnson
6b168ab0c8
[wpilib] Remove PIDController, PIDOutput, PIDSource
...
Move them to the old commands vendordep so that PIDCommand and PIDSubsystem
continue to work.
This also removes Filter and LinearDigitalFilter.
2021-04-13 22:40:55 -07:00
Tyler Veness
948625de9d
[wpimath] Document conversion from filter cutoff frequency to time constant ( #3299 )
2021-04-12 11:12:52 -07:00
Modelmat
3848eb8b16
[wpilibc] Fix flywhel -> flywheel typo in FlywheelSim ( #3298 )
2021-04-12 11:12:04 -07:00
Peter Johnson
3abe0b9d49
[cscore] Move java package to edu.wpi.first.cscore ( #3294 )
...
This is more consistent with the other Java packages, and also is more
correct, as we own the first.wpi.edu domain but not the full wpi.edu domain.
2021-04-10 11:42:41 -07:00
Peter Johnson
d7fabe81fe
[wpilib] Remove RobotDrive ( #3295 )
...
This has been deprecated for several years, and its functionality has been
completely superseded by other drive classes (DifferentialDrive et al).
2021-04-10 10:28:32 -07:00
Peter Johnson
1dc81669c2
[wpilib] Remove GearTooth ( #3293 )
...
This sensor has had zero usage for many years and was last in the KOP
over a decade ago. There are much better rotation sensors available,
and it's no longer worth maintaining this class.
2021-04-10 10:28:05 -07:00
Peter Johnson
01d0e12603
[wpilib] Revert move of RomiGyro into main wpilibc/j ( #3296 )
...
This reverts commit 69e8d0b65d (#3143 ).
We haven't released a version with this yet, and plan to make a vendor
library instead.
2021-04-10 10:27:44 -07:00
Peter Johnson
397e569aaf
[ntcore] Remove "using wpi" from nt namespace
...
This removes the nt::ArrayRef, nt::StringRef, and nt::Twine aliases.
2021-04-08 22:35:28 -07:00
Peter Johnson
79267f9e60
[ntcore] Remove NetworkTable -> nt::NetworkTable shim
2021-04-08 22:35:28 -07:00
Peter Johnson
48ebe5736a
[ntcore] Remove deprecated Java interfaces and classes
2021-04-08 22:35:28 -07:00
Peter Johnson
c2064c78b2
[ntcore] Remove deprecated ITable interfaces
2021-04-08 22:35:28 -07:00
Peter Johnson
36608a283b
[ntcore] Remove deprecated C++ APIs
2021-04-08 22:35:28 -07:00
Starlight220
a1c87e1e15
[glass] LogView: Add "copy to clipboard" button ( #3274 )
2021-04-06 13:19:49 -07:00
Prateek Machiraju
fa7240a501
[wpimath] Fix typo in quintic spline basis matrix
2021-04-03 16:03:38 -07:00
Prateek Machiraju
ffb4d38e24
[wpimath] Add derivation for spline basis matrices
2021-04-03 16:03:38 -07:00
Starlight220
f57c188f2e
[wpilib] Add AnalogEncoder(int) ctor ( #3273 )
2021-04-02 08:26:41 -07:00
Prateek Machiraju
8471c4fb26
[wpilib] FieldObject2d: Add setTrajectory() method ( #3277 )
2021-04-01 22:08:07 -07:00
Peter Johnson
c97acd18e7
[glass] Field2d enhancements ( #3234 )
...
- Add raw support for pose lists > 255/3 in length
- Improve drag selection, especially with closely overlapping objects
- Drag selection of corner also highlights center of object with smaller circle
- Multiple styles (box, line, closed line, track)
- Configurable line and arrow settings (color, weight)
- Add tooltip for object name, index, x, y, rotation
- Context menu for pose edit/add/remove
- View/edit in feet or inches as well as meters
- Configurable object selectability
Implementation: use vector of Pose2d internally, use units
2021-03-27 13:34:44 -07:00
Prateek Machiraju
ffb590bfcc
[wpilib] Fix Compressor sendable properties ( #3269 )
2021-03-26 21:20:54 -07:00
Peter Johnson
6137f98eb5
[hal] Rename SimValueCallback2 to SimValueCallback ( #3212 )
2021-03-21 23:22:04 -07:00
Peter Johnson
a6f6539691
[hal] Move registerSimPeriodic functions to HAL package ( #3211 )
...
This enables the static lists to be private.
2021-03-21 23:21:47 -07:00
Peter Johnson
10c038d9bf
[glass] Plot: Fix window creation after removal ( #3264 )
...
Previously the following sequence was broken:
- Add two plot windows (creates Plot<0> and Plot<1>)
- Delete Plot<0>
- Try to create a plot window
This failed because it would try to create Plot<1>, which already existed.
It was necessary to also destroy Plot<1> before another plot could be added.
This change fixes this case by trying all 0-N cases.
2021-03-21 18:06:18 -07:00
Peter Johnson
2d2eaa3eff
[wpigui] Ensure window will be initially visible ( #3256 )
...
Only set the initial window position if the window X/Y postion is within one
of the connected monitor work areas.
2021-03-21 12:39:33 -07:00
Prateek Machiraju
4d28b1f0cd
[wpimath] Use JNI for trajectory serialization ( #3257 )
2021-03-21 12:38:23 -07:00
Peter Johnson
3de800a607
[wpimath] TrajectoryUtil.h: Comment formatting (NFC) ( #3262 )
2021-03-21 11:40:15 -07:00
Peter Johnson
eff5923778
[glass] Plot: Don't overwrite series ID ( #3260 )
2021-03-21 11:14:25 -07:00
Peter Johnson
a79faace1b
[wpilibc] Return reference from GetInstance ( #3247 )
...
Improves consistency across all classes.
Affects Preferences, LiveWindow, and CameraServer.
Old commands Scheduler::GetInstance() was not updated as this is already
deprecated.
2021-03-21 11:13:49 -07:00
Peter Johnson
9550777b9d
[wpilib] PWMSpeedController: Use PWM by composition ( #3248 )
...
This cleans up the user experience by removing lower-level functions from the
interface.
Also remove MotorSafety from "raw" PWM.
2021-03-21 11:12:49 -07:00
Peter Johnson
c8521a3c33
[glass] Plot: Set reasonable default window size ( #3261 )
2021-03-21 10:50:41 -07:00
Peter Johnson
d71eb2cf39
[glass] Plot: Show full source name as tooltip and in popup ( #3255 )
2021-03-20 20:59:31 -07:00
Peter Johnson
160fb740f4
[hal] Use std::lround() instead of adding 0.5 and truncating ( #3012 )
2021-03-19 14:24:46 -07:00