Yarp Versions Save

YARP - Yet Another Robot Platform

v3.4.5

3 years ago

YARP 3.4.5 Release Notes

A (partial) list of bug fixed and issues resolved in this release can be found here.

Bug Fixes

Libraries

sig

Image
  • Allocate the right amount of bytes for YUV422 images
  • Decode vocabs when printing

Devices

BatteryWrapper

  • Data is now published on the yarp port even if some of the methods belonging to IBattery interface are not implemented (returning false). The only mandatory method is getBatteryStatus().

Contributors

This is a list of people that contributed to this release (generated from the git history using git shortlog -ens --no-merges v3.4.4..v3.4.5):

     6	Daniele E. Domenichelli <[email protected]>
     1	Marco Randazzo <[email protected]>

v3.4.4

3 years ago

YARP 3.4.4 Release Notes

A (partial) list of bug fixed and issues resolved in this release can be found here.

Bug Fixes

Build System

  • Fixed use of CMAKE_INSTALL_PYTHON3DIR CMake variable to specify the installation path of Python bindings, as in previous versions the variable was defined but ignored (#2523).
  • Fixed the build of Python bindings on Windows (#2525, #2527).

Libraries

conf

  • Fixed float128_t where long double is 64 bit (#2510).

os

  • If in a yarp::os::NetworkClock a clock reset is detected, fill the gap between the waiter and the time published by the network clock port. A network clock reset is defined as a jump in the past of the time published by the network clock port. This fix avoids that all the threads that are waiting a yarp::os::NetworkClock::delay call on that network clock remain blocked when a time reset occurs (#800, #2494).
  • Fixed error in race condition during the scan of plugins in YarpPluginSelector, avoided concurrent access to variables (#2538).

Tools

yarplogger

  • Fixed crash when attempting to clear a selected log with its log tab opened (#2554).

Bindings

Python

  • Added example_callback.py, which showcases a BufferedPort with an attached callback handler for logging incoming bottles (#2555).

Contributors

This is a list of people that contributed to this release (generated from the git history using git shortlog -ens --no-merges v3.4.3..v3.4.4):

    25	Daniele E. Domenichelli <[email protected]>
     4	Bartek Łukawski <[email protected]>
     4	Silvio Traversaro <[email protected]>
     3	Stefano Bernagozzi <[email protected]>
     1	Ettore Landini <[email protected]>
     1	Giuseppe L'Erario <[email protected]>
     1	Nicolò Genesio <[email protected]>
     1	Silvio Traversaro <[email protected]>

v3.4.3

3 years ago

YARP 3.4.3 Release Notes

A (partial) list of bug fixed and issues resolved in this release can be found here.

Libraries

robotinterface

  • Fixed handling of attach action for IWrapper devices.

Devices

controlboardwrapper2

  • getTorque is no longer called twice.

fakeFrameGrabber

  • The rand mode was fixed.
  • The timestamp is now correct.
  • The image is no longer initialized when all the pixels are overwritten.

virtualAnalogWrapper

  • Fixed favor the use of parentheses with the keyword networks in the XML files. The old style is deprecated but still accepted. This is a fix in the sense that virtualAnalogWrapper was behaving differently from ControlBoardWrapper.

GUI

yarpmotorgui

  • Fixed colors on dark mode desktop (#2466).

Contributors

This is a list of people that contributed to this release (generated from the git history using git shortlog -ens --no-merges v3.4.2..v3.4.3):

    30	Daniele E. Domenichelli <[email protected]>
     1	Ugo Pattacini <[email protected]>

v3.4.2

3 years ago

YARP 3.4.2 Release Notes

A (partial) list of bug fixed and issues resolved in this release can be found here.

Build System

  • YCM is now searched when compiling bindings externally.
  • Fixed dependency on YARP_math for several devices (laserFromExternalPort, laserFromPointCloud, laserFromRosTopic).
  • rpLidar2 device is now disabled when building with Clang.
  • Fixed upowerBattery device in static builds.
  • Fixed include directories for PortAudio on Windows (#2387).
  • Fixed toggling the value of SKIP_ACE from ON to OFF
  • Dependencies for the INTERFACE libraries (YARP_cv, YARP_pcl) are now properly set (#2438).
  • PCL is now required to build the YARP_pcl library.
  • OpenCV is now required to build the YARP_cv library.

Libraries

os

LogComponent
  • Log components are now printed in colors when YARP_COLORED_OUTPUT is enabled.

NameSpace

  • Fix checkNetwork timeout variant not working as checkNetwork when NetworkBase::setLocalMode(true) is called.---

sig

PointCloudTypes
  • Fixed logging of RGBA values via toString() for types DataRGBA, DataXYZRGBA and DataXYZNormalRGBA.
utils
  • Fixed ROI bug in depthToPC(), values are now correctly clipped.

Devices

controlboardwrapper2

  • Fixed access to the timestamp not protected by mutex (#2396).
  • Deprecated old format of networks keyword in the XML files to favor the use of parentheses.

ffmpeg

  • Corrected a minor error in FfmpegGrabber.cpp that caused a segmentation fault when using a video with audio track as a source for the device.

realsense2

  • Avoid dereferencing nullptr on optional argument.

Tools

yarpmotorgui

  • Fixed UI file (slider options). Some text was truncated.

yarpmobilebasegui

  • Fixed gui buttons when the value of max linear/angular velocity is < 0

GUIs

yarpviz

  • Added a new menu voice View-> Render options. This checkable option labbelled Background grid allows to enable/disable the background grid.
  • Labels are now fully readable regardless of their length.

yarpbatterygui

  • The window can no longer be resized.
  • The window background can no longer be moved around.
  • The window no longer stays on top automatically. A new --keep-above switch is provided to restore this behavior.

Contributors

This is a list of people that contributed to this release (generated from the git history using git shortlog -ens --no-merges v3.4.1..v3.4.2):

    66	Daniele E. Domenichelli <[email protected]>
     5	Bartek Łukawski <[email protected]>
     3	Ettore Landini <[email protected]>
     3	Silvio Traversaro <[email protected]>
     3	Ugo Pattacini <[email protected]>
     2	Marco Randazzo <[email protected]>

v3.4.1

3 years ago

YARP 3.4.1 Release Notes

A (partial) list of bug fixed and issues resolved in this release can be found here.

  • Fixed Ruby bindings with CMake 3.18

Bug Fixes

Build System

  • The license check is now disabled for non-git checkouts.
  • The check on the bindings folder in YARPConfig.cmake was removed.
  • User defined build flags are no longer overridden in subfolders.
  • The -f(debug|macro|file)-prefix-map compile options are no longer exported in the YARPConfig.cmake file.
  • Fixed build when the -fsanitize compile options is passed by the user.

Libraries

os

Stamp
  • Fixed the max count using std::numeric_limits.

sig

PointCloudUtils
  • Fixed yarp::sig::utils::depthRgbToPC for types without alpha channel (#1959).
  • Fixed bug in method utils::depthToPC() which was not properly decimating the pointcloud given in input.

Devices

FakeFrameGrabber

  • The ball test is now displayed in the center of the image instead of the right-bottom corner. The bug was affecting windows only.

multipleanalogsensorsserver

  • Fixed missing timestamp and and sequence number in messages streamed by measures:o port.

realsense2Tracking

  • Fixed missing timestamp for device realsense2Tracking
  • added option --timestamp yarp : yarp timestamp will be used
  • added option --timestamp realsense : realsense timestamp will be used
  • default value is yarp timestamp.

ovrheadset

  • Fixed a typo in TextureBuffer.cpp

Tools

yarpdatadumper

  • Fixed a regression that broke support for OpenCV 2.x.

yarpmanager

  • Fixed issue that disables side menubar buttons when changing tab (#2355).

yarprobotinterface

  • Fixed build on i386.

Contributors

This is a list of people that contributed to this release (generated from the git history using git shortlog -ens --no-merges v3.4.0..v3.4.1):

    43	Daniele E. Domenichelli <[email protected]>
     7	Nicolò Genesio <[email protected]>
     5	Marco Randazzo <[email protected]>
     2	Bartek Łukawski <[email protected]>
     2	Stefano Dafarra <[email protected]>
     1	Silvio Traversaro <[email protected]>

v3.4.0

3 years ago

YARP 3.4.0 Release Notes

A (partial) list of bug fixed and issues resolved in this release can be found here.

Important Changes

  • YCM 0.11 or later is now a hard dependency and must be installed on the system before installing YARP.
  • Python 2 is no longer supported.

Deprecation and Behaviour Changes

  • The scripts/WindowsPowerShell files are now in data/WindowsPowerShell.
  • The scripts/yarp_completion file is now in data/bash-completion/yarp.

Build System

yarp_prepare_plugin
  • INCLUDE must now be an existing file, either using a path relative to current directory, or an absolute path. Using a path relative to one of the include directories is deprecated.

os

  • The method yarp::os::getenv() is deprecated in favour of std::getenv()
yarp::os::ConnectionState
  • The yarp::os::ConnectionState::getLog() method was removed without deprecation, due to the changes to the logging system, that made it impossible to preserve this method.
yarp::os::NetworkBase
  • The yarp::os::NetworkBase::setVerbosity method is deprecated in favor of Log Components.
  • The yarp::os::NetworkBase::getEnvironment() method is deprecated in favour of yarp::conf::environment::getEnvironment()
  • The yarp::os::NetworkBase::setEnvironment() method is deprecated in favour of yarp::conf::environment::setEnvironment()
  • The yarp::os::NetworkBase::unsetEnvironment() method is deprecated in favour of yarp::conf::environment::unsetEnvironment()
yarp::os::Port
  • The yarp::os::Port::setVerbosity method is deprecated in favour of Log Components.
  • The yarp::os::Port::getVerbosity method is deprecated in favour of Log Components.
yarp::os::ResourceFinder
  • The yarp::os::ResourceFinder::setVerbose() method is deprecated in favour of Log Components.
  • The yarp::os::ResourceFinder::setQuiet() method is deprecated in favour of Log Components.
yarp::os::YarpPluginSettings
  • The yarp::os::YarpPluginSettings::setVerboseMode() method is deprecated in favour of Log Components.
yarp::os::Log
  • The yarp::os::Log::setLogCallback() method is deprecated in favour of setPrintCallback()

dev

  • The following classes were moved from the yarp::dev namespace to the yarp::dev::Nav2D namespace
    • yarp::dev::Nav2D::Map2DArea
    • yarp::dev::Nav2D::Map2DPath
    • yarp::dev::Nav2D::Map2DLocation
    • yarp::dev::Nav2D::MapGrid2D
    • yarp::dev::Nav2D::MapGrid2DInfo
  • yarp::dev::Nav2D::Map2DPath is now replacing std::vector<yarp::dev::Nav2D::Map2DLocation> in all APIs.
  • The following functions have been moved from yarp::dev::Nav2D::MapGrid2D into yarp::dev::Nav2D::MapGrid2DInfo:
    • yarp::dev::Nav2D::XYWorld yarp::dev::Nav2D::MapGrid2DInfo::cell2World(yarp::dev::Nav2D::XYCell cell) const;
    • yarp::dev::Nav2D::Map2DLocation yarp::dev::Nav2D::MapGrid2DInfo::toLocation(yarp::dev::Nav2D::XYCell cell) const;
    • yarp::dev::Nav2D::XYCell yarp::dev::Nav2D::MapGrid2DInfo::toXYCell(yarp::dev::Nav2D::Nav2D::Map2DLocation loc) const;
    • yarp::dev::Nav2D::XYCell yarp::dev::Nav2D::MapGrid2DInfo::world2Cell(yarp::dev::Nav2D::XYWorld world) const;
    • yarp::dev::Nav2D::Nav2D::Map2DLocation yarp::dev::Nav2D::MapGrid2DInfo::toLocation(yarp::dev::Nav2D::XYWorld cell) const;
    • yarp::dev::Nav2D::XYWorld yarp::dev::Nav2D::MapGrid2DInfo::toXYWorld(yarp::dev::Nav2D::Map2DLocation loc) const;
  • modified signature of the yarp::dev::Nav2D::INavigation2D::getAllNavigationWaypoints method.
  • The format of .map file loaded by yarp::dev::Nav2D::MapGrid2D has been changed. It can now include the parameters resolution <double> and orientation <bottle> to adjust the map reference frame.

Devices

  • The test_grabber device was renamed fakeFrameGrabber. The old name is kept for compatibility, but it will be deprecated and removed in a future release.
  • The test_motor was renamed fakeMotor. The old name is kept for compatibility, but it will be deprecated and removed in a future release.

Tools

yarp
  • The regression subcommand was removed.

New Features

Build System

  • The bash-completion file is now installed automatically (#1101).
  • It is now possible to build some of the examples in the main build using the YARP_COMPILE_EXAMPLES CMake Option
  • It is now possible to build some of the YARP examples as test using the YARP_ENABLE_EXAMPLES_AS_TESTS CMake Option
yarp_add_idl
  • It's now possible to pass options to the commands using CMake variables (for example YARP_ADD_IDL_THRIFT_INCLUDE_PREFIX and YARP_ADD_IDL_THRIFT_NO_NAMESPACE_PREFIX.
yarp_prepare_plugin
  • Including current directory (either explicitly, or using CMAKE_INCLUDE_CURRENT_DIR) is no longer required by the generated files.

Libraries

conf

  • Added yarp::conf::clamp. Will be replaced by std::clamp as soon as c++17 is required in YARP.
  • Added the yarp/conf/environment.h header.
  • Added the following functions:
    • yarp::conf::environment::getEnvironment()
    • yarp::conf::environment::setEnvironment()
    • yarp::conf::environment::unsetEnvironment()

os

  • Add yarp::os::gethostname() overload to return a std::string
yarp::os::NetworkBase
  • Added bool yarp::os::NetworkBase::isNetworkInitialized() method.
yarp::os::NetType
  • The following methods were added:
    • static std::string yarp::os::NetType::toString(yarp::conf::float32_t)
    • static std::string yarp::os::NetType::toString(yarp::conf::float64_t)
    • static yarp::conf::float32_t yarp::os::NetType::toFloat32(const std::string&)
    • static yarp::conf::float64_t yarp::os::NetType::toFloat64(const std::string&)
    • static yarp::conf::float32_t yarp::os::NetType::toFloat32(std::string&&)
    • static yarp::conf::float64_t yarp::os::NetType::toFloat64(std::string&&)
    • static std::string yarp::os::NetType::toHexString(long)
    • static std::string yarp::os::NetType::toHexString(unsigned int)
yarp::os::Time
  • Added bool yarp::os::Time::isClockInitialized() method.
yarp::os::Log
  • The yarp logging system was heavily refactored, please check out the [documentation](\ref yarp_logging).
  • The name of the port used to forward the output no longer contains the full path, but only the executable name.
  • Added yarp::os::LogComponent to define log components:
    • A log component can be declared using the YARP_LOG_COMPONENT() macro (in a .cpp file) and eventually forward declared using YARP_DECLARE_LOG_COMPONENT().
    • It is possible to set custom printing and forwarding macros for each component, and it is possible to enable and disable specific levels for each component.
    • At the moment it is not yet possible to change the defaults set in the code, but this will be enabled in the future.
  • The output forwarded is now a property and contains several useful information including component and system/network time, file, line, function.
  • The logger is now able to detect if it is running in yarprun and eventually change the output format.
  • Logging is now protected by a mutex to avoid garbled output.
  • The YARP_DEBUG_LOG_ENABLE environment variable can be set to debug the log of the application.
  • When color is enabled, the loglevel can be represented by a single colored character by setting the YARP_COMPACT_OUTPUT environment variable to 1.
  • The limit of 1024 characters for the c-style yDebug() macro family was removed. A dynamic allocation is now used, but only when the size of the output exceeds this size.
  • Trace should no longer generate code when building in release mode. When building with -DYARP_NO_DEBUG_OUTPUT debug should not generate any code as well. See https://godbolt.org/z/hSAC56
  • Added the yCDebug macro family to pass a component to the logger (This macro is also available for all log levels, and assert).
  • Added the following new debug macro families limiting the log output (all these macros are available for all log levels, except for [FATAL], and in the component version):
    • yDebugOnce(): Printed only once in the execution of the program.
    • yDebugThreadOnce(): Printed at most once by every thread during the execution of the program.
    • yDebugThrottle(): Printed at most once every period seconds.
    • yDebugThreadThrottle(): Printed at most once by every thread every period seconds.
  • Added the yDebugExternalTime() macro family to pass a timestamp generated by an external source (This macros is also available for all log levels, in the component version, and in the limited version):
yarp::os::ManagedBytes
  • Added move semantics.
yarp::os::Portable
  • The first argument of yarp::os::Portable::copyPortable() is now const. The new signature is:
      bool yarp::os::Portable::copyPortable(const PortWriter& writer, PortReader& reader)
    
yarp::os::Port
  • It's now possible to try to fix any issues by entrusting a Superior Entity.

sig

yarp::sig::ImageOf
  • Added support to load a PNG file into a yarp::sig::ImageOf<yarp::sig::PixelRgb>
yarp::sig::VectorOf
  • Added const_iterator yarp::sig::VectorOf::begin() const and const_iterator yarp::sig::VectorOf::end() const in yarp::sig::VectorOf class.
  • Added move semantics.

math

  • Added yarp::math::Vec2D<size_t> datatype.

dev

  • Added yarp::dev::LaserScan2D datatype.
  • Added yarp::dev::MobileBaseVelocity datatype.
  • Added yarp::dev::OdometryData datatype.
  • Added yarp::dev::OdometryData6D datatype.
  • Added yarp::dev::IPositionSensors interface.
  • Added yarp::dev::Lidar2DDeviceBase class to use as a base class for all lidar devices.
  • Added yarp::dev::Nav2D::TrajectoryTypeEnum
  • Added the following methods to yarp::dev::Nav2D::ILocalization2D interface
    • yarp::dev::Nav2D::ILocalization2D::startLocalizationService();
    • yarp::dev::Nav2D::ILocalization2D::stopLocalizationService();
    • yarp::dev::Nav2D::ILocalization2D::getCurrentPosition(yarp::dev::Nav2D::Map2DLocation& loc, yarp::sig::Matrix& cov);
    • yarp::dev::Nav2D::ILocalization2D::setInitialPose(const yarp::dev::Nav2D::Map2DLocation& loc, const yarp::sig::Matrix& cov);
  • Added new class yarp::dev::Nav2D::MapGrid2DInfo which contains infos about the name, the resolution and the origin of the map (e.g. yarp::dev::Nav2D::MapGrid2DOrigin) etc.
  • Added new path-related methods to yarp::dev::Nav2D::IMap2D interface:
    • virtual bool yarp::dev::Nav2D::IMap2D::storePath(std::string path_name, Nav2D::Map2DPath path) = 0;
    • virtual bool yarp::dev::Nav2D::IMap2D::getPath(std::string path_name, Nav2D::Map2DPath& path) = 0;
    • virtual bool yarp::dev::Nav2D::IMap2D::getPathsList(std::vector<std::string>& paths) = 0;
    • virtual bool yarp::dev::Nav2D::IMap2D::deletePath(std::string path_name) = 0;
    • virtual bool yarp::dev::Nav2D::IMap2D::renamePath(std::string original_name, std::string new_name) = 0;
    • virtual bool yarp::dev::Nav2D::IMap2D::clearAllPaths() = 0;
  • Added method yarp::dev::Nav2D::ILocalization2D::getEstimatedOdometry() to the interface yarp::dev::Nav2D::ILocalization2D.
  • yarp::dev::Nav2D::MapGrid2DOrigin can now handle a generic orientation. Previously only the translational part was handled by methods world2Cell and cell2World
  • The terminator port now tries to use the default value for --name accepted by the device. For example yarpdev --device fakeFrameGrabber will open the port /grabber/quit instead of /fakeFrameGrabber/quit.

logger

  • Interpret the new message format containing extra info.

Carriers

  • Added depthimage2 portmonitor to transform a depth image (VOCAB_PIXEL_FLOAT format) into a rgb image, using a precomputed colormap.
  • Added segmentationimage portmonitor to transform a segmentation image (VOCAB_PIXEL_MONO or VOCAB_PIXEL_MONO16) into a rgb image, using a precomputed colormap.

Devices

  • Added laserFromExternalPort device, which is able to receive a LaserScan2D datatype from a YARP port, and expose it as a device driver through the IRangefinder2D interface.
  • Added laserFromPointCloud device, which receives a depth stream through an IRGBDSensor sensor a produces a laser compatible stream of data from the computed point cloud.
  • Added IMURosPublisher device. This wrapper connects to a device and publishes a ROS topic of type sensor_msgs::Imu.
  • Added MagneticFieldRosPublisher device. This wrapper connects to a device and publishes a ROS topic of type sensor_msgs::MagneticField.
  • Added PoseStampedRosPublisher device. This wrapper connects to a device and publishes a ROS topic of type geometry_msgs::PoseStamped.
  • Added TemperatureRosPublisher device. This wrapper connects to a device and publishes a ROS topic of type sensor_msgs::Temperature.
  • Added WrenchStampedRosPublisher device. This wrapper connects to a device and publishes a ROS topic of type geometry_msgs::WrenchStamped.
  • Added upowerBattery device to view the battery of a linux laptop in YARP using the yarp::dev::IBattery interface.
fakeBattery
  • Added a new port <name>/control/rpc:i to retrieve and change the values reported by the fake battery.
  • The battery is now charged or discharged depending on the sign of the current.
  • The default values for voltage and current are now more realistic.
  • It is now possible to change the starting values as device options.
fakeLaser
  • Added --use_constant option.
  • The device is now derived from yarp::dev::Lidar2DDeviceBase
laserFromDepth
  • The device is now derived from yarp::dev::Lidar2DDeviceBase
Localization2DServer
  • Added missing ROS initialization. It will now publish odometry data on ROS topic.
multipleAnalogSensorsMsgs
  • multipleAnalogSensorsSerializations.thrift have been extended to handle position sensors.
multipleanalogsensorsserver
  • Added handlers for yarp::dev::IPositionSensors interface.
  • Added support for wrapped subdevices, i.e. those explicitly instantiated via --subdevice option on initial device configuration. (#2154)
multipleanalogsensorsclient
  • Added handlers for yarp::dev::IPositionSensors interface.
multipleanalogsensorsremapper
  • Added handlers for yarp::dev::IPositionSensors interface.
  • Update MAS_NrOfSensorTypes. This avoids segfaults due to uninitialized yarp::dev::IPositionSensors interfaces.
ovrheadset
  • Port to the new rendering API and make it focus aware (SDK 1.19 is required).
  • Add P command to print current settings.
Rangefinder2DClient
  • Rangefinder2DClient now use yarp::dev::LaserScan2D datatype.
Rangefinder2DWrapper
  • Rangefinder2DWrapper now use yarp::dev::LaserScan2D datatype.
rpLidar2
  • The device is now derived from yarp::dev::Lidar2DDeviceBase
transformClient
  • Added support for identical frame transforms.
transformServer
  • Cleanup of --USER_TF option.

Tools

yarp
  • The --help, -h and --version arguments are now accepted.
  • Added the priority-qos subcommand that allows to set/get the packet priority value of both the source and the destination port.
  • Added the priority-sched subcommand that allows to set/get the thread priority and policy values of both the source and the destination port.
  • Added the env subcommand to print one or the full list of environment variables.
  • The qos subcommand is accepted as an alias to priority-qos.
  • The sched subcommand is accepted as an alias to priority-sched.
  • When logic fails, it's time to yarp pray. Watch out for palindrome mode.
yarprun
  • The name of the port used to forward the output no longer contains the full path, but only the executable name.
  • The following enviromnent variables are now set in the child processes:
    • YARP_IS_YARPRUN is set to 1 for all child processes
    • YARPRUN_IS_FORWARDING_LOG is set to 1 when yarprun is forwarding the log and to 0 otherwise

GUIs

  • Added new yarpmobilebasegui GUI which allows the user to control the mobile base of the robot via keyboard or mouse and sends yarp::dev::MobileBaseVelocity commands on a yarp port.
yarpmanager
  • Moved the builder, from the hidden place to a tab in the application view.
yarplaserscannergui
  • Multiple instances are now allowed with --local option.
  • Added --debug option.
yarpdataplayer
  • It's now possible to reproduce several ROS types, i.e.
    • sensor_msgs/LaserScan
    • nav_msgs/Odometry
    • tf/tfMessage
    • tf2_msgs/tfMessage
    • geometry_msgs/Pose
    • geometry_msgs/Pose2D
  • Added getSliderPercentage method to the rpc port. This method returns the progress percentage of the seek bar while playing a dataset. (#2148)
yarpview
  • Added a checkable menu item that, if checked, shows an additional line in the status bar that displays the color value of the pixel pointed by the mouse cursor. The string has the following format
    Pixel("x","y") = "hexstring"
    
    Where x and y are the coordinates of the pixel and hexstring is the hexadecimal (in the ARGB format) string representing the pixel color. The additional line on the status bar contains also a little rectangle that will turn the same color of the currently selected pixel.
yarplogger
  • The new info from yarp log (component, time, etc.) are now displayed (the columns that are not shown by default can be enabled from the Options menu).
  • Cleaned up interface, removed status bar and improved colors.

Bindings

  • Several previously inaccessible methods from motor interfaces are now correctly wrapped. This covers pretty much everything the pair remote_controlboard/controlboardwrapper2 wraps and implements, only excluding calibration interfaces. In addition, two more interfaces can be accessed through the PolyDriver idiom: IEncodersTimed and IMotor.

New Experimental Features

EXPERIMENTAL means that the software is under development, provided with incomplete documentation and it may be modified/renamed/removed without any notice.

Libraries

os

  • The following EXPERIMENTAL environment variables can be enabled to enable forwarding of some extra log information:
    • YARP_FORWARD_CODEINFO_ENABLE (file name, line number and function name)
    • YARP_FORWARD_HOSTNAME_ENABLE (hostname)
    • YARP_FORWARD_PROCESSINFO_ENABLE (command, arguments, pid and thread id)
    • YARP_FORWARD_BACKTRACE_ENABLE (stack trace) These environment variables could be removed in the future.

robotinterface

  • Created the new EXPERIMENTAL YARP_robotinterface library by refactoring as a library the logic of the yarprobotinterface tool, including support for attaching devices created by the library to external devices created in some other way.

Carriers

  • Added the new EXPERIMENTAL unix_stream carriers to communicate with a process on the same machine using a unix socket. It's possible to use the ack option (unix_stream+ack) in case you need flow control.

Devices

  • Added Realsense2WithIMU EXPERIMENTAL device. This is a driver for Realsense D435i.
  • Added Relasense2Tracking EXPERIMENTAL device. This is a driver for Realsense T265.
  • added laserFromRosTopic EXPERIMENTAL device. It exposes a lidar ROS topic (dataype sensor_msgs::LaserScan) on YARP, using the yarp::dev::IRangefinder2D interface.

Bug Fixes

Libraries

os

Port
  • Passing an invalid string when setting the QoS by DSCP no longer sets it to 0.

sig

Image
  • Fixed pixel type and the orientation settings when using the move constructor and the move assignment operator.

Contributors

This is a list of people that contributed to this release (generated from the git history using git shortlog -ens --no-merges v3.3.0..v3.4.0):

   470	Daniele E. Domenichelli <[email protected]>
    75	Marco Randazzo <[email protected]>
    27	Nicolò Genesio <[email protected]>
    18	Silvio Traversaro <[email protected]>
     8	Ettore Landini <[email protected]>
     7	Bartek Łukawski <[email protected]>
     4	Prashanth Ramadoss <[email protected]>
     3	Alexandre Gomes Pereira Antunes <[email protected]>
     3	Giulio Romualdi <[email protected]>
     2	Andrea Ruzzenenti <[email protected]>
     1	Alessandro Roncone <[email protected]>
     1	Paul Fitzpatrick <[email protected]>
     1	Ugo Pattacini <[email protected]>
     1	Valentina Gaggero <[email protected]>

v3.3.3

3 years ago

YARP 3.3.3 Release Notes

A (partial) list of bug fixed and issues resolved in this release can be found here.

Bug Fixes

Build System

  • Bison and flex are no longer run when crosscompiling.

Libraries

os

Bottle
  • Fixed precision for floating point numbers, to ensure that they are read as the original floating point written.
  • Fixed toString and fromString when writing or reading infinity, negative infinity or nan.
  • Fixed fromString when reading a 64 bit integer.
WireReader
  • Fixed reading a Float32 from a Float64 (#2227). This is not a common use case, but it can happen when a Float32 is written on a file, and then read again into YARP (as a Float64), and then restored in the original type using copyPortable().
Timer
  • Fixed Timer in monothread mode taking 100% of the CPU.
  • Fixed Timers in separate threads not updating their settings.

dev

  • Fixed dependency from YARP_math that should be PUBLIC. A few headers include YARP_math headers.

Devices

batteryClient

  • Fixed methods returning int instead of double:
    • getVoltage()
    • getCurrent()
    • getCharge()
    • getTemperature()

batteryWraper

  • Fixed parameters accepted by subdevice not printed with --verbose.

Navigation2DClient

  • The method checkNearToLocation now correctly checks if two orientations are similar (below a certain threshold), also considering the critical points 0, 180, 360, -180, -180, etc.

controlboardwrapper2

  • Exposed missing yarp::dev::IMotor::setGearboxRatio method via RPC.

remote_controlboard

  • Implemented missing yarp::dev::IMotor::setGearboxRatio method.
  • Fixed group command yarp::dev::IInteractionMode::getInteractionModes.

fakeBattery

  • Fixed PeriodicThread using 100% CPU.

GUIs

yarpview

  • Now the "checked" state of the two checkable elements in the File menu of yarpview (i.e. "Save single image..." and "Save a set of images...") turns to false when the corresponding dialogs are closed.

Contributors

This is a list of people that contributed to this release (generated from the git history using git shortlog -ens --no-merges v3.3.2..v3.3.3):

    28	Daniele E. Domenichelli <[email protected]>
     2	Andrea Ruzzenenti <[email protected]>
     2	Bartek Łukawski <[email protected]>
     1	Ettore Landini <[email protected]>
     1	Marco Randazzo <[email protected]>
     1	Silvio Traversaro <[email protected]>

v3.3.2

4 years ago

YARP 3.3.2 Release Notes

A (partial) list of bug fixed and issues resolved in this release can be found here.

Tools

yarpdatadumper

  • Fixed generation of video when invoked with the command line option --type video

Devices

usbCamera

  • Fixed build with OpenCV 4

ovrheadset

  • Fixed race condition causing randomly frame drops.
  • Fixed behaviour of the CTRL button. Both CTRL buttons can now be pressed, only SHIFT will decide which eye offsets should be modified.
  • Fixed --no-logo option.
  • Fixed --userpose option.

Contributors

This is a list of people that contributed to this release (generated from the git history using git shortlog -ens --no-merges v3.3.1..v3.3.2):

    16	Daniele E. Domenichelli <[email protected]>
     1	Ugo Pattacini <[email protected]>

v2.0.4

4 years ago

YARP 2.0.4 (2006-07-05)

Contributors

This is a list of people that contributed to this release (generated from the git history using git shortlog -ens --no-merges v2.0.4):

   448	Paul Fitzpatrick <[email protected]>
    55	Lorenzo Natale <[email protected]>
    34	YARP Developers <[email protected]>
    24	Giorgio Metta <[email protected]>
     1	Matteo Brunettini <[email protected]>
     1	Michael Bucko <[email protected]>

v2.1.0

4 years ago

YARP 2.1.0 (2006-10-28)

Contributors

This is a list of people that contributed to this release (generated from the git history using git shortlog -ens --no-merges v2.0.4...v2.1.0):

   270	Paul Fitzpatrick <[email protected]>
    52	YARP Developers <[email protected]>
    34	Lorenzo Natale <[email protected]>
    17	Giorgio Metta <[email protected]>
     6	Alexandre Bernardino <[email protected]>
     3	Michael Bucko <[email protected]>
     2	Francesco Orabona <[email protected]>
     1	Arjan Gijsberts <[email protected]>
     1	Matteo Brunettini <[email protected]>