New Features

  • Add utility script to configure the robot’s firewall
  • Add the ability to allow or prevent multiple NS clients to connect to the robot
  • Add utility script to configure the ability to allow or prevent multiple NS clients to connect to the robot simultaneously
  • Add database migration to the updater script
  • The robot hostname is now dynamically set at boot time. It uses the following format: <robot_type>-<rasp_id>
  • Added a mDNS service to allow the robot to be discovered on the network

Improvements

  • Added topic /niryo_robot/max_acceleration_scaling_factor to check current acceleration percentage
  • Refacto of the wifi button handling: the name reflects its real job, managing solely the hotspot
  • Disabled torque of steppers not being calibrated during factory calibration
  • S3Client: Use internet connection observable to check if the robot is connected to the internet
  • S3Client: Use SystemctlWrapper to restart NTP service (used to sync the Raspberry Pi’s clock)
  • WebSocket: Return an acknowledge message on the register event containing the robot’s info (name, rasp_id, hw_version)
  • Allow multiple NS clients without needing to restart the service
  • New config handling: use lazy loading for variables dependent on other variables
  • AllowedNSClientsObservable now has a callback for external database updates
  • Add remaining number of NS available connections

Bug Fixes

  • Fix: use forward_kinematics_v2 in __ros_poses_from_robot_positions
  • Fix: P changes in DXL’s PID
  • Fixed a bug while setting acceleration from the /niryo_robot_arm_commander/set_acceleration_factor service, which always set it to 40%
  • Fixed the conveyors’ direction, which was inverted in the Modbus server
  • Fixed PoseMetada.from_dict, which wasn’t passing the ‘frame’ argument when using a PoseMetadata.v1
  • Fixed collision thresholds settings that weren’t correctly calling the setting of the 2nd threshold with the wrong datatype
  • Fixed a bug in __hotspot_state_callback that still processed the API response even if the request failed
  • Fixed tools transforms for Ned3 Pro
  • Fixed a missing offset in the URDF for Ned3 Pro
  • Fixed a goal tolerance too low for joint 1
  • Fix: increase remaining_ns_clients_slots instead of decreasing it
  • Fixed a misuse of Marker instead of Prefix in the S3Client
  • Fixed type errors in some standard_response calls
  • UpdateManager no longer bypasses the config_file_manager
  • Safe deserialization in the SocketIO event
  • Correct type hint for __auto_control_loop_thread