{"id":22111399,"url":"https://github.com/hebirobotics/hebi-ros-daisy","last_synced_at":"2025-03-24T04:29:27.979Z","repository":{"id":56657232,"uuid":"156280379","full_name":"HebiRobotics/hebi-ros-daisy","owner":"HebiRobotics","description":"HEBI C++ Daisy kit example wrapped in ROS","archived":false,"fork":false,"pushed_at":"2020-10-26T21:51:44.000Z","size":6782,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-01-29T10:30:26.047Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/HebiRobotics.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-11-05T20:43:40.000Z","updated_at":"2023-06-28T02:04:53.000Z","dependencies_parsed_at":"2022-08-15T22:40:53.204Z","dependency_job_id":null,"html_url":"https://github.com/HebiRobotics/hebi-ros-daisy","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HebiRobotics%2Fhebi-ros-daisy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HebiRobotics%2Fhebi-ros-daisy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HebiRobotics%2Fhebi-ros-daisy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HebiRobotics%2Fhebi-ros-daisy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/HebiRobotics","download_url":"https://codeload.github.com/HebiRobotics/hebi-ros-daisy/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245209913,"owners_count":20578128,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-01T10:40:34.124Z","updated_at":"2025-03-24T04:29:27.943Z","avatar_url":"https://github.com/HebiRobotics.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Install\n\nTo install, you will first need to install the dependencies\n\n1. [Install ROS](http://wiki.ros.org/melodic/Installation/Ubuntu) (we recommend ROS Melodic on Ubuntu 18.04)\n1. Install the `hebi_cpp_api` ROS package:\n`$ sudo apt install ros-melodic-hebi-cpp-api`\n\nNow, checkout the code into a new ROS workspace:\n\n```\n$ cd ~\n$ mkdir -p daisy_workspace/src\n$ cd daisy_workspace/src\n$ git clone https://github.com/HebiRobotics/hebi-ros-daisy\n$ cd ../..\n```\n\nFinally, compile and install:\n\n```\n$ cd ~/daisy_workspace\n$ catkin_make\n$ catkin_make install\n```\n\n# Running\n\nTo launch the program, run the `daisy.launch` file in the `hebi-ros-daisy` package.\n\nThe robot will move into a starting stance position.  If one or more of the robot's legs do not move, check that the LEDs are not blinking yellow on any leg; this indicates that the leg is outside of a safe starting range, and should be moved back into range before continuing (e.g., by pulling up Scope and querying the current position).\n\nThe launch file also runs a \"Controller\" interface node that begins to search for a [Mobile IO app](http://docs.hebi.us/tools.html#mobile-io) on the network, with family \"Daisy\" and name \"mobileIO\".  Once this is found, the Mobile IO interface will be configured for controlling Daisy.  This Mobile IO app should be connected to the robot's wireless network (default PW is `hebi1234`).\n\nOn the controller, you can use the following controls:\n\n* B1: toggle stance mode (on) or step mode (off)\n* B8: quit\n* A1/A2: rotate (pitch forward/back only works in \"stance\" mode\n* A3: move up/down\n* A7/A8: shift position in x/y\n\n![Controller Image](controller.png)\n\nYou can also use ROS messages to control the hexapod:\n\n* Velocity Commands\n  * Channel: `/velocity_command`\n  * Message: `geometry_msgs::Twist`\n  * Purpose: linear and angular velocity commands\n\n* Stance/Step toggle\n  * Channel: `/mode_select`\n  * Message: `std_msgs::Bool`\n  * Purpose: \"true\" to enter stance mode, \"false\" to enter step mode.\n\n# Configuring Auto-start\n\nYou can set up the code to run automatically at bootup.  This is done with the [`robot_upstart` ROS package](http://docs.ros.org/melodic/api/robot_upstart/html).\n\nFirst, install the `robot_upstart` ROS package:\n\n```\n$ sudo apt install ros-melodic-robot-upstart\n```\n\nThen set up the script to run the `daisy` launch file at bootup:\n\n```\n$ cd ~/daisy_workspace\n$ source devel/setup.sh\n$ rosrun robot_upstart install hebi-ros-daisy/launch/daisy.launch\n```\n\n(To uninstall this startup script later, you can call call `rosrun robot_upstart uninstall hebi-ros-daisy`)\n\nWe have found that for this to work on bootup on ROS Melodic on Ubuntu 18.04, you will need to apply [this patch](\nhttps://github.com/clearpathrobotics/robot_upstart/issues/71 )\n\nIn particular, open `/lib/systemd/system/hebi-ros-daisy.service` (you will need root access), and add the following lines to the first section:\n```\nAfter=network.target\nWants=network.target\nAfter=network-online.target\nWants=network-online.target\n```\n\nThen run the following:\n```\n$ sudo systemctl enable NetworkManager-wait-online.service\n$ sudo systemctl enable systemd-networkd-wait-online.service\n```\n\nYou can start/stop this manually by calling:\n```\n$ sudo service hebi-ros-daisy start\n$ sudo service hebi-ros-daisy stop\n```\n\nTo debug, we found it is best to use `journalctl` (the instructions on the `robot_upstart` documentation are outdated):\n\n```\n$ sudo journalctl | hebi-ros-daisy\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhebirobotics%2Fhebi-ros-daisy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhebirobotics%2Fhebi-ros-daisy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhebirobotics%2Fhebi-ros-daisy/lists"}