{"id":1495,"date":"2016-12-21T23:33:34","date_gmt":"2016-12-21T22:33:34","guid":{"rendered":"https:\/\/www.f5uii.net\/?p=1495"},"modified":"2026-01-11T09:35:47","modified_gmt":"2026-01-11T08:35:47","slug":"compilation-installation-configuration-mmdvm-stm32f4xx","status":"publish","type":"post","link":"https:\/\/www.f5uii.net\/en\/compilation-installation-configuration-mmdvm-stm32f4xx\/","title":{"rendered":"MMDVM installation on a STM32F4xx board"},"content":{"rendered":"<p>Next to my previous article devoted to <a href=\"https:\/\/www.f5uii.net\/en\/tutorial-installation-platine-board-firmware-mmdvm-arduino-due\/\">programming MMDVM firmware on an Arduino Due board<\/a>, here is the step-by-step presentation of programming MMDVM on a STM32F4xx board.<\/p>\n<div id=\"attachment_1554-2\" style=\"width: 790px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1554-2\" class=\"wp-image-1554 size-large\" src=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/MMDVM-with-STM32-1024x405.png\" alt=\"Synoptic of a repeater using the &quot;MultiMode Digital Voice Modem&quot; (MMDVM) installed on an STM32 board\" width=\"780\" height=\"308\" srcset=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/MMDVM-with-STM32-1024x405.png 1024w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/MMDVM-with-STM32-300x119.png 300w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/MMDVM-with-STM32-768x303.png 768w\" sizes=\"auto, (max-width: 780px) 100vw, 780px\" \/><p id=\"caption-attachment-1554-2\" class=\"wp-caption-text\">Synoptic of a repeater using the &#8220;MultiMode Digital Voice Modem&#8221; (MMDVM) installed on an STM32 board<\/p><\/div>\n<p>La <a href=\"https:\/\/www.st.com\/en\/evaluation-tools\/nucleo-f446re.html\" target=\"_blank\" rel=\"noopener noreferrer\">platine STM32F4xx du constructeur ST Micro electronic<\/a>\u00a0permet avantageusement de remplacer l&#8217;Arduino Due dans son application de relais num\u00e9rique multimode <strong>MMDVM<\/strong>. De plus la\u00a0<a href=\"https:\/\/www.st.com\/en\/evaluation-tools\/nucleo-f446re.html\" target=\"_blank\" rel=\"noopener noreferrer\">platine STM32F446RE Nucleo <\/a>\u00a0 par exemple est accessible \u00e0 un prix plut\u00f4t bas (environ 15\u20ac)<\/p>\n<p>The STM32F4xx board of the manufacturer ST Micro electronic advantageously allows to replace the Arduino Due in its application of multimode digital MMDVM repeater . Moreover the STM32F446RE Nucleo for example is accessible at a rather low price (about 15 \u20ac)<\/p>\n<div id=\"attachment_1555-2\" style=\"width: 970px\" class=\"wp-caption alignright\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1555-2\" class=\"size-full wp-image-1555\" src=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/xnucleo64_revc_f401re_mbed_pinout_v3_morpho.png.pagespeed.ic_.abAzZWrWCV.png\" alt=\"Borchage de la carte Nucleo STM32F4\" width=\"960\" height=\"720\" srcset=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/xnucleo64_revc_f401re_mbed_pinout_v3_morpho.png.pagespeed.ic_.abAzZWrWCV.png 960w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/xnucleo64_revc_f401re_mbed_pinout_v3_morpho.png.pagespeed.ic_.abAzZWrWCV-300x225.png 300w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/xnucleo64_revc_f401re_mbed_pinout_v3_morpho.png.pagespeed.ic_.abAzZWrWCV-768x576.png 768w\" sizes=\"auto, (max-width: 960px) 100vw, 960px\" \/><p id=\"caption-attachment-1555-2\" class=\"wp-caption-text\">Pinout of the\u00a0Nucleo STM32F4 Board<\/p><\/div>\n<h2>Download MMDVM<\/h2>\n<ol>\n<li>The firmware (software) of MMDVM must be download on\u00a0<a href=\"https:\/\/github.com\/g4klx\/MMDVM\" target=\"_blank\" rel=\"noopener noreferrer\">github<\/a>\u00a0platform.<br \/>\n<a href=\"https:\/\/github.com\/g4klx\/MMDVM\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/github.com\/g4klx\/MMDVM<\/a><\/li>\n<li>Download the ZIP file\u00a0from the top right button<br \/>\n<img loading=\"lazy\" decoding=\"async\" width=\"449\" height=\"246\" class=\"alignnone size-full wp-image-1496 \" src=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a32240e1eb.png\" alt=\"\" srcset=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a32240e1eb.png 449w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a32240e1eb-300x164.png 300w\" sizes=\"auto, (max-width: 449px) 100vw, 449px\" \/><\/li>\n<li>Unzip\u00a0<em>MMDVM-master.zip<\/em>\u00a0file in a directory.<\/li>\n<li>Rename the directory to \u00a0<em>MMDVM<\/em><\/li>\n<li>Open the configuration file &#8220;Config.h&#8221; to match to <a href=\"https:\/\/www.f5uii.net\/platine-mmdvm-pour-arduino-due\/\">my MMDVM filtering shield<\/a>:\n<ol>\n<li>Validate the 12 MHz external oscillator\n<pre class=\"lang:arduino decode:true\">#define EXTERNAL_OSC 12000000)\r\n<\/pre>\n<\/li>\n<li>Indicate the version of the MMDVM\u00a0board\n<pre class=\"lang:arduino decode:true\">#define ARDUINO_DUE_NTH<\/pre>\n<\/li>\n<li>Inform the network of the signal level measured by the receiver\n<pre class=\"lang:arduino decode:true\">#define SEND_RSSI_DATA<\/pre>\n<\/li>\n<li>Validate pin assignment to install a Nextion touch screen\n<pre class=\"lang:arduino decode:true \">#define SERIAL_REPEATER<\/pre>\n<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<pre class=\"lang:arduino decode:true\">\/*\r\n *   Copyright (C) 2015,2016 by Jonathan Naylor G4KLX\r\n *\r\n *   This program is free software; you can redistribute it and\/or modify\r\n *   it under the terms of the GNU General Public License as published by\r\n *   the Free Software Foundation; either version 2 of the License, or\r\n *   (at your option) any later version.\r\n *\r\n *   This program is distributed in the hope that it will be useful,\r\n *   but WITHOUT ANY WARRANTY; without even the implied warranty of\r\n *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r\n *   GNU General Public License for more details.\r\n *\r\n *   You should have received a copy of the GNU General Public License\r\n *   along with this program; if not, write to the Free Software\r\n *   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.\r\n *\/\r\n\r\n#if !defined(CONFIG_H)\r\n#define  CONFIG_H\r\n\r\n\/\/ Allow for the use of high quality external clock oscillators\r\n\/\/ The number is the frequency of the oscillator in Hertz.\r\n\/\/\r\n\/\/ The frequency of the TCXO must be an integer multiple of 48000.\r\n\/\/ Frequencies such as 12.0 Mhz (48000 * 250) and 14.4 Mhz (48000 * 300) are suitable.\r\n\/\/ Frequencies such as 10.0 Mhz (48000 * 208.333) or 20 Mhz (48000 * 416.666) are not suitable.\r\n\/\/\r\n\/\/ For 12 MHz\r\n#define EXTERNAL_OSC 12000000\r\n\/\/ For 12.288 MHz\r\n\/\/ #define EXTERNAL_OSC 12288000\r\n\/\/ For 14.4 MHz\r\n\/\/ #define EXTERNAL_OSC 14400000\r\n\/\/ For 19.2 MHz\r\n\/\/ #define EXTERNAL_OSC 19200000\r\n\r\n\/\/ Allow the use of the COS line to lockout the modem\r\n\/\/ #define USE_COS_AS_LOCKOUT\r\n\r\n\/\/ Use pins to output the current mode\r\n\/\/ #define ARDUINO_MODE_PINS\r\n\r\n\/\/ For the original Arduino Due pin layout\r\n\/\/ #define ARDUINO_DUE_PAPA\r\n\r\n\/\/ For the ZUM V1.0 and V1.0.1 boards pin layout\r\n\/\/ #define ARDUINO_DUE_ZUM_V10\r\n\r\n\/\/ For the SP8NTH board\r\n#define ARDUINO_DUE_NTH\r\n\r\n\/\/ To use wider C4FSK filters for DMR, System Fusion and P25 on transmit\r\n\/\/ #define WIDE_C4FSK_FILTERS_TX\r\n\/\/ To use wider C4FSK filters for DMR, System Fusion and P25 on receive\r\n\/\/ #define WIDE_C4FSK_FILTERS_RX\r\n\r\n\/\/ Pass RSSI information to the host\r\n#define SEND_RSSI_DATA\r\n\r\n\/\/ Use the modem as a serial repeater for Nextion displays\r\n#define SERIAL_REPEATER\r\n\r\n#endif\r\n\r\n<\/pre>\n<h2>Download the ST library<\/h2>\n<ol>\n<li>Download the library\u00a0<a href=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/STM32F4XX_Lib.zip\">STM32F4XX_Lib.zip<\/a><\/li>\n<li>Unzip the file<\/li>\n<li>Move all files and subdirectories into the MMDVM directory, before created<\/li>\n<\/ol>\n<p id=\"cIwVDrx\"><img loading=\"lazy\" decoding=\"async\" width=\"753\" height=\"164\" class=\"alignnone size-full wp-image-1498 \" src=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a337053e9e.png\" alt=\"\" srcset=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a337053e9e.png 753w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a337053e9e-300x65.png 300w\" sizes=\"auto, (max-width: 753px) 100vw, 753px\" \/><\/p>\n<p id=\"ZFGKSqn\"><img loading=\"lazy\" decoding=\"async\" width=\"284\" height=\"298\" class=\"alignnone size-full wp-image-1503 \" src=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a37e5524b8.png\" alt=\"\" \/><\/p>\n<h2>Download free compiler utility<\/h2>\n<ol>\n<li>Download the compressed file Binaries ZIP on\u00a0<a href=\"https:\/\/gnuwin32.sourceforge.net\/packages\/make.htm\">https:\/\/gnuwin32.sourceforge.net\/packages\/make.htm<\/a>\u00a0 (or directly here\u00a0<a href=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/make-3.81-bin.zip\">make-3-81-bin<\/a>)<\/li>\n<li>Unzip the file<\/li>\n<li>Copy the <em>make.exe<\/em>\u00a0file from <em>bin<\/em> subdirectorydu in\u00a0<em>MMDVM<\/em> directory<\/li>\n<\/ol>\n<p id=\"TYDOzgR\"><img loading=\"lazy\" decoding=\"async\" width=\"749\" height=\"227\" class=\"alignnone size-full wp-image-1500 \" src=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a35cdcf9ff.png\" alt=\"\" srcset=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a35cdcf9ff.png 749w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a35cdcf9ff-300x91.png 300w\" sizes=\"auto, (max-width: 749px) 100vw, 749px\" \/><\/p>\n<h2>Download Dependencies<\/h2>\n<ol>\n<li>Download the dependencies ZIP file on <a href=\"https:\/\/gnuwin32.sourceforge.net\/packages\/make.htm\">https:\/\/gnuwin32.sourceforge.net\/packages\/make.htm<\/a>\u00a0\u00a0(or directly here\u00a0<a href=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/make-3.81-dep.zip\">make-3-81-dep<\/a>)<\/li>\n<li>Unzip the file<\/li>\n<li>Copy the following<em>\u00a0<\/em>files from <em>bin<\/em> subdirectorydu in\u00a0<em>MMDVM<\/em> directory<\/li>\n<\/ol>\n<ul>\n<li>libintl3.dll<\/li>\n<li>libiconv2.dll<\/li>\n<\/ul>\n<p>Here is an excerpt of the files contained at this stage in the <em>MMDVM<\/em> directory.<\/p>\n<p id=\"JemAeZf\"><img loading=\"lazy\" decoding=\"async\" width=\"729\" height=\"300\" class=\"alignnone size-full wp-image-1509 \" src=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3aee8392f.png\" alt=\"\" srcset=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3aee8392f.png 729w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3aee8392f-300x123.png 300w\" sizes=\"auto, (max-width: 729px) 100vw, 729px\" \/><\/p>\n<h2>Download the integrated software suite for ARM<\/h2>\n<ol>\n<li>Download the dedicated software for compilation of ARM electronic compotents on\u00a0<a href=\"https:\/\/launchpad.net\/gcc-arm-embedded\/+download\">https:\/\/launchpad.net\/gcc-arm-embedded\/+download<\/a>\u00a0(or directly here\u00a0<a href=\"https:\/\/launchpad.net\/gcc-arm-embedded\/5.0\/5-2016-q3-update\/+download\/gcc-arm-none-eabi-5_4-2016q3-20160926-win32.exe\">gcc-arm-none-eabi-5_4-2016q3-20160926-win32.exe<\/a>)<\/li>\n<li>Install the software with the default path<br \/>\n<img loading=\"lazy\" decoding=\"async\" width=\"597\" height=\"489\" class=\"alignnone size-full wp-image-1505 \" src=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a38087e0af.png\" alt=\"\" srcset=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a38087e0af.png 597w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a38087e0af-300x246.png 300w\" sizes=\"auto, (max-width: 597px) 100vw, 597px\" \/><\/li>\n<li>Execute from the &#8220;GNU Tools for ARM Embedded Processors&#8221; t menu the &#8220;<em>GCC Command Prompt<\/em>&#8221; line<br \/>\n<img loading=\"lazy\" decoding=\"async\" width=\"365\" height=\"99\" class=\"alignnone size-full wp-image-1506 \" src=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3859dec35.png\" alt=\"\" srcset=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3859dec35.png 365w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3859dec35-300x81.png 300w\" sizes=\"auto, (max-width: 365px) 100vw, 365px\" \/><\/li>\n<\/ol>\n<h2>Start compilation<\/h2>\n<ol>\n<li>From the command window (GCC Command Prompt), go to the\u00a0MMDVM directory.\n<pre class=\"lang:ps decode:true\">cd MMDVM\r\n<\/pre>\n<\/li>\n<li>Clear all traces of already compiled\u00a0files\n<pre class=\"lang:ps decode:true\">make clean<\/pre>\n<p><img loading=\"lazy\" decoding=\"async\" width=\"843\" height=\"549\" class=\"alignnone size-full wp-image-1512 \" src=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3b95f0399.png\" alt=\"\" srcset=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3b95f0399.png 843w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3b95f0399-300x195.png 300w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3b95f0399-768x500.png 768w\" sizes=\"auto, (max-width: 843px) 100vw, 843px\" \/><\/li>\n<li>Then for\u00a0the\u00a0nucleo <strong>STM32F446<\/strong>\u00a0board, start the compilation.\n<pre class=\"lang:ps decode:true\">make nucleo<\/pre>\n<\/li>\n<li>If you have a Discovery <strong>STM32F407 board, <\/strong>\u00a0start compilation\n<pre class=\"lang:ps decode:true\">make dis<\/pre>\n<\/li>\n<\/ol>\n<div id=\"attachment_1511-2\" style=\"width: 853px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1511-2\" class=\"wp-image-1511 size-full\" src=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3b4c55fa0.png\" width=\"843\" height=\"929\" srcset=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3b4c55fa0.png 843w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3b4c55fa0-272x300.png 272w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3b4c55fa0-768x846.png 768w\" sizes=\"auto, (max-width: 843px) 100vw, 843px\" \/><p id=\"caption-attachment-1511-2\" class=\"wp-caption-text\">Compilation of MMDVM for STM32F446<\/p><\/div>\n<p>The <em>outp.hex<\/em> and <em>outp.bin<\/em> files are available in the <em>bin<\/em> subdirectory and will now be loaded on the STM32F4xx.<img loading=\"lazy\" decoding=\"async\" width=\"843\" height=\"549\" class=\"alignnone size-full wp-image-1513 \" style=\"font-size: 1.5rem;\" src=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3d077551c.png\" alt=\"\" srcset=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3d077551c.png 843w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3d077551c-300x195.png 300w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3d077551c-768x500.png 768w\" sizes=\"auto, (max-width: 843px) 100vw, 843px\" \/><\/p>\n<h2>Download and program the STM32F4\u00a0board<\/h2>\n<ol>\n<li>Download the programing software provided by the manufacturer ST Micro Electronics &#8220;STM32 ST-LINK Utility&#8221; \u00a0(On the websiote of\u00a0<a href=\"https:\/\/www.st.com\/en\/embedded-software\/stsw-link004.html\" target=\"_blank\" rel=\"noopener noreferrer\">ST Micro Electronics<\/a>\u00a0You must submit your email address in order to receive the download link, or download it directly here <a href=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/en.stsw-link004.zip\">en-stsw-link004.zip<\/a>)<\/li>\n<li>Unzip<\/li>\n<li>Start intsllation of \u00a0STM32 ST-LINK Utility<\/li>\n<li>Connect your board via USB cable to your PC<br \/>\n<img loading=\"lazy\" decoding=\"async\" width=\"682\" height=\"481\" class=\"alignnone size-full wp-image-1515 \" src=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3e63d1b18.png\" alt=\"\" srcset=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3e63d1b18.png 682w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3e63d1b18-300x212.png 300w\" sizes=\"auto, (max-width: 682px) 100vw, 682px\" \/><\/li>\n<li>The default installation destination is fine<br \/>\n<img loading=\"lazy\" decoding=\"async\" width=\"682\" height=\"481\" class=\"alignnone size-full wp-image-1516 \" src=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3e73c20d5.png\" alt=\"\" srcset=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3e73c20d5.png 682w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3e73c20d5-300x212.png 300w\" sizes=\"auto, (max-width: 682px) 100vw, 682px\" \/><\/li>\n<li>The USB driver will also be installed, after a first click on Next<img loading=\"lazy\" decoding=\"async\" width=\"680\" height=\"475\" class=\"alignnone size-full wp-image-1517 \" src=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3e8e27f4e.png\" alt=\"\" srcset=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3e8e27f4e.png 680w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3e8e27f4e-300x210.png 300w\" sizes=\"auto, (max-width: 680px) 100vw, 680px\" \/><\/li>\n<li>Validate the installation of the USB drivers of the STM32 board by clicking the Install button (two times)<img loading=\"lazy\" decoding=\"async\" width=\"808\" height=\"300\" class=\"alignnone size-full wp-image-1518 \" src=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3eac1d93e.png\" alt=\"\" srcset=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3eac1d93e.png 808w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3eac1d93e-300x111.png 300w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3eac1d93e-768x285.png 768w\" sizes=\"auto, (max-width: 808px) 100vw, 808px\" \/><img loading=\"lazy\" decoding=\"async\" width=\"808\" height=\"300\" class=\"alignnone size-full wp-image-1519 \" src=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3eba74961.png\" alt=\"\" srcset=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3eba74961.png 808w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3eba74961-300x111.png 300w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3eba74961-768x285.png 768w\" sizes=\"auto, (max-width: 808px) 100vw, 808px\" \/><img loading=\"lazy\" decoding=\"async\" width=\"680\" height=\"475\" class=\"alignnone size-full wp-image-1521 \" src=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3edda91af.png\" alt=\"\" srcset=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3edda91af.png 680w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3edda91af-300x210.png 300w\" sizes=\"auto, (max-width: 680px) 100vw, 680px\" \/><img loading=\"lazy\" decoding=\"async\" width=\"682\" height=\"481\" class=\"alignnone size-full wp-image-1522 \" src=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3ef124a8c.png\" alt=\"\" srcset=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3ef124a8c.png 682w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3ef124a8c-300x212.png 300w\" sizes=\"auto, (max-width: 682px) 100vw, 682px\" \/><\/li>\n<li>Launch the STM32 ST-Link software available in the start menu<br \/>\n<img loading=\"lazy\" decoding=\"async\" width=\"518\" height=\"151\" class=\"alignnone size-full wp-image-1523 \" src=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3f10503aa.png\" alt=\"\" srcset=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3f10503aa.png 518w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3f10503aa-300x87.png 300w\" sizes=\"auto, (max-width: 518px) 100vw, 518px\" \/><\/li>\n<li>Ouvrir le fichier compil\u00e9 <em>outp.hex<\/em> (ou bien <em>outp.bin<\/em>) se trouvant dans le sous-r\u00e9pertoire <em>bin\\<\/em><img loading=\"lazy\" decoding=\"async\" width=\"966\" height=\"742\" class=\"alignnone size-full wp-image-1525 \" src=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3f4da6c78.png\" alt=\"\" srcset=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3f4da6c78.png 966w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3f4da6c78-300x230.png 300w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585a3f4da6c78-768x590.png 768w\" sizes=\"auto, (max-width: 966px) 100vw, 966px\" \/><img loading=\"lazy\" decoding=\"async\" width=\"451\" height=\"89\" class=\"alignnone size-full wp-image-1549 \" src=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585ae5324d6ea.png\" alt=\"\" srcset=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585ae5324d6ea.png 451w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585ae5324d6ea-300x59.png 300w\" sizes=\"auto, (max-width: 451px) 100vw, 451px\" \/><\/li>\n<li>Connect the STM32F4xx board to one of your USB sockets.<\/li>\n<li>Start loading (programming) the board via the <em>Target<\/em> menu then <em>Program &amp; Verify<\/em> (or by keyboard shortcut CTRL + P)<img loading=\"lazy\" decoding=\"async\" width=\"961\" height=\"742\" class=\"alignnone size-full wp-image-1550 \" src=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585ae5f5c0953.png\" alt=\"\" srcset=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585ae5f5c0953.png 961w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585ae5f5c0953-300x232.png 300w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585ae5f5c0953-768x593.png 768w\" sizes=\"auto, (max-width: 961px) 100vw, 961px\" \/>The following window opens.<\/li>\n<li>Click the Start button to start programming the STM32F4xx<br \/>\n<img loading=\"lazy\" decoding=\"async\" width=\"627\" height=\"399\" class=\"alignnone size-full wp-image-1551 \" src=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585ae6835b353.png\" alt=\"\" srcset=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585ae6835b353.png 627w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/img_585ae6835b353-300x191.png 300w\" sizes=\"auto, (max-width: 627px) 100vw, 627px\" \/><br \/>\nThe console displays the correct execution &#8220;<em>Verification&#8230;OK<\/em>&#8220;<\/li>\n<\/ol>\n<pre class=\"lang:default highlight:0 decode:true\">21:35:54 : [outp.hex] opened successfully.\r\n21:35:54 : [outp.hex] checksum : 0x00406CE1 \r\n21:36:02 : ST-LINK SN : 0667FF535752877167095321\r\n21:36:02 : ST-LINK Firmware version : V2J27M15\r\n21:36:02 : Connected via SWD.\r\n21:36:02 : SWD Frequency = 4,0 MHz.\r\n21:36:02 : Connection mode : Normal.\r\n21:36:02 : Debug in Low Power mode enabled.\r\n21:36:02 : Device ID:0x421 \r\n21:36:02 : Device flash Size : 512KBytes\r\n21:36:02 : Device family :STM32F446xx\r\n21:36:06 : Memory programmed in 1s and 810ms.\r\n21:36:06 : Verification...OK\r\n21:36:06 : Programmed memory Checksum: 0x00406CE1\r\n\r\n<\/pre>\n<h2>The MMDVM filter pinout<\/h2>\n<p>In the table below, you will find the pinout to follow according to the board. My <a href=\"https:\/\/www.f5uii.net\/platine-mmdvm-pour-arduino-due\/\">previous MMDVM shield for Arduino<\/a> uses the NTH definition.<br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"alignright wp-image-1479\" src=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/MMDVM-Board-3-1.jpg\" alt=\"Platine MMDVM mont\u00e9e avec composants discrets\" width=\"160\" height=\"107\" \/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-1561 aligncenter\" src=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/Connection-MMDVM-Arduino-STM32-Discovery-Nucleo-1024x520.png\" alt=\"connection-mmdvm-arduino-stm32-discovery-nucleo\" width=\"780\" height=\"396\" srcset=\"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/Connection-MMDVM-Arduino-STM32-Discovery-Nucleo-1024x520.png 1024w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/Connection-MMDVM-Arduino-STM32-Discovery-Nucleo-300x152.png 300w, https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/Connection-MMDVM-Arduino-STM32-Discovery-Nucleo-768x390.png 768w\" sizes=\"auto, (max-width: 780px) 100vw, 780px\" \/><\/p>","protected":false},"excerpt":{"rendered":"<p>Next to my previous article devoted to programming MMDVM firmware on an Arduino Due board, here is the step-by-step presentation of programming MMDVM on a STM32F4xx board. <a class=\"more-link\" href=\"https:\/\/www.f5uii.net\/en\/compilation-installation-configuration-mmdvm-stm32f4xx\/\">Lire plus &#8230;<\/a><\/p>\n","protected":false},"author":1,"featured_media":1553,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[24],"tags":[25,29,31],"class_list":["post-1495","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-mmdvm","tag-mmdvm","tag-shield","tag-stm32"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"Ce tutorial vous explique \u00e9tape par \u00e9tape comment r\u00e9aliser la programmation du firmware MMDVM sur une platine STMicroElectronics STM32F4xx.This tutorial explains step-by-step how to realize the programmation of the MMDVM firmware on a STMicroElectronics STM32F4xx board.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"F5UII\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.f5uii.net\/en\/compilation-installation-configuration-mmdvm-stm32f4xx\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"F5UII \u2013 French Hamradio Station - Presentation of the station F5UII, FY\/F5UII, and MMDVM, DMR, SvxLink, QO100 ressources\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"MMDVM installation on a STM32F4xx board - F5UII \u2013 French Hamradio Station\" \/>\n\t\t<meta property=\"og:description\" content=\"Ce tutorial vous explique \u00e9tape par \u00e9tape comment r\u00e9aliser la programmation du firmware MMDVM sur une platine STMicroElectronics STM32F4xx.This tutorial explains step-by-step how to realize the programmation of the MMDVM firmware on a STMicroElectronics STM32F4xx board.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.f5uii.net\/en\/compilation-installation-configuration-mmdvm-stm32f4xx\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2016-12-21T22:33:34+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-01-11T08:35:47+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:title\" content=\"MMDVM installation on a STM32F4xx board - F5UII \u2013 French Hamradio Station\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Ce tutorial vous explique \u00e9tape par \u00e9tape comment r\u00e9aliser la programmation du firmware MMDVM sur une platine STMicroElectronics STM32F4xx.This tutorial explains step-by-step how to realize the programmation of the MMDVM firmware on a STMicroElectronics STM32F4xx board.\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/compilation-installation-configuration-mmdvm-stm32f4xx\\\/#blogposting\",\"name\":\"MMDVM installation on a STM32F4xx board - F5UII \\u2013 French Hamradio Station\",\"headline\":\"MMDVM installation on a STM32F4xx board\",\"author\":{\"@id\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/author\\\/admin\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/#organization\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/www.f5uii.net\\\/wp-content\\\/uploads\\\/2016\\\/12\\\/Card-STM32F446RE-for-MMDVM.jpg\",\"width\":3264,\"height\":2448},\"datePublished\":\"2016-12-21T23:33:34+01:00\",\"dateModified\":\"2026-01-11T09:35:47+01:00\",\"inLanguage\":\"en-US\",\"commentCount\":41,\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/compilation-installation-configuration-mmdvm-stm32f4xx\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/compilation-installation-configuration-mmdvm-stm32f4xx\\\/#webpage\"},\"articleSection\":\"MMDVM, mmdvm, shield, STM32\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/compilation-installation-configuration-mmdvm-stm32f4xx\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/category\\\/mmdvm\\\/#listItem\",\"name\":\"MMDVM\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/category\\\/mmdvm\\\/#listItem\",\"position\":2,\"name\":\"MMDVM\",\"item\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/category\\\/mmdvm\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/compilation-installation-configuration-mmdvm-stm32f4xx\\\/#listItem\",\"name\":\"MMDVM installation on a STM32F4xx board\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/compilation-installation-configuration-mmdvm-stm32f4xx\\\/#listItem\",\"position\":3,\"name\":\"MMDVM installation on a STM32F4xx board\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/category\\\/mmdvm\\\/#listItem\",\"name\":\"MMDVM\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/#organization\",\"name\":\"F5UII \\u2013 French Hamradio Station\",\"description\":\"Presentation of the station F5UII, FY\\\/F5UII, and MMDVM, DMR, SvxLink, QO100 ressources\",\"url\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/author\\\/admin\\\/#author\",\"url\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/author\\\/admin\\\/\",\"name\":\"F5UII\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/compilation-installation-configuration-mmdvm-stm32f4xx\\\/#webpage\",\"url\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/compilation-installation-configuration-mmdvm-stm32f4xx\\\/\",\"name\":\"MMDVM installation on a STM32F4xx board - F5UII \\u2013 French Hamradio Station\",\"description\":\"Ce tutorial vous explique \\u00e9tape par \\u00e9tape comment r\\u00e9aliser la programmation du firmware MMDVM sur une platine STMicroElectronics STM32F4xx.This tutorial explains step-by-step how to realize the programmation of the MMDVM firmware on a STMicroElectronics STM32F4xx board.\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/compilation-installation-configuration-mmdvm-stm32f4xx\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/author\\\/admin\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/author\\\/admin\\\/#author\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/www.f5uii.net\\\/wp-content\\\/uploads\\\/2016\\\/12\\\/Card-STM32F446RE-for-MMDVM.jpg\",\"@id\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/compilation-installation-configuration-mmdvm-stm32f4xx\\\/#mainImage\",\"width\":3264,\"height\":2448},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/compilation-installation-configuration-mmdvm-stm32f4xx\\\/#mainImage\"},\"datePublished\":\"2016-12-21T23:33:34+01:00\",\"dateModified\":\"2026-01-11T09:35:47+01:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/\",\"name\":\"F5UII \\u2013 French Hamradio Station\",\"description\":\"Presentation of the station F5UII, FY\\\/F5UII, and MMDVM, DMR, SvxLink, QO100 ressources\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.f5uii.net\\\/en\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"MMDVM installation on a STM32F4xx board - F5UII \u2013 French Hamradio Station","description":"Ce tutorial vous explique \u00e9tape par \u00e9tape comment r\u00e9aliser la programmation du firmware MMDVM sur une platine STMicroElectronics STM32F4xx.This tutorial explains step-by-step how to realize the programmation of the MMDVM firmware on a STMicroElectronics STM32F4xx board.","canonical_url":"https:\/\/www.f5uii.net\/en\/compilation-installation-configuration-mmdvm-stm32f4xx\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/www.f5uii.net\/en\/compilation-installation-configuration-mmdvm-stm32f4xx\/#blogposting","name":"MMDVM installation on a STM32F4xx board - F5UII \u2013 French Hamradio Station","headline":"MMDVM installation on a STM32F4xx board","author":{"@id":"https:\/\/www.f5uii.net\/en\/author\/admin\/#author"},"publisher":{"@id":"https:\/\/www.f5uii.net\/en\/#organization"},"image":{"@type":"ImageObject","url":"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/Card-STM32F446RE-for-MMDVM.jpg","width":3264,"height":2448},"datePublished":"2016-12-21T23:33:34+01:00","dateModified":"2026-01-11T09:35:47+01:00","inLanguage":"en-US","commentCount":41,"mainEntityOfPage":{"@id":"https:\/\/www.f5uii.net\/en\/compilation-installation-configuration-mmdvm-stm32f4xx\/#webpage"},"isPartOf":{"@id":"https:\/\/www.f5uii.net\/en\/compilation-installation-configuration-mmdvm-stm32f4xx\/#webpage"},"articleSection":"MMDVM, mmdvm, shield, STM32"},{"@type":"BreadcrumbList","@id":"https:\/\/www.f5uii.net\/en\/compilation-installation-configuration-mmdvm-stm32f4xx\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/www.f5uii.net\/en\/#listItem","position":1,"name":"Home","item":"https:\/\/www.f5uii.net\/en\/","nextItem":{"@type":"ListItem","@id":"https:\/\/www.f5uii.net\/en\/category\/mmdvm\/#listItem","name":"MMDVM"}},{"@type":"ListItem","@id":"https:\/\/www.f5uii.net\/en\/category\/mmdvm\/#listItem","position":2,"name":"MMDVM","item":"https:\/\/www.f5uii.net\/en\/category\/mmdvm\/","nextItem":{"@type":"ListItem","@id":"https:\/\/www.f5uii.net\/en\/compilation-installation-configuration-mmdvm-stm32f4xx\/#listItem","name":"MMDVM installation on a STM32F4xx board"},"previousItem":{"@type":"ListItem","@id":"https:\/\/www.f5uii.net\/en\/#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/www.f5uii.net\/en\/compilation-installation-configuration-mmdvm-stm32f4xx\/#listItem","position":3,"name":"MMDVM installation on a STM32F4xx board","previousItem":{"@type":"ListItem","@id":"https:\/\/www.f5uii.net\/en\/category\/mmdvm\/#listItem","name":"MMDVM"}}]},{"@type":"Organization","@id":"https:\/\/www.f5uii.net\/en\/#organization","name":"F5UII \u2013 French Hamradio Station","description":"Presentation of the station F5UII, FY\/F5UII, and MMDVM, DMR, SvxLink, QO100 ressources","url":"https:\/\/www.f5uii.net\/en\/"},{"@type":"Person","@id":"https:\/\/www.f5uii.net\/en\/author\/admin\/#author","url":"https:\/\/www.f5uii.net\/en\/author\/admin\/","name":"F5UII"},{"@type":"WebPage","@id":"https:\/\/www.f5uii.net\/en\/compilation-installation-configuration-mmdvm-stm32f4xx\/#webpage","url":"https:\/\/www.f5uii.net\/en\/compilation-installation-configuration-mmdvm-stm32f4xx\/","name":"MMDVM installation on a STM32F4xx board - F5UII \u2013 French Hamradio Station","description":"Ce tutorial vous explique \u00e9tape par \u00e9tape comment r\u00e9aliser la programmation du firmware MMDVM sur une platine STMicroElectronics STM32F4xx.This tutorial explains step-by-step how to realize the programmation of the MMDVM firmware on a STMicroElectronics STM32F4xx board.","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/www.f5uii.net\/en\/#website"},"breadcrumb":{"@id":"https:\/\/www.f5uii.net\/en\/compilation-installation-configuration-mmdvm-stm32f4xx\/#breadcrumblist"},"author":{"@id":"https:\/\/www.f5uii.net\/en\/author\/admin\/#author"},"creator":{"@id":"https:\/\/www.f5uii.net\/en\/author\/admin\/#author"},"image":{"@type":"ImageObject","url":"https:\/\/www.f5uii.net\/wp-content\/uploads\/2016\/12\/Card-STM32F446RE-for-MMDVM.jpg","@id":"https:\/\/www.f5uii.net\/en\/compilation-installation-configuration-mmdvm-stm32f4xx\/#mainImage","width":3264,"height":2448},"primaryImageOfPage":{"@id":"https:\/\/www.f5uii.net\/en\/compilation-installation-configuration-mmdvm-stm32f4xx\/#mainImage"},"datePublished":"2016-12-21T23:33:34+01:00","dateModified":"2026-01-11T09:35:47+01:00"},{"@type":"WebSite","@id":"https:\/\/www.f5uii.net\/en\/#website","url":"https:\/\/www.f5uii.net\/en\/","name":"F5UII \u2013 French Hamradio Station","description":"Presentation of the station F5UII, FY\/F5UII, and MMDVM, DMR, SvxLink, QO100 ressources","inLanguage":"en-US","publisher":{"@id":"https:\/\/www.f5uii.net\/en\/#organization"}}]},"og:locale":"en_US","og:site_name":"F5UII \u2013 French Hamradio Station - Presentation of the station F5UII, FY\/F5UII, and MMDVM, DMR, SvxLink, QO100 ressources","og:type":"article","og:title":"MMDVM installation on a STM32F4xx board - F5UII \u2013 French Hamradio Station","og:description":"Ce tutorial vous explique \u00e9tape par \u00e9tape comment r\u00e9aliser la programmation du firmware MMDVM sur une platine STMicroElectronics STM32F4xx.This tutorial explains step-by-step how to realize the programmation of the MMDVM firmware on a STMicroElectronics STM32F4xx board.","og:url":"https:\/\/www.f5uii.net\/en\/compilation-installation-configuration-mmdvm-stm32f4xx\/","article:published_time":"2016-12-21T22:33:34+00:00","article:modified_time":"2026-01-11T08:35:47+00:00","twitter:card":"summary_large_image","twitter:title":"MMDVM installation on a STM32F4xx board - F5UII \u2013 French Hamradio Station","twitter:description":"Ce tutorial vous explique \u00e9tape par \u00e9tape comment r\u00e9aliser la programmation du firmware MMDVM sur une platine STMicroElectronics STM32F4xx.This tutorial explains step-by-step how to realize the programmation of the MMDVM firmware on a STMicroElectronics STM32F4xx board."},"aioseo_meta_data":{"post_id":"1495","title":"","description":"Ce tutorial vous explique \u00e9tape par \u00e9tape comment r\u00e9aliser la programmation du firmware MMDVM sur une platine STMicroElectronics STM32F4xx.This tutorial explains step-by-step how to realize the programmation of the MMDVM firmware on a STMicroElectronics STM32F4xx board.","keywords":null,"keyphrases":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"BlogPosting","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"limit_modified_date":false,"created":"2023-03-13 11:44:24","updated":"2026-10-30 22:14:46","focus_keyword":null,"additional_keywords":null,"truseo_locale":null,"primary_term":null,"ai":null,"breadcrumb_settings":null,"seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.f5uii.net\/en\/\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.f5uii.net\/en\/category\/mmdvm\/\" title=\"MMDVM\">MMDVM<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tMMDVM installation on a STM32F4xx board\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/www.f5uii.net\/en\/"},{"label":"MMDVM","link":"https:\/\/www.f5uii.net\/en\/category\/mmdvm\/"},{"label":"MMDVM installation on a STM32F4xx board","link":"https:\/\/www.f5uii.net\/en\/compilation-installation-configuration-mmdvm-stm32f4xx\/"}],"_links":{"self":[{"href":"https:\/\/www.f5uii.net\/en\/wp-json\/wp\/v2\/posts\/1495","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.f5uii.net\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.f5uii.net\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.f5uii.net\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.f5uii.net\/en\/wp-json\/wp\/v2\/comments?post=1495"}],"version-history":[{"count":25,"href":"https:\/\/www.f5uii.net\/en\/wp-json\/wp\/v2\/posts\/1495\/revisions"}],"predecessor-version":[{"id":4509,"href":"https:\/\/www.f5uii.net\/en\/wp-json\/wp\/v2\/posts\/1495\/revisions\/4509"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.f5uii.net\/en\/wp-json\/wp\/v2\/media\/1553"}],"wp:attachment":[{"href":"https:\/\/www.f5uii.net\/en\/wp-json\/wp\/v2\/media?parent=1495"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.f5uii.net\/en\/wp-json\/wp\/v2\/categories?post=1495"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.f5uii.net\/en\/wp-json\/wp\/v2\/tags?post=1495"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}