{"id":7160,"date":"2021-05-06T10:51:28","date_gmt":"2021-05-06T05:21:28","guid":{"rendered":"https:\/\/nuclearrambo.com\/wordpress\/?p=7160"},"modified":"2024-10-03T15:08:23","modified_gmt":"2024-10-03T09:38:23","slug":"using-the-oscillator-pins-osc-and-swd-pins-as-gpio-on-stm32","status":"publish","type":"post","link":"https:\/\/nuclearrambo.com\/wordpress\/using-the-oscillator-pins-osc-and-swd-pins-as-gpio-on-stm32\/","title":{"rendered":"Using the Oscillator pins (OSC) and SWD pins as GPIO on STM32"},"content":{"rendered":"\n<p>his post is going to be unusually short. Sometime ago I created a small electronics module where I had to use almost all of the GPIO pins on the STM32F103, except the oscillator pins. I was short of exactly two pins and I needed them badly. The design had come a long way and the option to change microcontroller for a larger one wasn&#8217;t an option. Fortunately, STM32 has the option to unlock certain GPIO pins. That is exactly what we will be looking at.<\/p>\n\n\n\n<center><p><script type=\"text\/javascript\">\n\tatOptions = {\n\t\t'key' : 'a488f095e80c8a74746e5fdca977eaea',\n\t\t'format' : 'iframe',\n\t\t'height' : 90,\n\t\t'width' : 728,\n\t\t'params' : {}\n\t};\n\tdocument.write('<scr' + 'ipt type=\"text\/javascript\" src=\"http' + (location.protocol === 'https:' ? 's' : '') + ':\/\/www.profitabledisplaynetwork.com\/a488f095e80c8a74746e5fdca977eaea\/invoke.js\"><\/scr' + 'ipt>');\n<\/script><\/p><\/center>\n\n\n\n<h2 class=\"wp-block-heading\">STM32 AFIO MAPR<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">OSC Pins<\/h3>\n\n\n\n<p>The AFIO MAPR register gives the information about the alternate functions on locked pins. For example, in my case, I needed the PD0 and the PD01 which happen to be connected to the OSC_IN and OSC_OUT functions. The PD0 being configurable the usual way through GPIO registers. On the other hand, PD01 requires a remap through AFIO_MAPR register before you go and configure the GPIO control registers.<\/p>\n\n\n\n<p>When using STM32 HAL, the remapping is extremely simple.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"c\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">AFIO_REMAP_ENABLE(AFIO_MAPR_PD01_REMAP);<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">SWD Pins<\/h3>\n\n\n\n<p>There are three pins required for serial wire debug port, also known as the <a href=\"https:\/\/research.kudelskisecurity.com\/2019\/05\/16\/swd-arms-alternative-to-jtag\/\" target=\"_blank\" rel=\"noopener\">SWD port<\/a>. You can configure all three of them as either JTAG pins or GPIO. In order to do this, the AFIO_MAPR register gives you all the options you need.<\/p>\n\n\n\n<figure class=\"wp-block-image alignnone\"><a href=\"https:\/\/nuclearrambo.com\/wordpress\/wp-content\/uploads\/2021\/05\/stm32_afio.png\"><img loading=\"lazy\" decoding=\"async\" width=\"633\" height=\"186\" src=\"https:\/\/nuclearrambo.com\/wordpress\/wp-content\/uploads\/2021\/05\/stm32_afio.png\" alt=\"stm32 afio mapr\" class=\"wp-image-7161\" srcset=\"https:\/\/nuclearrambo.com\/wordpress\/wp-content\/uploads\/2021\/05\/stm32_afio.png 633w, https:\/\/nuclearrambo.com\/wordpress\/wp-content\/uploads\/2021\/05\/stm32_afio-300x88.png 300w\" sizes=\"auto, (max-width: 633px) 100vw, 633px\" \/><\/a><figcaption class=\"wp-element-caption\">STM32 SWD AFIO configuration<\/figcaption><\/figure>\n\n\n\n<p>Using HAL, all you need to do is call this function.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"c\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">AFIO_REMAP_ENABLE(AFIO_MAPR_SWJ_CFG_DISABLE);<\/pre>\n\n\n\n<p>This little line should disable both, jtag as well as SWD. Now, with this done, you opened up 3 GPIO pins for your use.<\/p>\n\n\n\n<p>For further reading, you should refer the <a href=\"https:\/\/www.st.com\/resource\/en\/reference_manual\/cd00171190-stm32f101xx-stm32f102xx-stm32f103xx-stm32f105xx-and-stm32f107xx-advanced-arm-based-32-bit-mcus-stmicroelectronics.pdf\" target=\"_blank\" rel=\"noopener\">STM32 reference manual<\/a> page 184. Depending on the STM32 microcontroller you are using, there are loads of unlockable or rather, remappable pins available. Information for all those can be found in the reference manual. I hope you found this information useful. Don&#8217;t forget to leave me a comment.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>his post is going to be unusually short. Sometime ago I created a small electronics module where I had to use almost all of the GPIO pins on the STM32F103, except the oscillator pins.&#46;&#46;&#46;<\/p>\n","protected":false},"author":1,"featured_media":7162,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1212,1562],"tags":[1775,1686,1776],"class_list":["post-7160","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-electronics-2","category-tutorials","tag-c","tag-microcontroller","tag-stm32"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Using the Oscillator pins (OSC) and SWD pins as GPIO on STM32<\/title>\n<meta name=\"description\" content=\"STM32 has the option to unlock certain functions which allows us to get access to more GPIO pins when we are running short on them.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/nuclearrambo.com\/wordpress\/using-the-oscillator-pins-osc-and-swd-pins-as-gpio-on-stm32\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Using the Oscillator pins (OSC) and SWD pins as GPIO on STM32\" \/>\n<meta property=\"og:description\" content=\"STM32 has the option to unlock certain functions which allows us to get access to more GPIO pins when we are running short on them.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/nuclearrambo.com\/wordpress\/using-the-oscillator-pins-osc-and-swd-pins-as-gpio-on-stm32\/\" \/>\n<meta property=\"og:site_name\" content=\"Nuclearrambo\" \/>\n<meta property=\"article:published_time\" content=\"2021-05-06T05:21:28+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-10-03T09:38:23+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/nuclearrambo.com\/wordpress\/wp-content\/uploads\/2021\/05\/stm32_afio_ft.png\" \/>\n\t<meta property=\"og:image:width\" content=\"995\" \/>\n\t<meta property=\"og:image:height\" content=\"823\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"nuclearrambo\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@darkusul\" \/>\n<meta name=\"twitter:site\" content=\"@darkusul\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"nuclearrambo\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/using-the-oscillator-pins-osc-and-swd-pins-as-gpio-on-stm32\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/using-the-oscillator-pins-osc-and-swd-pins-as-gpio-on-stm32\/\"},\"author\":{\"name\":\"nuclearrambo\",\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/#\/schema\/person\/6093ae9d048d4789bd3d18c136577a0c\"},\"headline\":\"Using the Oscillator pins (OSC) and SWD pins as GPIO on STM32\",\"datePublished\":\"2021-05-06T05:21:28+00:00\",\"dateModified\":\"2024-10-03T09:38:23+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/using-the-oscillator-pins-osc-and-swd-pins-as-gpio-on-stm32\/\"},\"wordCount\":321,\"commentCount\":1,\"publisher\":{\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/#organization\"},\"keywords\":[\"c\",\"microcontroller\",\"stm32\"],\"articleSection\":[\"Electronics\",\"Tutorials\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/nuclearrambo.com\/wordpress\/using-the-oscillator-pins-osc-and-swd-pins-as-gpio-on-stm32\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/using-the-oscillator-pins-osc-and-swd-pins-as-gpio-on-stm32\/\",\"url\":\"https:\/\/nuclearrambo.com\/wordpress\/using-the-oscillator-pins-osc-and-swd-pins-as-gpio-on-stm32\/\",\"name\":\"Using the Oscillator pins (OSC) and SWD pins as GPIO on STM32\",\"isPartOf\":{\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/#website\"},\"datePublished\":\"2021-05-06T05:21:28+00:00\",\"dateModified\":\"2024-10-03T09:38:23+00:00\",\"description\":\"STM32 has the option to unlock certain functions which allows us to get access to more GPIO pins when we are running short on them.\",\"breadcrumb\":{\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/using-the-oscillator-pins-osc-and-swd-pins-as-gpio-on-stm32\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/nuclearrambo.com\/wordpress\/using-the-oscillator-pins-osc-and-swd-pins-as-gpio-on-stm32\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/using-the-oscillator-pins-osc-and-swd-pins-as-gpio-on-stm32\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/nuclearrambo.com\/wordpress\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Using the Oscillator pins (OSC) and SWD pins as GPIO on STM32\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/#website\",\"url\":\"https:\/\/nuclearrambo.com\/wordpress\/\",\"name\":\"Nuclearrambo\",\"description\":\"Information is FREE! Progress is MUST! Awakening is inevitable!\",\"publisher\":{\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/nuclearrambo.com\/wordpress\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/#organization\",\"name\":\"Nuclearrambo\",\"url\":\"https:\/\/nuclearrambo.com\/wordpress\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/nuclearrambo.com\/wordpress\/wp-content\/uploads\/2021\/01\/logo-nuclearrambo.png\",\"contentUrl\":\"https:\/\/nuclearrambo.com\/wordpress\/wp-content\/uploads\/2021\/01\/logo-nuclearrambo.png\",\"width\":1489,\"height\":1152,\"caption\":\"Nuclearrambo\"},\"image\":{\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/twitter.com\/darkusul\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/#\/schema\/person\/6093ae9d048d4789bd3d18c136577a0c\",\"name\":\"nuclearrambo\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/nuclearrambo.com\/wordpress\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/9cc8a9d2d82dd7e65e77405f7b4ccaa34450e8a268f369ac893882cc5f13a797?s=96&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/9cc8a9d2d82dd7e65e77405f7b4ccaa34450e8a268f369ac893882cc5f13a797?s=96&r=g\",\"caption\":\"nuclearrambo\"},\"description\":\"Salil is an electronics enthusiast working on various electronics systems. In his free time he writes on the blog, talks over ham radio or builds circuits. He has Yaesu FT2900R VHF transceiver, FT450D HF transceiver, TYT UV8000E and Quansheng UVK6 Handheld transceivers.\",\"sameAs\":[\"http:\/\/nuclearrambo.com\/wordpress\"],\"url\":\"https:\/\/nuclearrambo.com\/wordpress\/author\/admin\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Using the Oscillator pins (OSC) and SWD pins as GPIO on STM32","description":"STM32 has the option to unlock certain functions which allows us to get access to more GPIO pins when we are running short on them.","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":"https:\/\/nuclearrambo.com\/wordpress\/using-the-oscillator-pins-osc-and-swd-pins-as-gpio-on-stm32\/","og_locale":"en_US","og_type":"article","og_title":"Using the Oscillator pins (OSC) and SWD pins as GPIO on STM32","og_description":"STM32 has the option to unlock certain functions which allows us to get access to more GPIO pins when we are running short on them.","og_url":"https:\/\/nuclearrambo.com\/wordpress\/using-the-oscillator-pins-osc-and-swd-pins-as-gpio-on-stm32\/","og_site_name":"Nuclearrambo","article_published_time":"2021-05-06T05:21:28+00:00","article_modified_time":"2024-10-03T09:38:23+00:00","og_image":[{"width":995,"height":823,"url":"https:\/\/nuclearrambo.com\/wordpress\/wp-content\/uploads\/2021\/05\/stm32_afio_ft.png","type":"image\/png"}],"author":"nuclearrambo","twitter_card":"summary_large_image","twitter_creator":"@darkusul","twitter_site":"@darkusul","twitter_misc":{"Written by":"nuclearrambo","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/nuclearrambo.com\/wordpress\/using-the-oscillator-pins-osc-and-swd-pins-as-gpio-on-stm32\/#article","isPartOf":{"@id":"https:\/\/nuclearrambo.com\/wordpress\/using-the-oscillator-pins-osc-and-swd-pins-as-gpio-on-stm32\/"},"author":{"name":"nuclearrambo","@id":"https:\/\/nuclearrambo.com\/wordpress\/#\/schema\/person\/6093ae9d048d4789bd3d18c136577a0c"},"headline":"Using the Oscillator pins (OSC) and SWD pins as GPIO on STM32","datePublished":"2021-05-06T05:21:28+00:00","dateModified":"2024-10-03T09:38:23+00:00","mainEntityOfPage":{"@id":"https:\/\/nuclearrambo.com\/wordpress\/using-the-oscillator-pins-osc-and-swd-pins-as-gpio-on-stm32\/"},"wordCount":321,"commentCount":1,"publisher":{"@id":"https:\/\/nuclearrambo.com\/wordpress\/#organization"},"keywords":["c","microcontroller","stm32"],"articleSection":["Electronics","Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/nuclearrambo.com\/wordpress\/using-the-oscillator-pins-osc-and-swd-pins-as-gpio-on-stm32\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/nuclearrambo.com\/wordpress\/using-the-oscillator-pins-osc-and-swd-pins-as-gpio-on-stm32\/","url":"https:\/\/nuclearrambo.com\/wordpress\/using-the-oscillator-pins-osc-and-swd-pins-as-gpio-on-stm32\/","name":"Using the Oscillator pins (OSC) and SWD pins as GPIO on STM32","isPartOf":{"@id":"https:\/\/nuclearrambo.com\/wordpress\/#website"},"datePublished":"2021-05-06T05:21:28+00:00","dateModified":"2024-10-03T09:38:23+00:00","description":"STM32 has the option to unlock certain functions which allows us to get access to more GPIO pins when we are running short on them.","breadcrumb":{"@id":"https:\/\/nuclearrambo.com\/wordpress\/using-the-oscillator-pins-osc-and-swd-pins-as-gpio-on-stm32\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/nuclearrambo.com\/wordpress\/using-the-oscillator-pins-osc-and-swd-pins-as-gpio-on-stm32\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/nuclearrambo.com\/wordpress\/using-the-oscillator-pins-osc-and-swd-pins-as-gpio-on-stm32\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/nuclearrambo.com\/wordpress\/"},{"@type":"ListItem","position":2,"name":"Using the Oscillator pins (OSC) and SWD pins as GPIO on STM32"}]},{"@type":"WebSite","@id":"https:\/\/nuclearrambo.com\/wordpress\/#website","url":"https:\/\/nuclearrambo.com\/wordpress\/","name":"Nuclearrambo","description":"Information is FREE! Progress is MUST! Awakening is inevitable!","publisher":{"@id":"https:\/\/nuclearrambo.com\/wordpress\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/nuclearrambo.com\/wordpress\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/nuclearrambo.com\/wordpress\/#organization","name":"Nuclearrambo","url":"https:\/\/nuclearrambo.com\/wordpress\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/nuclearrambo.com\/wordpress\/#\/schema\/logo\/image\/","url":"https:\/\/nuclearrambo.com\/wordpress\/wp-content\/uploads\/2021\/01\/logo-nuclearrambo.png","contentUrl":"https:\/\/nuclearrambo.com\/wordpress\/wp-content\/uploads\/2021\/01\/logo-nuclearrambo.png","width":1489,"height":1152,"caption":"Nuclearrambo"},"image":{"@id":"https:\/\/nuclearrambo.com\/wordpress\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/twitter.com\/darkusul"]},{"@type":"Person","@id":"https:\/\/nuclearrambo.com\/wordpress\/#\/schema\/person\/6093ae9d048d4789bd3d18c136577a0c","name":"nuclearrambo","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/nuclearrambo.com\/wordpress\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/9cc8a9d2d82dd7e65e77405f7b4ccaa34450e8a268f369ac893882cc5f13a797?s=96&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/9cc8a9d2d82dd7e65e77405f7b4ccaa34450e8a268f369ac893882cc5f13a797?s=96&r=g","caption":"nuclearrambo"},"description":"Salil is an electronics enthusiast working on various electronics systems. In his free time he writes on the blog, talks over ham radio or builds circuits. He has Yaesu FT2900R VHF transceiver, FT450D HF transceiver, TYT UV8000E and Quansheng UVK6 Handheld transceivers.","sameAs":["http:\/\/nuclearrambo.com\/wordpress"],"url":"https:\/\/nuclearrambo.com\/wordpress\/author\/admin\/"}]}},"_links":{"self":[{"href":"https:\/\/nuclearrambo.com\/wordpress\/wp-json\/wp\/v2\/posts\/7160","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nuclearrambo.com\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nuclearrambo.com\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nuclearrambo.com\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/nuclearrambo.com\/wordpress\/wp-json\/wp\/v2\/comments?post=7160"}],"version-history":[{"count":9,"href":"https:\/\/nuclearrambo.com\/wordpress\/wp-json\/wp\/v2\/posts\/7160\/revisions"}],"predecessor-version":[{"id":8412,"href":"https:\/\/nuclearrambo.com\/wordpress\/wp-json\/wp\/v2\/posts\/7160\/revisions\/8412"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/nuclearrambo.com\/wordpress\/wp-json\/wp\/v2\/media\/7162"}],"wp:attachment":[{"href":"https:\/\/nuclearrambo.com\/wordpress\/wp-json\/wp\/v2\/media?parent=7160"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nuclearrambo.com\/wordpress\/wp-json\/wp\/v2\/categories?post=7160"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nuclearrambo.com\/wordpress\/wp-json\/wp\/v2\/tags?post=7160"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}