{"id":286,"date":"2021-08-25T16:46:12","date_gmt":"2021-08-25T15:46:12","guid":{"rendered":"http:\/\/www.fabidouille.com\/?p=286"},"modified":"2021-08-25T17:07:56","modified_gmt":"2021-08-25T16:07:56","slug":"gourmand-cat-fence","status":"publish","type":"post","link":"https:\/\/www.fabidouille.com\/?p=286","title":{"rendered":"Gourmand Cat Fence"},"content":{"rendered":"\n<p>If you have a cat, you know that sometimes his instincts push it to eat green eatable-looking plants, whatever they are, and whatever the consequences may be.<\/p>\n\n\n\n<p>Spoiler: most of the time, it will require manual cleanup by the humans that happen to inhabit the same place.<\/p>\n\n\n\n<p>It happens such a cat is living at my place.<\/p>\n\n\n\n<p>And the Cat is often tempted by a plant which is not good for him.<\/p>\n\n\n\n<p>So a solution had to be thought, as having a cat rejecting his stomach contents while you are in a middle of a meeting as you are working remotly from home is often a distractor not only for you but for your colleagues.<\/p>\n\n\n\n<p>As a bonus, the device we would end up building could be used to prevent the cat from accessing other forbidden parts of the house, for example tables, kitchen hot plate..<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">End result<\/h2>\n\n\n\n<p>Let&rsquo;s break the habits of this blog, and show end results first!<\/p>\n\n\n\n<figure class=\"wp-block-video\"><video height=\"720\" style=\"aspect-ratio: 1280 \/ 720;\" width=\"1280\" controls src=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/2021-08-21-16-24-14_edit.mkv\"><\/video><\/figure>\n\n\n\n<div class=\"wp-block-cover has-background-dim\"><video class=\"wp-block-cover__video-background intrinsic-ignore\" autoplay muted loop playsinline src=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/VID_20210821_200011_uJjFhJ_edit.mkv\" data-object-fit=\"cover\"><\/video><div class=\"wp-block-cover__inner-container is-layout-flow wp-block-cover-is-layout-flow\">\n<p class=\"has-large-font-size\"><\/p>\n<\/div><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Recognize the Cat<\/h2>\n\n\n\n<p>Idea is to use tensorflow\/OpenCV on a cheap raspberry 3B+ to detect the cat.<\/p>\n\n\n\n<p>You can also follow this excellent tutorial on how to install tensorflow on the raspberry: ht<a rel=\"noreferrer noopener\" href=\"\/\/github.com\/EdjeElectronics\/TensorFlow-Object-Detection-on-the-Raspberry-Pi\" target=\"_blank\">tps:\/\/github.com\/EdjeElectronics\/TensorFlow-Object-Detection-on-the-Raspberry-Pi<\/a><\/p>\n\n\n\n<p>Some adaptations were required to get it to work, do not hesitate to contact me or post a comment here if you need help.<\/p>\n\n\n\n<p>Simplest SSDLite MobileNet (which has learnt at 320&#215;240) model was used so that it could run on the RP3B+, of course with \u00ab\u00a0real\u00a0\u00bb PC or a RP4 you could consider using one of the higher-res models available (check <a href=\"https:\/\/github.com\/tensorflow\/models\/blob\/master\/research\/object_detection\/g3doc\/tf2_detection_zoo.md\">https:\/\/github.com\/tensorflow\/models\/blob\/master\/research\/object_detection\/g3doc\/tf2_detection_zoo.md<\/a>).<\/p>\n\n\n\n<p>After some tests, it appeared this model gave many false positives for categories others than cat, in particular \u00ab\u00a0person\u00a0\u00bb detection. <\/p>\n\n\n\n<p>However, no false positives seen for the cat category, and some false negatives.<\/p>\n\n\n\n<p>So that&rsquo;s good enough to start plugging that detector to real-life world.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The link to the real world<\/h2>\n\n\n\n<p>After having thought of putting some electronics\/motor in a cheap, plastic water spray I already owned, similar to that:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/spray-bottle-plastic-watering-the-flowers-water-spray-for-salon-original-imaf8tchch79wmav.jpeg\"><img loading=\"lazy\" decoding=\"async\" width=\"283\" height=\"416\" src=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/spray-bottle-plastic-watering-the-flowers-water-spray-for-salon-original-imaf8tchch79wmav.jpeg\" alt=\"\" class=\"wp-image-293\" srcset=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/spray-bottle-plastic-watering-the-flowers-water-spray-for-salon-original-imaf8tchch79wmav.jpeg 283w, https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/spray-bottle-plastic-watering-the-flowers-water-spray-for-salon-original-imaf8tchch79wmav-204x300.jpeg 204w\" sizes=\"auto, (max-width: 283px) 100vw, 283px\" \/><\/a><\/figure>\n\n\n\n<p>I realised implementation would take time, multiple 3d-printing iterations (I have not seen any prior art in thingiverse) and my 3dprinter requiring maintainance + having little time to dedicate to that presently, I decided to go for another solution.<\/p>\n\n\n\n<p>I also considered other similar experiments seen on the web such as that one: <a href=\"https:\/\/www.iot-experiments.com\/cat-water-spray\/\">https:\/\/www.iot-experiments.com\/cat-water-spray\/<\/a> but I preferred to use an easy-to-refill solution.<\/p>\n\n\n\n<p>After searching a bit, I found this cheap electric water spray on Aliexpress (<a data-for=\"at-external-link\" href=\"https:\/\/a.aliexpress.com\/_An5jYW\">https:\/\/a.aliexpress.com\/_An5jYW<\/a>) :<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/Bouteille-de-pulv-risation-lectrique-de-900ML-arrosage-automatique-des-plantes-et-des-fleurs-outil-de.jpg_Q90.jpg_.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"800\" src=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/Bouteille-de-pulv-risation-lectrique-de-900ML-arrosage-automatique-des-plantes-et-des-fleurs-outil-de.jpg_Q90.jpg_.webp\" alt=\"\" class=\"wp-image-294\" srcset=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/Bouteille-de-pulv-risation-lectrique-de-900ML-arrosage-automatique-des-plantes-et-des-fleurs-outil-de.jpg_Q90.jpg_.webp 800w, https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/Bouteille-de-pulv-risation-lectrique-de-900ML-arrosage-automatique-des-plantes-et-des-fleurs-outil-de.jpg_Q90.jpg_-300x300.webp 300w, https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/Bouteille-de-pulv-risation-lectrique-de-900ML-arrosage-automatique-des-plantes-et-des-fleurs-outil-de.jpg_Q90.jpg_-150x150.webp 150w, https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/Bouteille-de-pulv-risation-lectrique-de-900ML-arrosage-automatique-des-plantes-et-des-fleurs-outil-de.jpg_Q90.jpg_-768x768.webp 768w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/a><\/figure>\n\n\n\n<p>Which &#8211; I imagined- would be easy to hack so that it could be controlled by the raspberry GPIOs rather than the original push button.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Step 1: Open the spray<\/h3>\n\n\n\n<p>Be careful with screws hidden below the plastic adhesive on the sides of the spray.<\/p>\n\n\n\n<p>Then just use common sense to remove parts carefully, you should end up with that:<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:100%\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/IMG_20210814_150736-2.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"449\" height=\"600\" src=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/IMG_20210814_150736-2.jpg\" alt=\"\" class=\"wp-image-297\" srcset=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/IMG_20210814_150736-2.jpg 449w, https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/IMG_20210814_150736-2-225x300.jpg 225w\" sizes=\"auto, (max-width: 449px) 100vw, 449px\" \/><\/a><\/figure>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:100%\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/IMG_20210814_150739.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"449\" height=\"600\" src=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/IMG_20210814_150739.jpg\" alt=\"\" class=\"wp-image-298\" srcset=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/IMG_20210814_150739.jpg 449w, https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/IMG_20210814_150739-225x300.jpg 225w\" sizes=\"auto, (max-width: 449px) 100vw, 449px\" \/><\/a><figcaption>Parts we will put back together once we are done<\/figcaption><\/figure>\n<\/div>\n<\/div>\n\n\n\n<p>As you can see, one can easily see the button switch located in a dedicated PCB, link to the main logic PCB with black and red wires. Both wires are shortcut when button is pressed.<\/p>\n\n\n\n<p>So we need to simulate that shortcut.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Extend wires<\/h3>\n\n\n\n<p>First, let&rsquo;s get rid of the button part,  to this end you can just unsolder the two wires. This option is preferable to cutting, as wires will be longer, which will be easier to handle what comes next.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/IMG_20210814_151459.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"449\" height=\"600\" src=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/IMG_20210814_151459.jpg\" alt=\"\" class=\"wp-image-300\" srcset=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/IMG_20210814_151459.jpg 449w, https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/IMG_20210814_151459-225x300.jpg 225w\" sizes=\"auto, (max-width: 449px) 100vw, 449px\" \/><\/a><figcaption>Button PCB has been unsoldered<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/IMG_20210814_152641.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"449\" height=\"600\" src=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/IMG_20210814_152641.jpg\" alt=\"\" class=\"wp-image-301\" srcset=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/IMG_20210814_152641.jpg 449w, https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/IMG_20210814_152641-225x300.jpg 225w\" sizes=\"auto, (max-width: 449px) 100vw, 449px\" \/><\/a><figcaption>We extend wires with new ones, and we protect conductive parts with heat-shrinkable sleeve<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/IMG_20210814_152804.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"449\" height=\"600\" src=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/IMG_20210814_152804.jpg\" alt=\"\" class=\"wp-image-302\" srcset=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/IMG_20210814_152804.jpg 449w, https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/IMG_20210814_152804-225x300.jpg 225w\" sizes=\"auto, (max-width: 449px) 100vw, 449px\" \/><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">How to simulate shortcut with the Raspberry<\/h3>\n\n\n\n<p>So several options were considered:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>using a relay<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><a href=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/5V-Relay.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/5V-Relay-1024x1024.jpg\" alt=\"\" class=\"wp-image-311\" width=\"221\" height=\"221\" srcset=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/5V-Relay-1024x1024.jpg 1024w, https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/5V-Relay-300x300.jpg 300w, https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/5V-Relay-150x150.jpg 150w, https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/5V-Relay-768x768.jpg 768w, https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/5V-Relay.jpg 1280w\" sizes=\"auto, (max-width: 221px) 100vw, 221px\" \/><\/a><\/figure>\n\n\n\n<p>+ : easy to put in place, very good isolation<\/p>\n\n\n\n<p>&#8211; : noisy when it operates, overkill for our application (very low current\/voltage), not the least expensive, takes place (it&rsquo;s big)<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>using optocouplers<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full is-resized wp-duotone-000000-ffffff-1\"><a href=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/optocouplers-opener.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/optocouplers-opener.jpg\" alt=\"\" class=\"wp-image-303\" width=\"375\" height=\"266\" srcset=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/optocouplers-opener.jpg 737w, https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/optocouplers-opener-300x213.jpg 300w\" sizes=\"auto, (max-width: 375px) 100vw, 375px\" \/><\/a><\/figure>\n\n\n\n<p>+ : very strong decoupling\/isolation, quiet<\/p>\n\n\n\n<p>&#8211; : not the least expensive, <\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>using transistor<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><a href=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/Mcig2-Transistors-usage-g-n-ral-TO-92-5000-pi-ces-S8050-NPN-0-5a-40V.webp\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/Mcig2-Transistors-usage-g-n-ral-TO-92-5000-pi-ces-S8050-NPN-0-5a-40V.webp\" alt=\"\" class=\"wp-image-313\" width=\"131\" height=\"131\" srcset=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/Mcig2-Transistors-usage-g-n-ral-TO-92-5000-pi-ces-S8050-NPN-0-5a-40V.webp 800w, https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/Mcig2-Transistors-usage-g-n-ral-TO-92-5000-pi-ces-S8050-NPN-0-5a-40V-300x300.webp 300w, https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/Mcig2-Transistors-usage-g-n-ral-TO-92-5000-pi-ces-S8050-NPN-0-5a-40V-150x150.webp 150w, https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/Mcig2-Transistors-usage-g-n-ral-TO-92-5000-pi-ces-S8050-NPN-0-5a-40V-768x768.webp 768w\" sizes=\"auto, (max-width: 131px) 100vw, 131px\" \/><\/a><\/figure>\n\n\n\n<p>&#8211; : not the best isolation, but works fine in our case as we play with small voltage (the voltage difference between the 2 pins to shortcut from the spray is &lt;5v<\/p>\n\n\n\n<p>+: very cheap, quiet, easy to put in place, small form factor<\/p>\n\n\n\n<p>So the big winner is the transistor.<\/p>\n\n\n\n<p>I happened to have NPN transistors available, S8050 specifically (<a href=\"http:\/\/media.nkcelectronics.com\/datasheet\/s8050.pdf)\">http:\/\/media.nkcelectronics.com\/datasheet\/s8050.pdf)<\/a><\/p>\n\n\n\n<p>And here is the simple circuit:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/schemeit-project.png\"><img loading=\"lazy\" decoding=\"async\" width=\"621\" height=\"558\" src=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/schemeit-project.png\" alt=\"\" class=\"wp-image-305\" srcset=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/schemeit-project.png 621w, https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/schemeit-project-300x270.png 300w\" sizes=\"auto, (max-width: 621px) 100vw, 621px\" \/><\/a><\/figure>\n\n\n\n<p>I used GPIO 26 here, just make sure you put a 1K to 20K resistor to limit the current on GPIO pin (&lt;10 mA, 3.3V TTL level voltage as a reminder). <\/p>\n\n\n\n<p>\u00ab\u00a0+\u00a0\u00bb voltage of the spray has to be connected to the transistor collector.<\/p>\n\n\n\n<p>\u00ab\u00a0&#8211;\u00a0\u00bb side of the spray has to be connected to the common ground (emitter of the transistor).<\/p>\n\n\n\n<p>GPIO has to be programmed as OUTPUT, of course, here is a minimalistic python program to test it:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>pi@raspberrypicam:~\/soft\/gpiotest\/mytest $ cat mytest.py \nimport RPi.GPIO as GPIO\nimport time\n\nport = 37\nGPIO.setmode(GPIO.BOARD)\nGPIO.setup(port, GPIO.OUT)\n\nprint(\"high\")\nGPIO.output(port, GPIO.HIGH)\ntime.sleep(2)\nprint(\"low\")\nGPIO.output(port, GPIO.LOW)\n<\/code><\/pre>\n\n\n\n<p>Then the idea is to modify python code from <a href=\"https:\/\/github.com\/EdjeElectronics\/TensorFlow-Object-Detection-on-the-Raspberry-Pi\/blob\/master\/Pet_detector.py\">https:\/\/github.com\/EdjeElectronics\/TensorFlow-Object-Detection-on-the-Raspberry-Pi\/<\/a> to add this spray activation logic!<\/p>\n\n\n\n<p>And some opencv code to add nice text in detection window:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/Capture-decran-2021-08-25-174557.png\"><img loading=\"lazy\" decoding=\"async\" width=\"689\" height=\"392\" src=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/Capture-decran-2021-08-25-174557.png\" alt=\"\" class=\"wp-image-308\" srcset=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/Capture-decran-2021-08-25-174557.png 689w, https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/Capture-decran-2021-08-25-174557-300x171.png 300w\" sizes=\"auto, (max-width: 689px) 100vw, 689px\" \/><\/a><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Et voila!<\/h2>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/noanumal-1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"225\" height=\"225\" src=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/noanumal-1.png\" alt=\"\" class=\"wp-image-317\" srcset=\"https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/noanumal-1.png 225w, https:\/\/www.fabidouille.com\/wp-content\/uploads\/2021\/08\/noanumal-1-150x150.png 150w\" sizes=\"auto, (max-width: 225px) 100vw, 225px\" \/><\/a><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>If you have a cat, you know that sometimes his instincts push it to eat green eatable-looking plants, whatever they are, and whatever the consequences may be. Spoiler: most of the time, it will require manual cleanup by the humans that happen to inhabit the same place. It happens such a cat is living at&hellip;<\/p>\n<p><a class=\"more-link\" href=\"https:\/\/www.fabidouille.com\/?p=286\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-286","post","type-post","status-publish","format-standard","hentry","category-non-classe"],"_links":{"self":[{"href":"https:\/\/www.fabidouille.com\/index.php?rest_route=\/wp\/v2\/posts\/286","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.fabidouille.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.fabidouille.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.fabidouille.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.fabidouille.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=286"}],"version-history":[{"count":13,"href":"https:\/\/www.fabidouille.com\/index.php?rest_route=\/wp\/v2\/posts\/286\/revisions"}],"predecessor-version":[{"id":320,"href":"https:\/\/www.fabidouille.com\/index.php?rest_route=\/wp\/v2\/posts\/286\/revisions\/320"}],"wp:attachment":[{"href":"https:\/\/www.fabidouille.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=286"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.fabidouille.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=286"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.fabidouille.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=286"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}