{"id":3931,"date":"2026-03-31T01:57:23","date_gmt":"2026-03-31T05:57:23","guid":{"rendered":"https:\/\/pirhome.com\/?p=3926"},"modified":"2026-03-31T01:57:23","modified_gmt":"2026-03-31T05:57:23","slug":"pir-laundry-room-reminder","status":"publish","type":"post","link":"https:\/\/www.pirhome.com\/?p=3931","title":{"rendered":"PIR Sensor for Laundry Room Reminder: Never Forget a Load"},"content":{"rendered":"<h2>Project Overview<\/h2>\n<p>This project creates a smart laundry reminder system that detects when you enter the laundry room and reminds you if there&#8217;s a load waiting to be transferred from washer to dryer or from dryer to basket. It&#8217;s perfect for busy households where laundry often gets forgotten.<\/p>\n<p><strong>Difficulty:<\/strong> Intermediate<br \/>\n<strong>Estimated time:<\/strong> 2-3 hours<br \/>\n<strong>Estimated cost:<\/strong> $25-35<\/p>\n<h2>How It Works<\/h2>\n<p>PIR sensors detect when someone enters the laundry room. The system checks the state of the washer and dryer (using vibration sensors or current sensors) and knows if there&#8217;s a completed load waiting. If laundry needs attention, it plays a voice reminder through a speaker. A display can also show the status.<\/p>\n<p>Optional features include sending a notification to your phone and tracking laundry cycles over time.<\/p>\n<h2>Materials Needed<\/h2>\n<ul>\n<li><strong>ESP32<\/strong> (1)<\/li>\n<li><strong>HC-SR501 PIR sensor<\/strong> (1)<\/li>\n<li><strong>Vibration sensors<\/strong> (SW-420) for washer and dryer (2)<\/li>\n<li><strong>DFPlayer Mini MP3 module<\/strong> (1)<\/li>\n<li><strong>MicroSD card<\/strong> (with voice reminders)<\/li>\n<li><strong>Small speaker<\/strong> (3W)<\/li>\n<li><strong>OLED display<\/strong> (128&#215;64, I2C) (optional)<\/li>\n<li><strong>LEDs<\/strong> (for status indication)<\/li>\n<li><strong>Resistors<\/strong> (220\u03a9)<\/li>\n<li><strong>Jumper wires<\/strong><\/li>\n<li><strong>Power supply<\/strong> (5V 2A)<\/li>\n<li><strong>Project enclosure<\/strong><\/li>\n<\/ul>\n<h2>Circuit Diagram<\/h2>\n<h3>Connection Table<\/h3>\n<table border=\"1\">\n<thead>\n<th>Component<\/th>\n<th>Pin<\/th>\n<th>ESP32 Pin<\/th>\n<\/thead>\n<tbody>\n<th>PIR Sensor<\/th>\n<td>OUT<\/th>\n<td>GPIO 4<\/th>\n<th>Washer Vibration Sensor<\/th>\n<td>OUT<\/th>\n<td>GPIO 5<\/th>\n<th>Dryer Vibration Sensor<\/th>\n<td>OUT<\/th>\n<td>GPIO 6<\/th>\n<th>DFPlayer Mini<\/th>\n<td>TX<\/th>\n<td>GPIO 16<\/th>\n<th>DFPlayer Mini<\/th>\n<td>RX<\/th>\n<td>GPIO 17<\/th>\n<th>OLED Display<\/th>\n<td>SDA<\/th>\n<td>GPIO 21<\/th>\n<th>OLED Display<\/th>\n<td>SCL<\/th>\n<td>GPIO 22<\/th>\n<th>Red LED (Washer status)<\/th>\n<td>Anode<\/th>\n<td>GPIO 2<\/th>\n<th>Green LED (Dryer status)<\/th>\n<td>Anode<\/th>\n<td>GPIO 15<\/th>\n<\/tbody>\n<p>\u8868<\/p>\n<h2>Arduino Code<\/h2>\n<pre><code>\/\/ Laundry Room Reminder System\n#include &lt;Wire.h&gt;\n#include &lt;Adafruit_SSD1306.h&gt;\n#include &lt;SoftwareSerial.h&gt;\n#include &lt;DFRobotDFPlayerMini.h&gt;\n\n#define SCREEN_WIDTH 128\n#define SCREEN_HEIGHT 64\nAdafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1);\n\nSoftwareSerial mySoftwareSerial(16, 17);\nDFRobotDFPlayerMini myDFPlayer;\n\nconst int pirPin = 4;\nconst int washerSensorPin = 5;\nconst int dryerSensorPin = 6;\nconst int redLedPin = 2;\nconst int greenLedPin = 15;\n\n\/\/ Laundry state variables\nbool washerRunning = false;\nbool dryerRunning = false;\nbool washerDone = false;\nbool dryerDone = false;\nunsigned long washerStopTime = 0;\nunsigned long dryerStopTime = 0;\nunsigned long lastReminderTime = 0;\nconst unsigned long reminderCooldown = 1800000; \/\/ 30 minutes between reminders\n\nvoid setup() {\n  Serial.begin(115200);\n  \n  pinMode(pirPin, INPUT);\n  pinMode(washerSensorPin, INPUT);\n  pinMode(dryerSensorPin, INPUT);\n  pinMode(redLedPin, OUTPUT);\n  pinMode(greenLedPin, OUTPUT);\n  \n  digitalWrite(redLedPin, LOW);\n  digitalWrite(greenLedPin, LOW);\n  \n  \/\/ Initialize display\n  if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {\n    Serial.println(\"Display not found\");\n  }\n  display.clearDisplay();\n  display.setTextSize(1);\n  display.setTextColor(SSD1306_WHITE);\n  \n  \/\/ Initialize DFPlayer\n  mySoftwareSerial.begin(9600);\n  if (!myDFPlayer.begin(mySoftwareSerial)) {\n    Serial.println(\"DFPlayer error\");\n  }\n  myDFPlayer.volume(25);\n  \n  displayMessage(\"Laundry Monitor\", \"Ready\");\n  Serial.println(\"Laundry Monitor Ready\");\n  delay(30000); \/\/ PIR warm-up\n}\n\nvoid displayMessage(String line1, String line2) {\n  display.clearDisplay();\n  display.setCursor(0, 0);\n  display.println(line1);\n  display.setCursor(0, 20);\n  display.println(line2);\n  display.display();\n}\n\nvoid checkVibrationSensors() {\n  \/\/ Washer detection\n  bool washerVibration = digitalRead(washerSensorPin) == HIGH;\n  if (washerVibration && !washerRunning) {\n    washerRunning = true;\n    washerDone = false;\n    Serial.println(\"Washer started\");\n    displayMessage(\"Washer\", \"Running...\");\n  }\n  if (!washerVibration && washerRunning) {\n    washerRunning = false;\n    washerStopTime = millis();\n    washerDone = true;\n    Serial.println(\"Washer finished\");\n    displayMessage(\"Washer\", \"Done!\");\n    digitalWrite(redLedPin, HIGH);\n  }\n  \n  \/\/ Dryer detection\n  bool dryerVibration = digitalRead(dryerSensorPin) == HIGH;\n  if (dryerVibration && !dryerRunning) {\n    dryerRunning = true;\n    dryerDone = false;\n    Serial.println(\"Dryer started\");\n    displayMessage(\"Dryer\", \"Running...\");\n  }\n  if (!dryerVibration && dryerRunning) {\n    dryerRunning = false;\n    dryerStopTime = millis();\n    dryerDone = true;\n    Serial.println(\"Dryer finished\");\n    displayMessage(\"Dryer\", \"Done!\");\n    digitalWrite(greenLedPin, HIGH);\n  }\n  \n  \/\/ Auto-clear after 1 hour\n  if (washerDone && (millis() - washerStopTime > 3600000)) {\n    washerDone = false;\n    digitalWrite(redLedPin, LOW);\n  }\n  if (dryerDone && (millis() - dryerStopTime > 3600000)) {\n    dryerDone = false;\n    digitalWrite(greenLedPin, LOW);\n  }\n}\n\nvoid playReminder() {\n  if (washerDone && dryerDone) {\n    myDFPlayer.play(1); \/\/ \"Both washer and dryer are done\"\n    Serial.println(\"Reminder: Both loads done\");\n    displayMessage(\"Reminder\", \"Both loads done!\");\n  } else if (washerDone) {\n    myDFPlayer.play(2); \/\/ \"Washer is done\"\n    Serial.println(\"Reminder: Washer done\");\n    displayMessage(\"Reminder\", \"Move washer load\");\n  } else if (dryerDone) {\n    myDFPlayer.play(3); \/\/ \"Dryer is done\"\n    Serial.println(\"Reminder: Dryer done\");\n    displayMessage(\"Reminder\", \"Take out clothes\");\n  }\n}\n\nvoid loop() {\n  checkVibrationSensors();\n  \n  bool motion = digitalRead(pirPin) == HIGH;\n  \n  if (motion && (washerDone || dryerDone) && \n      (millis() - lastReminderTime > reminderCooldown)) {\n    lastReminderTime = millis();\n    playReminder();\n  }\n  \n  \/\/ Update display with current status\n  if (!motion) {\n    String status1 = \"Washer: \";\n    status1 += washerRunning ? \"Running\" : (washerDone ? \"DONE!\" : \"Idle\");\n    String status2 = \"Dryer: \";\n    status2 += dryerRunning ? \"Running\" : (dryerDone ? \"DONE!\" : \"Idle\");\n    displayMessage(status1, status2);\n  }\n  \n  delay(100);\n}\n<\/code><\/pre>\n<h2>Voice Prompt Files<\/h2>\n<p>Create MP3 files on SD card (folder &#8220;01&#8221;):<\/p>\n<ul>\n<li>001.mp3: &#8220;The washer and dryer are both finished. Please attend to the laundry.&#8221;<\/li>\n<li>002.mp3: &#8220;The washing machine has finished its cycle. Please move clothes to the dryer.&#8221;<\/li>\n<li>003.mp3: &#8220;The dryer has finished. Please remove your clothes.&#8221;<\/li>\n<\/ul>\n<h2>Installation Steps<\/h2>\n<ol>\n<li><strong>Mount vibration sensors:<\/strong> Attach SW-420 sensors to washer and dryer using magnets or double-sided tape.<\/li>\n<li><strong>Position PIR sensor:<\/strong> Place at doorway of laundry room at 2m height.<\/li>\n<li><strong>Mount speaker:<\/strong> Position where reminder can be heard clearly.<\/li>\n<li><strong>Assemble electronics:<\/strong> Place ESP32 and DFPlayer in enclosure.<\/li>\n<li><strong>Test sensors:<\/strong> Run washer\/dryer cycles to verify detection.<\/li>\n<li><strong>Adjust sensitivity:<\/strong> Vibration sensors may need adjustment to avoid false triggers.<\/li>\n<\/ol>\n<h2>Project Extensions<\/h2>\n<ul>\n<li><strong>Wi-Fi notifications:<\/strong> Send push notification to phone when cycle completes.<\/li>\n<li><strong>Google Home integration:<\/strong> Announce reminders on smart speakers.<\/li>\n<li><strong>LED strip:<\/strong> Add color-changing LED strip to show status at a glance.<\/li>\n<li><strong>Usage tracking:<\/strong> Log laundry cycles to track energy usage and detergent consumption.<\/li>\n<li><strong>Remote monitoring:<\/strong> Check laundry status from anywhere via web interface.<\/li>\n<\/ul>\n<h2>Troubleshooting<\/h2>\n<ul>\n<li><strong>Vibration sensor not detecting:<\/strong> Adjust sensitivity potentiometer. Ensure sensor is in firm contact with machine.<\/li>\n<li><strong>False detections:<\/strong> Reduce sensitivity. Add debounce in code.<\/li>\n<li><strong>No voice reminders:<\/strong> Check DFPlayer wiring and SD card files.<\/li>\n<li><strong>PIR not detecting:<\/strong> Adjust sensitivity. Ensure clear view of doorway.<\/li>\n<\/ul>\n<h2>Conclusion<\/h2>\n<p>This laundry reminder system eliminates forgotten loads and makes laundry day more efficient. With automatic detection and voice reminders, you&#8217;ll never leave wet clothes in the washer again.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Project Overview This project creates a smart laundry reminder system that detects when you enter the laundry room and reminds you if there&#8217;s a load waiting to be transferred from washer to dryer or from dryer to basket. It&#8217;s perfect for busy households where laundry often gets forgotten. Difficulty: Intermediate Estimated time: 2-3 hours Estimated [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9],"tags":[],"class_list":["post-3931","post","type-post","status-publish","format-standard","hentry","category-projects"],"blocksy_meta":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\r\n<title>PIR Sensor for Laundry Room Reminder: Never Forget a Load - PIRHOME<\/title>\r\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\r\n<link rel=\"canonical\" href=\"http:\/\/www.pirhome.com\/?p=3931\" \/>\r\n<meta property=\"og:locale\" content=\"en_US\" \/>\r\n<meta property=\"og:type\" content=\"article\" \/>\r\n<meta property=\"og:title\" content=\"PIR Sensor for Laundry Room Reminder: Never Forget a Load - PIRHOME\" \/>\r\n<meta property=\"og:description\" content=\"Project Overview This project creates a smart laundry reminder system that detects when you enter the laundry room and reminds you if there&#8217;s a load waiting to be transferred from washer to dryer or from dryer to basket. It&#8217;s perfect for busy households where laundry often gets forgotten. Difficulty: Intermediate Estimated time: 2-3 hours Estimated [&hellip;]\" \/>\r\n<meta property=\"og:url\" content=\"http:\/\/www.pirhome.com\/?p=3931\" \/>\r\n<meta property=\"og:site_name\" content=\"PIRHOME\" \/>\r\n<meta property=\"article:published_time\" content=\"2026-03-31T05:57:23+00:00\" \/>\r\n<meta name=\"author\" content=\"nic@nicsky.com\" \/>\r\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\r\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"nic@nicsky.com\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\r\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"http:\\\/\\\/www.pirhome.com\\\/?p=3931#article\",\"isPartOf\":{\"@id\":\"http:\\\/\\\/www.pirhome.com\\\/?p=3931\"},\"author\":{\"name\":\"nic@nicsky.com\",\"@id\":\"http:\\\/\\\/www.pirhome.com\\\/#\\\/schema\\\/person\\\/41049b5236f9c77c9314997d070db3e3\"},\"headline\":\"PIR Sensor for Laundry Room Reminder: Never Forget a Load\",\"datePublished\":\"2026-03-31T05:57:23+00:00\",\"mainEntityOfPage\":{\"@id\":\"http:\\\/\\\/www.pirhome.com\\\/?p=3931\"},\"wordCount\":472,\"commentCount\":0,\"publisher\":{\"@id\":\"http:\\\/\\\/www.pirhome.com\\\/#organization\"},\"articleSection\":[\"Projects\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"http:\\\/\\\/www.pirhome.com\\\/?p=3931#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"http:\\\/\\\/www.pirhome.com\\\/?p=3931\",\"url\":\"http:\\\/\\\/www.pirhome.com\\\/?p=3931\",\"name\":\"PIR Sensor for Laundry Room Reminder: Never Forget a Load - PIRHOME\",\"isPartOf\":{\"@id\":\"http:\\\/\\\/www.pirhome.com\\\/#website\"},\"datePublished\":\"2026-03-31T05:57:23+00:00\",\"breadcrumb\":{\"@id\":\"http:\\\/\\\/www.pirhome.com\\\/?p=3931#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"http:\\\/\\\/www.pirhome.com\\\/?p=3931\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"http:\\\/\\\/www.pirhome.com\\\/?p=3931#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"http:\\\/\\\/www.pirhome.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"PIR Sensor for Laundry Room Reminder: Never Forget a Load\"}]},{\"@type\":\"WebSite\",\"@id\":\"http:\\\/\\\/www.pirhome.com\\\/#website\",\"url\":\"http:\\\/\\\/www.pirhome.com\\\/\",\"name\":\"PIRHOME\",\"description\":\"PIR &amp; Motion Sensor\",\"publisher\":{\"@id\":\"http:\\\/\\\/www.pirhome.com\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"http:\\\/\\\/www.pirhome.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"http:\\\/\\\/www.pirhome.com\\\/#organization\",\"name\":\"PIRHOME\",\"url\":\"http:\\\/\\\/www.pirhome.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"http:\\\/\\\/www.pirhome.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.pirhome.com\\\/wp-content\\\/uploads\\\/2026\\\/02\\\/cropped-\u5fae\u4fe1\u56fe\u7247_2026-02-19_222409_472.jpg\",\"contentUrl\":\"https:\\\/\\\/www.pirhome.com\\\/wp-content\\\/uploads\\\/2026\\\/02\\\/cropped-\u5fae\u4fe1\u56fe\u7247_2026-02-19_222409_472.jpg\",\"width\":512,\"height\":512,\"caption\":\"PIRHOME\"},\"image\":{\"@id\":\"http:\\\/\\\/www.pirhome.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"http:\\\/\\\/www.pirhome.com\\\/#\\\/schema\\\/person\\\/41049b5236f9c77c9314997d070db3e3\",\"name\":\"nic@nicsky.com\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/271d4eaab48e299e4fce771a8c43c537be3ac77a3115cc7de802a6c8b692d971?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/271d4eaab48e299e4fce771a8c43c537be3ac77a3115cc7de802a6c8b692d971?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/271d4eaab48e299e4fce771a8c43c537be3ac77a3115cc7de802a6c8b692d971?s=96&d=mm&r=g\",\"caption\":\"nic@nicsky.com\"},\"sameAs\":[\"http:\\\/\\\/www.pirhome.com\"],\"url\":\"https:\\\/\\\/www.pirhome.com\\\/?author=1\"}]}<\/script>\r\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"PIR Sensor for Laundry Room Reminder: Never Forget a Load - PIRHOME","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"http:\/\/www.pirhome.com\/?p=3931","og_locale":"en_US","og_type":"article","og_title":"PIR Sensor for Laundry Room Reminder: Never Forget a Load - PIRHOME","og_description":"Project Overview This project creates a smart laundry reminder system that detects when you enter the laundry room and reminds you if there&#8217;s a load waiting to be transferred from washer to dryer or from dryer to basket. It&#8217;s perfect for busy households where laundry often gets forgotten. Difficulty: Intermediate Estimated time: 2-3 hours Estimated [&hellip;]","og_url":"http:\/\/www.pirhome.com\/?p=3931","og_site_name":"PIRHOME","article_published_time":"2026-03-31T05:57:23+00:00","author":"nic@nicsky.com","twitter_card":"summary_large_image","twitter_misc":{"Written by":"nic@nicsky.com","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"http:\/\/www.pirhome.com\/?p=3931#article","isPartOf":{"@id":"http:\/\/www.pirhome.com\/?p=3931"},"author":{"name":"nic@nicsky.com","@id":"http:\/\/www.pirhome.com\/#\/schema\/person\/41049b5236f9c77c9314997d070db3e3"},"headline":"PIR Sensor for Laundry Room Reminder: Never Forget a Load","datePublished":"2026-03-31T05:57:23+00:00","mainEntityOfPage":{"@id":"http:\/\/www.pirhome.com\/?p=3931"},"wordCount":472,"commentCount":0,"publisher":{"@id":"http:\/\/www.pirhome.com\/#organization"},"articleSection":["Projects"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["http:\/\/www.pirhome.com\/?p=3931#respond"]}]},{"@type":"WebPage","@id":"http:\/\/www.pirhome.com\/?p=3931","url":"http:\/\/www.pirhome.com\/?p=3931","name":"PIR Sensor for Laundry Room Reminder: Never Forget a Load - PIRHOME","isPartOf":{"@id":"http:\/\/www.pirhome.com\/#website"},"datePublished":"2026-03-31T05:57:23+00:00","breadcrumb":{"@id":"http:\/\/www.pirhome.com\/?p=3931#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["http:\/\/www.pirhome.com\/?p=3931"]}]},{"@type":"BreadcrumbList","@id":"http:\/\/www.pirhome.com\/?p=3931#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"http:\/\/www.pirhome.com\/"},{"@type":"ListItem","position":2,"name":"PIR Sensor for Laundry Room Reminder: Never Forget a Load"}]},{"@type":"WebSite","@id":"http:\/\/www.pirhome.com\/#website","url":"http:\/\/www.pirhome.com\/","name":"PIRHOME","description":"PIR &amp; Motion Sensor","publisher":{"@id":"http:\/\/www.pirhome.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"http:\/\/www.pirhome.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"http:\/\/www.pirhome.com\/#organization","name":"PIRHOME","url":"http:\/\/www.pirhome.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"http:\/\/www.pirhome.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.pirhome.com\/wp-content\/uploads\/2026\/02\/cropped-\u5fae\u4fe1\u56fe\u7247_2026-02-19_222409_472.jpg","contentUrl":"https:\/\/www.pirhome.com\/wp-content\/uploads\/2026\/02\/cropped-\u5fae\u4fe1\u56fe\u7247_2026-02-19_222409_472.jpg","width":512,"height":512,"caption":"PIRHOME"},"image":{"@id":"http:\/\/www.pirhome.com\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"http:\/\/www.pirhome.com\/#\/schema\/person\/41049b5236f9c77c9314997d070db3e3","name":"nic@nicsky.com","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/271d4eaab48e299e4fce771a8c43c537be3ac77a3115cc7de802a6c8b692d971?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/271d4eaab48e299e4fce771a8c43c537be3ac77a3115cc7de802a6c8b692d971?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/271d4eaab48e299e4fce771a8c43c537be3ac77a3115cc7de802a6c8b692d971?s=96&d=mm&r=g","caption":"nic@nicsky.com"},"sameAs":["http:\/\/www.pirhome.com"],"url":"https:\/\/www.pirhome.com\/?author=1"}]}},"_links":{"self":[{"href":"https:\/\/www.pirhome.com\/index.php?rest_route=\/wp\/v2\/posts\/3931","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.pirhome.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.pirhome.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.pirhome.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.pirhome.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3931"}],"version-history":[{"count":1,"href":"https:\/\/www.pirhome.com\/index.php?rest_route=\/wp\/v2\/posts\/3931\/revisions"}],"predecessor-version":[{"id":4027,"href":"https:\/\/www.pirhome.com\/index.php?rest_route=\/wp\/v2\/posts\/3931\/revisions\/4027"}],"wp:attachment":[{"href":"https:\/\/www.pirhome.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3931"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.pirhome.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3931"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.pirhome.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3931"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}