|
Package Summary
Tags | No category tags. |
Version | 2.1.28 |
License | BSD |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/jsk-ros-pkg/jsk_3rdparty.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2024-07-10 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Kei Okada
- Yoshiki Obinata
Authors
- Yoshiki Obinata
switchbot_ros
This is the package for using switchbot by ROS.
System Component
JSK members can edit the original file here.
How to use?
Setup switchbot
- Install the switchbot app to your phone(iPhone, Android) and create your switchbot account.
- Prepare the switchbot devices and setup by your phone.
Especially, please set your device name and enable cloud service.
- Get your token
On switchbot App, profile -> settings, and pressversion
for 10 times and you can get token.
For JSK members, please see this slide for account and token details and installed switchbots for our lab.
How to launch switchbot ros
Execute roslaunch switchbot_ros switchbot.launch token:=YOUR_TOKEN
and publish ActionGoal.
ROS API
The switchbot_ros
node provides APIs below.
~/devices
topic ( Type: switchbot_ros/DeviceArray
)
This topic provides devices list available with switchbot_ros server.
~/switch
action ( Type: switchbot_ros/SwitchBotcommandAction
)
This action provide command interface to switchbot devices.
From command line
rostopic pub /switchbot_ros/switch/goal switchbot_ros/SwitchBotCommandActionGoal "header:
seq: 0
stamp:
secs: 0
nsecs: 0
frame_id: ''
goal_id:
stamp:
secs: 0
nsecs: 0
id: ''
goal:
device_name: '/eng2/7f/73b2/test/button'
command: 'press'
parameter: ''
command_type: ''"
rostopic pub /switchbot_ros/switch/goal switchbot_ros/SwitchBotCommandActionGoal "header:
seq: 0
stamp:
secs: 0
nsecs: 0
frame_id: ''
goal_id:
stamp:
secs: 0
nsecs: 0
id: ''
goal:
device_name: '/myroom/light'
command: 'turnOn'
parameter: ''
command_type: ''"
Please see here for command details.
Client libraries
There are rospy/roseus client libraries for switchbot_ros
server.
roseus
(setq msg (get-devices)) ;; get device list
(dolist (device (send msg :devices)) (format t "name: ~A, type: ~A~%" (send device :name) (send device :type))) ;; print device list
(control-device "/eng2/7f/73b2/light/upper/switch" "turnOn") ;; control some device
(control-device "/eng2/7f/73b2/light/lower/switch" "turnOn")
rospy
import rospy
from switchbot_ros.switchbot_ros_client import SwitchBotROSClient
rospy.init_node('hoge')
client = SwitchBotROSClient()
devices = client.get_devices()
print(devices)
client.control_device('/eng2/7f/73b2_bot_kitchen', 'turnOn')
An example of controlling the elevator at Eng2 building at The University of Tokyo
Please see here for controlling elevator example code by JSK Spot robot.
Changelog for package switchbot_ros
2.1.28 (2023-07-24)
2.1.27 (2023-06-24)
- fix package.xml/CMakeLists.txt to supress catkin_lint errors (#479)
- Contributors: Kei Okada
2.1.26 (2023-06-14)
- add LICENSE files (#476)
- Contributors: Kei Okada
2.1.25 (2023-06-08)
- [switchbot_ros] add actionlib_msgs and std_msgs as build_depend (#357)
- [switchbot_ros] add obinata as maintainer for switchbot_ros (#358)
- Pr/add switchbot device list publisher (#344)
- [switchbot_ros] update switchbot_ros client (#345)
- [chaplus_ros][switchbot_ros]fix exec_depend in ros noetic (#332)
- [switchbot_ros] update ReadMe.md (#324)
- [switchbot_ros] Sort device_list (#331)
- [switchbot_ros] remove catching base exception and output more specific key error when the switchbot id not exists on the server (#321)
- add install section to switchbot_ros/CMakeLists.txt (#294)
- [switchbot_ros] use python setup to avoid relative import in switchbot_ros (#278)
- [switchbot_ros] catch the exception when init the node (#279)
- Contributors: Kei Okada, Koki Shinjo, Naoya Yamaguchi, Shingo Kitagawa, Yoshiki Obinata, Iory Yanokura
2.1.24 (2021-07-26)
2.1.23 (2021-07-21)
- add rosnode for switchbot (#260)
- Contributors: Yoshiki Obinata
2.1.22 (2021-06-10)
2.1.21 (2020-08-19)
2.1.20 (2020-08-07)
2.1.19 (2020-07-21)
2.1.18 (2020-07-20)
2.1.17 (2020-04-16 21:51)
2.1.16 (2020-04-16 15:21)
2.1.15 (2019-12-12)
2.1.14 (2019-11-21)
2.1.13 (2019-07-10)
2.1.12 (2019-05-25)
2.1.11 (2018-08-29)
2.1.10 (2018-04-25)
2.1.9 (2018-04-24)
2.1.8 (2018-04-17)
2.1.7 (2018-04-09)
2.1.6 (2017-11-21)
2.1.5 (2017-11-20)
2.1.4 (2017-07-16)
2.1.3 (2017-07-07)
2.1.2 (2017-07-06)
2.1.1 (2017-07-05)
2.1.0 (2017-07-02)
2.0.20 (2017-05-09)
2.0.19 (2017-02-22)
2.0.18 (2016-10-28)
2.0.17 (2016-10-22)
2.0.16 (2016-10-17)
2.0.15 (2016-10-16)
2.0.14 (2016-03-20)
2.0.13 (2015-12-15)
2.0.12 (2015-11-26)
2.0.11 (2015-10-07 14:16)
2.0.10 (2015-10-07 12:47)
2.0.9 (2015-09-26)
2.0.8 (2015-09-15)
2.0.7 (2015-09-14)
2.0.6 (2015-09-08)
2.0.5 (2015-08-23)
2.0.4 (2015-08-18)
2.0.3 (2015-08-01)
2.0.2 (2015-06-29)
2.0.1 (2015-06-19 21:21)
2.0.0 (2015-06-19 10:41)
1.0.71 (2015-05-17)
1.0.70 (2015-05-08)
1.0.69 (2015-05-05 12:28)
1.0.68 (2015-05-05 09:49)
1.0.67 (2015-05-03)
1.0.66 (2015-04-03)
1.0.65 (2015-04-02)
1.0.64 (2015-03-29)
1.0.63 (2015-02-19)
1.0.62 (2015-02-17)
1.0.61 (2015-02-11)
1.0.60 (2015-02-03 10:12)
1.0.59 (2015-02-03 04:05)
1.0.58 (2015-01-07)
1.0.57 (2014-12-23)
1.0.56 (2014-12-17)
1.0.55 (2014-12-09)
1.0.54 (2014-11-15)
1.0.53 (2014-11-01)
1.0.52 (2014-10-23)
1.0.51 (2014-10-20 16:01)
1.0.50 (2014-10-20 01:50)
1.0.49 (2014-10-13)
1.0.48 (2014-10-12)
1.0.47 (2014-10-08)
1.0.46 (2014-10-03)
1.0.45 (2014-09-29)
1.0.44 (2014-09-26 09:17)
1.0.43 (2014-09-26 01:08)
1.0.42 (2014-09-25)
1.0.41 (2014-09-23)
1.0.40 (2014-09-19)
1.0.39 (2014-09-17)
1.0.38 (2014-09-13)
1.0.37 (2014-09-08)
1.0.36 (2014-09-01)
1.0.35 (2014-08-16)
1.0.34 (2014-08-14)
1.0.33 (2014-07-28)
1.0.32 (2014-07-26)
1.0.31 (2014-07-23)
1.0.30 (2014-07-15)
1.0.29 (2014-07-02)
1.0.28 (2014-06-24)
1.0.27 (2014-06-10)
1.0.26 (2014-05-30)
1.0.25 (2014-05-26)
1.0.24 (2014-05-24)
1.0.23 (2014-05-23)
1.0.22 (2014-05-22)
1.0.21 (2014-05-20)
1.0.20 (2014-05-09)
1.0.19 (2014-05-06)
1.0.18 (2014-05-04)
1.0.17 (2014-04-20)
1.0.16 (2014-04-19 23:29)
1.0.15 (2014-04-19 20:19)
1.0.14 (2014-04-19 12:52)
1.0.13 (2014-04-19 11:06)
1.0.12 (2014-04-18 16:58)
1.0.11 (2014-04-18 08:18)
1.0.10 (2014-04-17)
1.0.9 (2014-04-12)
1.0.8 (2014-04-11)
1.0.7 (2014-04-10)
1.0.6 (2014-04-07)
1.0.5 (2014-03-31)
1.0.4 (2014-03-29)
1.0.3 (2014-03-19)
1.0.2 (2014-03-12)
1.0.1 (2014-03-07)
1.0.0 (2014-03-05)
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
actionlib | |
actionlib_msgs | |
catkin_virtualenv | |
message_generation | |
catkin | |
message_runtime | |
rospy |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
jsk_3rdparty |
Launch files
- launch/switchbot.launch
-
- token
- secret [default: '']
- respawn [default: true]
- pub_status [default: false]
- pub_status_rate [default: 0.1]
- pub_device_name [default: bot74a]
Messages
Services
Plugins
Recent questions tagged switchbot_ros at Robotics Stack Exchange
|
Package Summary
Tags | No category tags. |
Version | 2.1.28 |
License | BSD |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/jsk-ros-pkg/jsk_3rdparty.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2024-07-10 |
Dev Status | DEVELOPED |
CI status | Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Kei Okada
- Yoshiki Obinata
Authors
- Yoshiki Obinata
switchbot_ros
This is the package for using switchbot by ROS.
System Component
JSK members can edit the original file here.
How to use?
Setup switchbot
- Install the switchbot app to your phone(iPhone, Android) and create your switchbot account.
- Prepare the switchbot devices and setup by your phone.
Especially, please set your device name and enable cloud service.
- Get your token
On switchbot App, profile -> settings, and pressversion
for 10 times and you can get token.
For JSK members, please see this slide for account and token details and installed switchbots for our lab.
How to launch switchbot ros
Execute roslaunch switchbot_ros switchbot.launch token:=YOUR_TOKEN
and publish ActionGoal.
ROS API
The switchbot_ros
node provides APIs below.
~/devices
topic ( Type: switchbot_ros/DeviceArray
)
This topic provides devices list available with switchbot_ros server.
~/switch
action ( Type: switchbot_ros/SwitchBotcommandAction
)
This action provide command interface to switchbot devices.
From command line
rostopic pub /switchbot_ros/switch/goal switchbot_ros/SwitchBotCommandActionGoal "header:
seq: 0
stamp:
secs: 0
nsecs: 0
frame_id: ''
goal_id:
stamp:
secs: 0
nsecs: 0
id: ''
goal:
device_name: '/eng2/7f/73b2/test/button'
command: 'press'
parameter: ''
command_type: ''"
rostopic pub /switchbot_ros/switch/goal switchbot_ros/SwitchBotCommandActionGoal "header:
seq: 0
stamp:
secs: 0
nsecs: 0
frame_id: ''
goal_id:
stamp:
secs: 0
nsecs: 0
id: ''
goal:
device_name: '/myroom/light'
command: 'turnOn'
parameter: ''
command_type: ''"
Please see here for command details.
Client libraries
There are rospy/roseus client libraries for switchbot_ros
server.
roseus
(setq msg (get-devices)) ;; get device list
(dolist (device (send msg :devices)) (format t "name: ~A, type: ~A~%" (send device :name) (send device :type))) ;; print device list
(control-device "/eng2/7f/73b2/light/upper/switch" "turnOn") ;; control some device
(control-device "/eng2/7f/73b2/light/lower/switch" "turnOn")
rospy
import rospy
from switchbot_ros.switchbot_ros_client import SwitchBotROSClient
rospy.init_node('hoge')
client = SwitchBotROSClient()
devices = client.get_devices()
print(devices)
client.control_device('/eng2/7f/73b2_bot_kitchen', 'turnOn')
An example of controlling the elevator at Eng2 building at The University of Tokyo
Please see here for controlling elevator example code by JSK Spot robot.
Changelog for package switchbot_ros
2.1.28 (2023-07-24)
2.1.27 (2023-06-24)
- fix package.xml/CMakeLists.txt to supress catkin_lint errors (#479)
- Contributors: Kei Okada
2.1.26 (2023-06-14)
- add LICENSE files (#476)
- Contributors: Kei Okada
2.1.25 (2023-06-08)
- [switchbot_ros] add actionlib_msgs and std_msgs as build_depend (#357)
- [switchbot_ros] add obinata as maintainer for switchbot_ros (#358)
- Pr/add switchbot device list publisher (#344)
- [switchbot_ros] update switchbot_ros client (#345)
- [chaplus_ros][switchbot_ros]fix exec_depend in ros noetic (#332)
- [switchbot_ros] update ReadMe.md (#324)
- [switchbot_ros] Sort device_list (#331)
- [switchbot_ros] remove catching base exception and output more specific key error when the switchbot id not exists on the server (#321)
- add install section to switchbot_ros/CMakeLists.txt (#294)
- [switchbot_ros] use python setup to avoid relative import in switchbot_ros (#278)
- [switchbot_ros] catch the exception when init the node (#279)
- Contributors: Kei Okada, Koki Shinjo, Naoya Yamaguchi, Shingo Kitagawa, Yoshiki Obinata, Iory Yanokura
2.1.24 (2021-07-26)
2.1.23 (2021-07-21)
- add rosnode for switchbot (#260)
- Contributors: Yoshiki Obinata
2.1.22 (2021-06-10)
2.1.21 (2020-08-19)
2.1.20 (2020-08-07)
2.1.19 (2020-07-21)
2.1.18 (2020-07-20)
2.1.17 (2020-04-16 21:51)
2.1.16 (2020-04-16 15:21)
2.1.15 (2019-12-12)
2.1.14 (2019-11-21)
2.1.13 (2019-07-10)
2.1.12 (2019-05-25)
2.1.11 (2018-08-29)
2.1.10 (2018-04-25)
2.1.9 (2018-04-24)
2.1.8 (2018-04-17)
2.1.7 (2018-04-09)
2.1.6 (2017-11-21)
2.1.5 (2017-11-20)
2.1.4 (2017-07-16)
2.1.3 (2017-07-07)
2.1.2 (2017-07-06)
2.1.1 (2017-07-05)
2.1.0 (2017-07-02)
2.0.20 (2017-05-09)
2.0.19 (2017-02-22)
2.0.18 (2016-10-28)
2.0.17 (2016-10-22)
2.0.16 (2016-10-17)
2.0.15 (2016-10-16)
2.0.14 (2016-03-20)
2.0.13 (2015-12-15)
2.0.12 (2015-11-26)
2.0.11 (2015-10-07 14:16)
2.0.10 (2015-10-07 12:47)
2.0.9 (2015-09-26)
2.0.8 (2015-09-15)
2.0.7 (2015-09-14)
2.0.6 (2015-09-08)
2.0.5 (2015-08-23)
2.0.4 (2015-08-18)
2.0.3 (2015-08-01)
2.0.2 (2015-06-29)
2.0.1 (2015-06-19 21:21)
2.0.0 (2015-06-19 10:41)
1.0.71 (2015-05-17)
1.0.70 (2015-05-08)
1.0.69 (2015-05-05 12:28)
1.0.68 (2015-05-05 09:49)
1.0.67 (2015-05-03)
1.0.66 (2015-04-03)
1.0.65 (2015-04-02)
1.0.64 (2015-03-29)
1.0.63 (2015-02-19)
1.0.62 (2015-02-17)
1.0.61 (2015-02-11)
1.0.60 (2015-02-03 10:12)
1.0.59 (2015-02-03 04:05)
1.0.58 (2015-01-07)
1.0.57 (2014-12-23)
1.0.56 (2014-12-17)
1.0.55 (2014-12-09)
1.0.54 (2014-11-15)
1.0.53 (2014-11-01)
1.0.52 (2014-10-23)
1.0.51 (2014-10-20 16:01)
1.0.50 (2014-10-20 01:50)
1.0.49 (2014-10-13)
1.0.48 (2014-10-12)
1.0.47 (2014-10-08)
1.0.46 (2014-10-03)
1.0.45 (2014-09-29)
1.0.44 (2014-09-26 09:17)
1.0.43 (2014-09-26 01:08)
1.0.42 (2014-09-25)
1.0.41 (2014-09-23)
1.0.40 (2014-09-19)
1.0.39 (2014-09-17)
1.0.38 (2014-09-13)
1.0.37 (2014-09-08)
1.0.36 (2014-09-01)
1.0.35 (2014-08-16)
1.0.34 (2014-08-14)
1.0.33 (2014-07-28)
1.0.32 (2014-07-26)
1.0.31 (2014-07-23)
1.0.30 (2014-07-15)
1.0.29 (2014-07-02)
1.0.28 (2014-06-24)
1.0.27 (2014-06-10)
1.0.26 (2014-05-30)
1.0.25 (2014-05-26)
1.0.24 (2014-05-24)
1.0.23 (2014-05-23)
1.0.22 (2014-05-22)
1.0.21 (2014-05-20)
1.0.20 (2014-05-09)
1.0.19 (2014-05-06)
1.0.18 (2014-05-04)
1.0.17 (2014-04-20)
1.0.16 (2014-04-19 23:29)
1.0.15 (2014-04-19 20:19)
1.0.14 (2014-04-19 12:52)
1.0.13 (2014-04-19 11:06)
1.0.12 (2014-04-18 16:58)
1.0.11 (2014-04-18 08:18)
1.0.10 (2014-04-17)
1.0.9 (2014-04-12)
1.0.8 (2014-04-11)
1.0.7 (2014-04-10)
1.0.6 (2014-04-07)
1.0.5 (2014-03-31)
1.0.4 (2014-03-29)
1.0.3 (2014-03-19)
1.0.2 (2014-03-12)
1.0.1 (2014-03-07)
1.0.0 (2014-03-05)
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
actionlib | |
actionlib_msgs | |
catkin_virtualenv | |
message_generation | |
catkin | |
message_runtime | |
rospy |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
jsk_3rdparty |
Launch files
- launch/switchbot.launch
-
- token
- secret [default: '']
- respawn [default: true]
- pub_status [default: false]
- pub_status_rate [default: 0.1]
- pub_device_name [default: bot74a]