Commit Graph

39 Commits

Author SHA1 Message Date
Jonathan Leitschuh
fc2f0e37ba Adds JNI methods for the new CANSessionMUX
Updates the CAN send message to use CANSessionMuxSendMessage in the C++ JNI

Updates the CANJNI to use the new C++ JNI parameters

Change-Id: Ib7da7d5929c7c5656bf388246aa72aed23590173
2014-06-16 15:39:27 -04:00
thomasclark
58021f7397 Removed analog and digital module numbers
AnalogModule and DigitalModule classes still exist, at least until they are
refactored into the classes that use them.

Change-Id: I5544d5418822f19d54ba0a5d651e64fad8b7b10d
2014-06-13 17:57:40 -04:00
Brad Miller (WPI)
fdfc33a380 Merge "Removes the print line from the Preferences class so that the write method no longer causes a system print" 2014-06-13 11:41:34 -07:00
Jonathan Leitschuh
4be3bc25ac Removes the print line from the Preferences class so that the write method no longer causes a system print
Change-Id: I42af95c3bdd48fa1e2d92fe1c70b8e777f822616
2014-06-13 14:36:37 -04:00
Brad Miller (WPI)
c7e7f39c4a Merge "Updates the PID.free() method to release the NetworkTable listener. [artf2571] Documentation update on the Depreciated method. Removes the PID.setTolerance(Tolerance tolerance) method because it was private and never used" 2014-06-13 07:26:19 -07:00
Jonathan Leitschuh
94894931a5 Updates the PID.free() method to release the NetworkTable listener. [artf2571]
Documentation update on the Depreciated method.
Removes the PID.setTolerance(Tolerance tolerance) method because it was private and never used

Change-Id: I5cddbcc96ed40b5bb0d9f33e2a3586dce91dc532
2014-06-13 10:24:32 -04:00
Alex Henning
cb56c9a144 Initial commit of the WPILib simulation support in an alpha quality state.
Fixes to deal with the switch to .hpp files in the HAL and other misc problems due to rebasing.

Added Omar's changes to the compressor interface

Fixes to make C++ plugin compile on linux.

Added import of the WPILibSim code from the graduate class. It shows up as wpilibJavaSim to follow the convention set by wpilibJava, wpilibJavaJNI and wpilibJavaFinal.

Fixed wpilibJavaSim artifactId to mirror the new convention.

Modified the build of the java plugin to pull in the simulation dependencies.

Added stacktrace printing.

Fixed support for creating projects.

Added support for the isReal() and isSimulation() methods along with the AnalogPotentiometer object to support simulating GearsBot.

Added support for a "WPILib Simulate" button.

Added GearsBot to the built in examples.

Added support for specifying the world file during project creation and switched the default from BluntObjectBot to GearsBot.

Removed unused import.

Added file browser for world files.

Added support for debugging in simulation.

Change simulate icon to be a Gazebo icon.

Switched over to the gazebo messaging system.

Updated location of default world file.

Reverted cmake change.

Fixed bug in WPILibJSim, added better logging and cleaned up code.

Made the frc_gazebo_plugin build using raw cmake instead of catkin, breaking the final ROS dependencies.

Added installation to frc_gazebo_plugin Makefile.

Fixed running of simulation to actually use frcsim.

Initial commit of simulation library for C++. Has the minimal subset of features necessary for having a Simple Robot run in teleoperated mode.

Added notes for generating protobuf messages.

Import of the debuild process into the main repository.

Moved frc_gazebo_plugin under simulation and removed the gazebo folder.

Updated the gazebo plugin to remove excessive printing and limit motor signal to [-1,1].

Updated WPILibJSim to support latching messages and to sleep for 20ms in iterative robot.

Reduced delay between starting frcsim and the users program to 1 second.

Updated GearsBot example.

Fixed a few minor issues for demoable state.

Added simulator support for Victors, Jaguars and Talons.

Added NetworkTables, SmartDashboard and LiveWindow to the simulator.

Added AnalogPotentiometer for simulation.

Added support for simulating encoders.

Added simulation support for Gyro.

Added IterativeRobot, Fixed Timers, Notifiers, PIDControllers and other minor fixes + cleanup.

Added RobotDrive support to simulation.

Separated out JavaGazebo so that SimDS will be able to reuse it.

Separated out SimDS into its own application..

Fixes so that the SimDS is distributed and runs properly for Java with the eclipse plugins.

Added DriverStation support to WPILibCSim

Cleanup of DriverStation, WaitUntilCommand and AnalogPotentiometer for WPILibCSim.

Cleanup of includes for WPILibCSim

Added AnalogPotentiometer to the real WPILibC.

Added AnalogPotentiometer to the real WPILibC.

Added GearsBot example to C++ eclipse plugin.

WPILibCSim fixes to work with launching from the plugin.

Package libwpilibsim in a deb file.

Added includes to plugin distribution.

Added support for external-limit-switches to Gazebo, Java and C++.

Added support for Gazebo Rangefinders and Analog channels to read their values in C++ and Java.

Added support for internal limit switches.

Updated GearsBot programs to use limit switches + range finders.

Added disabling of motors when robot is disabled to more closely mimic the real robot.

Fixes to deal with the switch to .hpp files in the HAL and other misc problems due to rebasing.

Change-Id: I624c5f4d0f28282616a7c92083575bf68adcdce2
2014-06-13 09:31:32 -04:00
thomasclark
3538e2c05c Changed AnalogChannel to AnalogInput, added AnalogOutput for MXP
Change-Id: I863d89c61ff2cf4a7a3aeeca1296978e728758b6
2014-06-12 18:08:20 -04:00
thomasclark
8d5c67e6aa Added Omar's changes to the compressor interface
Change-Id: Iff22b0eaa319065b06795b381c4d6072f8087da8
2014-06-12 12:43:03 -04:00
Brad Miller (WPI)
3c5d46c2ae Merge "Added support for digital and analog IO pins on the MXP" 2014-06-12 06:39:25 -07:00
thomasclark
29c4534c58 Added support for digital and analog IO pins on the MXP
Change-Id: I3a4e14ceab885d19a615d6cd45f22a2250ad2856
2014-06-12 09:09:46 -04:00
Jonathan Leitschuh
8b19137ca6 WPILibJ More Integration Tests
Refactors the MotorEncoderTest to make use of the parameterized testing framework
Adds a test for the Preferences Class
Updates the TiltPanCameraTest to work
Makes the TimerTest use math for long values
Adds a Button Test to Test the internal Button
Speeds up the FakeCounterSource/FakeEncoderSource to decrease test time
Moves the AbstractComsSetup Block to a static method so that it only runs once
Updates the logging.properties class so that tests are quieter

Change-Id: I70b39f34122e6398f406a63e6ef04cde9fbe95ef
2014-06-11 14:43:59 -04:00
Jonathan Leitschuh
85d9ead4e2 Sets the default PIDSourceParameter to be kDistance so there is no null pointer exception
Change-Id: Ice4889ea3f6fd5afe6984f9715758a178222837f
2014-06-11 11:11:01 -04:00
Jonathan Leitschuh
59a1fb2c08 Makes the PIDController completely thread safe and ensures that freeing the PID Loop truly clears it [artf2567]
Change-Id: I96502e1d58bb4353ab5f53086dd275f3c372a7af
2014-06-10 15:44:18 -04:00
Thomas Clark (WPI)
32dc451a72 Merge "Fixes the Preferences putting the preferences in a file 'file:' and instead puts it in the root directory [artf2566]" 2014-06-10 12:36:44 -07:00
Jonathan Leitschuh
63ae47b7e4 Fixes the Preferences putting the preferences in a file 'file:' and instead puts it in the root directory [artf2566]
Change-Id: If532542f1a746bff6b34c9d92462cd1722b4ff05
2014-06-10 15:34:37 -04:00
thomasclark
35ac240d4c Switch to 0-based for all pins on the RoboRIO [artf2564]
Change-Id: I249965a9d55aec53b7d8a9be3ba5cc43500ddda4
2014-06-10 12:44:29 -04:00
thomasclark
59dfb4d216 Removed the old compressor code
Change-Id: Ia36724f42254d49238db687c62f339c2172ba582
2014-06-09 11:12:44 -04:00
thomasclark
36470d3b7c Made Java PCMCompressor methods public
Change-Id: Id5988f8b70868d6b2c9b9060fd0d7435d69c7c58
2014-06-04 19:53:50 -04:00
thomasclark
187aa7a138 Support for the CAN power distribution panel
Change-Id: If4f8f7f050bf1095221cf16f030a6a8a67532656
2014-05-30 14:11:42 -04:00
Brad Miller (WPI)
2bf9db0019 Merge "Adds/Extends several integration tests. Modifies Java Servo with correct values according to the datasheet assoiciated with the Hitec HS-322HD" 2014-05-29 12:59:40 -07:00
Jonathan Leitschuh
efeec5d986 Adds/Extends several integration tests. Modifies Java Servo with correct values according to the datasheet assoiciated with the Hitec HS-322HD
Changes the format of the MotorEncoderFixture usage. Also adds a motor type to easily determine what speed controller is being used

Adds a TiltPanCameraTest to test the Gyroscope as well as the servo classes

Updates the TestBench and the TestSuite to reflect the new tests and the changes to these Tests

Begins integrating a test to check to see if counters and encoders are working correctly

Modifies the ServoClass to have the correct data for PWM generation.
Also  modifies the PWM class to make the setBounds method to be protected

Modifies the TiltPanTest to rotate slower and reduces the acceptable deviation

Reduces the runtime of the MotorEncoderTest by lowering the runtime value

Updates the TestBench to load the Gyroscope before allocating the servos in order to allow for setup time
Also adds Documentation

Reorders the Tests to run the TiltPanTest first

Adds/Updates the copywright header to several files that were previously modified in this commit

Change-Id: I093f998d9687c6b6c6b8d4f6949fbe56ba236212
2014-05-29 15:19:02 -04:00
thomasclark
980d52becc Support for the CAN pneumatics module in C++ and Java
Change-Id: I2ccb1d13d1c5da00a99329c761b75a6c2b3ea56d
2014-05-29 14:43:19 -04:00
thomasclark
c1482cb267 Made CAN actually work in Java
Change-Id: I90709799de02c4cf1800f57bbecd637c76b33469
2014-05-27 15:10:18 -04:00
Brad Miller (WPI)
6b83175b74 Merge "Fixed the package for CANJaguar.java" 2014-05-21 10:21:11 -07:00
Brad Miller (WPI)
9925598da0 Merge "Updated POM files to allow use of compile phase." 2014-05-21 09:51:44 -07:00
thomasclark
9a29c684a0 Fixed the package for CANJaguar.java
Change-Id: I63180f21304535608b31b00e6bd19b53e93b12ee
2014-05-20 16:33:29 -04:00
Alex Henning (WPI)
66c9aabec7 Merge "Updated CANJaguar.h/.cpp/.java for the RoboRIO" 2014-05-20 13:04:51 -07:00
Brad Miller
736cb754f1 Updated POM files to allow use of compile phase.
Note that the eclipse plugins are no longer included in the build by
default. To clean or build the eclipse plugins, use
-Dwith-eclipse-plugins. When specifying this property, only phases
up to or after package may be run.
2014-05-16 16:42:26 -04:00
thomasclark
da2e1769c0 Updated CANJaguar.h/.cpp/.java for the RoboRIO
Change-Id: I5134a78dc9dc945be1402c78d4fc4b9ef368b0b8
2014-05-16 14:12:24 -04:00
Jonathan Leitschuh
85b0a46fdb Adds maven configuration information to use m2e
This also removes all of the .project and .classpath files generated by
eclipse

Change-Id: Ieedf3166a3194040704133909cc7d71755009714

Removes the .project and .classpath files from the project as the .gitignore should have
2014-05-15 19:27:32 -04:00
Fredric Silberberg
acb9636121 WPILibJ Unit Tests
Added unit testing framework for WPILibJ. Tests should based
on the ExampleTests.java located in
src/test/java/edu/wpi/first/wpilibj, and be located in the proper
package.

Change-Id: I19b73e9e24eb8d990d34ab2716d5314c3dee82ef
2014-05-12 09:48:02 -04:00
Brad Miller
a42a7943bc Init HAL from WPILibJ to remove segfaults
Change-Id: I28980218ffab440cf17c5a6bb953f52a3458fa6a
2014-04-14 14:25:47 -04:00
Brad Miller
69d9ad70ab CMake Changes
This is the changes made by Patrick Plenefisch converting the native
code to use CMake and the CMake Maven Plugin, as opposed to the
native Maven plugin. This is to allow for compatibility with newer
versions of the GCC toolchain. All the cpp sources were moved from
maven style directories to cpp style directories for CMake.

Change-Id: I67f5e3608948f37c83b0990d232105a3784f8593
2014-04-01 11:18:29 -04:00
Fredric Silberberg
33134bef1d Java 8 Compilation Fixes
Added in profiles to disable the doclint in Java 8 compilations,
which will cause the build to error on javadoc issues.

Change-Id: Id9e50ca35034ea086195855f6d1515381213dd2f
2014-03-20 19:17:16 -04:00
Fredric Silberberg
4546abc8c5 Version 4 Image
Updated the HAL library to work with the new version 3 headers
from NI. There were multiple changes in this verison: more PWM
generators were added, so the functions for setting PWM signals have
been updated. UserWatchdog has been removed, and Watchdog has been
removed from WPILib to accomodate for this. Digital selection has been
consolidated to one function in the NI headers, so this has been updated
in the HAL. New SPI and I2C libraries have been added, but need to
be implemented in the HAL before they will work.
2014-03-20 13:12:02 -04:00
Paul Malmsten
0d5410a118 Removed all repository definitions pointing to Jenkins (aka. frcbuilder) 2014-01-26 14:13:15 -05:00
charris
f7146d4230 JNI for java
Normal vs recursive mutex
HAL delineation
2014-01-06 10:12:21 -05:00
charris
b62b606110 JNI implementation for Java
Normal vs
2014-01-06 09:27:51 -05:00