Releases: Shenzhen-Robotics-Alliance/maple-sim
v0.2.4: Some Small Things
What's Changed
- small bug fix on rotation2d warning by @catr1xLiu in #59
- motor control loop simulation refactor by @catr1xLiu in #60
- A small bugfix in voltage constrain by @catr1xLiu in #61
- Akit Swerve Templates with maple-sim by @catr1xLiu in #62
- Add MAXSwerve & Thrifty Swerve by @pigrammer3 in #63
- memory optimization by @catr1xLiu in #64
New Contributors
- @pigrammer3 made their first contribution in #63
Full Changelog: v0.2.1...v0.2.4
v0.2.1
Wpilib 2025 beta 2
What's Changed
- Bug fix and opponnet robot simulation by @catr1xLiu in #54
- Use mkdocs by @GrahamSH-LLK in #55
- Update maple-sim.json by @jasondaming in #56
- upgraded to wpilib 2025 beta 2 by @catr1xLiu in #57
New Contributors
- @GrahamSH-LLK made their first contribution in #55
- @jasondaming made their first contribution in #56
Full Changelog: beta1...v0.2.1
V0.2.0-Beta1
Maple-Sim Beta 1: A New Start
It's been a month since we accounced maple-sim alpha, a lot has happened this month. We've got a lot of help from the community developers. Compared to maple-sim a month ago, we are more stable, easier to use and had some features.
Lots of new features for Beta!
1. Simplified Swerve Simulation
🙏 Contributed by @GearBoxFox
The new SimplifiedSwerveSimulation
class manages and controls a SwerveDriveSimulation
. Similar to how your user code operates the physical chassis, it runs closed loops on the virtual drive and steer motors in the simulated drivetrain, mimicking the behavior of a real swerve drive. This provides an easier way to simulate swerve drivetrains without the need for the hardware abstraction code structure.
Check out the documentation for more details.
2. Motor Controller Closed Loops Simulation
🙏 Contributed by @oh-yes-0-fps
The updated MapleMotorSim
now includes a feature to simulate high-frequency closed loops running on motor controllers. This allows teams using different vendor APIs to more accurately simulate the behavior of their motor controllers during simulations.
3. WPILib Units Library
🙏 Contributed by @buwunny
The New WPILib Units Library for 2025 has been fully implemented across the project. This improves API readability and eliminates potential issues related to unit conversions.
4. YAGSL, Officially Supported!
🙏 Thanks to @thenetworkgrinch for making this possible!
With help from the developers of YAGSL, we have successfully integrated maple-sim with the amazing Yet Another Generic Swerve Drive Library (2025-beta). A preview version featuring realistic swerve simulation will be available soon.
Please follow YAGSL on Github to stay updated when it's released.
More Stable Hosting
We are now using GitHub Pages to host the library and its documentation, providing a more reliable and stable experience than before.
You can download the vendordeps from this url:
https://shenzhen-robotics-alliance.github.io/maple-sim/vendordep/maple-sim.json
No additional configuration is needed in Gradle—simply drop the file into the vendordeps/
directory, and the library will download automatically!
The online documentation is available here.
You can also access the online Javadocs here.
What's Changed
- Fixed vendordep publishing by @thenetworkgrinch in #2
- Fixed publish.gradle by @thenetworkgrinch in #3
- added wcp modules to module creation methods by @cyocom in #4
- Add SwerveX2S module by @cyocom in #5
- Removed unecessary abstract keyword by @oh-yes-0-fps in #7
- removed pplib usage in lib by @oh-yes-0-fps in #11
- made wpilib version switchable by @catr1xLiu in #12
- Improved readability of DRIVE_WHEEL_TYPE enum by @KfirNeuman in #14
- added "copy javadocs to docs directory" in publish by @catr1xLiu in #17
- [API] Motor Sim Overhaul by @oh-yes-0-fps in #18
- Simplified swerve sim by @catr1xLiu in #21
- switched to Palantir Java Format by @catr1xLiu in #23
- Simplified swerve sim by @GearBoxFox in #25
- Conversion to WPILib Units by @buwunny in #24
- Wpilib units by @catr1xLiu in #28
- Added safety measures by @Daniel1464 in #33
- Link fixes for docs by @Daniel1464 in #38
- Motor sim control loops by @catr1xLiu in #32
New Contributors
- @thenetworkgrinch made their first contribution in #2
- @cyocom made their first contribution in #4
- @KfirNeuman made their first contribution in #14
- @GearBoxFox made their first contribution in #25
- @buwunny made their first contribution in #24
- @Daniel1464 made their first contribution in #33
Full Changelog: insider-test...beta1
What's Next?
As the title suggests, this is just the beginning for maple-sim. Our team, alongside contributors from the community, is actively working on exciting new features. We're planning to release Beta 2 next month, which will include the following updates:
1. SimRobot Container
A new SimRobot
class that encapsulates simulation classes modeling your robot, providing a more readable and intuitive API.
(Contributed by @oh-yes-0-fps )
2. New Gamepieces API
A new API for simulating gamepieces, enabling teams to model how their robot processes intaken gamepieces.
(Contributed by @oh-yes-0-fps )
3. CTRE Simulation Support
Integration with CTRE's high-fidelity motor simulation, allowing maple-sim to deliver enhanced physics simulation for teams using the CTRE swerve API.
(Contributed by @Roman-Tech-Plus and inspired by Team 5104 "The Breakerbots"'s Custom Library - BreakerLib)
Let's work together!
We warmly invite you to report bugs, suggest for new features and contribute to the project.
We rely on the support of the community to grow and improve, and every contribution is deeply appreciated! Whether you're an experienced programmer or new to simulation, there are many ways to contribute. Not comfortable with coding? No problem! You can help by working on documentation or creating example projects.
v0.1.0-Alpha
An early and buggy preview.