Commit Graph

5527 Commits

Author SHA1 Message Date
Peter Johnson
05c25deb7b Fix move handling of C++ Sendable in SmartDashboard and LiveWindow 2019-10-19 11:36:24 -07:00
Peter Johnson
d726591ce4 Fix Gazebo sim plugin build (#1959) 2019-10-19 11:35:56 -07:00
Peter Johnson
2ff694fa49 Unbreak gradle build when other compilers installed (#1958)
There was dependency breakage in halsim_gui, which is only available on desktop.
2019-10-19 09:50:49 -07:00
Oblarg
53816155ba Improve command decorator names (#1945) 2019-10-19 08:13:33 -07:00
Peter Johnson
a38f183a98 Fix GenResources.cmake so it's usable in a submodule (#1956)
This is only important for projects that reference this repo as a submodule.
2019-10-18 17:24:47 -07:00
Peter Johnson
b3398dca39 Set gradlebase correctly for all examples (#1950) 2019-10-18 11:39:31 -07:00
Banks T
2c311013d4 Add Aarch64Bionic platform detection (#1922) 2019-10-18 08:03:48 -07:00
Prateek Machiraju
c10f2003c5 Add generateTrajectory overload (#1944)
Add an overload for the generateTrajectory method that accepts a DifferentialDriveKinematics instance instead of a list of constraints. This instance is used to automatically create a DifferentialDriveKinematicsConstraint behind the scenes, saving the user some verbosity.
2019-10-18 08:02:42 -07:00
Prateek Machiraju
63cfa64fb3 Add getters for pose in odometry classes (#1943) 2019-10-18 07:58:22 -07:00
Oblarg
2402c2bad7 Fix C++ command group recursive constructor bug (#1941)
Passing command groups as lvalue-references to other command groups should be illegal, as their copy constructors have been deleted. However, copy constructors are const-qualified. This led to a very obscure bug where passing a command group by lvalue to another command group would result in a valid template expansion 'looking like' a copy constructor, and being preferred to the deleted copy constructor. This would result in constructor recursion (the expanded constructor would, in an attempt to call the copy constructor, call itself), and an eventual segfault when the stack inevitably overflowed.

This fixes the problem by explicitly deleting the problematic constructor signature - attempting to do this now (correctly) generates a compilation error.
2019-10-18 07:57:43 -07:00
Oblarg
f4eedf597f Fix ConcurrentModificationException in CommandScheduler (#1938) 2019-10-18 07:56:12 -07:00
Matt
bb0b207d2f Fix array out of bounds exception caused by parallel race group (#1935)
The current index would be set to -1 by the execute method of ParallelRaceGroup,
and then an index out of bounds exception would be thrown by the end() method of
SequentialCommandGroup. This change bound checks the current command index as well
as only calls end at the end of parallel race group rather than during execute.
2019-10-18 07:55:14 -07:00
sciencewhiz
7bd69e591c Fix typo in temperature (#1940) 2019-10-14 16:16:30 -07:00
Thad House
ec9738245d Bump to 2020 v4 image (#1931) v2020.0.0-alpha-1 v2020.1.1-beta-1 2019-10-10 10:11:59 -07:00
Thad House
46303a8221 Add messaging to extension loading in the HAL (#1926) 2019-10-09 22:25:02 -07:00
sciencewhiz
d169d6be9e Set extract_static for Doxygen config so that static members show up (#1930)
Update Doxygen to 1.8.16
2019-10-09 22:24:45 -07:00
Thad House
4e183eb104 Bump to 2020 v3 image (#1929) 2019-10-09 22:24:17 -07:00
Peter Johnson
84c185803d LiveWindow: catch errors in callback/builder functions (#1921)
This prevents LiveWindow bugs from crashing the entire robot program.
Instead, an error is printed and the object is removed from LiveWindow.
2019-10-09 22:22:30 -07:00
Thad House
0e3b0f3da7 Remove deprecated free() calls (#1925)
Replaced with the standard close()
2019-10-08 21:30:33 -07:00
Thad House
7f839b87ce Remove timeouts from azure builds (#1924)
Windows builds are occasionally crossing 1 hour and failing
2019-10-07 20:47:01 -07:00
Thad House
45b766a5dc Fix main thread ID being potentially incorrect for simulation (#1923) 2019-10-07 20:45:33 -07:00
Banks T
56d782b16c Add secondary camera name for PS3Eye (#1920) 2019-10-06 22:18:49 -07:00
Peter Johnson
2b4894038e Add simulation GUI plugin
This uses Dear Imgui to provide a cross-platform integrated GUI for robot
simulation. The GUI provides fully integrated DS and joystick support so it's
not necessary to run the official DS.
2019-10-06 17:28:39 -07:00
Peter Johnson
f97d16073a Add imgui build to cmake 2019-10-06 17:28:39 -07:00
Peter Johnson
55a844a3e1 HAL sim: Add encoder channel B access 2019-10-06 17:28:39 -07:00
Peter Johnson
10deba8546 Remove sendables from SendableRegistry when close() is called (#1917)
This only affected Java (C++ RAII doesn't have the same problem).

Needed to add close/AutoCloseable to several classes to add this behavior.
2019-10-05 23:42:53 -07:00
Peter Johnson
a9f0e46680 Implement sim devices for ADXL345, ADXL362, ADXRS450, Ultrasonic
This makes the halsim_adx_gyro_accelerometer simulation plugin and
the accelerometer part of lowfi_simulation obsolete.
2019-10-05 22:39:00 -07:00
Peter Johnson
aa90645865 Add ability to associate other devices with a SimDevice
Implemented only for AnalogInput, DIO, and Encoder.
2019-10-05 22:39:00 -07:00
Peter Johnson
81c2c8a7de Add simulation generic device/value support
This allows high-level library classes to implement enhanced simulation
support even if no low-level corresponding simulation library exists, and
avoids the need for bit-banging complex interfaces like SPI or CAN.
2019-10-05 22:39:00 -07:00
Peter Johnson
e8d6f8a2c1 Move mockdata/HAL_Value.h to hal/Value.h
Also prefix the MakeBoolean et al functions with HAL_ to avoid namespace
pollution.
2019-10-05 22:39:00 -07:00
Peter Johnson
1b266717a8 Add simulation module support to cmake build (#1906) 2019-10-04 19:08:57 -07:00
Thad House
fb8f3bd06b Add testbench yaml file (#1915) 2019-10-04 15:09:35 -07:00
Thad House
846d8def00 Update to 2020 v2 image (#1913)
* Update to 2020 v2 image
2019-10-02 13:14:30 -07:00
Thad House
d6ac6e512b Fix PortForwarder package declaration (#1912) 2019-09-30 15:13:09 -07:00
Banks T
2271570860 Fix PS3Eye exposure setting (#1911) 2019-09-30 15:09:39 -07:00
Peter Johnson
885744d7e1 Add myRobot C++ version to cmake build (#1907) 2019-09-29 20:36:28 -07:00
sciencewhiz
366091fa87 Document that ConditionalCommand requires all subsystems (#1909)
Fixes #1683
Fixes typo
2019-09-29 20:35:41 -07:00
sciencewhiz
c58b072c89 Fix Drive usage reporting order (#1908)
Fixes #1893
2019-09-29 20:35:04 -07:00
sciencewhiz
762c88adb8 Update compiler versions in readme (#1905) 2019-09-29 16:56:11 -07:00
Tyler Veness
af8ce568d1 Add Ramsete unicycle controller (#1790) 2019-09-29 16:48:12 -07:00
Tyler Veness
b2c2934d05 Fix javadoc warnings about invalid usage of ">" (#1904)
The trajectory gen docs use "->". ">" has been replaced with ">".
2019-09-29 16:38:48 -07:00
Tyler Veness
cce26ec78e Replace CRLF line endings with LF (#1902) 2019-09-28 19:55:50 -07:00
Thad House
cb54602d49 Add support for writing RTR CAN Frames to the CAN API (#1900) 2019-09-28 16:49:34 -07:00
Thad House
9f740e5905 Use OS for serial port instead of NI VISA (#1875) 2019-09-28 16:49:11 -07:00
Peter Johnson
b23baf611a Add ability to run robot main loop in a separate thread (#1895)
Default behavior is still to run the robot main loop in the main thread.

The ability to run the robot main loop in a separate thread and add a hook
for running a different function in the main thread is needed for simulation
GUI support on some platforms.
2019-09-28 15:43:24 -07:00
Prateek Machiraju
457f94ba26 Add trajectory generation using hermite splines (#1843) 2019-09-28 15:40:56 -07:00
Thad House
fd612052f3 Update native utils to use new frchome directory (#1884) 2019-09-28 15:40:02 -07:00
Thad House
8858ec55c7 Remove periodic can read call (#1868)
It is not necessary anymore, and is a complicated and confusing API to keep around.
2019-09-28 15:38:58 -07:00
CodingWithFusion
41efb8015d Update CANAPITypes.h (#1860)
Add Playing With Fusion to CAN manufacturer list.
2019-09-28 15:33:18 -07:00
Thad House
c93be1b2d5 Remove LabVIEW HAL support (#1901) 2019-09-28 15:31:43 -07:00