{"id":506,"date":"2016-10-24T15:34:05","date_gmt":"2016-10-24T14:34:05","guid":{"rendered":"https:\/\/www.jjtronics.com\/wordpress\/?p=506"},"modified":"2016-11-09T14:40:04","modified_gmt":"2016-11-09T13:40:04","slug":"raspberry-pi-horloge-materiel-et-serveur-ntp","status":"publish","type":"post","link":"https:\/\/www.jjtronics.com\/wordpress\/2016\/10\/24\/raspberry-pi-horloge-materiel-et-serveur-ntp\/","title":{"rendered":"Raspberry Pi &#8211; Horloge mat\u00e9riel et serveur NTP"},"content":{"rendered":"<p>Bonjour \u00e0 tous,<\/p>\n<p>Pour un besoin tr\u00e8s particulier (donner l&rsquo;heure \u00e0 des dongles OTT dans un r\u00e9seau multicast sans acc\u00e8s \u00e0 un quelconque autre r\u00e9seau), j&rsquo;ai eut besoin d&rsquo;un serveur NTP dans mon r\u00e9seau interne.<\/p>\n<p><a href=\"https:\/\/www.jjtronics.com\/wordpress\/wp-content\/uploads\/2016\/10\/2016-10-24-15.27.06.jpg\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"507\" data-permalink=\"https:\/\/www.jjtronics.com\/wordpress\/2016\/10\/24\/raspberry-pi-horloge-materiel-et-serveur-ntp\/2016-10-24-15-27-06\/\" data-orig-file=\"https:\/\/www.jjtronics.com\/wordpress\/wp-content\/uploads\/2016\/10\/2016-10-24-15.27.06.jpg\" data-orig-size=\"2448,3264\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;2.4&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;Nexus 5&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;1477322826&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;3.97&quot;,&quot;iso&quot;:&quot;101&quot;,&quot;shutter_speed&quot;:&quot;0.007501846&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;1&quot;}\" data-image-title=\"Raspberry PI 2 RTC\" data-image-description=\"&lt;p&gt;Raspberry PI 2 RTC&lt;\/p&gt;\n\" data-image-caption=\"&lt;p&gt;Raspberry PI 2 RTC&lt;\/p&gt;\n\" data-large-file=\"https:\/\/www.jjtronics.com\/wordpress\/wp-content\/uploads\/2016\/10\/2016-10-24-15.27.06-768x1024.jpg\" class=\"alignnone size-medium wp-image-507\" src=\"https:\/\/www.jjtronics.com\/wordpress\/wp-content\/uploads\/2016\/10\/2016-10-24-15.27.06-225x300.jpg\" alt=\"2016-10-24-15-27-06\" width=\"225\" height=\"300\" srcset=\"https:\/\/www.jjtronics.com\/wordpress\/wp-content\/uploads\/2016\/10\/2016-10-24-15.27.06-225x300.jpg 225w, https:\/\/www.jjtronics.com\/wordpress\/wp-content\/uploads\/2016\/10\/2016-10-24-15.27.06-768x1024.jpg 768w\" sizes=\"auto, (max-width: 225px) 100vw, 225px\" \/><\/a>Je me suis naturellement tourn\u00e9 vers un Raspberry, malheureusement j&rsquo;avais un peu oubli\u00e9 le fait que le raspberry \u00e9tait d\u00e9pourvu de hardware clock, mais pas de soucis, j&rsquo;en avais un ou deux en rab pour mes projets Arduino.<\/p>\n<p>J&rsquo;avais donc en stock un DS3231 mais ce tuto est le meme pour le module DS1307 (suffit juste de changer le nom aux bons endroits).<\/p>\n<p>Si vous voulez directement commander le meme, voici ou vous pourrez le trouver :<\/p>\n<p><a href=\"https:\/\/www.aliexpress.com\/item\/DS3231-AT24C32-IIC-Module-Precision-Clock-Module-DS3231SN-for-Arduino-Memory-module-Free-Shipping\/32346088222.html?spm=2114.01010208.3.12.JcSQ38&amp;ws_ab_test=searchweb0_0,searchweb201602_2_10065_10068_10069_10084_10083_10017_10080_10082_10081_10060_10061_10062_10056_10055_10054_10059_10078_10079_10073_10070_421_420_10052_10053_10050_10051,searchweb201603_3&amp;btsid=bc421ef5-7fe0-4f54-8e14-d59e3774a4e0\" target=\"_blank\">Aliexpress pour 60 centimes environs (Si vous n&rsquo;etes pas press\u00e9, \u00e7a prends entre deux semaines et deux mois)<\/a><\/p>\n<p><a href=\"https:\/\/www.amazon.fr\/Fivesix-AT24C32-pr%C3%A9cision-m%C3%A9moire-dhorloge\/dp\/B012JRZ6QY\/ref=sr_1_1?ie=UTF8&amp;qid=1477316360&amp;sr=8-1&amp;keywords=DS3231+AT24C32\" target=\"_blank\">Amazon pour un peu moins de 6 euros (Mais avec la livraison en un jour ouvr\u00e9)<\/a><\/p>\n<p>&nbsp;<\/p>\n<p><strong>-Premi\u00e8re \u00e9tape, installation et param\u00e9trage du module RTC.<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p>La premi\u00e8re \u00e9tape consiste donc \u00e0 connecter le module RTC \u00e0 notre Raspberry grace aux GPIO.<\/p>\n<p>Nous allons donc connecter GND et 5v pour l&rsquo;alimentation du module et les pates SDA et SCL pour la communication i2c entre le RPI et le module RTC<\/p>\n<p>Voici ce que donne le sch\u00e9mas de c\u00e2blage \u00e0 partir d&rsquo;un Raspberry Rev 2 (Pour le plus vieux, les pins SDA et SCL diff\u00e8rent, reportez vous au sch\u00e9mas des pins GPIO de votre mod\u00e8le de RPI pour \u00eatre sur du c\u00e2blage):<\/p>\n<table style=\"height: 203px;\" width=\"339\">\n<tbody>\n<tr>\n<td style=\"width: 160px;\">RPI Pin<\/td>\n<td style=\"width: 163px;\">RTC Pin<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 160px;\">Pin 4 (5V)<\/td>\n<td style=\"width: 163px;\">VCC<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 160px;\">Pin 6 (GND)<\/td>\n<td style=\"width: 163px;\">GND<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 160px;\">Pin 3 (SDA)<\/td>\n<td style=\"width: 163px;\">SDA<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 160px;\">Pin 5 (SCL)<\/td>\n<td style=\"width: 163px;\">SCL<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Et voici le sch\u00e9mas des GPIO du Raspberry B :<\/p>\n<p><a href=\"https:\/\/www.jjtronics.com\/wordpress\/wp-content\/uploads\/2016\/10\/GPIO-Raspberry-B-.jpg\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"508\" data-permalink=\"https:\/\/www.jjtronics.com\/wordpress\/2016\/10\/24\/raspberry-pi-horloge-materiel-et-serveur-ntp\/gpio-raspberry-b\/\" data-orig-file=\"https:\/\/www.jjtronics.com\/wordpress\/wp-content\/uploads\/2016\/10\/GPIO-Raspberry-B-.jpg\" data-orig-size=\"568,414\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"GPIO Raspberry type B\" data-image-description=\"&lt;p&gt;GPIO Raspberry type B&lt;\/p&gt;\n\" data-image-caption=\"&lt;p&gt;GPIO Raspberry type B&lt;\/p&gt;\n\" data-large-file=\"https:\/\/www.jjtronics.com\/wordpress\/wp-content\/uploads\/2016\/10\/GPIO-Raspberry-B-.jpg\" class=\"alignnone size-medium wp-image-508\" src=\"https:\/\/www.jjtronics.com\/wordpress\/wp-content\/uploads\/2016\/10\/GPIO-Raspberry-B--300x219.jpg\" alt=\"gpio-raspberry-b\" width=\"300\" height=\"219\" srcset=\"https:\/\/www.jjtronics.com\/wordpress\/wp-content\/uploads\/2016\/10\/GPIO-Raspberry-B--300x219.jpg 300w, https:\/\/www.jjtronics.com\/wordpress\/wp-content\/uploads\/2016\/10\/GPIO-Raspberry-B-.jpg 568w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>Une fois le module correctement cabl\u00e9, nous allons passer au param\u00e9trage du syst\u00e8me \u00a0:<\/p>\n<p>Dans Raspbian, l&rsquo;i2c est d\u00e9sactiv\u00e9 par d\u00e9faut, nous allons donc l&rsquo;activer via un terminal :<\/p>\n<pre class=\"lang:default decode:true \">sudo raspi-config<\/pre>\n<p>Via le menu qui s&rsquo;affiche, s\u00e9lectionnez Advanced Options puis I2C.<\/p>\n<p>Choisissez Yes, votre interface i2c est maintenant activ\u00e9.<\/p>\n<p>Nous allons v\u00e9rifier maintenant que l&rsquo;ensemble communique bien, pour ce faire, il va falloir installer les packets suivants :<\/p>\n<pre class=\"lang:default decode:true \">sudo apt-get install python-smbus\r\nsudo apt-get install i2c-tools<\/pre>\n<p>Grace \u00e0 ces outils, nous allons lancer un scan i2c nous permettant de voir que notre module est bien reconnu :<\/p>\n<pre class=\"lang:default decode:true\">sudo i2cdetect -y 1\r\n<\/pre>\n<p>Vous devriez voir ceci :<\/p>\n<p><a href=\"https:\/\/www.jjtronics.com\/wordpress\/wp-content\/uploads\/2016\/10\/capture-decran-2016-10-24-16-02-27-1.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"662\" data-permalink=\"https:\/\/www.jjtronics.com\/wordpress\/2016\/10\/24\/raspberry-pi-horloge-materiel-et-serveur-ntp\/capture-decran-2016-10-24-16-02-27-3\/\" data-orig-file=\"https:\/\/www.jjtronics.com\/wordpress\/wp-content\/uploads\/2016\/10\/capture-decran-2016-10-24-16-02-27-1.png\" data-orig-size=\"384,195\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"capture-decran-2016-10-24-16-02-27\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/www.jjtronics.com\/wordpress\/wp-content\/uploads\/2016\/10\/capture-decran-2016-10-24-16-02-27-1.png\" class=\"alignnone wp-image-662 size-medium\" src=\"https:\/\/www.jjtronics.com\/wordpress\/wp-content\/uploads\/2016\/10\/capture-decran-2016-10-24-16-02-27-1-300x152.png\" width=\"300\" height=\"152\" srcset=\"https:\/\/www.jjtronics.com\/wordpress\/wp-content\/uploads\/2016\/10\/capture-decran-2016-10-24-16-02-27-1-300x152.png 300w, https:\/\/www.jjtronics.com\/wordpress\/wp-content\/uploads\/2016\/10\/capture-decran-2016-10-24-16-02-27-1.png 384w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Si vous avez un vieux Raspberry, faites \u00e0 la place :<\/p>\n<pre class=\"lang:default decode:true \">sudo i2cdetect -y 0<\/pre>\n<p>&nbsp;<\/p>\n<p>Notre module RTC est bien pr\u00e9sent \u00e0 l&rsquo;adresse 68.<\/p>\n<p>&nbsp;<\/p>\n<p>Si cela ne fonctionne pas, vous pouvez essayer de charger les modules <strong>i2c-dev<\/strong> et <strong>i2c-bcm2708<\/strong> \u00e0 la main :<\/p>\n<pre class=\"lang:default decode:true \">sudo modprobe i2c-dev\r\nsudo modprobe i2c-bcm2708<\/pre>\n<p>Si cela fonctionne, vous pourrez alors ajouter ces modules dans <strong>\/etc\/modules<\/strong> en ex\u00e9cutant la commande suivante :<\/p>\n<pre class=\"lang:default decode:true \">sudo nano \/etc\/modules<\/pre>\n<p>Et ajoutez \u00e0 la fin du fichier les deux lignes suivantes :<\/p>\n<pre class=\"lang:default decode:true\">i2c-dev\r\ni2c-bcm2708<\/pre>\n<p>Au prochain red\u00e9marrage, les modules seront automatiquement charg\u00e9s, et il ne sera pas n\u00e9cessaire de faire un modprobe.<\/p>\n<p>&nbsp;<\/p>\n<p>Nous avons maintenant une Horloge mat\u00e9riel correctement reli\u00e9 \u00e0 notre Raspberry et bien reconnu.<\/p>\n<p>Nous allons maintenant la d\u00e9clarer \u00e0 l&rsquo;OS pour pouvoir ensuite l&rsquo;utiliser :<\/p>\n<pre class=\"lang:default decode:true\">echo ds3231 0x68 | sudo tee \/sys\/class\/i2c-adapter\/i2c-1\/new_device<\/pre>\n<p>Comme je l&rsquo;ai pr\u00e9cis\u00e9 plus haut, si vous avez un module DS1307, vous devrez taper ds1307 \u00e0 la place de ds3231.<\/p>\n<p>Nous pouvons maintenant afficher l&rsquo;heure enrengistr\u00e9 dans le module RTC :<\/p>\n<pre class=\"lang:default decode:true\">sudo hwclock<\/pre>\n<p>Si c&rsquo;est la premi\u00e8re fois que vous utilisez le module, vous devriez avoir une date au 1er janvier 2000.<\/p>\n<p>Nous allons maintenant d\u00e9finir la date et l&rsquo;heure au module RTC :<\/p>\n<p>&nbsp;<\/p>\n<p>-D\u00e9finir la date et l&rsquo;heure du syst\u00e8me depuis internet et l\u2019enregistrer dans le module RTC:<\/p>\n<p>Param\u00e9trons les bons fuseaux horaires de l&rsquo;OS soit par le menu raspi-config soit par :<\/p>\n<pre class=\"lang:default decode:true \">sudo dpkg-reconfigure tzdata<\/pre>\n<p>Choisissez bien le bon continent et la bonne zone.<\/p>\n<p>Vous pouvez maintenant v\u00e9rifier la date et l\u2019heure du syst\u00e8me\u00a0en tapant dans un terminal :<\/p>\n<pre class=\"lang:default decode:true \">date<\/pre>\n<p>Si vous etes \u00e0 la bonne date\/heure, nous allons maintenant l&rsquo;\u00e9crire dans le module RTC :<\/p>\n<pre class=\"lang:default decode:true\">sudo hwclock -w<\/pre>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>-D\u00e9finir la date et l&rsquo;heure du syst\u00e8me manuellement\u00a0et l\u2019enregistrer dans le module RTC:<\/p>\n<p>Si votre Raspberry pi n\u2019a pas acc\u00e8s \u00e0 internet pour se synchroniser \u00e0 une horloge pr\u00e9cise, vous pouvez toujours utiliser la commande suivante pour d\u00e9finir une date arbitraire\u00a0(ici le 24\u00a0Octobre 2016, \u00e0 16h15:00s) :<\/p>\n<pre class=\"lang:default decode:true \">sudo date -s \"Sep\u00a024 2016 16:15:00\"<\/pre>\n<p>Une fois l&rsquo;horloge syst\u00e8me r\u00e9gl\u00e9 manuellement, nous allons l&rsquo;\u00e9crire dans le module RTC (l&rsquo;horloge mat\u00e9riel) :<\/p>\n<pre class=\"lang:default decode:true\">sudo hwclock -w<\/pre>\n<p>&nbsp;<\/p>\n<p>-Configuration du syst\u00e8me pour utiliser automatiquement le module RTC<\/p>\n<p>Nous avons donc pu d\u00e9finir la date et l\u2019heure de l&rsquo;horloge mat\u00e9riel, voyons maintenant comment configurer le RPI\u00a0pour qu\u2019il utilise ce module \u00e0 chaque d\u00e9marrage:<\/p>\n<p>Editez\u00a0le fichier \/etc\/rc.local via la commande :<\/p>\n<pre class=\"lang:default decode:true\">sudo nano \/etc\/rc.local<\/pre>\n<p>Et ajoutez les deux lignes suivantes avant la ligne exit 0 \u00a0:<\/p>\n<pre class=\"lang:default decode:true\">echo ds3231 0x68 &gt; \/sys\/class\/i2c-adapter\/i2c-1\/new_device\r\nsleep 2\r\nhwclock -s\r\n\/etc\/init.d\/ntp start<\/pre>\n<p>Nous pouvons maintenant\u00a0d\u00e9sactiver le service fake-hwclock\u00a0qui tente de reproduire le fonctionnement d\u2019une horloge temps r\u00e9el quand on en dispose pas:<\/p>\n<pre class=\"lang:default decode:true\">sudo update-rc.d fake-hwclock disable<\/pre>\n<p>Nous pouvons \u00e9galement d\u00e9sactiver le service NTP qui n&rsquo;es pas n\u00e9cessaire :<\/p>\n<pre class=\"lang:default decode:true\">sudo update-rc.d ntp disable<\/pre>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>Si par la suite on souhaite synchroniser la date et l\u2019heure du syst\u00e8me avec celle de serveurs de temp, on pourra utiliser la commande suivante :<\/p>\n<pre class=\"lang:default decode:true\">sudo ntpd -qg<\/pre>\n<p>Sans oublier d&rsquo;\u00e9crire ensuite l&rsquo;heure dans le module RTC :<\/p>\n<pre class=\"lang:default decode:true\">sudo hwclock -w\r\n<\/pre>\n<p>&nbsp;<\/p>\n<p>Nous avons maintenant un Raspberry Pi avec une Horloge mat\u00e9riel, si la pile bouton que vous avez ins\u00e9r\u00e9 dans votre module RTC fonctionne, vous pouvez d\u00e9brancher et rebrancher votre Raspberry, meme sans connexion internet il devrait rester \u00e0 l&rsquo;heure !!<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p><strong>-Seconde \u00e9tape, installation et param\u00e9trage du serveur NTP.<\/strong><\/p>\n<p>Commen\u00e7ons par installer les paquets n\u00e9cessaire :<\/p>\n<pre class=\"lang:default decode:true \">sudo apt-get install ntp ntpdate<\/pre>\n<p>On \u00e9dite ensuite le fichier \/etc\/ntp.conf:<\/p>\n<pre class=\"lang:default decode:true \">sudo nano \/etc\/ntp.conf<\/pre>\n<p>Ajoutez au serveur NTP l&rsquo;acc\u00e8s a l&rsquo;horloge\u00a0RTC:<\/p>\n<pre class=\"lang:default decode:true\">server  127.127.1.0 # local clock\r\nfudge   127.127.1.0 stratum 10<\/pre>\n<p>Commentez la ligne :<\/p>\n<pre class=\"lang:default decode:true \">restrict 127.0.0.1<\/pre>\n<p>Et ajoutez pour accepter toutes les requ\u00eates NTP : (Si vous voulez vous limiter au r\u00e9seau ex : 192.168.1.0\/24 :\u00a0restrict 192.168.1.0\u00a0mask 255.255.255.0)<\/p>\n<pre class=\"lang:default decode:true \">restrict 0.0.0.0 mask 0.0.0.0<\/pre>\n<p>OPTIONNEL : Si vous voulez diffuser l&rsquo;heure sur votre adresse r\u00e9seau de broadcast :<\/p>\n<pre class=\"lang:default decode:true \">broadcast 192.168.1.255<\/pre>\n<p>Vous pouvez maintenant red\u00e9marrer votre serveur NTP\u00a0:<\/p>\n<pre class=\"lang:default decode:true \">sudo \/etc\/init.d\/ntp restart<\/pre>\n<p>&nbsp;<\/p>\n<p>Bon courage pour la suite &#8230;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Bonjour \u00e0 tous, Pour un besoin tr\u00e8s particulier (donner l&rsquo;heure \u00e0 des dongles OTT dans un r\u00e9seau multicast sans acc\u00e8s [&#038;hellip<\/p>\n","protected":false},"author":1,"featured_media":507,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":true,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[11,2,27,44,43,122],"tags":[84,86,99,83,100,110,119,85,111],"class_list":["post-506","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-hardware","category-linux","category-projets","category-raspberry-projets","category-raspberry-arduino","category-raspbian","tag-arduino-2","tag-hardware-2","tag-modules-2","tag-multicast","tag-o","tag-os","tag-projets","tag-raspberry-2","tag-x"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/www.jjtronics.com\/wordpress\/wp-content\/uploads\/2016\/10\/2016-10-24-15.27.06.jpg","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p6YUVZ-8a","jetpack-related-posts":[],"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/www.jjtronics.com\/wordpress\/wp-json\/wp\/v2\/posts\/506","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.jjtronics.com\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.jjtronics.com\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.jjtronics.com\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.jjtronics.com\/wordpress\/wp-json\/wp\/v2\/comments?post=506"}],"version-history":[{"count":10,"href":"https:\/\/www.jjtronics.com\/wordpress\/wp-json\/wp\/v2\/posts\/506\/revisions"}],"predecessor-version":[{"id":663,"href":"https:\/\/www.jjtronics.com\/wordpress\/wp-json\/wp\/v2\/posts\/506\/revisions\/663"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.jjtronics.com\/wordpress\/wp-json\/wp\/v2\/media\/507"}],"wp:attachment":[{"href":"https:\/\/www.jjtronics.com\/wordpress\/wp-json\/wp\/v2\/media?parent=506"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.jjtronics.com\/wordpress\/wp-json\/wp\/v2\/categories?post=506"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.jjtronics.com\/wordpress\/wp-json\/wp\/v2\/tags?post=506"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}