forked from wpilibsuite/allwpilib
-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fork Sync: Update main branch #128
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Instead of only providing per(TimeUnit) Useful for making conversion factors easier, eg `Inches.of(10).per(Rotation)` vs `Inches.of(10).per(Rotation.one())` Update VelocityUnit.one() and VelocityUnit.zero() to return Velocity objects instead of generic Measure<? extends VelocityUnit<D>>; VelocityUnit is final, so the wildcard generic is unnecessary, and this makes the generated `per` functions possible for this type
C++ allows either 16982 or 16470, do the same for Java.
Used in FIRST's kitbot code
The query now targets the local repo for extra safety.
#7745) Small values of kₐ make the iterative solver ill-conditioned. This change reverts to the constant-acceleration feedforward in that case. It gives _very_ bad results (hence why we added the iterative solver in the first place), but it's better than hanging. ``` TEST(ArmFeedforwardTest, CalculateIllConditioned) { constexpr auto Ks = 0.5_V; constexpr auto Kv = 20_V / 1_rad_per_s; constexpr auto Ka = 1e-2_V / 1_rad_per_s_sq; constexpr auto Kg = 0_V; frc::ArmFeedforward armFF{Ks, Kg, Kv, Ka}; // Calculate(currentAngle, currentVelocity, nextAngle, dt) CalculateAndSimulate(armFF, 0_rad, 0_rad_per_s, 2_rad_per_s, 20_ms); } ``` This produces 1 V and doesn't accelerate the system at all. Using nextVelocity instead of currentVelocity in the feedforward outputs 41 V and still only accelerates to 0.4 rad/s of the requested 2 rad/s. I picked the kₐ cutoff by increasing kₐ until the iterative solver started converging. Fixes #7743.
* add exception * detect missing tests * throw in analyzer * define tests setter * change to std::map * alignas fail * make missingTests parameter const& * const& impl * use set and naive comparison * use default comparison * add <utility> * Revert "alignas fail" This reverts commit 5e97940. * indent validtests * format
Many LED strips use different color order (GRB in particular is common). This makes the change at the HAL level. This solves 2 problems; first, no code needs to change in the high level drivers, which was challenging for C++, and second, simulation will behave properly as no conversion is needed. The HAL will accept an array of data objects in the same order no matter what the selected output order is, and will convert before sending it to the FPGA for output. To accomplish this, NEON bulk load/interleave instructions are utilized. The low level implementation (load, store, and alignment functions) come from the Simd Library. The high level implementations are inspired by the image conversion functions in the simd library, but have diverged significantly. Much of the implementation uses templates and inlined functions rather than runtime parameters; This is a trade off between the size of the generated code and the amount of function calls done at runtime. Currently, the entire conversion operation is inlined.
The underlying Linux spidev supports up to page size length.
This means PRs that had labels for certain changes will have those labels removed if those changes are removed.
The magic static adds yet another thing that needs to be reset if you want to run a unit test with a completely reset wpilib state. Use the existing Sendable static map to store the data instead. This leaks memory if ResetSmartDashboardInstance is called.
I was getting: external/arm_frc_linux_gnueabi_repo/bin/../arm-nilrt-linux-gnueabi/sysroot/usr/lib/gcc/arm-nilrt-linux-gnueabi/12/../../../../../../../arm-nilrt-linux-gnueabi/bin/ld: bazel-out/k8-opt--roborio/bin/external/com_github_wpilibsuite_allwpilib/wpinet/libwpinet.static.a(fs.o): undefined reference to symbol 'dlsym@@GLIBC_2.4' external/arm_frc_linux_gnueabi_repo/bin/../arm-nilrt-linux-gnueabi/sysroot/usr/lib/gcc/arm-nilrt-linux-gnueabi/12/../../../../../../../arm-nilrt-linux-gnueabi/bin/ld: external/arm_frc_linux_gnueabi_repo/bin/../arm-nilrt-linux-gnueabi/sysroot/lib/libdl.so.2: error adding symbols: DSO missing from command line collect2: error: ld returned 1 exit status This fixes that error for me. Signed-off-by: Austin Schuh <austin.linux@gmail.com>
A Discord user reported that StackWalker gives blank stacktraces. MSVC's C++23 support is unstable, so we can't use std::stacktrace yet. In the meantime, we can just return an empty string and remove the unmaintained StackWalker library and its hacky upstream_utils script.
Splits maps for welded vs AndyMark field perimeters. More info about why and what fields are at what events will be in TU12.
Signed-off-by: Jade Turner <spacey-sooty@proton.me>
Now a flag at the class level controls whether warning messages are printed. Defaults to false (no warning messages).
Establishes the invariant that the state and measurement always match up, even immediately after construction.
Add instructions for manual workarounds
Co-authored-by: Tyler Veness <calcmogul@gmail.com> Co-authored-by: Joseph Eng <91924258+KangarooKoala@users.noreply.github.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.