SoftBank Robotics documentation What's new in NAOqi 2.5?

NAOqi API & SDKs 2.5

Audio

Language management improved and secured

An application cannot anymore permanently change the language of the robot: setLanguage methods scope is now limited to the application.

For further details, see: How to temporarily change the language of the robot.

Interaction engines

New extractor for life: ALMood

ALMood is now part of the extractors started automatically by Autonomous Life.

For further details, see: ALMood Activated during Autonomous Life and Extractors management.

Conditions expression language: new types supported

The conditions expression language, used by Launch trigger conditions and ALExpressionWatcher, now takes signals and maps.

For further details, see: Conditions expression language.

Core

ALMood: deprecated signal

ServiceManager: new methods

Add start|stop|restart API to ServiceManager API that throw on error.

ALTabletService: language management improved

For a more standard and more robust management of the languages, ALTabletService::setTabletLanguage now recognizes and exclusively uses language locales such as “ja_JP” or “en_US” instead of “en” or “ja”.

Motion

ALNavigation: new safety map

ALNavigation implements a new safety map, used for motion safety, local navigation, and free zone APIs.

For further details, see: Safety map.

ALNavigation: first version of exploration APIs

ALNavigation implements new APIs dedicated to exploration & localization.

Warning

This is still a work in progress, and API may change in the future.

For further details, see: Exploration and Localization and Exploration API.

ALNavigation: new method

ALNavigation: deprecated methods

Deprecated methods Instead, use ...
ALNavigationProxy::startFreeZoneUpdate directly call ALNavigationProxy::getFreeZone
ALNavigationProxy::stopAndComputeFreeZone cancel the future of ALNavigationProxy::findFreeZone

ALNavigation: removed methods

  • ALNavigation::getSecurityDistance
  • ALNavigation::moveTo
  • ALNavigation::move
  • ALNavigation::moveToward
  • ALNavigation::setSecurityDistance

ALNavigation: removed events

Removed events Instead, use ...
Navigation/SafeNavigator/Status() ALMotion/MoveFailed()
Navigation/SafeNavigator/BlockingObstacle() ALMotion/MoveFailed()
Navigation/SafeNavigator/AlreadyAtTarget() ALMotion/MoveFailed()
Navigation/SafeNavigator/DangerousObstacleDetected() ALMotion/MoveFailed()

ALRobotPose: module removed

Use ALRobotPosture instead.

Removed methods

  • ALRobotPose::getActualPoseAndTime
  • ALRobotPose::getPoseNames

Removed event

  • robotPoseChanged()

Removed ALMemory Keys

  • robotPose
  • robotPoseSince

ALRecharge: deprecated method

ALRechargeProxy::stopAll is deprecated.

This call may not operate during critical operation like docking or undocking.

ALMotion: deprecated methods

Now ALBackgroundMovement configures the breathing animation automatically.

Python SDK

Python SDK includes the qicore module

Starting with 2.5.0, the Python SDK includes the qicore module, which should allow you to use qiFile from Python.

This means that the filesystem hierarchy inside the SDK had to change, you can no longer set PYTHONPATH to where you have extracted the Python SDK.

Instead:

  • On Mac and Linux you have to set PYTHONPTAH to /path/to/python/sdk/lib/python2.7/site-packages.
  • On Windows you have to set PYTHONPATH to C:\path\to\python\sdk\lib.

For further details, see: Python SDK - Installation Guide.

C++ SDK

Windows: Visual Studio 2013 instead of 2010

Visual Studio 2013 is now supported, replacing Visual Studio 2010.

Note that 2013 is mandatory because our SDK now implements the C++ 11 features available in Visual Studio 2013.

For further details, see: Supported Compiler and IDE.