{"id":130,"date":"2026-06-11T19:31:58","date_gmt":"2026-06-11T10:31:58","guid":{"rendered":"https:\/\/fideafact.ddns.net\/?p=130"},"modified":"2026-06-11T19:46:32","modified_gmt":"2026-06-11T10:46:32","slug":"raspberry-pi-zero-w-esp32-%e3%82%b5%e3%83%bc%e3%83%9c%e5%88%b6%e5%be%a1%e3%83%97%e3%83%ad%e3%82%b8%e3%82%a7%e3%82%af%e3%83%88-%e3%81%be%e3%81%a8%e3%82%81","status":"publish","type":"post","link":"https:\/\/fideafact.ddns.net\/?p=130","title":{"rendered":"Raspberry Pi Zero W + ESP32 \u30b5\u30fc\u30dc\u5236\u5fa1\u30d7\u30ed\u30b8\u30a7\u30af\u30c8 \u307e\u3068\u3081"},"content":{"rendered":"\n<figure class=\"wp-block-video\"><video height=\"480\" style=\"aspect-ratio: 864 \/ 480;\" width=\"864\" autoplay loop muted src=\"https:\/\/fideafact.fideafact.fideafact.ddns.net\/sensor\/data\/wp-content\/uploads\/2026\/06\/v2_traced-f92dc3c7-e255-4264-9bce-f66e45a22a03.mp4\" playsinline><\/video><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\u4f7f\u7528\u30cf\u30fc\u30c9\u30a6\u30a7\u30a2<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>\u30d1\u30fc\u30c4<\/th><th>\u578b\u756a<\/th><\/tr><\/thead><tbody><tr><td>\u30de\u30a4\u30b3\u30f3<\/td><td>Raspberry Pi Zero W<\/td><\/tr><tr><td>ESP32<\/td><td>XIAO ESP32-C3<\/td><\/tr><tr><td>\u30b5\u30fc\u30dc<\/td><td>S3071 2BBMG<\/td><\/tr><tr><td>LED<\/td><td>\u6c4e\u7528LED<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u914d\u7dda<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">\u30b5\u30fc\u30dc\uff08Raspberry Pi\uff09<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>\u30b5\u30fc\u30dc<\/th><th>Raspberry Pi<\/th><\/tr><\/thead><tbody><tr><td>\u8336\uff08GND\uff09<\/td><td>Pin 6<\/td><\/tr><tr><td>\u8d64\uff08VCC\uff09<\/td><td>\u5916\u90e85V<\/td><\/tr><tr><td>\u30aa\u30ec\u30f3\u30b8\uff08\u4fe1\u53f7\uff09<\/td><td>Pin 12\uff08GPIO18\uff09<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">LED\uff08Raspberry Pi\uff09<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th><\/th><th>Raspberry Pi<\/th><\/tr><\/thead><tbody><tr><td>+\uff08330\u03a9\u7d4c\u7531\uff09<\/td><td>Pin 18\uff08GPIO24\uff09<\/td><\/tr><tr><td>&#8211;<\/td><td>GND<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u30c8\u30e9\u30d6\u30eb\u3068\u89e3\u6c7a<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>\u30c8\u30e9\u30d6\u30eb<\/th><th>\u539f\u56e0<\/th><th>\u89e3\u6c7a<\/th><\/tr><\/thead><tbody><tr><td>\u30b5\u30fc\u30dc\u304c\u5168\u304f\u52d5\u304b\u306a\u3044<\/td><td>\u30b8\u30e3\u30f3\u30d1\u30fc\u30ef\u30a4\u30e4\u30fc\u306e\u65ad\u7dda<\/td><td>\u30ef\u30a4\u30e4\u30fc\u4ea4\u63db<\/td><\/tr><tr><td>\u30b5\u30fc\u30dc\u304c\u9707\u3048\u308b<\/td><td>\u89d2\u5ea6\u306e\u7aef\u3063\u3053\u3067\u30b5\u30fc\u30dc\u304c\u9811\u5f35\u308a\u3059\u304e<\/td><td>\u30d1\u30eb\u30b9\u5e45\u306e\u7bc4\u56f2\u3092\u72ed\u3081\u308b<\/td><\/tr><tr><td>\u30ab\u30af\u30ab\u30af\u52d5\u304f<\/td><td>\u30b9\u30a4\u30fc\u30d7\u306e\u30b9\u30c6\u30c3\u30d7\u304c\u8352\u3044<\/td><td>\u30b9\u30c6\u30c3\u30d7\u30921\u5ea6\u4ee5\u4e0b\u306b\u7d30\u304b\u304f\u3059\u308b<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u30b5\u30fc\u30dc\u306e\u30d1\u30eb\u30b9\u5e45<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">S3071 2BBMG\u306e\u5b9f\u6e2c\u5024\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>\u89d2\u5ea6<\/th><th>\u30d1\u30eb\u30b9\u5e45<\/th><\/tr><\/thead><tbody><tr><td>0\u00b0<\/td><td>600\u03bcs<\/td><\/tr><tr><td>90\u00b0<\/td><td>1400\u03bcs<\/td><\/tr><tr><td>180\u00b0<\/td><td>2200\u03bcs<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<pre class=\"wp-block-code\"><code>pulse = int(600 + (angle \/ 180.0) * 1600)\n<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u4f5c\u6210\u3057\u305f\u30b9\u30af\u30ea\u30d7\u30c8<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">1. \u6c38\u9060\u306b\u30b9\u30a4\u30fc\u30d7\u3059\u308b\u30b9\u30af\u30ea\u30d7\u30c8<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>while True:\n    sweep(0, 180, step=0.5, delay=0.01)\n    sweep(180, 0, step=0.5, delay=0.01)\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">2. \u89d2\u5ea6\u5165\u529b\u30b9\u30af\u30ea\u30d7\u30c8<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u30b7\u30ea\u30a2\u30eb\u3067\u6570\u5b57\u3092\u5165\u529b\u3059\u308b\u3068\u305d\u306e\u89d2\u5ea6\u306b\u52d5\u304f\u3002<code>quit<\/code>\u3067\u7d42\u4e86\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3. ESP32\u7d4c\u7531WiFi\u5236\u5fa1\u30b9\u30af\u30ea\u30d7\u30c8\uff08esp_rasp_wifi_servo.py\uff09<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>XIAO ESP32-C3\u306e\u30b7\u30ea\u30a2\u30eb\u30e2\u30cb\u30bf\u3067\u89d2\u5ea6\u3092\u5165\u529b<\/li>\n\n\n\n<li>WiFi\u7d4c\u7531\u3067Raspberry Pi\u306b\u9001\u4fe1<\/li>\n\n\n\n<li>\u30b5\u30fc\u30dc\u304c\u6307\u5b9a\u89d2\u5ea6\u306b\u79fb\u52d5<\/li>\n\n\n\n<li>120\u5ea6\u8d85\u3048\u3067LED\u70b9\u706f<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">ESP32\u306e\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>\u9805\u76ee<\/th><th>\u5185\u5bb9<\/th><\/tr><\/thead><tbody><tr><td>\u30dc\u30fc\u30c9<\/td><td>XIAO_ESP32C3<\/td><\/tr><tr><td>USB CDC On Boot<\/td><td>Enabled<\/td><\/tr><tr><td>\u30dc\u30fc\u30c9\u30d1\u30c3\u30b1\u30fc\u30b8<\/td><td>esp32 by Espressif 2.0.17<\/td><\/tr><tr><td>\u30b7\u30ea\u30a2\u30eb<\/td><td><code>Serial<\/code>\uff08USBSerial\u306f\u4e0d\u53ef\uff09<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">GitHub\u30ea\u30dd\u30b8\u30c8\u30ea<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>https:&#47;&#47;github.com\/harleyzero\/ESP32-WIFI-RspizeroW_servo-controller\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">\u69cb\u6210<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>ESP32-WIFI-RspizeroW_servo-controller\/\n\u251c\u2500\u2500 README.md\n\u251c\u2500\u2500 raspberry_pi\/\n\u2502   \u2514\u2500\u2500 esp_rasp_wifi_servo.py\n\u2514\u2500\u2500 esp32\/\n    \u2514\u2500\u2500 esp32_servo_controller.ino\n<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Git\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\u624b\u9806<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">1. Git\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3068\u8a2d\u5b9a\uff08\u521d\u56de\u306e\u307f\uff09<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo apt install git -y\ngit config --global user.name \"harleyzero\"\ngit config --global user.email \"\u3042\u306a\u305f\u306e\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\"\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">2. Personal Access Token\u306e\u53d6\u5f97\uff08\u521d\u56de\u306e\u307f\uff09<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>https:\/\/github.com \u2192 \u53f3\u4e0a\u30a2\u30a4\u30b3\u30f3 \u2192 <code>Settings<\/code><\/li>\n\n\n\n<li>\u5de6\u30e1\u30cb\u30e5\u30fc\u4e00\u756a\u4e0b <code>Developer settings<\/code><\/li>\n\n\n\n<li><code>Personal access tokens<\/code> \u2192 <code>Tokens (classic)<\/code><\/li>\n\n\n\n<li><code>Generate new token (classic)<\/code><\/li>\n\n\n\n<li><code>repo<\/code> \u306b\u30c1\u30a7\u30c3\u30af \u2192 <code>Generate token<\/code><\/li>\n\n\n\n<li>\u8868\u793a\u3055\u308c\u305f\u30c8\u30fc\u30af\u30f3\u3092\u30b3\u30d4\u30fc\uff08<strong>\u4e8c\u5ea6\u3068\u8868\u793a\u3055\u308c\u306a\u3044<\/strong>\uff09<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">3. \u30ea\u30dd\u30b8\u30c8\u30ea\u3092\u30af\u30ed\u30fc\u30f3\uff08\u521d\u56de\u306e\u307f\uff09<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>cd ~\ngit clone https:\/\/github.com\/harleyzero\/ESP32-WIFI-RspizeroW_servo-controller.git\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">4. Token\u8a8d\u8a3c\u306e\u8a2d\u5b9a\uff08\u521d\u56de\u306e\u307f\uff09<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>git remote set-url origin https:\/\/harleyzero:\u30c8\u30fc\u30af\u30f3\u3092\u8cbc\u308a\u4ed8\u3051@github.com\/harleyzero\/ESP32-WIFI-RspizeroW_servo-controller.git\ngit config --global credential.helper store\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">5. .gitignore\u306e\u4f5c\u6210<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>nano .gitignore\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u4ee5\u4e0b\u3092\u8a18\u5165\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>__pycache__\/\n*.pyc\n.env\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">6. \u30d5\u30a1\u30a4\u30eb\u306e\u8ffd\u52a0\u3068\u30d7\u30c3\u30b7\u30e5<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>cd ~\/ESP32-WIFI-RspizeroW_servo-controller\nmkdir raspberry_pi esp32\ncp \/home\/zero\/scripts\/esp_rasp_wifi_servo.py raspberry_pi\/\ngit add .\ngit commit -m \"\u521d\u56de\u30b3\u30df\u30c3\u30c8\uff1a\u30b5\u30fc\u30dc\u5236\u5fa1\u30b9\u30af\u30ea\u30d7\u30c8\u3068README\u8ffd\u52a0\"\ngit push origin main\n<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u65e5\u5e38\u7684\u306aGit\u64cd\u4f5c<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">\u30e9\u30ba\u30d1\u30a4\u3067\u30d5\u30a1\u30a4\u30eb\u3092\u5909\u66f4\u3057\u305f\u3089<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>cd ~\/ESP32-WIFI-RspizeroW_servo-controller\ngit add .\ngit commit -m \"\u5909\u66f4\u5185\u5bb9\u306e\u30e1\u30e2\"\ngit push origin main\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Windows\u306eESP32\u30b9\u30b1\u30c3\u30c1\u3092\u66f4\u65b0\u3057\u305f\u3089<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">GitHub\u306eWebUI\u304b\u3089\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><code>esp32<\/code>\u30d5\u30a9\u30eb\u30c0\u3092\u958b\u304f<\/li>\n\n\n\n<li><code>Add file<\/code> \u2192 <code>Upload files<\/code><\/li>\n\n\n\n<li>\u30d5\u30a1\u30a4\u30eb\u3092\u30c9\u30e9\u30c3\u30b0\uff06\u30c9\u30ed\u30c3\u30d7<\/li>\n\n\n\n<li><code>Commit changes<\/code><\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u4eca\u5f8c\u306e\u30a2\u30a4\u30c7\u30a2<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u30b9\u30de\u30db\u306e\u30d6\u30e9\u30a6\u30b6\u304b\u3089WebUI\u3067\u64cd\u4f5c<\/li>\n\n\n\n<li>\u8907\u6570\u30b5\u30fc\u30dc\u306e\u5236\u5fa1<\/li>\n\n\n\n<li>\u30bb\u30f3\u30b5\u30fc\u3068\u7d44\u307f\u5408\u308f\u305b\u305f\u81ea\u52d5\u5236\u5fa1<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/github.com\/harleyzero\/ESP32-WIFI-RspizeroW_servo-controller\">https:\/\/github.com\/harleyzero\/ESP32-WIFI-RspizeroW_servo-controller<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u4f7f\u7528\u30cf\u30fc\u30c9\u30a6\u30a7\u30a2 \u30d1\u30fc\u30c4 \u578b\u756a \u30de\u30a4\u30b3\u30f3 Raspberry Pi Zero W ESP32 XIAO ESP32-C3 \u30b5\u30fc\u30dc S3071 2BBMG LED \u6c4e\u7528LED \u914d\u7dda \u30b5\u30fc\u30dc\uff08Raspberry Pi\uff09 \u30b5\u30fc [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":135,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9,11,10,66],"tags":[78,72,74,73,75,58,77,76,21,44],"class_list":["post-130","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-garage-products","category-microcontroller","category-raspberrypi","category-66","tag-3071-2bbmg","tag-esp32c3","tag-github","tag-raspberrypi-zero-w","tag-servo","tag-windows","tag-xiao-esp32-c3","tag-76","tag-21","tag-44"],"_links":{"self":[{"href":"https:\/\/fideafact.ddns.net\/index.php?rest_route=\/wp\/v2\/posts\/130","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fideafact.ddns.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fideafact.ddns.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fideafact.ddns.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fideafact.ddns.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=130"}],"version-history":[{"count":4,"href":"https:\/\/fideafact.ddns.net\/index.php?rest_route=\/wp\/v2\/posts\/130\/revisions"}],"predecessor-version":[{"id":137,"href":"https:\/\/fideafact.ddns.net\/index.php?rest_route=\/wp\/v2\/posts\/130\/revisions\/137"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/fideafact.ddns.net\/index.php?rest_route=\/wp\/v2\/media\/135"}],"wp:attachment":[{"href":"https:\/\/fideafact.ddns.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=130"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fideafact.ddns.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=130"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fideafact.ddns.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=130"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}