{"id":34,"date":"2021-01-29T15:34:13","date_gmt":"2021-01-29T15:34:13","guid":{"rendered":"http:\/\/www.skynext.tech\/?p=34"},"modified":"2023-01-13T11:30:58","modified_gmt":"2023-01-13T11:30:58","slug":"an-xr-2206-based-vco-analog-synthesizer","status":"publish","type":"post","link":"https:\/\/www.skynext.tech\/index.php\/2021\/01\/29\/an-xr-2206-based-vco-analog-synthesizer\/","title":{"rendered":"The Synth1 project"},"content":{"rendered":"\n<p>For the MCU code, please visit : <a href=\"http:\/\/www.github.com\/rodv92\/synth1\">http:\/\/www.github.com\/rodv92\/synth1<\/a><\/p>\n\n\n\n<p>For the Circuit \/ PCB design (work in progress) please visit :<a href=\"http:\/\/www.easyeda.com\/rodv92\/synth1\">http:\/\/www.easyeda.com\/rodv92\/synth1<\/a><\/p>\n\n\n\n<p><\/p>\n\n\n\n<div class=\"wp-block-docxpresso-cut-paste-plugin\"><html xmlns:mml=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\">\n<style>\n.docxpressoPlugin {\n\tfont-size: 83.35%;\n}\n\n.h5p_layout {\n    box-sizing: content-box !important;\n}\n\n.h5p_layout *{\n    float: none;\n    text-align: initial;\n\tbox-sizing: border-box;\n}\n\/*to make sure that floating elements are always inside the document bounds*\/\n.h5p_layout:after {\n    content: \" \";\n    display: block;\n    height: 0;\n    clear: both;\n    visibility: hidden;\n}\n\/* a default layout for documents without maste styles *\/\n.h5p_default_layout {\n    margin-top: 3.6rem;\n    margin-left: 8.50464rem;\n    margin-bottom: 3.6rem;\n    margin-right: 8.50464rem;\n    writing-mode: lr-tb;\n}\n\/*hack for IE *\/\nwbr:after { content: \"\\00200B\"; }\n\n\/*hack to get some extra top margin for anchors if needed*\/\n.h5p_layout span[id^=\"_Toc\"]{\n    padding-top: 10px;\n    margin-top: -10px;\n}\n\n\/* Remove unwanted numbering styles *\/\n.h5p_layout .removeNumbering:before{\n    content: initial !important;\n    display: none;\n    all: initial !important;\n}\n\n\/* give zero default top and bottom paddings for paragraphs*\/\n.h5p_layout p {\n    color: #000000;\n    line-height: 1;\n    margin-top: 0;\n    margin-bottom: 0;\n}\n.h5p_layout span {\n    color: #000000;\n    font-weight: normal;\n}\n.h5p_layout span.dropcap {\n    color: inherit;\n    font-family: inherit !important;\n}\n.h5p_layout h1, .h5p_layout h2, .h5p_layout h3, .h5p_layout h4, .h5p_layout h5, .h5p_layout h6 {\n    margin-top: 0;\n    margin-bottom: 0;    \n\tfont-family: inherit;\n    font-weight: 500;\n    line-height: 1;\n    color: inherit;\n}\n\/* give zero default top and bottom paddings for paragraphs in tables*\/\n.h5p_layout table p {\n    margin-top: 0;\n    margin-bottom: 0;\n}\n\n.h5p_layout ul, .h5p_layout ol {\n\tlist-style-type: none;\n    margin-top: 0;\n    margin-bottom: 0.5em;\n    padding-left: 0;\n}\n\n.h5p_layout ul li, .h5p_layout ol li {\n    list-style-type: none;\n    margin-top: 0;\n    margin-bottom: 0.5em;\n    \n}\n.h5p_layout li p {\n    margin-top: 0;\n    margin-bottom: 0;\n}\n.h5p_layout table {\n    border: none;\n}\n.h5p_layout td {\n    vertical-align: top;\n    border: none;\n}\n.h5p_layout th {\n    vertical-align: top;\n    border: none;\n}\n.h5p_layout div {\n    margin-bottom: 10pt;\n}\n\n.h5p_layout img {\n    margin: 0;\n    padding: 0;\n}\n\n.h5p_layout ul ul {\n    margin-top: 0;\n    margin-bottom: 0;\n}\n\n.h5p_layout li {\n    margin-top: 0;\n    margin-bottom: 0;\n    list-style-type: none !important;\n}\n\n.h5p_layout ul, .h5p_layout ol {\n    list-style-type: none !important;\n}\n\n.h5p_layout td[data-sorting] p:before, .h5p_layout th[data-sorting] p:before {\n    content: ' ';\n    padding-right: 16px;\n    background: url(data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAALAQMAAACTYuVlAAAAA3NCSVQICAjb4U\/gAAAABlBMVEUjLTD\/\/\/\/tm\/tRAAAACXBIWXMAAAsSAAALEgHS3X78AAAAFnRFWHRDcmVhdGlvbiBUaW1lADAyLzEwLzE2RFpLjQAAACB0RVh0U29mdHdhcmUATWFjcm9tZWRpYSBGaXJld29ya3MgTVi7kSokAAAAI0lEQVR4nGP4\/4Dh9wOGjw8YHjxgOJDA8B9MPgCLAMX\/PwAANZUStiyS6NsAAAAASUVORK5CYII=);\n    background-position: left center;\n    background-repeat: no-repeat;\n}\n\n.sortDecorator {\n    border-bottom: 3px solid #b70000 !important;\n}\n\n\/* This is a spacial class designed to remove unwanted bullets when a li has\nul as its first child*\/\n.h5p_layout .removeBullet:before {\n    content: none !important;\n}\n\n\/*responsive tables*\/\n.h5p_layout div.dxoResponsiveTable{\n    margin: 0 !important;\n    padding: 0 !important;\n    overflow-x: auto !important;\n\toverflow-y: hidden;\n}\n\n\/* chart tooltips *\/\n.c3-tooltip-container td.name {\n    white-space: nowrap;\n}\n\n\/* External services*\/\n.h5p_layout iframe {\n    resize: vertical;\n    border: 1px solid #fff;\n}\n\n.h5p_layout div.youtube {\n    position:relative;\n    padding-bottom:56.25%;\n    height:0;\n    overflow:hidden;\n    background-color: transparent;\n}\n\n.h5p_layout div.youtube iframe {\n    resize: none;\n    position:absolute;\n    top:0;\n    left:0;\n    width:100%;\n    height:100%;\n}\n\n\n div#h5p_69d045d31a2eb p.P1 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P1 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P2 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P2 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P3 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P3 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P4 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P4 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P5 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P5 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P6 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P6 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P7 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P7 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P8 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P8 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P9 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P9 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P10 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P10 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P11 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P11 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P12 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P12 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P13 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P13 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P14 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P14 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P15 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P15 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P16 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P16 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P17 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P17 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P18 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P18 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P19 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P19 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P20 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P20 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P21 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P21 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P22 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P22 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P23 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P23 span {language: en;country: US;font-weight: bold;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P24 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P24 span {language: en;country: US;font-weight: bold;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P25 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P25 span {language: en;country: US;font-weight: bold;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P26 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P26 span {language: en;country: US;font-weight: bold;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P27 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P27 span {language: en;country: US;font-weight: bold;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P28 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P28 span {language: en;country: US;font-weight: bold;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P29 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P29 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P30 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P30 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P31 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P31 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P32 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P32 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P33 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P33 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P34 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P34 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P35 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P35 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P36 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P36 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P37 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P37 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P38 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P38 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P39 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P39 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P40 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P40 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P41 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P41 span {language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P42 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P42 span {language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P43 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P43 span {language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P44 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P44 span {language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P45 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P45 span {language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P46 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P46 span {language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P47 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P47 span {language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P48 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P48 span {language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P49 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P49 span {language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P50 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P50 span {language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P51 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P51 span {language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P52 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P52 span {language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P53 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P53 span {language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P54 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P54 span {language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P55 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P55 span {language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P56 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P56 span {language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P57 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P57 span {language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P58 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P58 span {language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P59 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P59 span {language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P60 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P60 span {language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P61 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P61 span {language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P62 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P62 span {language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P63 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P63 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P64 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P64 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P65 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P65 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P66 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P66 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P67 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P67 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P68 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P68 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P69 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P69 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P70 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P70 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P71 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P71 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P72 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P72 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P73 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P73 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P74 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P74 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P75 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P75 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P76 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P76 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P77 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P77 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P78 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P78 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P79 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P79 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P80 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P80 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P81 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P81 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P82 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P82 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P83 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P83 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P84 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P84 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P85 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P85 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P86 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P86 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P87 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P87 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P88 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P88 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P89 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P89 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P90 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P90 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P91 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P91 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P92 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P92 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P93 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P93 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P94 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P94 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P95 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P95 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P96 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P96 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P97 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P97 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P98 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P98 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P99 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P99 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P100 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P100 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P101 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P101 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P102 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P102 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P103 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P103 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P104 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P104 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P105 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P105 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P106 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P106 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P107 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P107 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P108 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P108 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P109 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P109 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P110 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P110 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P111 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P111 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P112 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P112 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P113 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P113 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P114 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P114 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P115 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P115 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P116 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P116 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P117 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P117 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P118 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P118 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P119 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P119 span {font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P120 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P120 span {font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P121 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P121 span {font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P122 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P122 span {font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P123 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P123 span {font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P124 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P124 span {font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P125 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P125 span {font-family: Liberation Serif;language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P126 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P126 span {font-family: Liberation Serif;language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P127 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P127 span {font-family: Liberation Serif;language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P128 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P128 span {font-family: Liberation Serif;language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P129 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P129 span {font-family: Liberation Serif;language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P130 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P130 span {font-family: Liberation Serif;language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P131 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P131 span {font-family: Liberation Serif;language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P132 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P132 span {font-family: Liberation Serif;language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P133 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P133 span {font-family: Liberation Serif;language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P134 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P134 span {font-family: Liberation Serif;language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P135 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P135 span {font-family: Liberation Serif;language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P136 {font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P136 span {font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P137 {margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;text-align: center !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P137 span {font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 28pt;font-weight: bold;language: en;country: US;}\n div#h5p_69d045d31a2eb p.P138 {margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.106cm !important;margin-bottom: 0.212cm !important;text-align: center !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P138 span {font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 18pt;language: en;country: US;}\n div#h5p_69d045d31a2eb p.P139 {margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.106cm !important;margin-bottom: 0.212cm !important;text-align: center !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P139 span {font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 18pt;language: en;country: US;}\n div#h5p_69d045d31a2eb p.P140 {margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.106cm !important;margin-bottom: 0.212cm !important;text-align: center !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P140 span {font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 18pt;language: en;country: US;}\n div#h5p_69d045d31a2eb p.P141 {margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.106cm !important;margin-bottom: 0.212cm !important;text-align: center !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P141 span {font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 18pt;language: en;country: US;}\n div#h5p_69d045d31a2eb p.P142 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P142 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P143 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P143 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P144 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P144 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P145 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P145 span {language: en;country: US;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P146 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P146 span {language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P147 {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P147 span {language: en;country: US;font-weight: normal;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P148 {margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P148 span {font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 130%;font-weight: bold;language: en;country: US;}\n div#h5p_69d045d31a2eb p.P149 {margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P149 span {font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 130%;font-weight: bold;language: en;country: US;}\n div#h5p_69d045d31a2eb p.P150 {margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P150 span {font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 130%;font-weight: bold;language: en;country: US;}\n div#h5p_69d045d31a2eb p.P151 {margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P151 span {font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 130%;font-weight: bold;language: en;country: US;}\n div#h5p_69d045d31a2eb p.P152 {margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P152 span {font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 130%;font-weight: bold;language: en;country: US;}\n div#h5p_69d045d31a2eb p.P153 {margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.P153 span {font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 130%;font-weight: bold;language: en;country: US;}\n div#h5p_69d045d31a2eb span.T1 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T2 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T3 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T4 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T5 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T6 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T7 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T8 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T9 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T10 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T11 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T12 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T13 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T14 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T15 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T16 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T17 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T18 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T19 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T20 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T21 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T22 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T23 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T24 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T25 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T26 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T27 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T28 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T29 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T30 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T31 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T32 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T33 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T34 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T35 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T36 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T37 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T38 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T39 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T40 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T41 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T42 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T43 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T44 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T45 {font-family: Liberation Serif !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T46 {font-family: Liberation Serif !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T47 {font-family: Liberation Serif !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T48 {font-family: Liberation Serif !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T49 {font-family: Liberation Serif !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T50 {font-family: Liberation Serif !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T51 {font-family: Liberation Serif !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T52 {font-family: Liberation Serif !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T53 {font-family: Liberation Serif !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T54 {font-family: Liberation Serif !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T55 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T56 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T57 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T58 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T59 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T60 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T61 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T62 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T63 {font-family: Liberation Serif !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T64 {font-family: Liberation Serif !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T65 {font-family: Liberation Serif !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T66 {font-family: Liberation Serif !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T67 {font-family: Liberation Serif !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T68 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T69 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T70 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T71 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T72 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T73 {language: en !important;country: US !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T74 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T75 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T76 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T77 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T78 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T79 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T80 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T81 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T82 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T83 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T84 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T85 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T86 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T87 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T88 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T89 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T90 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T91 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T92 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T93 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T94 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T95 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T96 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T97 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T98 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T99 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T100 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T101 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T102 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T103 {font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T104 {font-family: Liberation Serif !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb span.T105 {font-size: 12pt;}\n div#h5p_69d045d31a2eb div.fr1 {float: none; display: block;margin-left: auto; margin-right: auto;float: none; display: block;margin-left: auto; margin-right: auto;float: none; display: block;margin-left: auto; margin-right: auto;font-size: 12pt;}\n div#h5p_69d045d31a2eb div.fr2 {margin-left: 0.201cm !important;margin-right: 0.201cm !important;float: left;font-size: 12pt;}\n div#h5p_69d045d31a2eb div.fr3 {margin-left: 0.201cm !important;margin-right: 0.201cm !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.Standard {font-size: 12pt;}\n div#h5p_69d045d31a2eb p.Heading {margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.Heading span {font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;}\n div#h5p_69d045d31a2eb p.Text_20_body {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.List {margin-top: 0cm !important;margin-bottom: 0.247cm !important;line-height: 1.15 !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.List span {font-size: 12pt;}\n div#h5p_69d045d31a2eb p.Caption {margin-top: 0.212cm !important;margin-bottom: 0.212cm !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.Caption span {font-size: 12pt;font-style: italic;}\n div#h5p_69d045d31a2eb p.Index {font-size: 12pt;}\n div#h5p_69d045d31a2eb p.Index span {font-size: 12pt;}\n div#h5p_69d045d31a2eb p.Title {margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;text-align: center !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.Title span {font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 28pt;font-weight: bold;}\n div#h5p_69d045d31a2eb p.Subtitle {margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.106cm !important;margin-bottom: 0.212cm !important;text-align: center !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.Subtitle span {font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 18pt;}\n div#h5p_69d045d31a2eb p.Heading_20_1 {margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb p.Heading_20_1 span {font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 130%;font-weight: bold;}\n div#h5p_69d045d31a2eb div.Graphics {float: none; display: block;margin-left: auto; margin-right: auto;float: none; display: block;margin-left: auto; margin-right: auto;font-size: 12pt;}\n div#h5p_69d045d31a2eb div.OLE {float: none; display: block;margin-left: auto; margin-right: auto;float: none; display: block;margin-left: auto; margin-right: auto;font-size: 12pt;}\n div#h5p_69d045d31a2eb div.Formula {margin-left: 0.201cm !important;margin-right: 0.201cm !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb div {font-size: 12pt;}\n div#h5p_69d045d31a2eb h1.P149 {margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb h1.P149 span {font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 130%;font-weight: bold;font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 130%;font-weight: bold;language: en;country: US;}\n div#h5p_69d045d31a2eb h1.Heading_20_1 {margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb h1.Heading_20_1 span {font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 130%;font-weight: bold;}\n div#h5p_69d045d31a2eb h1.Heading {margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb h1.Heading span {font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;}\n div#h5p_69d045d31a2eb h1.Standard {font-size: 12pt;}\n div#h5p_69d045d31a2eb h1.Standard span {font-size: 12pt;}\n div#h5p_69d045d31a2eb h1.P151 {margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb h1.P151 span {font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 130%;font-weight: bold;font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 130%;font-weight: bold;language: en;country: US;}\n div#h5p_69d045d31a2eb h1.P148 {margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb h1.P148 span {font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 130%;font-weight: bold;font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 130%;font-weight: bold;language: en;country: US;}\n div#h5p_69d045d31a2eb h1.P152 {margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb h1.P152 span {font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 130%;font-weight: bold;font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 130%;font-weight: bold;language: en;country: US;}\n div#h5p_69d045d31a2eb h1.P153 {margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb h1.P153 span {font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 130%;font-weight: bold;font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 130%;font-weight: bold;language: en;country: US;}\n div#h5p_69d045d31a2eb h1.P150 {margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;keep-with-next: always !important;margin-top: 0.423cm !important;margin-bottom: 0.212cm !important;font-size: 12pt;}\n div#h5p_69d045d31a2eb h1.P150 span {font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 130%;font-weight: bold;font-family: Liberation Sans;font-family: 'Liberation Sans';font-size: 14pt;font-size: 130%;font-weight: bold;language: en;country: US;}\n div#h5p_69d045d31a2eb p {orphans: 2;widows: 2;hyphenation-ladder-count: no-limit;writing-mode: lr-tb;font-size: 12pt;}\n div#h5p_69d045d31a2eb p span {font-family: Liberation Serif;font-size: 12pt;language: en;country: US;hyphenate: false;hyphenation-remain-char-count: 2;hyphenation-push-char-count: 2;}\n div#h5p_69d045d31a2eb table {border-collapse: collapse;font-size: 12pt;}\n div#h5p_69d045d31a2eb table tr {keep-together: auto;font-size: 12pt;}\n\n<\/style>\n<style type=\"text\/css\">\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-chtml {display: inline-block; line-height: 0; text-indent: 0; text-align: left; text-transform: none; font-style: normal; font-weight: normal; font-size: 100%; font-size-adjust: none; letter-spacing: normal; word-wrap: normal; word-spacing: normal; white-space: nowrap; float: none; direction: ltr; max-width: none; max-height: none; min-width: 0; min-height: 0; border: 0; margin: 0; padding: 1px 0}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-display {display: block; text-align: center; margin: 0em 0; padding: 0}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-chtml[tabindex]:focus, body :focus .mjx-chtml[tabindex] {display: inline-table}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-math {display: inline-block; border-collapse: separate; border-spacing: 0}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-math * {display: inline-block; text-align: left}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-numerator {display: block; text-align: center}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-denominator {display: block; text-align: center}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-stacked {height: 0; position: relative}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-stacked > * {position: absolute}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-bevelled > * {display: inline-block}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-stack {display: inline-block}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-op {display: block}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-under {display: table-cell}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-over {display: block}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-over > * {padding-left: 0px!important; padding-right: 0px!important}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-under > * {padding-left: 0px!important; padding-right: 0px!important}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-stack > .mjx-sup {display: block}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-stack > .mjx-sub {display: block}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-prestack > .mjx-presup {display: block}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-prestack > .mjx-presub {display: block}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-delim-h > .mjx-char {display: inline-block}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-surd {vertical-align: top}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-mphantom * {visibility: hidden}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-merror {background-color: #FFFF88; color: #CC0000; border: 1px solid #CC0000; padding: 2px 3px; font-style: normal; font-size: 90%}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-annotation-xml {line-height: normal}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-menclose > svg {fill: none; stroke: currentColor}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-mtr {display: table-row}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-mlabeledtr {display: table-row}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-mtd {display: table-cell; text-align: center}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-label {display: block}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-box {display: inline-block}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-block {display: block}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-span {display: span}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-char {display: block; white-space: pre}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-itable {display: inline-table}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-row {display: table-row}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-cell {display: table-cell}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-table {display: table; width: 100%}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-line {display: block; height: 0}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-strut {width: 0; padding-top: 1em}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-vsize {width: 0}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-space1 {margin-left: .167em}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-space2 {margin-left: .222em}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-space3 {margin-left: .278em}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-chartest {display: block; visibility: hidden; position: absolute; top: 0; line-height: normal; font-size: 500%}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-chartest .mjx-char {display: inline}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-chartest .mjx-box {padding-top: 1000px}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-processing {visibility: hidden; position: fixed; width: 0; height: 0; overflow: hidden}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-processed {display: none}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-test {display: block; font-style: normal; font-weight: normal; font-size: 100%; font-size-adjust: none; text-indent: 0; text-transform: none; letter-spacing: normal; word-spacing: normal; overflow: hidden; height: 1px}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-ex-box-test {position: absolute; width: 1px; height: 60ex}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula #MathJax_CHTML_Tooltip {background-color: InfoBackground; color: InfoText; border: 1px solid black; box-shadow: 2px 2px 5px #AAAAAA; -webkit-box-shadow: 2px 2px 5px #AAAAAA; -moz-box-shadow: 2px 2px 5px #AAAAAA; -khtml-box-shadow: 2px 2px 5px #AAAAAA; padding: 3px 4px; z-index: 401; position: absolute; left: 0; top: 0; width: auto; height: auto; display: none}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-chtml .mjx-noError {line-height: 1.2; vertical-align: ; font-size: 90%; text-align: left; color: black; padding: 1px 3px; border: 1px solid}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-TeX-unknown-R {font-family: STIXGeneral,'Cambria Math','Arial Unicode MS',serif; font-style: normal; font-weight: normal}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-TeX-unknown-I {font-family: STIXGeneral,'Cambria Math','Arial Unicode MS',serif; font-style: italic; font-weight: normal}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-TeX-unknown-B {font-family: STIXGeneral,'Cambria Math','Arial Unicode MS',serif; font-style: normal; font-weight: bold}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-TeX-unknown-BI {font-family: STIXGeneral,'Cambria Math','Arial Unicode MS',serif; font-style: italic; font-weight: bold}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-TeX-ams-R {font-family: MJXc-TeX-ams-R,MJXc-TeX-ams-Rw}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-TeX-cal-B {font-family: MJXc-TeX-cal-B,MJXc-TeX-cal-Bx,MJXc-TeX-cal-Bw}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-TeX-frak-R {font-family: MJXc-TeX-frak-R,MJXc-TeX-frak-Rw}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-TeX-frak-B {font-family: MJXc-TeX-frak-B,MJXc-TeX-frak-Bx,MJXc-TeX-frak-Bw}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-TeX-math-BI {font-family: MJXc-TeX-math-BI,MJXc-TeX-math-BIx,MJXc-TeX-math-BIw}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-TeX-sans-R {font-family: MJXc-TeX-sans-R,MJXc-TeX-sans-Rw}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-TeX-sans-B {font-family: MJXc-TeX-sans-B,MJXc-TeX-sans-Bx,MJXc-TeX-sans-Bw}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-TeX-sans-I {font-family: MJXc-TeX-sans-I,MJXc-TeX-sans-Ix,MJXc-TeX-sans-Iw}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-TeX-script-R {font-family: MJXc-TeX-script-R,MJXc-TeX-script-Rw}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-TeX-type-R {font-family: MJXc-TeX-type-R,MJXc-TeX-type-Rw}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-TeX-cal-R {font-family: MJXc-TeX-cal-R,MJXc-TeX-cal-Rw}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-TeX-main-B {font-family: MJXc-TeX-main-B,MJXc-TeX-main-Bx,MJXc-TeX-main-Bw}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-TeX-main-I {font-family: MJXc-TeX-main-I,MJXc-TeX-main-Ix,MJXc-TeX-main-Iw}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-TeX-main-R {font-family: MJXc-TeX-main-R,MJXc-TeX-main-Rw}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-TeX-math-I {font-family: MJXc-TeX-math-I,MJXc-TeX-math-Ix,MJXc-TeX-math-Iw}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-TeX-size1-R {font-family: MJXc-TeX-size1-R,MJXc-TeX-size1-Rw}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-TeX-size2-R {font-family: MJXc-TeX-size2-R,MJXc-TeX-size2-Rw}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-TeX-size3-R {font-family: MJXc-TeX-size3-R,MJXc-TeX-size3-Rw}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .MJXc-TeX-size4-R {font-family: MJXc-TeX-size4-R,MJXc-TeX-size4-Rw}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-sub span.mjx-char {font-size: 70.7%}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-sup span.mjx-char {font-size: 70.7%}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-under span.mjx-char {font-size: 70.7%}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-over span.mjx-char {font-size: 70.7%}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-root span.mjx-char {font-size: 70.7%;}\n div#h5p_69d045d31a2eb  section.h5p_page p span.doxMathFormula .mjx-root {font-size: auto !important ; width: 0.5em !important; vertical-align: 1.2em !important}\n<\/style><script src=\"https:\/\/cdn.mathjax.org\/mathjax\/2.6-latest\/MathJax.js?config=MML_CHTML\" type=\"text\/javascript\"> <\/script>\n<div id=\"h5p_69d045d31a2eb\"><section id=\"section_0\" class=\"h5p_layout h5p_page h5p_page_Mpm1\"><div class=\"Mpm1\"><p class=\"P137\"><span>A Digitally Controlled XR-2206 based VCO<\/span><\/p><\/div><\/section><section xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" id=\"section_1\" class=\"h5p_layout h5p_page\"><div style=\"border: none; padding: 2cm\"><p class=\"P2\">&nbsp;<\/p><p class=\"P139\"><span>Abstract<\/span><\/p><p class=\"P2\">&nbsp;<\/p><p class=\"P2\"><span>The g<\/span><span class=\"T1\">oal of this project is to implement a XR-2206 based VCO with digital control of frequency, amplitude, wave shape, and duty cycle, maximizing the use of on-chip capabilities of the XR-2206.<\/span><\/p><p class=\"P3\"><span>This project may be used as a standalone function generator. A MCU is used for tuning of the aforementioned parameters. Hence, This is why it is said to be \u00ab\u00a0digitally controlled\u00a0\u00bb compared to manual potentiometer control.<\/span><\/p><p class=\"P4\"><span>The incentive for using an analog XR-2206 VCO instead of a simpler DDS (Direct Digital Synthesis) IC is to offer a solution that exploits the unique feature of the XR-2206, as waveform symmetry adjustment and THD control.<\/span><\/p><p class=\"P4\"><span>In some situations, injecting an analog signal with its <\/span><span class=\"T68\">artifacts<\/span><span> may be of interest.<\/span><\/p><p class=\"P4\"><span>As an analog oscillator, the XR-2206 is free from digital aliasing <\/span><span class=\"T68\">artifacts.<\/span><\/p><p class=\"P4\"><span>It is also a good choice for musical <\/span><span class=\"T68\">instrumentation<\/span><span> <\/span><span class=\"T29\">as an analog synthesizer<\/span><span>, as it\u2019s unique features <\/span><span class=\"T29\">(symmetry adjust \/ THD control \/ wave-shaping from sine-wave to triangle wave) give warmth to the generated sound, which is sought after in the analog synth market.<\/span><\/p><p class=\"P118\"><span>It also allow a faster development than a full-on discrete analog oscillator <\/span><span class=\"T102\">design.<\/span><\/p><p class=\"P4\">&nbsp;<\/p><p class=\"P3\">&nbsp;<\/p><p class=\"P140\"><span>Presentation of the XR-2206 <\/span><span class=\"T101\">IC<\/span><\/p><p class=\"P3\">&nbsp;<\/p><p class=\"P3\"><span>The XR-2206 is a VCO containing two sub-oscillators, with a keying pin allowing the selection of either sub-oscillator for output on two signal output pins, one presenting a sine\/triangle\/saw shape, the other pin being the output of a square wave signal.<\/span><\/p><h1 class=\"P149\"><span>Frequency Control<\/span><\/h1><p class=\"P141\"><span>Current controlled<\/span><\/p><p class=\"P5\"><span>Coarse frequency control is achieved through the use of a given resist<\/span><span class=\"T6\">or<\/span><span> to ground from the frequency current control pin. Each oscillator has its dedicated frequency control pin.<\/span><\/p><p class=\"P7\"><span>Frequency range (common to both oscillators) is further achieved through the use of a capacitor on the capacitor timing pins.<\/span><\/p><p class=\"P6\"><span class=\"T6\">The resistors<\/span><span> <\/span><span class=\"T6\">and capacitor are further referred as \u00ab\u00a0timing resistors\u00a0\u00bb and \u00ab\u00a0timing capacitor\u00a0\u00bb.<\/span><\/p><p class=\"P7\"><span>The resistor pins are further <\/span><span class=\"T68\">referred<\/span><span> as timing current pins.<\/span><\/p><p class=\"P7\"><span>This basic frequency control achieved in this manner is dependent on the current flowing through the resistor timing pins, hence, this setup gives, strictly speaking, <\/span>&#x200b;&#x200b;&nbsp;<span>a current controlled oscillator for frequency selection.<\/span><\/p><p class=\"P7\"><span>The <\/span><span class=\"T68\">data sheet<\/span><span> states the minimum value for the resistors being 1K, in order not to exceed the safe margin for current sourced from the timing pins.<\/span><\/p><p class=\"P7\"><span>The formula for the frequency of oscillation for each oscillator being 1\/(R_subosc*C), C being the capacitance of the frequency range capacitor common to both oscillators.<\/span><\/p><p class=\"P8\"><span>The timing current pins are internally biased at +3V<\/span><\/p><p class=\"P8\"><span>A coarse <\/span><span class=\"T7\">MCU<\/span><span> control <\/span><span class=\"T7\">of frequency <\/span><span>can be achieved <\/span><span class=\"T7\">in this manner through the use of digital potentiometer wired as a rheostat.<\/span><\/p><p class=\"P9\"><span>Renesas X9C10x series were demonstrated to work well in this setup, as the voltage to ground is inside the specification range, When using X9C102, a trimming rheostat must be included so the current sourced from the pin does not exceed the safe specification margins of both the digital potentiometer and of the XR-2206. (values??)<\/span><\/p><p class=\"P10\"><span>A more granular current control scheme can be achieved by using the digital potentiometers X9C104, X9C103, and X9C102 as rheostat in series to ground to achieve at 10 ohm step.<\/span><\/p><p class=\"P10\"><span>However, this approach has drawbacks\u00a0:<\/span><\/p><p class=\"P10\"><span>X9C10x series have up to 20\u00a0% tolerance in total R_High to R_Low values, although the resistance value of each R step on the R ladder demonstrates good linearity.<\/span><\/p><p class=\"P11\"><span>Thus, It is imperative to carefully select matched digital potentiometers for both <\/span><span class=\"T103\">sub-oscillators<\/span><span> and measure precisely the resistance of each digital potentiometer so that the MCU can tune the frequency with minimum readjustments.<\/span><\/p><p class=\"P12\"><span>Also, the use of multiple digital potentiometers in series makes the frequency tuning control algorithms more complex and each new potentiometer introduces error coming from the resistance measure and makes the time to tune longer. Careful design must be implemented so that out of tuning bounds events for each potentiometer do not happen, which would further delay the time to tune.<\/span><\/p><p class=\"P11\"><span class=\"T8\">For all these reasons, a single digital potentiometer in rheostat mode for coarse tuning plus a DAC chip in voltage control mode<\/span><span> <\/span><span class=\"T8\">for fine tuning is preferred as it reduces the number of digital control channels, while maintaining a large frequency range and good frequency resolution, while minimizing tuning time, but increasing BOM costs.<\/span><\/p><p class=\"P13\"><span>Nevertheless, if tuning time is not a priority, a lower cost <\/span><span class=\"T9\">hardware setup with<\/span><span> higher control complexity algorithm can be devised.<\/span><\/p><p class=\"P138\"><span>Example of operation for an audio range frequency current control setup with three X9C10x digital potentiometer in series at each R timing pin.<\/span><\/p><p class=\"P14\"><span>In this setup, a polypropylene capacitor of 0.044 \u00b5F is inserted on the frequency range capacitor pin<\/span><span class=\"T13\">s<\/span><span>.<\/span><\/p><p class=\"P142\"><span>Provided that a trimming potentiometer <\/span>&#x200b;&#x200b;&nbsp;<span>in rheostat mode, is inserted in the series with one X9C104, one X9C103, and one X9C102 digital potentiometer in series, the minimum R_<\/span><span class=\"T10\">trim<\/span><span> value setting the highest achievable frequency will be <\/span><span class=\"T72\">set so that the lumped resistance is no less than 1K<\/span><span class=\"T47\">\u03a9<\/span><span class=\"T66\">, stated by the XR-2206 datasheet as the minimum resistance for safe operation.<\/span><\/p><p class=\"P143\"><span class=\"T66\">A<\/span><span class=\"T63\">dditionally, the XR-2206 datasheet shows exponential degradation of frequency stability at large (&gt;200 k<\/span><span class=\"T45\">\u03a9)<\/span><span class=\"T63\"> and low (~1k<\/span><span class=\"T45\">\u03a9) timing resistors values. Thus, it is not advisable to use digital potentiometers with a total lumped resistance above 2<\/span><span class=\"T63\">00 k<\/span><span class=\"T45\">\u03a9. This is the primary factor restricting the range of output frequencies.<\/span><\/p><p class=\"P144\"><span class=\"T45\">Obtaining several output range frequencies can be done by selecting different capacitors of a bank in 1 of n fashion.<\/span><\/p><p class=\"P143\"><span class=\"T45\">The X9C10x series was selected for its low cost, up to 7V voltage maximum rating and current rating in the low mA range. It also features recall of last setting at power-up, if needed, with a durability of 100000 cycles per bit of the recall logic.<\/span><\/p><p class=\"P143\"><span class=\"T45\">However, it does not offer logic query of the current setting. That means that the MCU should maintain the potentiometer states in RAM and EEPROM if a recall of the setting at power-up is required. However, in-board MCU also have a cycle write limit for EEPROM, thus a flash memory storage would be preferable for frequent updates.<\/span><\/p><p class=\"P145\"><span class=\"T45\">In the case of a musical instrument, the settings of these potentiometers affect frequency only, not timbre, and thus can be discarded at power-off.<\/span><\/p><h1 class=\"Heading_20_1\"><span>Determination of frequency range<\/span><\/h1><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P103\"><span>On the X9C10x datasheet, it is stated that the minimum resistance of the digital potentiometer is 40<\/span><span class=\"T45\">\u03a9<\/span><span class=\"T63\">, corresponding to the wiper resistance, noted <\/span><span class=\"T63\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">wiper<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_wiper<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/span><span class=\"T63\">in the following formula defining the minimum value of the trimming resistance based on three digital potentiometers in rheostat mode used in series :<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P125\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:mrow><default:mrow><default:mn>3<\/default:mn><default:mo stretchy=\"false\">\u2217<\/default:mo><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">wiper<\/default:mi><\/default:msub><\/default:mrow><default:mo stretchy=\"false\">+<\/default:mo><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">trim<\/default:mi><\/default:msub><\/default:mrow><default:mo stretchy=\"false\">&gt;<\/default:mo><default:mn>1<\/default:mn><\/default:mrow><default:mi>k<\/default:mi><default:mi mathvariant=\"normal\">\u03a9<\/default:mi><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">3*R_wiper + R_trim &gt; 1k %OMEGA <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P15\"><span>solving for <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">trim<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_trim<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span>, supposing <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">wiper<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_wiper<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span>&#x200b;&#x200b;&nbsp;<span>being close to the nominal 40 Ohms value.<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P15\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">trim<\/default:mi><\/default:msub><default:mo stretchy=\"false\">&gt;<\/default:mo><default:mn>880<\/default:mn><\/default:mrow><default:mi mathvariant=\"normal\">\u03a9<\/default:mi><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">R_trim &gt; 880 %OMEGA <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p class=\"P104\"><span>And, with C set at <\/span><span class=\"T10\">6.6e-8 F (0.066 \u00b5F),<\/span><\/p><p class=\"P104\"><span>We can compute the maximum frequency we can obtain :<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P104\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">max<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mfrac><default:mn>1<\/default:mn><default:mrow><default:mrow><default:mn>1000<\/default:mn><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mn>6.6<\/default:mn><\/default:mrow><default:msup><default:mi>E<\/default:mi><default:mrow><default:mo stretchy=\"false\">\u2212<\/default:mo><default:mn>8<\/default:mn><\/default:mrow><\/default:msup><\/default:mrow><\/default:mfrac><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">f_max = {1} over {1000 * 6.6E^-8} <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P15\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">max<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mn>15151<\/default:mn><\/default:mrow><default:mi mathvariant=\"italic\">Hz<\/default:mi><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">f_max = 15151 Hz<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P16\"><span>The lowest achievable frequency, provided that the potentiometers are each at nominal values of, respectively, 100 <\/span><span class=\"T74\">k<\/span><span class=\"T48\">\u03a9<\/span><span>, 10 <\/span><span class=\"T74\">k<\/span><span class=\"T48\">\u03a9<\/span><span> and 1 <\/span><span class=\"T74\">k<\/span><span class=\"T48\">\u03a9<\/span><span>, and set at <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">max<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_max<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span>, so that <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">maxtotal<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mn>100<\/default:mn><\/default:mrow><default:mrow><default:mi>k<\/default:mi><default:mo stretchy=\"false\">+<\/default:mo><default:mn>10<\/default:mn><\/default:mrow><default:mrow><default:mi>k<\/default:mi><default:mo stretchy=\"false\">+<\/default:mo><default:mn>1<\/default:mn><\/default:mrow><default:mrow><default:mi>k<\/default:mi><default:mo stretchy=\"false\">+<\/default:mo><default:mn>880<\/default:mn><default:mo stretchy=\"false\">+<\/default:mo><default:mrow><default:mn>3<\/default:mn><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mn>40<\/default:mn><\/default:mrow><\/default:mrow><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">R_maxtotal = 100k + 10k + 1k +880 + 3*40 <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span>\u00a0:<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P16\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">maxtotal<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mn>112<\/default:mn><\/default:mrow><default:mi>k<\/default:mi><default:mi mathvariant=\"normal\">\u03a9<\/default:mi><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">R_maxtotal = 112k %OMEGA <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P16\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">min<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mfrac><default:mn>1<\/default:mn><default:mrow><default:mn>112<\/default:mn><default:mrow><default:msup><default:mi>E<\/default:mi><default:mn>3<\/default:mn><\/default:msup><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mn>6.6<\/default:mn><\/default:mrow><default:msup><default:mi>E<\/default:mi><default:mrow><default:mo stretchy=\"false\">\u2212<\/default:mo><default:mn>8<\/default:mn><\/default:mrow><\/default:msup><\/default:mrow><\/default:mfrac><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">f_min = {1} over {112E^3 * 6.6E^-8} <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P15\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">min<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mn>135.8<\/default:mn><\/default:mrow><default:mi mathvariant=\"italic\">Hz<\/default:mi><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">f_min = 135.8 Hz<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p class=\"P15\">&nbsp;<\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P17\"><span>In the following implementation of a VCO for <\/span><span class=\"T13\">a <\/span><span>musical application, as a synthesizer, <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">trim<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_trim<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span>was offset at a higher value so that\u00a0:<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P17\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">min<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mi>f<\/default:mi><\/default:mrow><default:mrow><default:mrow><default:mo fence=\"true\" stretchy=\"false\">(<\/default:mo><default:mrow><default:mrow><default:mi>C<\/default:mi><default:mn>3<\/default:mn><\/default:mrow><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">)<\/default:mo><\/default:mrow><default:mo stretchy=\"false\">=<\/default:mo><default:mn>130.8<\/default:mn><\/default:mrow><default:mi mathvariant=\"italic\">Hz<\/default:mi><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">f_min = f( C3 ) = 130.8 Hz<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span class=\"T102\">The three digital potentiometers being set at full-scale (99,99,99)<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P105\"><span>Based on the aforementioned relation, We can solve for <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">trim<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_trim<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span>and <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">maxtotal<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_maxtotal<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p class=\"P106\"><span>So that,<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P106\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">max<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mn>115,84<\/default:mn><\/default:mrow><default:mi>k<\/default:mi><default:mi mathvariant=\"normal\">\u03a9<\/default:mi><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">R_max = 115,84 k %OMEGA <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P106\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">trim<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mn>4.717<\/default:mn><\/default:mrow><default:mi>k<\/default:mi><default:mi mathvariant=\"normal\">\u03a9<\/default:mi><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">R_trim = 4.717 k %OMEGA <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p class=\"P17\">&nbsp;<\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P17\"><span class=\"T75\">Note that by doing this, <\/span><span class=\"T75\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">max<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">f_max<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/span>&#x200b;&#x200b;&nbsp;<span>is then offset to a lower value\u00a0of 3132 Hz.<\/span><\/p><p class=\"P17\"><span>Which gives <\/span><span class=\"T75\">us<\/span><span> a frequency range close to 4.5 octaves. (C3 to F#7)<\/span><\/p><h1 class=\"P151\"><span>Frequency tuning <\/span><span class=\"T12\">step <\/span><span>resolution<\/span><\/h1><p class=\"P18\">&nbsp;<\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P19\"><span>Since the three digital <\/span><span class=\"T68\">potentiometers<\/span><span> have 100 equal R steps (from 0\/99*r_max to 99\/99*r_max) and are fully overlappe<\/span><span class=\"T14\">d, in the sense that no R setting is not accessible int the &#x200b;&#x200b;&nbsp;<\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mo fence=\"true\" stretchy=\"false\">[<\/default:mo><default:mrow><default:mrow><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">mintotal<\/default:mi><\/default:msub><default:mi>,<\/default:mi><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">maxtotal<\/default:mi><\/default:msub><\/default:mrow><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">]<\/default:mo><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">[R_mintotal , R_maxtotal]<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span>, the <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">step<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_step<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span>&#x200b;&#x200b;&nbsp;<span>of the lowest <\/span><span class=\"T11\">resistance<\/span><span> digital potentiometer <\/span><span class=\"T11\">(X9C102)<\/span><span> <\/span><span class=\"T11\">gives the resistance step resolution, that is, <\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P106\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">step<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mfrac><default:mrow><default:mn>1<\/default:mn><default:msup><default:mi>E<\/default:mi><default:mn>3<\/default:mn><\/default:msup><\/default:mrow><default:mn>99<\/default:mn><\/default:mfrac><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">R_step =  {1E^3} over {99} <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P106\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">step<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mn>10.1<\/default:mn><\/default:mrow><default:mi mathvariant=\"normal\">\u03a9<\/default:mi><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">R_step = 10.1 %OMEGA <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P20\"><span>Which gives a frequency resolution at <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">min<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">f_min<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span>&#x200b;&#x200b;&nbsp;<span>of\u00a0:<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P20\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mi mathvariant=\"normal\">\u0394<\/default:mi><default:mrow><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">min<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mrow><default:mfrac><default:mn>1<\/default:mn><default:mrow><default:mrow><default:mrow><default:mo fence=\"true\" stretchy=\"false\">(<\/default:mo><default:mrow><default:mrow><default:mn>115.84<\/default:mn><default:mrow><default:msup><default:mi>E<\/default:mi><default:mn>3<\/default:mn><\/default:msup><default:mo stretchy=\"false\">\u2212<\/default:mo><default:mn>10.1<\/default:mn><\/default:mrow><\/default:mrow><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">)<\/default:mo><\/default:mrow><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mn>6.6<\/default:mn><\/default:mrow><default:msup><default:mi>E<\/default:mi><default:mrow><default:mo stretchy=\"false\">\u2212<\/default:mo><default:mn>8<\/default:mn><\/default:mrow><\/default:msup><\/default:mrow><\/default:mfrac><default:mo stretchy=\"false\">\u2212<\/default:mo><default:mfrac><default:mn>1<\/default:mn><default:mrow><default:mrow><default:mrow><default:mo fence=\"true\" stretchy=\"false\">(<\/default:mo><default:mrow><default:mrow><default:mn>115.84<\/default:mn><default:msup><default:mi>E<\/default:mi><default:mn>3<\/default:mn><\/default:msup><\/default:mrow><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">)<\/default:mo><\/default:mrow><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mn>6.6<\/default:mn><\/default:mrow><default:msup><default:mi>E<\/default:mi><default:mrow><default:mo stretchy=\"false\">\u2212<\/default:mo><default:mn>8<\/default:mn><\/default:mrow><\/default:msup><\/default:mrow><\/default:mfrac><\/default:mrow><\/default:mrow><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">%DELTA f_min = {1} over {(115.84E^3 - 10.1)*6.6E^-8}  - {1} over {(115.84E^3)*6.6E^-8} <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P20\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mi mathvariant=\"normal\">\u0394<\/default:mi><default:mrow><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">min<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mn>0.0114<\/default:mn><\/default:mrow><default:mi mathvariant=\"italic\">Hz<\/default:mi><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">%DELTA f_min = 0.0114 Hz<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P20\"><span>and at <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">max<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">f_max<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span>:<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P20\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mi mathvariant=\"normal\">\u0394<\/default:mi><default:mrow><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">max<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mrow><default:mfrac><default:mn>1<\/default:mn><default:mrow><default:mrow><default:mrow><default:mo fence=\"true\" stretchy=\"false\">(<\/default:mo><default:mrow><default:mrow><default:mn>4.837<\/default:mn><default:mrow><default:msup><default:mi>E<\/default:mi><default:mn>3<\/default:mn><\/default:msup><default:mo stretchy=\"false\">\u2212<\/default:mo><default:mn>10.1<\/default:mn><\/default:mrow><\/default:mrow><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">)<\/default:mo><\/default:mrow><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mn>6.6<\/default:mn><\/default:mrow><default:msup><default:mi>E<\/default:mi><default:mrow><default:mo stretchy=\"false\">\u2212<\/default:mo><default:mn>8<\/default:mn><\/default:mrow><\/default:msup><\/default:mrow><\/default:mfrac><default:mo stretchy=\"false\">\u2212<\/default:mo><default:mfrac><default:mn>1<\/default:mn><default:mrow><default:mrow><default:mrow><default:mo fence=\"true\" stretchy=\"false\">(<\/default:mo><default:mrow><default:mrow><default:mn>4.837<\/default:mn><default:msup><default:mi>E<\/default:mi><default:mn>3<\/default:mn><\/default:msup><\/default:mrow><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">)<\/default:mo><\/default:mrow><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mn>6.6<\/default:mn><\/default:mrow><default:msup><default:mi>E<\/default:mi><default:mrow><default:mo stretchy=\"false\">\u2212<\/default:mo><default:mn>8<\/default:mn><\/default:mrow><\/default:msup><\/default:mrow><\/default:mfrac><\/default:mrow><\/default:mrow><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">%DELTA f_max = {1} over {(4.837E^3 - 10.1)*6.6E^-8}  - {1} over {(4.837E^3)*6.6E^-8} <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P20\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mi mathvariant=\"normal\">\u0394<\/default:mi><default:mrow><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">min<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mn>6.5544<\/default:mn><\/default:mrow><default:mi mathvariant=\"italic\">Hz<\/default:mi><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">%DELTA f_min = 6.5544 Hz<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P21\"><span>In terms of musical units, <\/span><span class=\"T15\">the interval compared to C3 at <\/span><span class=\"T15\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">min<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">f_min<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/span><span class=\"T15\">&#x200b;&#x200b;&nbsp;is\u00a0:<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P21\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mi mathvariant=\"normal\">\u0394<\/default:mi><default:mrow><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">mincents<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mrow><default:mn>1200<\/default:mn><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mi>log<\/default:mi><\/default:mrow><\/default:mrow><default:mn>2<\/default:mn><default:mrow><default:mo fence=\"true\" stretchy=\"false\">(<\/default:mo><default:mrow><default:mfrac><default:mrow><default:mi>f<\/default:mi><default:mrow><default:mrow><default:mo fence=\"true\" stretchy=\"false\">(<\/default:mo><default:mrow><default:mrow><default:mi>C<\/default:mi><default:mn>3<\/default:mn><\/default:mrow><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">)<\/default:mo><\/default:mrow><default:mo stretchy=\"false\">+<\/default:mo><default:mi mathvariant=\"normal\">\u0394<\/default:mi><\/default:mrow><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">min<\/default:mi><\/default:msub><\/default:mrow><default:mrow><default:mi>f<\/default:mi><default:mrow><default:mo fence=\"true\" stretchy=\"false\">(<\/default:mo><default:mrow><default:mrow><default:mi>C<\/default:mi><default:mn>3<\/default:mn><\/default:mrow><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">)<\/default:mo><\/default:mrow><\/default:mrow><\/default:mfrac><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">)<\/default:mo><\/default:mrow><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">%DELTA f_mincents = 1200*log2({f(C3) + %DELTA f_min} over {f(C3)} )<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P21\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mi mathvariant=\"normal\">\u0394<\/default:mi><default:mrow><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">mincents<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mn>0.1508<\/default:mn><\/default:mrow><default:mi mathvariant=\"italic\">cents<\/default:mi><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">%DELTA f_mincents = 0.1508 cents<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p class=\"P22\"><span>And at f_max <\/span><span class=\"T76\">= 3132 Hz<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P22\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mi mathvariant=\"normal\">\u0394<\/default:mi><default:mrow><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">maxcents<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mrow><default:mn>1200<\/default:mn><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mi>log<\/default:mi><\/default:mrow><\/default:mrow><default:mn>2<\/default:mn><default:mrow><default:mo fence=\"true\" stretchy=\"false\">(<\/default:mo><default:mrow><default:mfrac><default:mrow><default:mrow><default:mn>3132<\/default:mn><default:mo stretchy=\"false\">+<\/default:mo><default:mi mathvariant=\"normal\">\u0394<\/default:mi><\/default:mrow><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">max<\/default:mi><\/default:msub><\/default:mrow><default:mn>3132<\/default:mn><\/default:mfrac><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">)<\/default:mo><\/default:mrow><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">%DELTA f_maxcents = 1200*log2({3132 + %DELTA f_max} over {3132})<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P22\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mi mathvariant=\"normal\">\u0394<\/default:mi><default:mrow><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">maxcents<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mn>3.619<\/default:mn><\/default:mrow><default:mi mathvariant=\"italic\">cents<\/default:mi><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">%DELTA f_maxcents = 3.619 cents<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><h1 class=\"P148\"><span class=\"T23\">Dynamic <\/span><span>Tuning Algorithm<\/span><\/h1><p class=\"P23\"><span>Single <\/span><span class=\"T68\">Sub-oscillator<\/span><span> tuning<\/span><\/p><p class=\"P29\"><span>A fully digital algorithm based on the Arduino Mega 2560 was devised.<\/span><\/p><p class=\"P29\"><span>Measuring the frequency was achieved through the improved resolution timer2 library and a modified version of the PulseIn <\/span><span class=\"T16\">that integrates the 0.5\u00b5s<\/span><span> <\/span><span class=\"T16\">precise timer2 library instead of the 4\u00b5s standard precision.<\/span><\/p><p class=\"P30\"><span>It should be noted that accurate frequency measurements are dependent on the clock frequency of the Arduino. Arduino mega 2560 is clocked at 16 Mhz, However it uses a ceramic oscillator instead of Quartz crystal oscillator. Thus, it is probable that the oscillation is not an exact 16 Mhz.<\/span><\/p><p class=\"P30\"><span>This is not a problem for interval tuning since it is based on frequency ratios, but may introduce de-tuning if the synthesizer signal is to be integrated into an ensemble of other instruments using, for instance, a reference tuning of A4 = 440 Hz.<\/span><\/p><p class=\"P30\"><span>Also, The higher the working clock frequency of the MCU, the higher is the measure resolution. and tuning speed. However, the limiting factor in the tuning speed achieved <\/span><span class=\"T17\">is the period of the signal. Measuring the frequency is usually done through signal level or edge triggering or zero cross &nbsp;&#x200b;&#x200b;&nbsp;&#x200b;&#x200b;&#x200b;&#x200b;&nbsp;method, all requiring at least a lapse of time of 1\/f_fundamental to compute the frequency of the signal.<\/span><\/p><p class=\"P31\"><span>In practice, oscillator drift, noise, may require averaging several frequency measurements to obtain a reliable measure.<\/span><\/p><p class=\"P31\"><span>In this implementation, the number of frequency measure sample has been set to 10.<\/span><\/p><p class=\"P31\"><span>An analysis of the statistical distribution of frequency measures over a medium interval (like 10s) will give an idea of the effects of noise, digital aliasing <\/span><span class=\"T68\">artifacts.<\/span><span> Oscillator drift is usually temperature dependent and should be <\/span><span class=\"T68\">minimized<\/span><span> by using an adequate capacit<\/span><span class=\"T18\">or with a flat temperature to capacitance response. (temperature drift compensating)<\/span><\/p><p class=\"P32\"><span>In this implementation, low ESR metalized polypropylene capacitors are used, for their adequate frequency <\/span><span class=\"T68\">response<\/span><span>, long lifetime and parameter stability <\/span><span class=\"T19\">over time<\/span><span>.<\/span><\/p><p class=\"P32\">&nbsp;<\/p><p class=\"P33\"><span>The first step in tuning uses the f = 1\/RC formula, solved for R. It is important to have a precise measure of the timing capacitor capacitance at standard temperature conditions of use.<\/span><\/p><p class=\"P33\"><span>R = 1\/fC.<\/span><\/p><p class=\"P33\"><span>Now, <\/span><span class=\"T20\">three values of resistance should be determined satisfying the following conditions\u00a0:<\/span><\/p><p class=\"P34\"><span>R1 + R2 + R3 = R \u2013 <\/span><span class=\"T21\">Rtrim - Rwipers<\/span><\/p><p class=\"P34\"><span>R1 &lt; 100K<\/span><\/p><p class=\"P34\"><span>R2 &lt; 10K<\/span><\/p><p class=\"P34\"><span>R3 &lt; 1K<\/span><\/p><p class=\"P34\"><span>Ideally, R2 and R3 values should be as close as possible to the mid-range of the digital potentiometer, that is, 10K\/2 and 1K\/2. This gives leeway for fine tuning of R2 and R3 in both increasing and decreasing R steps.<\/span><\/p><p class=\"P35\"><span>Based on the above formula, the three digital potentiometers are set to their respective values, and the <\/span><span class=\"T68\">sub-oscillator<\/span><span> frequency is measured.<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P35\"><span>The frequency error <\/span><span class=\"T82\">is then :<\/span><span> <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">error<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">tuned<\/default:mi><\/default:msub><\/default:mrow><default:mi>\u2013<\/default:mi><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">measured<\/default:mi><\/default:msub><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">f_error = f_tuned \u2013 f_measured<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P35\"><span>The goal being to tune the oscillator at the R value of <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mi mathvariant=\"italic\">min<\/default:mi><default:mrow><default:mo fence=\"true\" stretchy=\"false\">(<\/default:mo><default:mrow><default:mrow><default:mo fence=\"true\" stretchy=\"true\">|<\/default:mo><default:mrow><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">error<\/default:mi><\/default:msub><\/default:mrow><default:mo fence=\"true\" stretchy=\"true\">|<\/default:mo><\/default:mrow><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">)<\/default:mo><\/default:mrow><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">min(abs{f_error}) <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P35\"><span>A standard gradient descent approach <\/span><span class=\"T22\">based on the derivative of frequency over resistance function<\/span><span> <\/span><span class=\"T83\">is<\/span><span> used <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mfrac><default:mi mathvariant=\"italic\">dR<\/default:mi><default:mi mathvariant=\"italic\">df<\/default:mi><\/default:mfrac><default:mo stretchy=\"false\">=<\/default:mo><default:mfrac><default:mrow><default:mo stretchy=\"false\">\u2212<\/default:mo><default:mn>1<\/default:mn><\/default:mrow><default:mrow><default:msup><default:mi>f<\/default:mi><default:mn>2<\/default:mn><\/default:msup><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mi>C<\/default:mi><\/default:mrow><\/default:mfrac><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">{dR} over {df} = {-1} over {f^2 *C} <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span class=\"T22\">so that the step delta_R for each R correction is given by\u00a0:<\/span><\/p><p class=\"P35\">&nbsp;<\/p><p class=\"P109\">&nbsp;<\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P109\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mi mathvariant=\"normal\">\u0394<\/default:mi><default:mrow><default:mi>R<\/default:mi><default:mo stretchy=\"false\">\u2243<\/default:mo><default:mrow><default:mfrac><default:mrow><default:mo stretchy=\"false\">\u2212<\/default:mo><default:mn>1<\/default:mn><\/default:mrow><default:mrow><default:msup><default:mi>f<\/default:mi><default:mn>2<\/default:mn><\/default:msup><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mi>C<\/default:mi><\/default:mrow><\/default:mfrac><default:mo stretchy=\"false\">\u2217<\/default:mo><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">error<\/default:mi><\/default:msub><\/default:mrow><\/default:mrow><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">%DELTA R simeq {-1} over {f^2 *C} * f_error<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p class=\"P110\"><span>In practice, a tuning factor k is introduced and determined empirically in case of undershoots \/overshoots, <\/span><span class=\"T84\">k &lt; 1 in case of overshoots and k &gt; 1 in case of undershoots<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P110\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mi mathvariant=\"normal\">\u0394<\/default:mi><default:mrow><default:mi>R<\/default:mi><default:mo stretchy=\"false\">\u2243<\/default:mo><default:mrow><default:mfrac><default:mrow><default:mo stretchy=\"false\">\u2212<\/default:mo><default:mn>1<\/default:mn><\/default:mrow><default:mrow><default:msup><default:mi>f<\/default:mi><default:mn>2<\/default:mn><\/default:msup><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mi>C<\/default:mi><\/default:mrow><\/default:mfrac><default:mo stretchy=\"false\">\u2217<\/default:mo><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">error<\/default:mi><\/default:msub><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mi>k<\/default:mi><\/default:mrow><\/default:mrow><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">%DELTA R simeq {-1} over {f^2 *C} * f_error * k<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P37\"><span class=\"T85\">Considering a <\/span><span>simple algorithm <\/span><span class=\"T85\">that<\/span><span> would make corrections on the digital <\/span><span class=\"T68\">potentiometer<\/span><span> R values sequentially, starting with the highest value potentiometer for coarse tuning. <\/span><span class=\"T85\">The potentiometer step change number is given by the rounding to the nearest integer function <\/span><span class=\"T85\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mo fence=\"true\" stretchy=\"false\">[<\/default:mo><default:mrow><default:mi mathvariant=\"normal\">\u2751<\/default:mi><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">]<\/default:mo><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">[&lt;?&gt;] <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/span><span class=\"T85\">&#x200b;&#x200b;&nbsp;:<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P111\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mi mathvariant=\"normal\">\u0394<\/default:mi><default:mrow><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">steps<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mrow><default:mo fence=\"true\" stretchy=\"false\">[<\/default:mo><default:mrow><default:mfrac><default:mrow><default:mi mathvariant=\"normal\">\u0394<\/default:mi><default:mi>R<\/default:mi><\/default:mrow><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">potstep<\/default:mi><\/default:msub><\/default:mfrac><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">]<\/default:mo><\/default:mrow><\/default:mrow><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">%DELTA R_steps = [ {%DELTA R} over {R_potstep} ] <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p class=\"P38\">&#x200b;&#x200b;&nbsp;<span>being the value in ohms of the digital potentiometer under consideration<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P119\"><span class=\"T73\">For each potentiometer, a <\/span><span class=\"T73\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mi mathvariant=\"normal\">\u0394<\/default:mi><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">steps<\/default:mi><\/default:msub><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">%DELTA R_steps<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/span><span class=\"T73\">tuning deflection is applied and <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">error<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">f_error<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span class=\"T86\">is sampled. Depending on the tuning factor k, the following conditions will arise.<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P121\"><span class=\"T87\">For a sub-optimal too low k, the series made of each step <\/span><span class=\"T87\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">error<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">f_error<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/span><span class=\"T87\">&#x200b;&#x200b;&nbsp;will converge to 0 without sign change, the less optimal the k, the more steps before reaching the condition :<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P136\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:mi mathvariant=\"normal\">\u0394<\/default:mi><default:mi>R<\/default:mi><\/default:mrow><default:mo stretchy=\"false\">&lt;<\/default:mo><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">potstep<\/default:mi><\/default:msub><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">{%DELTA R} &lt; {R_potstep}<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p class=\"P136\">&nbsp;<\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P120\"><span>For a sub-optimal too <\/span><span class=\"T88\">high<\/span><span> k, the series made of each step <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">error<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">f_error<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span>&#x200b;&#x200b;&nbsp;<span>will converge to 0 with <\/span><span class=\"T88\">zero crossings at each tuning step <\/span><span>, the less optimal the k, the more steps before reaching the condition :<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P120\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:mi mathvariant=\"normal\">\u0394<\/default:mi><default:mi>R<\/default:mi><\/default:mrow><default:mo stretchy=\"false\">&lt;<\/default:mo><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">potstep<\/default:mi><\/default:msub><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">{%DELTA R} &lt; {R_potstep}<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P122\"><span>It may <\/span><span class=\"T89\">be useful to have a slightly sub-optimal too high k, so that a zero-crossing for <\/span><span class=\"T89\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">error<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">f_error<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/span><span class=\"T89\">condition is achieved faster after a last tuning step of exactly<\/span><span class=\"T89\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mn>1<\/default:mn><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">potstep<\/default:mi><\/default:msub><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">1 R_potstep<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P123\"><span>So that <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mi mathvariant=\"italic\">min<\/default:mi><default:mrow><default:mo fence=\"true\" stretchy=\"false\">(<\/default:mo><default:mrow><default:mrow><default:mrow><default:mo fence=\"true\" stretchy=\"true\">|<\/default:mo><default:mrow><default:msub><default:mi>f<\/default:mi><default:mrow><default:mo fence=\"true\" stretchy=\"false\">(<\/default:mo><default:mrow><default:mrow><default:mi mathvariant=\"italic\">error<\/default:mi><default:mrow><default:mo fence=\"true\" stretchy=\"false\">(<\/default:mo><default:mrow><default:mrow><default:mi>n<\/default:mi><default:mo stretchy=\"false\">\u2212<\/default:mo><default:mn>1<\/default:mn><\/default:mrow><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">)<\/default:mo><\/default:mrow><\/default:mrow><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">)<\/default:mo><\/default:mrow><\/default:msub><\/default:mrow><default:mo fence=\"true\" stretchy=\"true\">|<\/default:mo><\/default:mrow><default:mi>,<\/default:mi><default:mrow><default:mo fence=\"true\" stretchy=\"true\">|<\/default:mo><default:mrow><default:msub><default:mi>f<\/default:mi><default:mrow><default:mo fence=\"true\" stretchy=\"false\">(<\/default:mo><default:mrow><default:mrow><default:mi mathvariant=\"italic\">error<\/default:mi><default:mrow><default:mo fence=\"true\" stretchy=\"false\">(<\/default:mo><default:mrow><default:mi>n<\/default:mi><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">)<\/default:mo><\/default:mrow><\/default:mrow><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">)<\/default:mo><\/default:mrow><\/default:msub><\/default:mrow><default:mo fence=\"true\" stretchy=\"true\">|<\/default:mo><\/default:mrow><\/default:mrow><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">)<\/default:mo><\/default:mrow><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">min(abs{f_(error(n-1))}, abs{f_(error(n))})<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span class=\"T90\">decides if the last tuning step is discarded or conserved.<\/span><\/p><p class=\"P124\"><span>However, The smallest potentiometers current settings should be taken into account before selecting the higher value potentiometer setting such that an out of tuning bound condition may not arise.<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P124\"><span>The process is repeated for the smaller potentiometers <\/span>&#x200b;&#x200b;&nbsp;<span>until the <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">error<\/default:mi><\/default:msub><default:mo stretchy=\"false\">&lt;<\/default:mo><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">errorthreshold<\/default:mi><\/default:msub><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">f_error &lt; f_errorthreshold<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span>condition arises.<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P36\"><span>In this implementation, <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">errorthreshold<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">f_errorthreshold<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span>&#x200b;&#x200b;&nbsp;<span>was set at \u00b1 2 musical cents.<\/span><\/p><p class=\"P112\"><span>The tuning algorithm speed is a function of the number of tuning steps times the tuning time per step. The tuning time per step if made from computational overhead and most significatively, the time it takes to measure the signal frequency times the number of frequency measure samples.<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P112\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:msub><default:mi>t<\/default:mi><default:mi mathvariant=\"italic\">tuning<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mrow><default:msub><default:mi>n<\/default:mi><default:mi mathvariant=\"italic\">steps<\/default:mi><\/default:msub><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mrow><default:mo fence=\"true\" stretchy=\"false\">(<\/default:mo><default:mrow><default:mrow><default:mrow><default:msub><default:mi>n<\/default:mi><default:mi mathvariant=\"italic\">samples<\/default:mi><\/default:msub><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mrow><default:mo fence=\"true\" stretchy=\"false\">(<\/default:mo><default:mrow><default:mrow><default:msub><default:mi>t<\/default:mi><default:mi mathvariant=\"italic\">period<\/default:mi><\/default:msub><default:mo stretchy=\"false\">+<\/default:mo><default:msub><default:mi>t<\/default:mi><default:mi mathvariant=\"italic\">compmeas<\/default:mi><\/default:msub><\/default:mrow><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">)<\/default:mo><\/default:mrow><\/default:mrow><default:mo stretchy=\"false\">+<\/default:mo><default:msub><default:mi>t<\/default:mi><default:mi mathvariant=\"italic\">comptuning<\/default:mi><\/default:msub><\/default:mrow><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">)<\/default:mo><\/default:mrow><\/default:mrow><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">t_tuning = n_steps * (n_samples * (t_period + t_compmeas) + t_comptuning)\n\n<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P113\"><span>n_steps can be optimized as already discussed above by fine tuning k and by a precise measure of C <\/span>&nbsp;&#x200b;&#x200b;&#x200b;&#x200b;&nbsp;<span>and <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">max<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_max<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span>and by selecting a proper capacitor (metalized polypropylene film is a good choice and metal film resistors with low inductance parasitics, although these considerations are of prime importance in higher frequency ranges only, less in audio, except for the capacitor regarding temperature dependency), <\/span><span class=\"T92\">so that the circuit deviates as less as possible from 1\/RC law.<\/span><\/p><p class=\"P115\"><span>Algorithmically, n_steps can also be reducing by stepping all required digital potentiometers at each <\/span>&nbsp;&#x200b;&#x200b;&nbsp;&#x200b;&#x200b;&#x200b;&#x200b;&nbsp;<\/p><p class=\"P115\"><span>step instead of stepping them sequentially, as it will be described in the optimized algorithm in the next section.<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P113\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>n<\/default:mi><default:mi mathvariant=\"italic\">samples<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">n_samples <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span>can be optimized by analyzing the statistical distribution of frequency measures, as it will impact the precision of the obtained frequency, taking into account a goal of 2 cents in our application, note that the smallest time component that can be measured for a single suboscillator is :<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P113\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:msub><default:mi>t<\/default:mi><default:mi mathvariant=\"italic\">half<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mfrac><default:mn>1<\/default:mn><default:mrow><default:mn>2<\/default:mn><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mi>f<\/default:mi><\/default:mrow><\/default:mfrac><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">t_half = {1} over {2*f}<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span class=\"T91\">as it is the time interval returned by either PulseIn(LOW) or PulseIn(HIGH) for a 0.5 duty cycle signal. Thus the tuning time will be strongly dependent and inversely proportional to the frequency. Reducing noise by using proper circuit design and adequate low pass filtering on the measuring frequency pin is of prime importance.<\/span><\/p><p class=\"P40\"><span>The worst case tuning speed obtained was close to 1.5 seconds (fr C#3) and close to 0.4 seconds at high frequencies (B#6). <\/span><span class=\"T93\">Using the naive sequential digital potentiometer tuning method described above.<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P116\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>t<\/default:mi><default:mi mathvariant=\"italic\">compmeas<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">t_compmeas<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span>&#x200b;&#x200b;&nbsp;<span>is very light in computing time, and generally only decreases the frequency measure resolution, <\/span><span class=\"T94\">because that overhead is compounded into the frequency measure value.<\/span><span> Using a faster Arduino MCU (like <\/span><span class=\"T94\">The D<\/span><span>ue) <\/span><span class=\"T94\">with a precise XTAL Quartz oscillator and a &nbsp;&#x200b;&#x200b;&#x200b;&#x200b;&nbsp;precise Timer library will improve measuring precision and resolution substantially.<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P117\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>t<\/default:mi><default:mi mathvariant=\"italic\">comptuning<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">t_comptuning <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span>can be <\/span><span class=\"T105\">minimized<\/span><span> by applying general Arduino coding best practices, using extra care on the computational intensive parts of the algorithm.<\/span><\/p><p class=\"P117\"><span>For all these reasons, a debugging mode with timing display should be used to quantify performance gains and overall tuning duration performance.<\/span><\/p><p class=\"P28\"><span>Optimized parallel tuning algorithms<\/span><\/p><p class=\"P57\"><span>If the deviation from theory is small, the overall delta R may be sufficiently small from the theoretical value that only the lowest R digital potentiometer is stepped <\/span><span class=\"T105\">to obtain accurate frequency<\/span><\/p><p class=\"P57\"><span>In other cases, if the deviation requires a tuning step above the highest digital potentiometer R step,<\/span><\/p><p class=\"P57\"><span>A parallel tuning may be experimented with <\/span><span class=\"T96\">and compared to the sequential tuning in term of performance. This may work well if each potentiometer has good step linearity and each potentiometer R value is measured precisely.<\/span><\/p><p class=\"P58\"><span>Note that for the theoretical determination of each potentiometer step, it is good practice, if the R value make it possible, to bias the medium and low value digital potentiometer at half scale, so it gives leeway for up and down stepping. <\/span><span class=\"T96\">(~5k for X9C103 and ~0.5k for X9C102)<\/span><\/p><p class=\"P58\"><span>Then, the delta R, once computed, should be distributed across the potentiometers. Since the potentiometers are overlapping, there is more than one way to distribute delta R across them.<\/span><\/p><p class=\"P58\"><span>The selected way should avoid if possible to step <\/span><span class=\"T96\">potentiometers<\/span><span> close to their stepping bounds. (0 , 99)<\/span><\/p><p class=\"P59\"><span class=\"T95\">Consider the following example to illustrate the algorithm<\/span><span> :<\/span><\/p><p class=\"P60\"><span>Tuning for f(A4) = 440 Hz,<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P60\"><span>We have, <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mi>R<\/default:mi><default:mo stretchy=\"false\">=<\/default:mo><default:mfrac><default:mn>1<\/default:mn><default:mrow><default:mn>440<\/default:mn><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mn>6.6E-8<\/default:mn><\/default:mrow><\/default:mfrac><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">R = {1} over {440*6.6E-8} <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p class=\"P60\"><span>R = <\/span>&#x200b;&#x200b;&nbsp;<span class=\"T96\">34 435 <\/span><span class=\"T53\">\u03a9<\/span><\/p><p class=\"P61\"><span class=\"T63\">Let\u2019s first take R_trim out <\/span><span class=\"T67\">including wiper resistances<\/span><span class=\"T63\"> :<\/span><\/p><p class=\"P126\"><span>R_pot = 34435 \u2013 4.8237<\/span><\/p><p class=\"P126\"><span>R_pot =29 608 <\/span><\/p><p class=\"P126\"><span>Now let\u2019s bias the medium and low potentiometers to <\/span><span class=\"T98\">~<\/span><span>5K and <\/span><span class=\"T98\">~<\/span><span>0.5K (Supposing that they were chosen to have nominal values).<\/span><\/p><p class=\"P61\"><span class=\"T63\">R_pot_remaining = 29608 \u2013 <\/span><span class=\"T67\">(49\/99)*10000<\/span><span class=\"T63\"> \u2013 &#x200b;&#x200b;&nbsp;<\/span><span class=\"T67\">(49\/99)*1000<\/span><span class=\"T63\"> = &#x200b;&#x200b;&nbsp;241<\/span><span class=\"T67\">63<\/span><span class=\"T63\"> <\/span><span class=\"T45\">\u03a9<\/span><\/p><p class=\"P62\"><span class=\"T45\">Let\u2019s perform the division of that value by the hig<\/span><span class=\"T54\">h<\/span><span class=\"T45\">est pot R step and half-step round to the closest integer.<\/span><\/p><p class=\"P129\"><span>24163 \/ (100 000\/99) = 23.<\/span><span class=\"T98\">92137<\/span><\/p><p class=\"P133\"><span>In that case, we will select the R step at 24.<\/span><\/p><p class=\"P133\"><span>That means that the reminder will be negative, and thus subtracted from the biased medium\/low pots.<\/span><\/p><p class=\"P127\"><span>The reminder being 24163 \u2013 2<\/span><span class=\"T98\">4<\/span><span>*(100 000\/99) = -<\/span><span class=\"T98\">79.42<\/span><span> Ohms.<\/span><\/p><p class=\"P127\"><span>Now we have to distribute the reminder across the X9C103 and X9C102 pots.<\/span><\/p><p class=\"P130\"><span>Let\u2019s repeat <\/span><span class=\"T98\">the <\/span><span>division <\/span><span class=\"T98\">scheme<\/span><\/p><p class=\"P131\"><span>-<\/span><span class=\"T98\">79.42<\/span><span> \/ (10 000\/99) = - <\/span><span class=\"T99\">0.7862<\/span><\/p><p class=\"P134\"><span>In that case we select a step of -1.<\/span><\/p><p class=\"P134\"><span>The reminder being -79.42 - (-1*(10 000\/99)) = 21.59 The reminder is once again positive, since we overcompensated.<\/span><\/p><p class=\"P134\"><span>Let\u2019s do it one last time\/<\/span><\/p><p class=\"P134\"><span>21.59 \/ (1000\/99) = <\/span>&#x200b;&#x200b;&nbsp;<span class=\"T100\">2.13741<\/span><\/p><p class=\"P132\"><span>2<\/span><span class=\"T99\">1.59<\/span><span> \\ (1000\/99) = <\/span>&#x200b;&#x200b;&nbsp;<span>2 and the remainder is <\/span><span class=\"T100\">1.38<\/span><\/p><p class=\"P128\">&#x200b;&#x200b;&nbsp;<span class=\"T97\">Now let\u2019s add these values to the potentiometer initial biasing.<\/span><\/p><p class=\"P132\"><span>XC9103 steps = 49 - <\/span><span class=\"T100\">1<\/span><span> = <\/span><span class=\"T100\">48<\/span><\/p><p class=\"P132\"><span>X9C102 steps = 49 + 2 = <\/span><span class=\"T100\">51<\/span><\/p><p class=\"P135\"><span>Let\u2019s recheck the R obtained :<\/span><\/p><p class=\"P135\"><span>24*(100 000\/99) + 48 *(10 000\/99) + 51 * (1000\/99) = <\/span>&#x200b;&#x200b;&nbsp;<span>29606.06 (~29608 being the R value above that we approximated) <\/span><\/p><p class=\"P132\">&nbsp;<\/p><p class=\"P23\"><span>Compound oscillator with <\/span><span class=\"T101\">arbitrary<\/span><span> pulse width tuning<\/span><\/p><p class=\"P41\"><span>For a given fundamental frequency and duty_cycle, the two <\/span><span class=\"T68\">sub-oscillator<\/span><span> requested frequencies are determined from theory and their corresponding pote<\/span><span class=\"T29\">n<\/span><span>tiometer settings.<\/span><\/p><p class=\"P42\"><span>Since The <\/span><span class=\"T68\">A<\/span><span>rduino <\/span><span class=\"T68\">P<\/span><span>ulseIn can discriminate between LOW levels and HIGH levels, the frequency of <\/span>&#x200b;&#x200b;&nbsp;<span>individual <\/span><span class=\"T68\">sub-oscillator<\/span><span> can be measured from the compound signal, <\/span><span class=\"T101\">in self-keying mode,<\/span><span> <\/span><span class=\"T101\">without the need to toggle the FSK pin. <\/span><\/p><p class=\"P42\"><span>f_subosc = 1\/(2*t_level)<\/span><\/p><p class=\"P147\"><span>We did not observe 180\u00b0 phase reversals of the compound signal in our setup, which would also switch duty cycle between duty and 1 \u2013 duty, Which is good since it makes identification of the tuned sub-oscillator easier.<\/span><\/p><p class=\"P41\"><span>The tuning method used above would tune the <\/span><span class=\"T68\">sub-oscillator<\/span><span> with the <\/span><span class=\"T27\">highest<\/span><span> frequency first. Using PulseIn (LOW \/ HIGH) <\/span><span class=\"T28\">the sub-oscillator frequency is extracted and tuned.<\/span><\/p><p class=\"P41\"><span>The<\/span><span class=\"T28\">n, the<\/span><span> <\/span><span class=\"T68\">sub-oscillator<\/span><span> with the <\/span><span class=\"T27\">lowest<\/span><span> frequency component would then be <\/span><span class=\"T26\">fine <\/span><span>tuned <\/span><span class=\"T28\">taking into account the fundamental frequency of the compound signal.<\/span><\/p><p class=\"P43\"><span>Using the frequency component of the remaining <\/span><span class=\"T68\">sub-oscillator<\/span><span> instead of the compound signal fundamental frequency for the last step of tuning yields substantial error in our setup. <\/span><span class=\"T29\">Thus it is avoided and instead the fundamental frequency is used in the last sub-oscillator tuning step.<\/span><\/p><p class=\"P44\"><span>The detrimental effect this method has is that it introduces error in the duty cycle setting. However it is less critical than an error in the fundamental frequency.<\/span><\/p><h1 class=\"P152\"><span>Static Tuning Algorithm<\/span><\/h1><p class=\"P39\"><span>If <\/span><span class=\"T24\">the circuit under consideration exhibits deviations from theory or a precise measure of the components could not be achieved, and the tuning time is deemed unacceptably high, as it may be the case for a musical instrument where the fundamental frequency must be set at once, it is possible to use the above tuning algorithm and store the potentiometer values determined for a set of discrete frequencies in EEPROM of flash.<\/span><\/p><p class=\"P63\"><span>While the number of entries in the lookup table is reduced for a single <\/span><span class=\"T68\">sub-oscillator<\/span><span> (usually 12 notes per octave), The number of entries is greatly increased in the case of a compound oscillator based on the two sub-oscillator (for pulse widths different from 0.5).<\/span><\/p><p class=\"P64\"><span>The number of entries will then directly influence the fundamental frequency resolution <\/span>&#x200b;&#x200b;&nbsp;<span>and\/or the duty cycle resolution. <\/span><\/p><p class=\"P25\"><span>Lookup Table memory footprint<\/span><\/p><p class=\"P46\"><span>Each digital potentiometer has a 100 step resolution. A byte memory variable can then store 2 digital potentiometer settings. Each <\/span><span class=\"T68\">sub-oscillator<\/span><span> uses 3 digital potentiometers. For a given frequency, the settings of the two sub-oscilllators <\/span><span class=\"T25\">can be stored using 3 bytes.<\/span><\/p><p class=\"P47\"><span>A two cents <\/span><span class=\"T25\">separation<\/span><span> lookup table <\/span><span class=\"T25\">for frequencies from C3 to C7 would then store 48*50 = 2400 intervals.<\/span><\/p><p class=\"P48\"><span>Such an optimized lookup table would use 7200 bytes of memory. These values would not need to be changed at <\/span><span class=\"T68\">run-time<\/span><span> so burning them in the Arduino Mega flash (256KB) is adequate.<\/span><\/p><p class=\"P26\"><span>Compound oscillator tuning based on lookup tables.<\/span><\/p><p class=\"P44\"><span>As for the dynamic tuning, The two <\/span><span class=\"T68\">sub-oscillator<\/span><span> frequencies are computed from a given waveform with frequency and duty cycle parameters.<\/span><\/p><p class=\"P45\"><span>The <\/span><span class=\"T30\">closest frequency <\/span><span>settings of the digital potentiometers are then extracted from the lookup table<\/span><span class=\"T30\">s.<\/span><\/p><p class=\"P49\"><span>By using <\/span><span class=\"T68\">interpolation<\/span><span> of two adjacent potentiometer settings, further precision of the tuning can be achieved.<\/span><\/p><p class=\"P49\"><span>The downside of the static tuning method is the length of time it takes to create the initial tuning map, <\/span><span class=\"T31\">(or whenever a timing digital potentiometer, capacitor, or XR-2206 chip is replaced) and eventual deviation in case of poor component stability with time.<\/span><\/p><p class=\"P50\"><span>Thus, it is preferred to have both method<\/span><span class=\"T33\">s<\/span><span> at han<\/span><span class=\"T32\">d<\/span><span> and use one or the other, or a combination of both depending on the situation.<\/span><\/p><p class=\"P51\"><span>It should be noted too that the X9C10x digital potentiometers are resilient but simple devices. They are increment\/decrement step based devices with last set value recalled at power-up. The current setting however, cannot be queried. It is then compulsory to store the current setting in RAM to track the current value of the potentiometer by integrating all step changes during the power cycle and taking care not to step out of the setting bounds.<\/span><\/p><p class=\"P51\"><span>A multiple hour operation however has not shown any discrepancies between the in RAM setting and the potentiometer R value. Noise or power supply issues could cause the potentiometer to skip a commanded change, but it was not observed in our breadboard prototype.<\/span><\/p><p class=\"P51\"><span>For good measure, a<\/span><span class=\"T34\">n out of bounds increase\/decrease command can be sent with an increase or decrease value greater than the number of steps to reset the potentiometer to its lower or upper bound.<\/span><\/p><p class=\"P52\"><span>In the case of a musical synthesizer, this should be done when the VCA is at rest, so no <\/span><span class=\"T68\">artifact<\/span><span> sound is played.<\/span><\/p><p class=\"P1\">&nbsp;<\/p><p class=\"P1\">&nbsp;<\/p><p class=\"P1\">&nbsp;<\/p><p class=\"P1\">&nbsp;<\/p><p class=\"P1\">&nbsp;<\/p><p class=\"P1\">&nbsp;<\/p><p class=\"P1\">&nbsp;<\/p><p class=\"P1\">&nbsp;<\/p><p class=\"P1\">&nbsp;<\/p><p class=\"P1\">&nbsp;<\/p><p class=\"P1\">&nbsp;<\/p><p class=\"P1\">&nbsp;<\/p><p class=\"P141\"><span>Voltage Controlled <\/span><span class=\"T35\">operation<\/span><\/p><p class=\"P65\"><span>The XR-2206 can be controlled by a voltage input ranging from 0 to 3V, in the following manner, as <\/span>&nbsp;&#x200b;&#x200b;&nbsp;&#x200b;&#x200b;&#x200b;&#x200b;&nbsp;<span>per the datasheet\u00a0:<\/span><\/p><div data-anchor-type=\"paragraph\" class=\"fr1\" style=\"z-index: 100;height: 8.281cm;width: 13.044cm;\"><img decoding=\"async\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAe0AAAE5CAIAAAAyee+VAAAAA3NCSVQICAjb4U\/gAAAgAElEQVR4nO3dd0AT9\/8\/8DcjiDJVlhtEBa1CFVzgrHHgwD3AEUSqpa1oi61VLBY+VrutQsV+tKJY0DpqLQh+6lZQaxkCdSFIcIASZclOyP3+eH97vzSsACHJwfPxV3K53L3ucnneO+97J9FiGIYAAABnaau7AAAAaBHkOAAAtyHHAQC4DTkOAMBtyHEAAG5DjgMAcBtyHACA25DjAADchhwHAOA25DgAALchxwEAuA05DgDAbchxAABuQ44DAHAbchwAgNuQ4wAA3IYcBwDgNuQ4AAC3IccBALgNOQ4AwG3IcQAAbkOOAwBwG3IcAIDbkOMAANyGHAcA4DbkOAAAtyHHAQC4DTkOAMBtyHEAAG5DjgMAcBtyHACA25DjAADchhwHAOA25DgAALchxwEAuA05DgDAbchxgOYoLCz08vJKT09XdyEAyHHQSBs3bjx+\/Li6q2hIWVnZoUOHnj17pu5CAJDjoJFOnjyZlJSk7ioAuAE5DgDAbchxAABu01V3AQDclpWVtXXrVrmJ48aNW716tVrqgXYIOQ4ckJKS8uOPP2ZkZJibmwsEgunTp6u7ov\/P2NiYz+cTQuLj469evbp582ZCSL9+\/dRdF7QjyHHQdCdOnPD19d2yZYtAIMjMzFy1atXWrVvfeecdddf1f8zNzb28vOjt+\/fvs7cBVAY5DhqtsrJy9erVhw8fnjFjBiFk9OjRFhYWmzdvXrNmjZaWlrqr44Dw8PArV67Q29ra2p06dRo7duycOXM6dOhACNm+fXv\/\/v0XLlyoyKL279\/\/\/PlzuYkfffQRXRSoEXIcNNrVq1f19PRoiFNTp06dOnWqGkviloSEhJiYmJkzZxJCpFLps2fPvL29v\/nmm4SEBD09vZSUFB0dHcUX9fDhQ\/buvXv3pFLphg0bWqVuaArkOGi0Z8+e9enTR91VcJu1tfXBgwfZu5cvX544ceKpU6cWL17cpC9bhYeHs7dTUlJcXV1Pnjypr6+vxFKheZDjoNFMTEyKi4vVXUUdevbsyTCMuqtojvHjx+vo6OTk5BBCNm7cOGjQIIFAcOjQoZcvXxoYGPz000+EkMmTJwcFBfF4vDqXIJFIVqxY4enp6ebmptLSoR7IcVCz2NjYKVOm6Or+61DMzMykN1xcXDIzM3NycthW+bNnz4YPH3737l1TU1NV1pmQkDBy5Ei5Orno4sWLNTU1b7zxBiEkISGBXma4d+\/ejz\/+6OzsHBAQcP\/+\/S1btpiZmX344Yd1LiEsLOzx48eXL19udF1lZWWGhoZKLb9upaWlBgYGKliRZuL8QQnclZ6ePnv27Ozs7NLS0vry0crKasWKFQKB4NixYxYWFkVFRT4+PuPGjVNliAuFQj6fn5WVlZ+fb25urrL1KsuTJ0\/Wr19PCJFKpU+ePImNjR03blztsZsSieTXX381MjIihCQmJl65cqXOHBeLxV999dW7777btWvXRldNs5WjH1w4BN\/nBDUQiUSzZ892dnbOzs7+9ttvG25J7dmzx97evl+\/fra2tj179rSwsKCf\/VWgrKxs9erVNjY2WVlZb7\/9dsMh7uXlFR8fr5rCmqS6ulooFAqFwqdPn3bu3DkkJOTs2bO1R\/v07duXhjghxMzMrLq6us6lnTp1Kjc318\/Pr3WLhqZAexxUSiKR7N6929\/fn941NTVtNBH09fX37t0bEhJCm8N6enqtXyaRSCRHjhxZsWIFvWtoaLhz504VrLc12Nra\/vbbb43O1rFjR9m79TWijx07NnHixG7duimnOFAGtMdBdaKjo83NzdkQ19XVPX36tII9zjwer0ePHqoJ8YSEBFtbW29vb3pXV1d3z5497bn7lcUwzIULF9zd3dVdCPwL2uOgCkKhcOHChbdv35ZIJOxEZ2fncePGqbGq2oRC4bp162JjY2Xr7NWrl4eHhxqr0hwPHz4sKioaPXq0uguBf0GOgyr069evpqZGbuLNmzdb4zuZLRm6YG9vX1VVJTcxOzu7vhF4zeDg4JCamqqspanY48ePCSF9+\/ZVdyHwL1q4lAwqUFZW5unp+fvvv8tOtLGxycjI0KiRfGVlZTt27Pj8889lJ5qamopEIo2qk0O0tBAyrQ7946AKBgYGp0+fzs7OdnZ2ZgPxyZMnR44cUW9hcgwMDLZt25adne3u7s7WWVRUtHv3bvUWBtAAnCrbu02bNuXl5dHbWlpaHTt2tLW1Xbp0qZWVVSut8erVq7Nnzy4vL6cj2zT2GxwJCQnLly9\/8uQJ7Svn6ODx5ikuLt6zZ8\/9+\/d79+79zjvv9OjRo9mLQntcBdAeb+9OnTqVnp5uZmZmZmbWtWvXysrKL7\/80sHB4enTp620xnHjxolEor1799K7np6erbSiFnJ1dc3IyDhw4ICxsTEhRCAQqLsiFSktLR0xYkR0dPTQoUPT0tKGDBkiFArVXRQ0iIH2zc7Obt26dbJT8vLyDAwMNm\/e3NqrLi0tffvttwkh+fn5rb2uligtLQ0ICCCEZGdnq7sWVTh8+LChoeHr168ZhpFKpYMHD\/b392\/20hAyKoD2OMizsrLq0aOHSCSid3Nzc1evXj148ODRo0eHhIQocUUGBgb\/\/e9\/Nb+\/gnaal5aWWltbq7uW5jh69Cifz7e3t58zZ05iYiKdeODAgZ07d\/r5+Q0ePFjuKkV5ebm2tjb9VXEtLS0TE5OSkhI11A0KQ47Dv1RVVYWFhWVkZNDf+C4tLXVxcXn06NH333\/v5+f36aeffvPNN8pdo4aHOEszO\/EbtW3bNh8fn1mzZu3Zs8fc3Hzs2LH3798nhNy9e\/c\/\/\/lPamrqrFmzevbsKfuUBQsWWFlZ0fFFH3300d27d9euXaum8kEx6v5AAGpmZ2enp6dnYmJiYmJibGysra3dpUuXr776ij66d+9eU1PT4uJievfQoUNbtmxRX7HQNOXl5Z06dfruu+\/YKRMmTFi0aBHDMP7+\/h06dCgqKqr9rJqamsDAwA4dOtjZ2XXs2HH58uVlZWXNrgEhowIYEgtk+vTpa9asqamp+f33348cORIVFcX+4U5ycvLQoUPphT5CCPt7I8AJd+\/eLS8vnzx5Mjtl6tSpBw4coLf79etnYmJS+1mfffbZ3r1709LSBgwYkJ+fP3XqVC8vr2PHjqmoaGg65DiQPn36TJs2jRAyY8YMQ0NDd3f38+fPjx07lhAilUrxhy9cJ\/sDWB06dCgrK6O36\/vt35MnT3p7ew8YMIAQYmFh8cknn3h4eFRWVuJI0FjoH4d\/2bFjh52dHf0oTQixtbV98OAB88\/435iYmMWLF6u1QGiCfv36aWlppaWlsVNSU1MbvVpLB6uwd6VSqZ6enuJ\/4wmqhxyHf9HT09u\/f\/+TJ08+\/fRTQsjy5cufP3\/+7bffMgzz6tWroKAgto8FNJ+JicnSpUsDAgLoAPAzZ85ERUWxv+NYHw8Pj8OHD1+7do0Q8vjx423bts2fP1+JvzADyqfuDnpQs9rjxxmG8fPz09HRuXXrFsMwp06dsrS0NDQ05PF4c+bMKSkpUUeZ0EyvXr2aOXOmtra2kZGRiYnJ9u3b6XR\/f39XV9c6n1JTU7Np0yY9Pb0uXbpoa2svWbKkzsuhCkLIqAC+MguNq6mpEQqFXbt2VfFfYoKyvHr1qrCwsHfv3or\/gHt1dXVOTk63bt1a+Aeb+F6+CmAXA0ArQo6rgIaOV2EYJjIy8uTJk7m5uV26dJk6deo777yDy+UAALVp6KnS19c3IiJixYoVtra2eXl5hw4dsrW1vXbtmmr+1gsAlAXtcRXQxF2cn5\/frVu3n3\/+mf0zrTt37gwZMuTw4cNLly5Vb20A0CTIcRXQxHGHZWVldMgqO+WNN97Yv3\/\/wIEDr169Om\/ePPYfwpYvX87+clNKSsr8+fPpQ7\/88suECRPs7OzmzJlz+\/ZtdjlJSUlz5861s7MbP378iRMn6MTk5OTly5dHR0e7uLg4ODh88sknlZWVKtpUAICWU9tImQZNmTKlU6dOq1atOn78+IsXL9jpeXl5WlpaN27cYBgmMzOTEPLGG2\/QhzZu3Dht2jSGYSIiIgwMDHbt2nX16tV169YZGBjk5OQwDPPgwQN9ff1169ZdvXp19+7dnTp1OnHiBMMwcXFxPB7P1tY2Njb23Llz\/fr1mz9\/vhq2GaAt0tiQaUs0dBdXVFQEBwfTbwZraWk5Ozv\/+uuv9KERI0YEBQUxDBMWFjZ8+HBCSF5eHsMwgwYN2rt3L8Mw3bp1+\/LLL9lF8fn8NWvWMAzj4eHh5ubGTt+2bZudnR3DMHFxcYSQixcv0umXLl0ihDx8+FBFm6p5SktLW+8pYrFYLBY3dfnAXchxFdDEfhVCiL6+\/qeffvrgwQOhULh\/\/35jY+N58+YdPnyYEOLu7v7HH38QQs6dO7d06VJbW9uLFy8KhcJ79+65u7vn5ubm5eVdu3btnX+IRCLatZKYmPjixQt2ekJCQkZGRkVFBSGEx+ONHz+ertrV1VVbWzs5OVl9W69OQqHQ0NAwNjZWwfklEsnkyZP79evH\/l55wzO7ubn16tVLkZkBQEGamOOXL1\/et28fvd2nTx9vb+8LFy7MnTv3hx9+IIS4u7v\/+eefhYWFFy9enDRpEp\/Pv3DhQnR09MiRI7t160Z\/F6J37949\/7FgwYJly5YRQl6\/fm1paclOd3FxCQ4Opn8R2bFjR23t\/9sVOjo6Ojo6bBd8U4lEouDg4ODgYC5GlUQimT17toeHx4wZMxT5Ky+ay4QQX19fPp9P\/8eyAdu3b6czOzg4cHH\/aLKysrLg4GArKysHB4eoqKhGXwtoU9T9gaAOoaGhHTt2fP78uezE999\/f9SoUfS2jY3Npk2bLC0tGYY5fvy4tbX1lClTvvjiC4ZhqqqqdHR0Dh06xD7x7Nmz\/\/vf\/xiGGTNmzMqVK9np6enp4eHhUqmU9qs8e\/aMTr979y4hJDk5uall5+fn8\/l8QkhQUFBQUBAhhM\/na\/g\/lskJCQnh8\/kMw0RGRlpZWTXaW+Ln58fn82k\/CZ\/P9\/DwaGDm+Ph4KysrukOCgoLY2yomFovj4+M9PDwiIyPbTA8Pvdrv5+eXnZ0dHx9Pj8O0tDR118Uw6FdRCU3cxUVFRT179hw4cODJkycfP36cmpr63XffdejQ4aeffqIz+Pn5derUydPTk2GYgoICbW1tHR2d+\/fv00dXr15tbW199+5dhmH+\/PNPY2Nj2l0eFRXF4\/F+\/\/13hmGeP3\/u6OhIu8tpji9evLiioqKkpGTKlCnOzs7NKJu+edi\/cMzOzraysqKxyAnZ2dlE5q8yZTO6TkFBQbIziMViKyurkJCQOmfOz8+XSxa1RHlpaamVlZVsO0ZDwq4lxGIx3Zb4+Hg65cyZM7QZod7CKOS4CmjoLs7MzHRzc9PV\/b+vm1pYWOzatYt99Pz584SQAwcO0LvDhw+3t7dnHy0uLl6wYIG2tnbnzp319PTWrl1bU1NDHwoMDOzUqZOxsbGuru7kyZNpiNAc9\/b21tfX5\/F4Li4uQqGwqQXTEGSzKT8\/38rKirbKOdEkF4vFDg4OkZGRslP4fD69pFybXIhTNKzZNJFdVJ0Rr\/oor\/3\/og1\/huCEyMhIPp8fHx9Pdz7dq3JnZTVCjquARu\/i169f379\/PysrSyKRNPW5hYWFGRkZ5eXlctMrKioyMjIKCgrYKTTHKyoq8vLynj592rxSaV8K809TiIY4ne7h4bF161Zl9oW1jtqfQujZ6MyZM7U3tr6mumznCcvDw6O+uAwKCmLP1tAMffr0YV8jGuXkn\/j28\/Oj\/5Wsds17T4HiNPE6J8vQ0NDOzq5v377N+A17U1PT\/v37y\/4TCqWvr9+\/f\/\/OnTvXfgr9n\/hm1voP+kdZz58\/nzRpEp1y584dbW3tyMhITe6Qzc\/Pv3z5sty2mJub\/\/HHHzNmzJC9JhkcHHzt2rW4uLg689fV1VXummdoaOidO3ciIiLq3F2BgYGqHOLp4OBQu4ZmjLNUO7FYnJ2dnZ2dffny5UWLFiUmJkokks8++4zP51tZWYWFhRFCLl++fOHCBXVXim9yqoS6X+V6Xb9+XSAQVFdXK33JbBc2de7cOQMDg8rKyhYukzaLCCHx8fFpaWm0J4FoxmfblqDXPOkZiH5mb\/RsxOfz\/fz8mH9aiJqzByIjI+WOf1onp9HuLD6fTz8k0U9RfD6fDgRQO00OmTZDc3cxHS1eUVGh3MWGhYWNHTtWucukhgwZQmSum9EOSg251tRC9Jqn4t3ZtEOczl+7u1yNSktL6eVoysHBQXPOMS1BN4ruarFYTBsQ9V1zVjHkuApo7i5upRzfuHFjfX+D0kJ03KGlpSV3xx3Wh17zbNI1SdpIrO8yqXrR2uQ+lnFaaWlpSEiIpaWlg4ODlZXVkCFDzpw5oyGdeMhxFdDcnyL7+eefly9fXlFRoa+vf+jQoZcvXxoYGPz000+EkMmTJwcFBfF4vOTk5J07dy5atGjHjh2lpaXTp0\/\/7LPP9PX1y8rKFi9evGPHDtpGfvXqlUAgCAkJuXXrVkBAQEFBgYuLS1RUVGv81aRQKKR9wb6+vubm5kpfvrrQ\/u4mXZMsKyszMDBotYpapK3+CF9CQkKPHj0a\/SdlVWqru1qzqPk8Uj\/Z9vjGjRtNTU35fP6pU6d27Niho6ND\/\/m3vp+4KiwsJIRcunSJLurJkyeEkJSUlAcPHsybN2\/gwIGnTp2qqqpS38YxDMP8+OOPgYGB6q2h3dLkI7+Nwa5WAc4M+ZJIJL\/++quRkREhJDEx8cqVKx9++CEhRCwW79u3b+LEiYQQeiMzM9PMzKzOhQwYMKB\/\/\/4vXryYM2eOKouvU0ZGBv3JRgCAltDocYey+vbtS0OcEGJmZkZ\/F4XgJ64AoN3jTHtcbiQ480+PmyI\/cSWVSlVQoYIiIiLoz0WJRKLq6mp7e3tCyLJly7Zs2aLu0gCAkziT4\/UpKSnJzc3t3r07IeTBgwdisdje3p7H4xFC6G\/SEkKePXvGzq+lpaWWOlkjRoygkX3kyJEXL16sX7+eEGJnZ6feqgCAuzif44SQDz\/88ODBg2KxeP369c7OzkOHDiWE2NjYHD58eNKkScXFxYGBgezMHTt2zM3NffjwYfO+Jtpy9vb2tA1++\/ZtHo9Hf1MXAKDZONM\/3gADA4POnTt37dq1tLSU\/dfNnTt3nj171tDQ0MbGZu7cuWxku7u7v3r1asCAAX\/\/\/bf6SgYAUBpuD+08e\/asm5tbRUVFUVFRTU2N3K+jVFdX5+TkdO\/eXW4Uc1VVVVlZWZcuXVRbrLwHDx6Ul5fTTw+gYgoOao6KivL09FRBPW0Yxo+rALd3MZvj+vr66q4FuETBcEEGtRz2oQpwu19FV1fXwMBA7ZcuAQDUCKdKaI\/QHlcZ7EMV4HZ7HAAAkOMAzbdx48bjx4+ruwpo75DjAM138uTJpKQkdVcB7R1yXJkkEklCQoKHh0dCQgL7x2aqlJyc7OXlJRQK5abfuXPHy8srLy9P9SVB6\/n9999b\/k+E0AYgx5UmNDS0Z8+evr6+s2bN8vX17dmzZ2hoqIprGDBgwIkTJ2r\/GebevXtv3brVrVs3FdcDrUcikSxfvjw3Nzc6OlrdtYCaIceVIz09fe3atZaWlsnJyZ6ensnJyZaWlmvXrk1PT1dlGYaGhosWLZL7F8rq6uojR46sWrVKlZW0GbGxseouoW6fffZZSUkJIWTFihVq+fAHmgM5rhzbt28PCQl544033NzcJBLJ9u3bLSwsgoKC9u\/fr+JKVq1alZGRkZiYyE6JiYl5\/fr1ihUrVFxJ21BUVKTIbNeuXVu2bNmyZcuWL1\/+7rvvnj59ulWrEolEn3\/+Ob1dWVm5e\/fuVl0daDjkuBKUlZUdPXp05cqVtEOjV69eYWFhcXFx\/v7+u3fvLisrU2Uxrq6u9vb2sk3ygwcPzp49uy39yZwGysrKunXrFp\/Pf+utt6ytrVetWhUeHt56q\/Px8WFvV1ZW+vv7q\/gwA42CHFcmXV3dlStXPn\/+fNGiRU36K0vl8vb2Pnr0KP0ddpFIFBcXJ\/u2z8vLCwgImDJlyqxZs\/bs2SMWi9VVZxtjYWHh5eW1cuXKjz\/+eP369adOnWqlFaWnp9fu7cHvwLRnyHElMDAwWLJkSXh4eEJCwtKlS9PS0o4dOxYcHBweHu7n56f6\/xpesWLFy5cvL1y4QAiJjIzs0aMHn8+nDz18+HDo0KEVFRVbtmzx9fU9dOjQ8uXLVVyeJrOzs1u9enWdbVuhUDh69OjVq1c38HSJRCKRSPLy8i5cuPDWW2+1RoUSiWT27Nm1O8TPnj2r4osxoEHU87egbU5aWpqVlRUhJD4+nmGY\/Px8ejctLU0t9cyZM2fFihUMwzg6OgYFBbHT3dzcNmzYwN59+fJl7969Hz16pIYS1aq+I5\/2jBkbG0dERDAMw+fzIyMjxWJxQEAAfb9kZ2fLzm9ra7tx40aGYeR6UWxsbB4\/ftwalUdERNCPerq6uuzpmbK1tW2NNbYQQkYFsIuVJiQkhBDC5\/MDAwP5fL6lpaVsgKpYdHS0sbFxSkqKtrY2GyhlZWU6Ojr37t1TV1Wao75wEYvFpqamNCVtbW3d3d19fX2NjY1pULq7u8vNL5vjrq6uYrFYLBa\/evXqgw8+sLOzq6mpUW7ZpaWltBhTU9P4+Pjs7GxCSGlpqbu7u56eHiGEnn40CnJcBbCLlUksFp85c4YQQhtxaqxEIpF0797dxcXFzc2Nnfjo0SNCSHl5uRoL0xANhEt8fLzstQ3ZP40qLS2t71k0x9m7jx8\/JoQ8f\/5cuWXTjwUHDhygRxfNcfpQWlqajY2NqampctfYcshxFUD\/uDLp6upOnz6dEOLi4qLG65yEEB0dHYFAcP36ddkrnCYmJoSQ4uJi9dXFAa6urs7OzuxderlYT0\/vwIEDjV7qoP3jJSUlP\/74Y58+fSwtLZVb27p160pLS1euXFn76BoyZEhGRsbVq1eVu0bgBPykpPJpaWllZ2dbW1srMvP+\/fufPn1Kb3t7e\/fu3bsVKyNk0KBBn3zyiexY8mHDhn399deTJk1q1fVqmoZ\/TFUoFNrY2MhOMTU1FYlEDZybDx48uHLlSnrb2Nj4zTff3Llz57Bhw5RVcAN1avhbGL9bqwJoj6vZ1atXf\/tHQUFBa6\/uk08+2bRpU3JyMiFEIpFs2bKlsLDQ1dW1tdfLLdbW1l5eXuxdXV3dmJiYhj9geXl5sR9yi4uLr1y50toh3iSVlZV8Pj8rK0vdhUCrwKlS+TS8AbJ79+7PP\/+8U6dORUVFgwcP\/umnnwYMGKDuolSt0deorKzM0NCQ3h41atSNGzdUUlfTKN4eLy0tNTIySklJefPNN1VQmCwNfzu0DdjFyqf5By7DMC9evOjUqRM7EqO9UeQ1Cg8P9\/HxkUqliveSqZhEIuHxeMhxwC5WPhy4mk+R10gikRgYGLi7u2vyP0U0uiEjRowoKSlhGCYjI8Pa2rpDhw6EkJs3b9LhlZpQIbScOsdUAGgyXV3dJ0+eWFhYqLuQFtmwYUN1dXVVVZWPj8\/bb79NL6R37NhR3XWBMuFUqXxogGi+NvMaKbgh6Fdp2zBeBQCA25Dj0E6JRCJ1l6A6HTt2jIuLs7W1VXch0CqQ49AeffDBBw4ODu0nynV0dKZNm2ZkZKTuQqBVoOtK+dAhyAnBwcHXrl2Li4tT7y8otJDmH2yaX2EbgPY4tFOBgYFjx46l\/8On7loAWgSnSuVDA4RDPD09zc3Nd+3ape5CmknzDzbNr7ANwC5WPhy4XCESiSwsLOLj47n7CzOaf7BpfoVtAPpVoJ2SSCQODg4hISHcDXEACqdK5UMDhBPoHxNHRUWpu5AW0fyDTfMrbAM4fKUeoNlCQ0Pv3LmTlJSk7kIAlACnSuVDA0TDJSQkLFiwIC0tzdzcXN21tJTmH2yaX2EbgP5xaF9EItGCBQtOnDjRBkJcWZKTk9evXy8QCPbv309HYSYnJ3t5eQmFQrk579y54+XllZeXp4YqoX7IcWhHJBIJn88PCAjAtU1WXFzcqFGj6FXfHTt2zJkzhxAyYMCAEydOREREyM28d+\/eW7dudevWTR2VQr3wkUf58EFSY3l6eopEonPnzqm7EKVp+cE2dOjQMWPGhISEEELS0tIcHR0TExOdnJy8vb0TEhIePHjAzlldXd29e\/dNmzb5+\/urskJoFK5zQnsRFRV16dKlJ0+eqLsQzfLzzz936dKF3qZ\/ZVdWVkYIWbVqVXh4eGJiorOzM300Jibm9evXsn\/S3aiEhARCiJaWlpKLVipOf4GAwqlS+dAA0Uzp6ekODg5t4E0rS1kHW0FBwV9\/\/bV161Z9ff2LFy9qa2sTQgYOHDht2rSdO3fSedzd3fX19Y8dO9akJSckJChxh+PNVSf0j0N7MWTIkPj4+DFjxtBGIsgKDw9\/7733UlJSpk6dyjafvb29jx49WlNTQwgRiURxcXE+Pj5NXXJbOmtqLJzcmsDR0TEtLU1ZS3NwcEhNTVXW0kBBCQkJY8aMabRV\/ueff4aFhbF3dXV1u3TpMmHChOnTp7d+jU2g3PZpYmLi+PHjt27d+vHHHxNCXrx40bNnzzNnzkyZMuX777\/\/\/vvvHz16RJvq6oL2eJ3QHm+C1NRURnkQ4mrh6uqqSKs8Ozv70KFDRkZGZmZmZmZmBgYGSUlJM2bM2Lx5s8pKVT1nZ+d58+bFxMTQu5aWljNnzoyMjCSEHDx40NvbW70hDvVSYjABcEV8fDwhJD4+vr4Zjhw5QggpLCyUnejv76+np1daWtr6BSqqhW\/hyspKGxub48ePs1Pc3d2nTJnC3o2OjjY2Nk5JSdHW1n78+HFL1qUUiKw64ezaHGVlZVrNVfu7FaB6CrbK5Tg5OVVXVxcXF7deYSrWoUMHR0fH4ODg58+fE81CZy8AACAASURBVEKOHj0aExPj7e3NzuDm5mZoaPjee+9NnTq1V69e6qsUGoIcbw4DA4Nmnzmtra3VXT4Q0vQoz8zM\/O6774YMGdK9e\/fWrk2V9u3b17t37549exobG\/v6+oaFhS1evJh9VEdHRyAQXL9+vRlXOEFlcNEA2rX6\/kfi6NGjHh4exsbGdPBGdXV1ZWXluHHj9u\/f369fP3VUWjdlXfcrLCwsLCy0trbW8B5wXOesE74HBO1XcHCwSCSq\/e1z1oEDBwwMDPLy8oKDg4cOHfrzzz936tRJlRWqTOfOnTt37qzuKqCZkOPQTgUHB588eTIpKamB\/1meNGmSqakpIWTixIlOTk4LFy6MiYnR8G8nQjuk0Z+hAFpJcHBwWFjY+fPnGwhxWdbW1j\/88ENsbOyePXtauzaApkKOt1RCQkKjY1TwBUKNQkO8qb8\/vmTJkpkzZ27atOnp06etVxtAMyDHW8rV1bXRMSr4arLmaF6IUz\/88APDMO+9915rFAbQbLj4C+1IS0JcM7W38RvtbXsVhPY4tBdRUVFtLMQBKOS4Mnl6erJ94o6OjuouB\/5lyJAh9FuLAG0MPqRAOxIVFeXv7\/\/kyRMFh6lovvbWz9DetldB2CnQvqxbt+7u3btt5q\/d2luutbftVRB2CrQvEonEyclp\/vz5gYGB6q5FCRTPtf3797MjJr29vXv37t2adbUW5Hid2sinSwAF6erqnj9\/3sHBYdKkSe1qPOjVq1fZf0GZM2cOR3Mc6oSTG7RH9F+B8vPzuT52pb21TxXZ3sOHD2tray9dupSdkpqaGhkZ+eLFiwEDBrzzzjtdu3Zt5TJVDeNVoD1ydXUNCQlxcHCQSCTqrgWU6dy5c6tXr05PT2en\/P7778OHD3\/16pWDg8PZs2cHDx7c9oYtIcehnXr\/\/fcnTpzo5uam7kJAOcrKygIDA2fNmsXj8WSnf\/LJJ35+fj\/99JO\/v\/\/FixdNTExq\/0wx1yHHof2KiIjIz88PDQ1VdyGgBMePH\/\/tt9\/Onj07aNAgdqJUKvXy8vLy8qJ3eTxev3798vLy1FNiq0GOQ7tmYWGh7hKaTyQSqbsElYqKimrg0blz56ampk6YMEF2ora29scffzx48GB69+nTp5cuXRo5cmTrFakWGK8C7ZREInFzcxs7duz777+v7lqaqaysTN0lqFRMTEwDj5qYmDT89OLi4rlz59rZ2a1cuVKpdakf2uPQHrEh3jZGkUOjcnNzJ0yYUF1dffbsWX19fXWXo2TIcWiPxo4dixBvP9LT00eNGtW1a9dr165xuietPshxaI9u3rzJxRAPDw\/\/7rvvZMdKLly4kL2dkJAwffp0ddTV6hISEiZPnnzkyBFCSHBwsFAoVPy5f\/\/99\/jx4ydNmhQXF2dsbNxaJaoVchyAMwYMGODv729ubh4dHU2n0B\/8EolEs2fPHjNmjNyQu7bBw8NjzJgxs2fPFovF+fn59+\/ft7GxkR0h3gCpVLpkyRJLS8sVK1YkJCRcvnz58uXLCj6XQ9rXl8EAKO5+DXL06NE3b97U1dV1dnb++uuvf\/jhh+HDh\/v7+9NHs7Ozra2t1VqgkolEIgsLCz6fTwiJi4srLCx0cHCwsLBgGIb9mQE5o0aNmjBhwhdffEEI+euvv0aMGCE3w4wZMxq+ZMo5XD2aAVqCuzkuFAptbGzYuzweTywW09sBAQHbtm1TU12tJTg4mBCyefNmNze3QYMGXb58ef78+Zs3b+7Vq9eNGzfa2Emr2bh6NAO0BHdznBCycePGr776Sm6isbHxq1ev2szvqrMcHR337Nnj6upaVlZmaGjo4OCQmppKCPH09Jw5c6anp6e6C9QI6B8H4JjAwEC563W6urqhoaFtL8QJIfPnz79w4QIhZM6cOXw+n37\/ViKRXLp0ycXFRd3VaYo2+MIDtG0GBgahoaHe3t7swJU+ffosX75cvVW1El9fXwsLi1evXhGZ\/vHr16+bm5ujU4WF9jgA93h4ePTq1Yve1tPTO3XqlHrraT3m5uZLlizZvXv37Nmz6ZSJEyceOXIkMjJSvYVpFOQ4APfo6uqePn2adqRMmzZtyJAh6q6oFR05ciQ+Pv706dM8Hs\/CwsLe3j47O7ttb3JTcfhqD0Czcfo6J2vy5Mnnz58vLS01MDBQdy2qIBKJ9PT0Gv0dlXaoLRzNAE3VNnK8uLj4woUL8+bNU3chqtM2Xjilw06B9ghxwFF44eqE\/nFoUzw9PbUUQAhRZDYtLa329tuwwEU4uUF7JBQKMWqNi9AerxN2CgBwBnK8TuhXAQDgNuQ4tE1lZWUK9oDXlpCQoO7yAZoAH1IAgDPQr1IntMcBALgNOQ4AwG3IcWj7EhISGu0Tp\/9XAMBF6GwCAM5A\/3id0B4HAOA25DgAqJkiHV8UUfgHFdrV+FHkOLQv69atY9\/njo6O6i4HCCHE1dWVaQWurq7q3jIVQWcTAAC3oT0OAMBtyHEA0CDBwcGK94DLas+9ZOhXAQDgNrTHAQC4DTkOABrK0dGx0e4U\/GETQb8KAADXoT0OAMBtyHEAAG5DjgMAcBtyHACA25DjAMAN7M9ptZ8fwFIQxqsAAHAb2uMAANyGHAcA4DbkOAAAtyHHAQC4DTkOAMBtyHEAAG5DjgMAcBtyHACA25DjAADchhwHAOA25DgAALchxwEAuA05DgDAbchxAABuQ44DAHAbchwAgNuQ4wAA3IYcBwDgNuQ4AAC3IccBALgNOQ4AwG3IcQAAbkOOAwBwG3IcAIDbkOMAANyGHAcA4DbkOAAAtyHHAQC4DTkOAMBtyHEAAG5DjgMAcBtyHACA25DjAADchhwHAOA25DgAALchxwEAuA05DgDAbchxAABuQ44DAHAbchwAgNuQ4wAA3IYcBwDgNuQ4AAC3IccBALgNOQ4AwG3IcQAAbkOOAwBwG3IcAIDbkOMAANyGHAcA4DbkOAAAtyHHAQC4DTkOAMBtyHEAAG5DjgMAcBtyHACA25DjAADchhwHAOA25DgAALchxwEAuA05DgDAbchxAABuQ44DAHAbchwAgNuQ4wAA3IYcBwDgNuQ4AAC3IccBALgNOQ4AwG3IcQAAbkOOAwBwG3IcAIDbkOMAANyGHAcA4DbkOAAAtyHHAQC4DTkOAMBtyHEAAG5DjgMAcJtuC59\/5cqVioqKOh9ycXExNjZ+\/Pjx3bt3CSHjx4\/v2LFjC1fXGnJycm7cuNGlS5cpU6bIPVRUVHTz5k2xWOzk5NS9e\/eWrys9PT0+Pl4kEhkbG48cOXL06NGyj96+ffv58+cdO3YcP358y9dVn5aspeH6uai0tDQ+Pp4QMmTIkB49erTeitLS0v7444+qqiobG5s5c+Z06tSp5ct89uxZenp6nQ9ZWFgMGzas5atoS8rLyy9evHj\/\/v3y8nIzM7PRo0cPHTpU3UUpCdMyffr0qW\/Jf\/31F8MwISEh9G52dnYL19VKJk+eTAhxcnKSm37gwAH2zaajo7N58+aWrEUoFE6cOFFuFzk5Od2\/f5+dZ\/78+YSQPn36tGRFjaq9lpcvX7777rvXrl1r4FmK1M8JYrF4586d33\/\/Pb3L5mB4eHjrrTQyMlJb+\/9\/9s3Pz1fKYsPDw+t7982YMUMpq2gzYmJiLCws5PbSxIkTlfVaqFdL2+OUlpaWnp6e3ETZA1czSaVSPz+\/c+fO1X4oMTHRx8dHKpVaWlp27NhRKBRu377dzs5uxYoVzVjR06dPR48enZeXRwgxMzPr0aNHVlZWaWlpUlISn89PTk42Nzdv6cY0V2pq6sSJEwsLCxcuXFjfPJpcf5NUV1c7Ojrev39\/69atqlzvnj17pFKpoaHhhx9+qK2trfTdxePx5N5utd+P7VlWVtb8+fOrqqq0tbWdnJwMDQ1TU1MLCgouXbq0ePHiixcvqrvAFmvheYC2x0eOHFnfDBUVFSKRSCQS1dTUtHBdynXjxg1XV1d2P8i1xxctWkQIMTc3Lyoqkkgk9CPqG2+80bx1TZ8+na7lq6++kkgkDMOUlJR4enrSiR999BGdraSkRCQSFRQUtHDTGia3lujoaFrGpUuXWli\/5nv9+jWteevWrXSKRCKhx2dlZWXrrdfW1pYQMmvWLOUulm2Px8XFKXfJbQw9bWtpaSUnJ9MppaWlbKfK3bt31Vtey7V6jp8\/f14gEAgEApFIRKe8fv1669atI0eOHD58+NatW8vLy+kMV65coTP4+PgIBILDhw+zCwkODhYIBJ9\/\/rns3cOHD0dFRTk7O0+dOvX27dsMw5SVle3YsWPMmDGOjo7z58+PjY2tr6rKykr6Evbo0YNuglyOm5qaEkJWrFhB73799dd0\/qdPnzZ1Fz148IA+d9GiRXI1WFtbu7m5\/fjjj3RKaGioQCDw9\/end48dOyYQCAICApKTk996663Ro0f\/8ssvDMPU1NRERETMnDnTwcHhrbfeCggIePHiBbvYRvee7FpiYmImTZpEy5s6daq3t3dL6mcYpri4+Ouvv+bz+Q4ODlOmTAkJCamoqGAf\/d\/\/\/icQCN5\/\/\/3Kysrt27e7uLgMGzbsww8\/fPnyJZ0hJyeHHgxPnz49cuTIlClTHB0dPT0909PTZVd9\/fr1JUuWODo6uri4BAQEvHr1SvbRkpKS7du3T5gwwdHRcfr06Xv27KEZnZmZuXTpUrotjo6OAoEgIyPj6dOndI2y3UoNb8WuXbsEAkFoaOizZ8\/efffdYcOGjRkz5rvvvqNnODlpaWkCgcDAwIAQ0qdPH4FAEBkZqcha6jvIZTWa49XV1XTrbt68uWnTpqFDh3p6ehYXFze6D6uqqr755htXV1cnJ6cNGza8fv16zZo17Js0MzOTLpb2ncqu6OTJk4q8TAruw6tXry5dunTo0KEuLi5vv\/02PQyqq6vpQb579252zpqamtWrVwsEgrCwsNr74f3336c5\/vfff7MTz5496+vr+9FHHz148CAxMZHWz3azRERECASClStXVlVV0Sm7d+8WCARsC+Dx48dr1651dnZ2cnLy8fGROxk0kEUZGRnsuvbu3Ttu3Lhhw4Z98MEHbEI2Q6vnuFz\/eHl5uZOTk+wHgnHjxtEb+\/bto0\/p0KEDIeS9995jFzJy5EhCiKurq+zdoUOHsp8lHz58WFJSUvuqxX\/+8586q6qoqNDV1V26dKlIJKKX+2Rz\/NmzZ\/TpgYGBdMrx48fplHPnzjV1F+3Zs4c+V\/YQr5Ncz\/XGjRvpmcbS0pLdRTU1NXQ2Wb179378+LGCe092LTt27JBdjo6OTkvqz8rK6tu3r1xtQ4cOZWN6586dhBBjY2PZT0KEEBcXFzpDSkoKncJ+AqCMjY3Zo\/zQoUNyfQjW1tZPnjyhj+bn59vZ2cnVMHXq1Orq6hs3bshNv3btWu3+8Ua3Yvbs2YQQJycn9nWh6ryCEhcXJ7eodevWKbKWOg9yuYU3muPsGAT2TdezZ0+pVNrwPpRIJFOnTpV9dPTo0XSQAn2Tsnvy+PHjcisKCAhQ5GVSZB9+\/\/33Wlpaso\/q6en98ccfDMPMnDmTEGJqasqG7OXLl+k87GlS1i+\/\/EIf7dChw8KFC8PDw9n3CyUSiXR0dAghhw4dolOcnZ3pU65evcowTE1NDe0N27BhA8MwqampXbp0ka1NX1+f1sYwTMNZdO3aNTqFbUJRffv2bXZnvXJyXE9Pr8e\/nTlzhs4gl+Pbtm2jd729vdPT048fP961a1c6pak5TggZNmzYtm3bfH19GYZZv349IURHR2fv3r13795dt24dIURbWzs1NbV22TU1NTk5OfR27RxPS0ujy\/\/mm2\/oFPbdeOTIkabuog0bNtDn1lmJrDpznBBiYWERFBTk4eFRWFj4448\/0olvv\/32n3\/+GRERoa+vT2Q+OjQpx1NSUt599126wA8++EC2Zd2M+keNGkUI0dXV3bJlS2xsrJ+fH30fzp49m85Ac5wQ0q9fv\/Pnz\/\/1119svtDGJpvjnTp1Onjw4N9\/\/+3l5UWn0CuTeXl5NFDGjBmTlJR07ty5Xr16EULmz59PV+Hh4UEI4fF43333XVJS0qZNm+jTDxw48OLFi++\/\/57enTFjRlhYWF5eXu0cb3QraAYRQqZPn56SkhIXF2diYkII6dy5c+198uTJk3379tGD3MnJad++fTdu3FBkLXUe5HLYHKcXLViTJk2iM8iOJZs3b15gYODOnTsb3YfsMTZt2rT4+PhffvmFvUKoYI43uopG9+Hdu3dpsLq4uFy+fPncuXP9+vUjhNjY2EgkkpMnT9Knx8TE0PnXrl1LCDE2Ni4vL6+9o6RSKY1+WY6OjmFhYWx\/L82BJUuWMAxTWFjInoSCgoIYhrl58ya9e\/36dYZhaEx37949Li4uJSVlwoQJhJBu3brR80rDWcTmOI\/H++KLLxISEmjxhBAfH5963luNaK3xKuwLLJfjdPt79+4tFovpDGFhYbKHCKNwjmtra7O9HFKplJ4e6cvAMExNTY21tTVRoPe2do7funWLlrRz50465Y8\/\/qBTmjGq4Z133qHPbXRoR305LnvycHFxIYT07duXPf5CQ0ODgoLYFlmTcpxRoH9cwfqvX79OZ2M\/xDAMs2rVKjqRtiXZHP\/tt9\/oDL\/99hudcvr0aUYmx9evX09nKCoqolM++OADhmHYIGaLOXDgACFEV1e3qKiorKyMx+MRQry8vNga1q9f\/+2336akpDB19Y\/L5bgiW0EzSEdHh+0ooO9bQgjtsqiNvk3YFFNkLbUP8trqG6\/CXshh43XgwIFSqZRObHgfMgzz1ltvEUI6d+5cUlJCZ4iIiKBPUTDHG11Fo\/tw8+bN9C47zu3cuXMfffRRZGRkeXl5dXW1mZkZIWT58uUMw0ilUjpmtM6OQUoikezevbv2Z7Xp06fTzhxac5cuXSQSyalTp8g\/IzUmTJjAMMynn35KCOnWrZtUKr19+zZ97t69e+nCHz16RKecOXOm0Sxic1z23EyH8BobGzfvOqJyxqvY2tp+9tlnslNGjBhR55wPHz4khDg5Oenq\/t+q5T5iK87a2pod8Jubm1tQUEAIuXPnDtuCq6qqIoSwO11x7Dj3mpoaekMsFss9pDhjY2N6g42kppLdRXQw\/ptvvsm2F957773mLVZBCtbPnvzc3d3ZiXPmzPnpp58IIYmJibQ9RQ0aNIjeoO9GIrOH5WYwMTHR1dWVSCR0hr\/\/\/ptO\/\/zzz+keyM\/PJ4RIJJI7d+4YGBjQ2WSHTrMnD0UovhWWlpbsJ+v6tqLla5E9yBvw0UcfOTg4sHfp1R1Zo0ePZvsoGt6HLi4uGRkZhJBhw4YZGRnROceMGaPIdrEaXQV9tIF9SI\/zLl260AQkhPD5fD6fz65i6dKlu3btOn36dFVVVVJSEu0LbWA4mY6Oztq1a9euXfvw4cOLFy\/+8ccf0dHRYrE4Njb2559\/FggEc+fOXb9+fUFBwZ9\/\/nnhwgVCyLJlyyIiIm7cuFFZWXnmzBlCyJw5c2gnO13myZMn2VOalpYWwzC3b992dHRUMIvYLmVCyPjx42\/cuFFSUpKfn29lZaXwnv4\/yslxMzOzZcuWKTIn\/awk2+1Fp9TGMAx7u863h2z\/FBu4WVlZubm57HS206ZJ2EOqpKRE7kbtIaiNGjhwIL1x+\/Zt9sMytXjx4v79+8+bN6\/hr2zIbik9IGhfSgMa3XuKU7B+di2GhobsDOxtWjaLPR2yr75sweTf50sdHR3aYiIyL3RsbCw7A32Vy8vL2cZBo\/unPopvhVyFdW5Fy9ci1wlbn7feemvatGkNzFDnm6XOfUgIkUqlhBB6bZZid6wcdnvljrFGV0E1sA8bPc5Xrly5a9eukpKSs2fPXrlyhRDSp08f2WRkSSSSyMjI3Nzcvn370iO2f\/\/+a9as+fPPP2nv1sWLFwUCQe\/evYcNG5acnBwbG0tHIi5btiwpKenOnTu\/\/vor\/aQ4b9482a27desWu2foHhaLxYpnkWz0sbuiee9W5eS44qytrVNTU1NSUqRSKT1R1776RDdPtmvv1atXtRclO0K2R48etNX27rvvsmNLampq6jtJNMzKysrU1LSoqIh+eiCEZGZm0htsO1FxU6dO5fF4YrH4v\/\/9r4+PD1vS9evXjx07Rm80PIJVdkt79uz58OFD2mKijh07lpycPHjwYE9PT21tbQX3HkvuUlKz62fbTbdv32Y\/vbL9JP379294LQpi+\/GEQiENPtlXmX3byO6fbdu2MQzj4uIyadKkRjdWNVuh+FqUNQxcdjkN70NCSK9evXJzc7Oystgp7BUjip2ZPczkjrFGV9Gonj17EkKeP39eUlJCPxGmp6f\/97\/\/HTx48Lx588zNzR0dHYcOHZqSknL06FGaIcuXL6\/z9dXV1fX393\/16pWNjc3cuXPZXdG\/f3\/aiJZIJHTK3Llzk5OTIyMjhUJhhw4dxowZw+fz79y5QzuLunTpQvvB2a2LjIycMWMG+efcQ9deU1OjYBalp6ezX9qgCcPj8ZrRUiSq\/32VuXPnEkKys7M\/\/PDDnJyc2NjYgIAAuXnoiev69ev0nHzmzJmcnJzai5Jr1NNvG0ZGRtJPcA8fPjQyMho0aNChQ4eaUSdt3cTExDx+\/Li0tDQyMpIQ4uzsTC+vJyQkbNiwYcOGDYWFhY0uqlu3bm+\/\/TYhJDk5edasWYmJiXl5eSdOnGBfQrZnsD6yW0oLS0xMjIqKIoS8fPly8+bNX3755a5du+h5UcG9x2IbFAUFBexwzGbUP23aNNqC+\/TTT2kE3L59+4svviCE2NrayjXkm41++ZbI9JZ4e3ubm5tPnjy5oqKie\/fuQ4YMIYQcPHiQdnzfunUrODg4MDDw7NmzchvLMEx1dbXc8lWzFYqvpdETj4Jkl9PwPmRnuHPnzpEjRwghBQUFtHeYxTYt2fYHO6hJwVU0ih7nUql006ZNNTU1YrE4ODg4NDTUz8+PDcSVK1cSQo4fP06P8AY6VRYsWEAIyc7OXrx4cXp6enFxcXJy8uLFi2n+jh07ls5G00koFJJ\/hujQDaFTZs2aRY8fJyenzp07E0JCQ0Np8\/ngwYNGRkbDhw+\/ffu24lkUFhZ2\/\/59QkhaWtqJEydoJfT61tatWzds2MAOs2lcM\/rUZTV13OHLly\/pmZbFdgWy1znpy0MI6du376hRo7S0tOiIH7nrnOxdKj4+nu7lrl27Tps2jX7MMTU1FQqFDW9C7eucDMOkpqbS87aenh777Xz26lxTf2ygvLycPVbkyF6Zqe86J3tNmGGYZ8+esd8GNDMzo6+6trZ2dHS0gntPbi337t2j8+vp6enr679+\/brZ9e\/fv59O1NLSYseTdejQgf1mAPuuZsefyV0xY9uksuPf5a7curm50XlGjBjBRh69CsowTFxcHD2faWlpWVlZ0dtmZmbs8CRamJaWlpGRUXR0dO3xKo1uBb1GZ2try1bIDt+sbwiw3HVORdZS50EuR\/Fxh+xwQEX24YsXL9iuRVtbWwMDAzY62TepjY0NneLk5GRvb9+hQwfamc6uqOFVNLoPJRIJe8gZGhrS0Szk38MWXr58yTauR40a1cCOys3Nre\/3kd58803ZYfvshyE6TPD169f0yjn551I89eWXX7L7Z8qUKTR5nJ2d6VXKhrOIvc6pq6vL4\/H69+9PZ9bR0WG\/xEDPlAKBoIGNkqXqHGcY5tGjR7NnzzY0NOzcuTPtpaIzRERE0BlevHjB9nOZmJjs3LlzzZo1pLEcZxgmNjZ2wIAB7Cs0cuRI9utbDagzxxmG+d\/\/\/kcHS9EjKSQkpIGNalRlZeVnn30m+4Xs7t2779y5kx1FwCiW4wzD3Lt3T\/Ynrvr06XP06FH20Ub3Xu3fV2Fb1jwer74tUqR+hmFOnTr1xhtvsPMMHz6cDrOjlJLjJSUlq1atohMJIUZGRps3b5a9yh8dHU2\/P0m5uLgkJSWxj+7atYtNpZ9\/\/rnO31dpeCuUkuONrqVVc7zRffjXX3+xDax+\/frJjVdhGObmzZts90Lfvn3Pnz9PO4jYFTW8CkX2YXFxsZeXFxujRkZGn376qdxwDva7FHv27GlgRzEMk5OTs2DBAnZpdIE+Pj7sgH3q448\/po\/S8YUMw9DTiYGBgWzcMwzz9ddfs1cdtLW1FyxYIPtFpwayiM3x0NBQdjyIlZUV20xkmp7jWoxiV2aU5datW1KptHfv3t26daOf9ZKSkuiQ+5iYGNrZROXk5BQXFw8YMKCp16xycnIKCgq6d+8u9xWDZpBKpffu3auqqho4cKBSfqxRKpVmZmYWFhZ27drV1ta2JZ+aX7x4kZuba2Fh0b1799rLaerey8\/Pz8vLs7GxYUentKT+Z8+e0cvu3bp1U3BzmqqsrOzRo0c8Hs\/GxoYNC1mPHj0qKSnp1atX7etLpaWlWVlZlpaWDQ8MUMFWqGwtdWp4HzIMc+\/ePS0tLXt7+6ysLNpQ3bdvn4+PD51BKpXev39fR0dnwIAB9R0Jjb5MjaIvlqGhYe\/evWVTmPLw8Dh69Kienl5eXp4i14QrKioePnxYUVHRuXNnGxub2gtskpqamszMzKqqKmtr6zrfOHVmUXx8PD03REdHz5w5MzMzs7Ky0t7evr6LyQpRMO+VhbYNCSEff\/zxy5cvs7Ky6Bc3dHR08vLyVFwMACiCveDPtsfV6+nTp\/fu3QsLC6P9ZgsXLlR3RU3AtsfZvtCWU\/V1znfeeYc2bL\/66iszMzNbW1t6LWXNmjXNGDUJAO3QqVOnBg4c6OvrK5VK9fX1a4+VaG9UPe7wzTffvHHjxq5duxITEwsKCng8nq2t7eLFi9kPawCgaYyMjBYvXkwIkb3woEZDhgwZOHBgVVWVvb395s2bHR0d1V1RE5ibm9OdqcT\/LVF1\/zgAACiXpv\/VAwAANAw5DgDAbchxAABuQ44DAHAbchwAgNuQ4wAA3IYcwfySGwAAADBJREFUBwDgNuQ4AAC3IccBALgNOQ4AwG3IcQAAbkOOAwBwG3IcAIDbkOMAANz2\/wAK0glD3F3NwAAAAABJRU5ErkJggg==\" style=\"z-index: 100;width: 13.044cm;height: 8.281cm;width: 13.044cm;\" alt=\"\"\/><\/div><p class=\"P65\"><span>The voltage to frequency formula is then\u00a0:<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P65\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:mi>f<\/default:mi><default:mo stretchy=\"false\">=<\/default:mo><default:mfrac><default:mn>1<\/default:mn><default:mi mathvariant=\"italic\">RC<\/default:mi><\/default:mfrac><\/default:mrow><default:mrow><default:mo fence=\"true\" stretchy=\"false\">(<\/default:mo><default:mrow><default:mrow><default:mrow><default:mn>1<\/default:mn><default:mo stretchy=\"false\">+<\/default:mo><default:mfrac><default:mi>R<\/default:mi><default:msub><default:mi>R<\/default:mi><default:mi>C<\/default:mi><\/default:msub><\/default:mfrac><\/default:mrow><default:mrow><default:mo fence=\"true\" stretchy=\"false\">(<\/default:mo><default:mrow><default:mrow><default:mn>1<\/default:mn><default:mo stretchy=\"false\">\u2212<\/default:mo><default:mfrac><default:msub><default:mi>V<\/default:mi><default:mi>C<\/default:mi><\/default:msub><default:mn>3<\/default:mn><\/default:mfrac><\/default:mrow><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">)<\/default:mo><\/default:mrow><\/default:mrow><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">)<\/default:mo><\/default:mrow><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">f = {1} over {RC} ( 1 + {R} over { R_{C}} (1 - {V_{C}} over {3} ) )\n<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p class=\"P66\"><span>In this setup, the sweep input is connected to the output pin of a <\/span><span class=\"T36\">voltage<\/span><span> DAC. <\/span><span class=\"T36\">The output stage of the DAC must be able to sink current. <\/span><\/p><p class=\"P67\"><span>The voltage range of the DAC will be restricted to [0, 3V]<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P69\"><span>For safe and reliable operation, We have to size <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi>C<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_C<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span>&#x200b;&#x200b;&nbsp;<span>and R so that <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:msub><default:mi>I<\/default:mi><default:mi>t<\/default:mi><\/default:msub><default:mo stretchy=\"false\">\u2a7d<\/default:mo><default:mn>3<\/default:mn><\/default:mrow><default:mi mathvariant=\"italic\">mA<\/default:mi><\/default:mrow><default:annotation encoding=\"StarMath 5.0\"> I_{t} leslant 3mA\n  <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P68\"><span>If <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>V<\/default:mi><default:mi>C<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">V_C<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span>&#x200b;&#x200b;&nbsp;<span>is <\/span><span class=\"T37\">set at 0V, <\/span><span class=\"T37\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>I<\/default:mi><default:mi>t<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">I_t<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/span><span class=\"T37\">will be :<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P68\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:mfrac><default:mrow><default:mn>3<\/default:mn><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mi>R<\/default:mi><default:mo stretchy=\"false\">\u2217<\/default:mo><default:msub><default:mi>R<\/default:mi><default:mi>C<\/default:mi><\/default:msub><\/default:mrow><default:mrow><default:mi>R<\/default:mi><default:mo stretchy=\"false\">+<\/default:mo><default:msub><default:mi>R<\/default:mi><default:mi>C<\/default:mi><\/default:msub><\/default:mrow><\/default:mfrac><default:mo stretchy=\"false\">&lt;<\/default:mo><default:mn>3<\/default:mn><\/default:mrow><default:mi mathvariant=\"italic\">mA<\/default:mi><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">3 * {R*R_C} over {R + R_C}  &lt; 3mA<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P107\"><span>Supposing for design simplicity that <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi>C<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_C<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span>is a fixed lumped resistance and that R is variable and that <\/span>&#x200b;&#x200b;&nbsp;<span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:msub><default:mi>R<\/default:mi><default:mi>C<\/default:mi><\/default:msub><default:mo stretchy=\"false\">\u2265<\/default:mo><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">min<\/default:mi><\/default:msub><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">R_C &gt;= R_min<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P68\"><span class=\"T37\">It follows that R and <\/span><span class=\"T37\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi>C<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_C<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/span><span class=\"T37\">&#x200b;&#x200b;&nbsp;should be sized to at least 2 k<\/span><span class=\"T49\">\u03a9<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P70\"><span class=\"T77\">Note that <\/span><span>the DAC output impedance stage should be taken into account <\/span><span class=\"T77\">for <\/span><span class=\"T77\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi>C<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_C<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P108\"><span>Considering <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi>C<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_C<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span>and C fixed, the frequency setting is obtained through R and <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>V<\/default:mi><default:mi>C<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">V_C<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p class=\"P72\"><span>We have now to degrees of freedom to set the frequency.<\/span><\/p><p class=\"P108\"><span>We will first ensure that the obtain frequency range in this setup goes at least from C3 to C7<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P71\"><span class=\"T77\">The principle of operation in this setup uses<\/span><span> <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>V<\/default:mi><default:mi>C<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">V_C<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span>&#x200b;&#x200b;&nbsp;<span>voltage in the [0, 3V] range, for fine tuning of the frequency, with a resolution dependent on the bit resolution of the DAC<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P71\"><span>R, as a digital potentiometer in rheostat mode, for coarse fine tuning. A too small R digital potentiometer would <\/span><span class=\"T68\">severely<\/span><span> restrict the frequency range. So, we should consider first the highest R value digital potentiometer, the X9C104 of <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">max<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_max<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span>&#x200b;&#x200b;&nbsp;<span>= 100<\/span><span class=\"T78\">k <\/span><span class=\"T50\">\u03a9<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P73\"><span>Since in this setup we are using a single X9C104, And since we <\/span><span class=\"T78\">will also make use of<\/span><span> <\/span><span class=\"T78\">a trimming resistor <\/span><span class=\"T78\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">trim<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_trim<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/span><span>so that At <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">max<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_max<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span>&#x200b;&#x200b;&nbsp;<span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:mi>f<\/default:mi><default:mo stretchy=\"false\">=<\/default:mo><default:mi>f<\/default:mi><\/default:mrow><default:mrow><default:mo fence=\"true\" stretchy=\"false\">(<\/default:mo><default:mrow><default:mrow><default:mi>C<\/default:mi><default:mn>3<\/default:mn><\/default:mrow><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">)<\/default:mo><\/default:mrow><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">f = f( C3 )<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span>, <\/span><span class=\"T44\">by increasing <\/span><span class=\"T44\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">trim<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_trim<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/span><span class=\"T44\">&#x200b;&#x200b;&nbsp;to compensate for the removal of the X9C103 and the X9C102, thus adding 11 k<\/span><span class=\"T51\">\u03a9 <\/span><span class=\"T50\">,<\/span><span class=\"T44\"> we may not reach C7 at <\/span><span class=\"T44\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">min<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_min<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P75\"><span>Indeed, with <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">trim<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_trim<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span>&#x200b;&#x200b;&nbsp;<span>= 15.8<\/span><span class=\"T79\">2<\/span><span>7 <\/span><span class=\"T78\">k<\/span><span class=\"T50\">\u03a9<\/span><span>, at <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">min<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">trim<\/default:mi><\/default:msub><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">R_min = R_trim<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span>, <\/span>&#x200b;&#x200b;&nbsp;<span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:mi>f<\/default:mi><default:mo stretchy=\"false\">=<\/default:mo><default:mfrac><default:mn>1<\/default:mn><default:mrow><default:mn>15.827<\/default:mn><default:mrow><default:msup><default:mi>E<\/default:mi><default:mn>3<\/default:mn><\/default:msup><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mn>6.6<\/default:mn><\/default:mrow><default:msup><default:mi>E<\/default:mi><default:mrow><default:mo stretchy=\"false\">\u2212<\/default:mo><default:mn>8<\/default:mn><\/default:mrow><\/default:msup><\/default:mrow><\/default:mfrac><default:mo stretchy=\"false\">=<\/default:mo><default:mn>967.32<\/default:mn><\/default:mrow><default:mi mathvariant=\"italic\">Hz<\/default:mi><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">f = {1} over {15.827E^3*6.6E^-8} = 967.32 Hz<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p class=\"P75\"><span class=\"T79\">That is<\/span><span> well under our target of <\/span><span class=\"T79\">at least <\/span><span>2093 Hz.<\/span><\/p><p class=\"P74\"><span>However, if we carefully select a X9C104 in high portion of the tolerance range of the manufacturer specifications ( <\/span><span class=\"T45\">\u00b1<\/span><span> 20%), This would decrease the required R_trim value.<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P74\"><span>In our component survey of over <\/span><span class=\"T79\">thirty<\/span><span> X9C104 <\/span><span class=\"T79\">chips we found five with<\/span><span> a <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">max<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_max<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span>value of over 110<\/span><span class=\"T79\">k<\/span><span class=\"T52\">\u03a9<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P76\"><span class=\"T80\">So, <\/span><span>For a total <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">maxtotal<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_maxtotal<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span>&#x200b;&#x200b;&nbsp;<span>of 11<\/span><span class=\"T80\">4<\/span><span>.8<\/span><span class=\"T79\">2<\/span><span>7 <\/span><span class=\"T79\">k<\/span><span class=\"T50\">\u03a9 <\/span><span>and a <\/span><span class=\"T79\">X9C104 <\/span><span class=\"T79\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">max<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_max<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/span><span class=\"T79\">&#x200b;&#x200b;&nbsp;<\/span><span>of 110 <\/span><span class=\"T79\">k<\/span><span class=\"T52\">\u03a9<\/span><span>, <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">trim<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_trim<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span>&#x200b;&#x200b;&nbsp;<span>= <\/span><span class=\"T80\">4<\/span><span>.8<\/span><span class=\"T80\">2<\/span><span>7 <\/span><span class=\"T80\">k<\/span><span class=\"T52\">\u03a9<\/span><span>, which gives a maximum frequency with <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>V<\/default:mi><default:mi>C<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">V_C<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span>= 3V, of\u00a0: <\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P76\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:mi>f<\/default:mi><default:mo stretchy=\"false\">=<\/default:mo><default:mfrac><default:mn>1<\/default:mn><default:mrow><default:mn>4.827<\/default:mn><default:mrow><default:msup><default:mi>E<\/default:mi><default:mn>3<\/default:mn><\/default:msup><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mn>6.6<\/default:mn><\/default:mrow><default:msup><default:mi>E<\/default:mi><default:mrow><default:mo stretchy=\"false\">\u2212<\/default:mo><default:mn>8<\/default:mn><\/default:mrow><\/default:msup><\/default:mrow><\/default:mfrac><default:mo stretchy=\"false\">=<\/default:mo><default:mn>3138.9<\/default:mn><\/default:mrow><default:mi mathvariant=\"italic\">Hz<\/default:mi><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">f = {1} over {4.827E^3*6.6E^-8} = 3138.9 Hz<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span class=\"T80\">well<\/span><span> <\/span><span class=\"T55\">above C7, which is good.<\/span><\/p><p class=\"P74\">&nbsp;<\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P71\"><span>We should then check that frequency control using<\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>V<\/default:mi><default:mi>C<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">V_C<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span> and R, <\/span><span class=\"T81\">in<\/span><span> the above defined <\/span><span class=\"T81\">frequency <\/span><span>range is fully overlapping and <\/span><span class=\"T56\">thus<\/span><span> encompasses <\/span><span class=\"T56\">fine tuning over<\/span><span> the range C3 to C7.<\/span><\/p><p class=\"P77\"><span>Provided that the output stage of the DAC is scaled down through a less than unity non inverting OpAmp so that the n bits resolution is <\/span><span class=\"T38\">applied to the range [0 , 3V]<\/span><\/p><p class=\"P78\"><span>Assuming a 12bit DAC <\/span><span class=\"T71\">with it\u2019s output range restricted to [0, 3V] through a voltage divider or better, an OpAmp with less than unity gain to keep output impedance low<\/span><span>\u00a0:<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P78\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:msub><default:mi mathvariant=\"italic\">dV<\/default:mi><default:mi>C<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mfrac><default:mn>3<\/default:mn><default:msup><default:mn>2<\/default:mn><default:mn>12<\/default:mn><\/default:msup><\/default:mfrac><default:mo stretchy=\"false\">=<\/default:mo><default:mn>0.732<\/default:mn><\/default:mrow><default:mi mathvariant=\"italic\">mV<\/default:mi><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">dV_C = {3} over {2^{12}} = 0.732 mV<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P79\"><span>Given the voltage to conversion gain formula, <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mfrac><default:mrow><default:mi>\u03b4<\/default:mi><default:mi>f<\/default:mi><\/default:mrow><default:mrow><default:mi>\u03b4<\/default:mi><default:msub><default:mi>V<\/default:mi><default:mi>c<\/default:mi><\/default:msub><\/default:mrow><\/default:mfrac><default:mo stretchy=\"false\">=<\/default:mo><default:mfrac><default:mrow><default:mo stretchy=\"false\">\u2212<\/default:mo><default:mn>0.32<\/default:mn><\/default:mrow><default:mrow><default:msub><default:mi>R<\/default:mi><default:mi>c<\/default:mi><\/default:msub><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mi>C<\/default:mi><\/default:mrow><\/default:mfrac><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">{ %delta f } over {%delta V_c} = {-0.32} over {R_c * C} <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span class=\"T39\">Hz\/V<\/span><\/p><p class=\"P80\"><span>We have to set Rc so that each voltage step has a frequency gain under 2 cents at C3, <\/span><span class=\"T70\">according to the following relation :<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P80\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">errorcents<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mrow><default:mn>1200<\/default:mn><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mi>log<\/default:mi><\/default:mrow><\/default:mrow><default:mn>2<\/default:mn><default:mrow><default:mrow><default:mo fence=\"true\" stretchy=\"false\">(<\/default:mo><default:mrow><default:mfrac><default:mrow><default:mi>f<\/default:mi><default:mrow><default:mrow><default:mo fence=\"true\" stretchy=\"false\">(<\/default:mo><default:mrow><default:mrow><default:mi>C<\/default:mi><default:mn>3<\/default:mn><\/default:mrow><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">)<\/default:mo><\/default:mrow><default:mo stretchy=\"false\">+<\/default:mo><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">step<\/default:mi><\/default:msub><\/default:mrow><\/default:mrow><default:mrow><default:mi>f<\/default:mi><default:mrow><default:mo fence=\"true\" stretchy=\"false\">(<\/default:mo><default:mrow><default:mrow><default:mi>C<\/default:mi><default:mn>3<\/default:mn><\/default:mrow><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">)<\/default:mo><\/default:mrow><\/default:mrow><\/default:mfrac><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">)<\/default:mo><\/default:mrow><default:mo stretchy=\"false\">&lt;<\/default:mo><default:mn>2<\/default:mn><\/default:mrow><default:mi mathvariant=\"italic\">cents<\/default:mi><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">f_errorcents = 1200*log2({f(C3) + f_step} over {f(C3)} ) &lt; 2 cents<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p class=\"P81\"><span>Solving for step, step &lt; 0.16021 Hz<\/span><\/p><p class=\"P82\"><span>With unitary voltage step of 3\/2^12 = 0.732 mV<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P79\"><span class=\"T42\">And the voltage to frequency gain<\/span><span>, <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mfrac><default:mrow><default:mi>\u03b4<\/default:mi><default:mi>f<\/default:mi><\/default:mrow><default:mrow><default:mi>\u03b4<\/default:mi><default:msub><default:mi>V<\/default:mi><default:mi>c<\/default:mi><\/default:msub><\/default:mrow><\/default:mfrac><default:mo stretchy=\"false\">=<\/default:mo><default:mfrac><default:mrow><default:mo stretchy=\"false\">\u2212<\/default:mo><default:mn>0.32<\/default:mn><\/default:mrow><default:mrow><default:msub><default:mi>R<\/default:mi><default:mi>C<\/default:mi><\/default:msub><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mn>6.6E-8<\/default:mn><\/default:mrow><\/default:mfrac><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">{ %delta f } over {%delta V_c} = {-0.32} over {R_C * 6.6E-8} <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span class=\"T40\">Hz\/V<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P83\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:mfrac><default:mrow><default:mi>\u03b4<\/default:mi><default:mi>f<\/default:mi><\/default:mrow><default:mrow><default:mi>\u03b4<\/default:mi><default:msub><default:mi>V<\/default:mi><default:mi>c<\/default:mi><\/default:msub><\/default:mrow><\/default:mfrac><default:mo stretchy=\"false\">=<\/default:mo><default:mrow><default:mfrac><default:mrow><default:mo stretchy=\"false\">\u2212<\/default:mo><default:mn>0.32<\/default:mn><\/default:mrow><default:mrow><default:msub><default:mi>R<\/default:mi><default:mi>C<\/default:mi><\/default:msub><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mn>6.6E-8<\/default:mn><\/default:mrow><\/default:mfrac><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mn>0.732E-3<\/default:mn><\/default:mrow><default:mo stretchy=\"false\">=<\/default:mo><default:mn>0.16021<\/default:mn><\/default:mrow><default:mi mathvariant=\"italic\">Hz<\/default:mi><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">{ %delta f } over {%delta V_c} = {-0.32} over {R_C * 6.6E-8} * 0.732E-3 = 0.16021 Hz<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p class=\"P83\">&#x200b;&#x200b;&nbsp;<span>for a step of 0.732 mV, that gives <\/span><span class=\"T41\">a minimum Rc of 22152 Ohms<\/span><\/p><p class=\"P84\"><span>And a maximum frequency deflection over the 3V range of<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P84\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:mfrac><default:mrow><default:mi>\u03b4<\/default:mi><default:mi>f<\/default:mi><\/default:mrow><default:mrow><default:mi>\u03b4<\/default:mi><default:msub><default:mi>V<\/default:mi><default:mi>c<\/default:mi><\/default:msub><\/default:mrow><\/default:mfrac><default:mo stretchy=\"false\">=<\/default:mo><default:mrow><default:mfrac><default:mrow><default:mo stretchy=\"false\">\u2212<\/default:mo><default:mn>0.32<\/default:mn><\/default:mrow><default:mrow><default:mn>22152<\/default:mn><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mn>6.6E-8<\/default:mn><\/default:mrow><\/default:mfrac><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mn>3<\/default:mn><\/default:mrow><default:mo stretchy=\"false\">=<\/default:mo><default:mrow><default:mo stretchy=\"false\">\u2212<\/default:mo><default:mn>656<\/default:mn><\/default:mrow><\/default:mrow><default:mi mathvariant=\"italic\">Hz<\/default:mi><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">{ %delta f } over {%delta V_c} = {-0.32} over {22152 * 6.6E-8} * 3 = -656 Hz<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p class=\"P84\">&nbsp;<\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P85\"><span>At <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>V<\/default:mi><default:mi>C<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">V_C<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span>&#x200b;&#x200b;&nbsp;<span>= 3V, <\/span><span class=\"T43\">The formula reverts to the form <\/span><span class=\"T43\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mfrac><default:mn>1<\/default:mn><default:mi mathvariant=\"italic\">RC<\/default:mi><\/default:mfrac><default:annotation encoding=\"StarMath 5.0\">{1} over {RC} <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/span><span class=\"T43\">&#x200b;&#x200b;&nbsp;with its derivative being<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P85\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:mfrac><default:mrow><default:mi>\u03b4<\/default:mi><default:mi>f<\/default:mi><\/default:mrow><default:mrow><default:mi>\u03b4<\/default:mi><default:mi>R<\/default:mi><\/default:mrow><\/default:mfrac><default:mo stretchy=\"false\">=<\/default:mo><default:mfrac><default:mrow><default:mo stretchy=\"false\">\u2212<\/default:mo><default:mn>1<\/default:mn><\/default:mrow><default:mrow><default:msup><default:mi>R<\/default:mi><default:mn>2<\/default:mn><\/default:msup><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mn>6.6E-8<\/default:mn><\/default:mrow><\/default:mfrac><\/default:mrow><default:mrow><default:mi mathvariant=\"italic\">Hz<\/default:mi><default:mo stretchy=\"false\">\/<\/default:mo><default:mi mathvariant=\"italic\">ohm<\/default:mi><\/default:mrow><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">{ %delta f } over {%delta R} = {-1} over {R^2 *6.6E-8} Hz\/ohm<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span class=\"T43\">at R so that f = f(B6), R= 7671 ohm, We have a slope of -0.2574 Hz\/ohm, for a step of 1.1Kohm (based on a X9C104 select with <\/span><span class=\"T43\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">max<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_max<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/span><span class=\"T43\">= 110K), we have 283.14 <\/span><span class=\"T43\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mi mathvariant=\"italic\">Hz<\/default:mi><default:mo stretchy=\"false\">\/<\/default:mo><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">step<\/default:mi><\/default:msub><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">Hz\/R_step<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P86\"><span>This is under the 656 Hz total voltage deflection, So frequency control based on <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>V<\/default:mi><default:mi>C<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">V_C<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span>&#x200b;&#x200b;&nbsp;<span>in the [0,3V] and <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi mathvariant=\"italic\">step<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_step<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span>&#x200b;&#x200b;&nbsp;<span>= 1.<\/span><span class=\"T56\">1<\/span><span>kOhm is overlapping at the high end of the frequency range.<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P87\"><span>The upper bound for <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi>C<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_C<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span>is given by the relation<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P87\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:mfrac><default:mrow><default:mi>\u03b4<\/default:mi><default:mi>f<\/default:mi><\/default:mrow><default:mrow><default:mi>\u03b4<\/default:mi><default:msub><default:mi>V<\/default:mi><default:mi>c<\/default:mi><\/default:msub><\/default:mrow><\/default:mfrac><default:mo stretchy=\"false\">=<\/default:mo><default:mrow><default:mfrac><default:mrow><default:mo stretchy=\"false\">\u2212<\/default:mo><default:mn>0.32<\/default:mn><\/default:mrow><default:mrow><default:mi mathvariant=\"italic\">Rc<\/default:mi><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mn>6.6E-8<\/default:mn><\/default:mrow><\/default:mfrac><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mn>3<\/default:mn><\/default:mrow><default:mo stretchy=\"false\">&gt;<\/default:mo><default:mrow><default:mo stretchy=\"false\">\u2212<\/default:mo><default:mn>283.14<\/default:mn><\/default:mrow><\/default:mrow><default:mi mathvariant=\"italic\">Hz<\/default:mi><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">{ %delta f } over {%delta V_c} = {-0.32} over {Rc * 6.6E-8} * 3  &gt; -283.14 Hz<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P87\"><span>Which give a maximum value for <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi>C<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_C<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span>&#x200b;&#x200b;&nbsp;<span>of 51371 Ohms.<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P88\"><span>Thus the allowable range for <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi>C<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_C<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span>is\u00a0:<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P88\"><span>22152 Ohms &lt; <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi>C<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_C<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span>&#x200b;&#x200b;&nbsp;<span>&lt; 51371 Ohms.<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P89\"><span>In practice, fine tuning precision is more important than fine tuning range once overlapping tuning is guaranteed. Thus it is preferable to bias <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>R<\/default:mi><default:mi>C<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">R_C<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span>&#x200b;&#x200b;&nbsp;<span>toward the upper part of the [22152, 51371 Ohms] range.<\/span><\/p><p class=\"P90\"><span class=\"T61\">However<\/span><span>, taking advantage of higher precision fine tuning requires <\/span><span class=\"T61\">to <\/span><span>invest <\/span><span class=\"T61\">more<\/span><span> on the MCU (<\/span><span class=\"T61\">higher <\/span><span>clock speed and calibration).<\/span><\/p><p class=\"P91\"><span>Reminder\u00a0: Worst case scenario precision is 4\u00b5S on a AtMEGA2560<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P91\"><span>On the other hand, tuning ranges with larger depths may have their use for pronounced glide\/vibrato effects. <\/span><span class=\"T62\">And having a large tuning range gives a higher probability of tuning at <\/span><span class=\"T46\">\u00b1<\/span><span class=\"T64\"> half semi-tone of the desired frequency based on voltage control alone. That depends however for each note at how close the fundamental is tuned to half voltage deflection (<\/span><span class=\"T64\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>V<\/default:mi><default:mi>C<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">V_C<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/span><span class=\"T64\"> = 1.5V).<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P92\"><span class=\"T64\">I<\/span><span class=\"T63\">f the <\/span><span class=\"T46\">\u00b1<\/span><span class=\"T64\"> half semi-tone <\/span><span class=\"T63\">glide exceeds the DAC range because of initial deviation from the 1.5V <\/span><span class=\"T63\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>V<\/default:mi><default:mi>C<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">V_C<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/span><span class=\"T63\">&#x200b;&#x200b;&nbsp;center position, A step up\/down of the digital potentiometer is required, which would induce an audible discontinuity in the <\/span><span class=\"T65\">vibrato<\/span><span class=\"T63\"> \/ glide effect.<\/span><\/p><p class=\"P93\"><span class=\"T64\">T<\/span><span class=\"T63\">his is one fundamental issue of having a tuning method based on two discrete components (a digital potentiometer and a DAC), but is less pronounced that having the tuning relying on three digital potentiometers alone.<\/span><\/p><p class=\"P27\"><span>Tuning algorithm based on DAC + single X9C104 digital potentiometer.<\/span><\/p><p class=\"P92\"><span>This <\/span><span class=\"T69\">algorithm<\/span><span> is intended to be simple and fast.<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P94\"><span>First, <\/span><span class=\"T68\">c<\/span><span>oarse tuning should be done at <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>V<\/default:mi><default:mi>C<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">V_C<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span>&#x200b;&#x200b;&nbsp;<span>= 3V so that the frequency formula reverts to the classic <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mfrac><default:mn>1<\/default:mn><default:mi mathvariant=\"italic\">RC<\/default:mi><\/default:mfrac><default:annotation encoding=\"StarMath 5.0\">{1} over {RC} <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span>form.<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P94\"><span>A lookup table consisting of the obtained frequencies of the 100 steps of the X9C104 potentiometer <\/span><span class=\"T58\">could<\/span><span> be populated <\/span><span class=\"T58\">if it happens that there is a deviation in obtained frequencies from the <\/span><span class=\"T58\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mfrac><default:mn>1<\/default:mn><default:mi mathvariant=\"italic\">RC<\/default:mi><\/default:mfrac><default:annotation encoding=\"StarMath 5.0\">{1} over {RC} <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/span><span class=\"T58\">&#x200b;&#x200b;&nbsp;form. All things considered, the small footprint of the lookup table make it easy and fast to populate, so even if the gain in MCU computing time is marginal, it costs little to use one.<\/span><\/p><p class=\"P94\"><span>Since the voltage to frequency gain is negative, lowering the DAC voltage from its 3V rest point results in an increase in frequency.<\/span><\/p><p class=\"P94\"><span>Then, for a given arbitrary frequency, the digital potentiometer should be set at the setting level that result in a frequency <\/span><span class=\"T57\">immediately under the desired frequency.<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P95\"><span>And then, the voltage lowered according to the voltage to frequency gain formula to obtain the <\/span><span class=\"T69\">positive <\/span><span class=\"T69\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">error<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">f_error<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/span>&#x200b;&#x200b;&nbsp;<span>deflection.<\/span><\/p><p class=\"P95\">&nbsp;<\/p><p class=\"P24\"><span>Compound oscillator with variable pulse width tuning<\/span><\/p><p class=\"P53\"><span>The algorithm is similar to the string of digital potentiometers in series algorithm\u00a0, in the sense that the sub-oscillator with the highest frequency component is tuned first using PulseIn (LOW or HIGH)<\/span><\/p><p class=\"P53\"><span>using the <\/span><span class=\"T59\">digital potentiometer for coarse tuning and the VCO voltage gain formula for the fine tune step.<\/span><\/p><p class=\"P53\"><span>The remaining os<\/span><span class=\"T59\">cillator is then tuned to the frequency immediately under the desired frequency.<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P54\"><span>Using the voltage to frequency gain formula, When measuring the error on the <\/span><span class=\"T69\">resulting <\/span><span>signal <\/span><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">error<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">f_error<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><span>, the <\/span><span class=\"T69\">frequency <\/span><span>error on the <\/span><span class=\"T69\">component sub-oscillator signal <\/span><span class=\"T69\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">cmperror<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">f_cmperror<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/span>&#x200b;&#x200b;&nbsp;<span>is adjusted <\/span><span class=\"T60\">to <\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P54\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">cmperror<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mfrac><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">error<\/default:mi><\/default:msub><default:mrow><default:mn>2<\/default:mn><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mi mathvariant=\"italic\">duty<\/default:mi><\/default:mrow><\/default:mfrac><\/default:mrow><default:mi>,<\/default:mi><default:mi mathvariant=\"italic\">when<\/default:mi><default:mrow><default:mi mathvariant=\"italic\">duty<\/default:mi><default:mo stretchy=\"false\">&gt;<\/default:mo><default:mn>0.5<\/default:mn><\/default:mrow><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">f_cmperror = {f_error} over {2*duty} ,   when  duty &gt;0.5<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p class=\"P55\"><span>or,<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P55\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mrow><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">cmperror<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mfrac><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">error<\/default:mi><\/default:msub><default:mrow><default:mn>2<\/default:mn><default:mo stretchy=\"false\">\u2217<\/default:mo><default:mrow><default:mo fence=\"true\" stretchy=\"false\">(<\/default:mo><default:mrow><default:mrow><default:mn>1<\/default:mn><default:mo stretchy=\"false\">\u2212<\/default:mo><default:mi mathvariant=\"italic\">duty<\/default:mi><\/default:mrow><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">)<\/default:mo><\/default:mrow><\/default:mrow><\/default:mfrac><\/default:mrow><default:mi>,<\/default:mi><default:mi mathvariant=\"italic\">when<\/default:mi><default:mrow><default:mi mathvariant=\"italic\">duty<\/default:mi><default:mo stretchy=\"false\">&lt;<\/default:mo><default:mn>0.5<\/default:mn><\/default:mrow><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">f_cmperror = {f_error} over {2*(1 -duty)} ,   when  duty &lt;0.5<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p class=\"P56\"><span>Since we are tuning the lowest frequency component last.<\/span><\/p><h1 class=\"P153\"><span>Appendix A :<\/span><\/h1><h1 class=\"P150\"><span>Duty Cycle control <\/span><span class=\"T68\">(SAW signal generation and SQUARE pulse width control)<\/span><\/h1><p class=\"P3\"><span>Duty cycle \/ pulse width control is achieved through self-keying between the two sub-oscillators by routing the square wave pin output (SYNC0) to the keying (FSK) pin.<\/span><\/p><p class=\"P96\"><span>The FSK pin is level triggered (1V 3V) and selects sub-oscillator 1 or sub-oscillator 2. When self-keyed from SYNC0, The output is adjusted for phase in the following manner.<\/span><\/p><p class=\"P96\"><span>SYNC0 level is high when the TRI\/SAW signal rises.<\/span><\/p><p class=\"P97\"><span>SYNC0 level is low when the TRI\/SAW signal falls.<\/span><\/p><p class=\"P98\"><span class=\"T2\">When FSK pin is triggered high, the output signal switches to<\/span><span> <\/span><span class=\"T2\">sub-oscillator 2, with phase at Vmin, and the TRI\/SAW signal rises, SYNC0 level stays high. The sub-oscillator 2 rising edge duration is <\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P98\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:msub><default:mi>t<\/default:mi><default:mi mathvariant=\"italic\">rise<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mfrac><default:mn>1<\/default:mn><default:mrow><default:mn>2<\/default:mn><default:mo stretchy=\"false\">\u2217<\/default:mo><default:msub><default:mi>f<\/default:mi><default:mrow><default:mi mathvariant=\"italic\">subosc<\/default:mi><default:mn>2<\/default:mn><\/default:mrow><\/default:msub><\/default:mrow><\/default:mfrac><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">t_rise = {1} over {2*f_subosc2}  <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P100\"><span>When sub-oscillator 2 reverts to the falling edge, <\/span><span class=\"T3\">SYNC0 level goes down and sub-oscillator 1 is selected, with phase positioned at <\/span><span class=\"T3\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:msub><default:mi>V<\/default:mi><default:mi mathvariant=\"italic\">max<\/default:mi><\/default:msub><default:annotation encoding=\"StarMath 5.0\">V_max<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/span><span class=\"T3\">. SYNC0 level stays low. The sub-oscillator 1 falling edge duration is :<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P114\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:msub><default:mi>t<\/default:mi><default:mi mathvariant=\"italic\">fall<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mfrac><default:mn>1<\/default:mn><default:mrow><default:mn>2<\/default:mn><default:mo stretchy=\"false\">\u2217<\/default:mo><default:msub><default:mi>f<\/default:mi><default:mrow><default:mi mathvariant=\"italic\">subosc<\/default:mi><default:mn>1<\/default:mn><\/default:mrow><\/default:msub><\/default:mrow><\/default:mfrac><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">t_fall = {1} over {2*f_subosc1}  <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p class=\"P101\"><span>When self keyed, the <\/span><span class=\"T4\">signal <\/span><span>fundamental frequency <\/span><span class=\"T4\">at output pins is :<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P101\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:msub><default:mi>f<\/default:mi><default:mi mathvariant=\"italic\">fundamental<\/default:mi><\/default:msub><default:mo stretchy=\"false\">=<\/default:mo><default:mfrac><default:mn>1<\/default:mn><default:mrow><default:msub><default:mi>t<\/default:mi><default:mi mathvariant=\"italic\">rise<\/default:mi><\/default:msub><default:mo stretchy=\"false\">+<\/default:mo><default:msub><default:mi>t<\/default:mi><default:mi mathvariant=\"italic\">fall<\/default:mi><\/default:msub><\/default:mrow><\/default:mfrac><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">f_fundamental = {1} over {t_rise + t_fall} <\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p class=\"P102\"><span>and t<\/span><span class=\"T5\">he duty cycle is\u00a0:<\/span><\/p><p xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"P102\"><span><span xmlns:default=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" class=\"doxMathFormula\"><default:math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\" display=\"block\"><default:semantics><default:mrow><default:mi mathvariant=\"italic\">duty<\/default:mi><default:mo stretchy=\"false\">=<\/default:mo><default:mfrac><default:msub><default:mi>t<\/default:mi><default:mi mathvariant=\"italic\">rise<\/default:mi><\/default:msub><default:mrow><default:mo fence=\"true\" stretchy=\"false\">(<\/default:mo><default:mrow><default:mrow><default:msub><default:mi>t<\/default:mi><default:mi mathvariant=\"italic\">rise<\/default:mi><\/default:msub><default:mo stretchy=\"false\">+<\/default:mo><default:msub><default:mi>t<\/default:mi><default:mi mathvariant=\"italic\">fall<\/default:mi><\/default:msub><\/default:mrow><\/default:mrow><default:mo fence=\"true\" stretchy=\"false\">)<\/default:mo><\/default:mrow><\/default:mfrac><\/default:mrow><default:annotation encoding=\"StarMath 5.0\">duty =  {t_rise} over {(t_rise + t_fall)}<\/default:annotation><\/default:semantics><\/default:math><\/span><\/span><\/p><p class=\"P102\">&nbsp;<\/p><p class=\"P99\">&nbsp;<\/p><p class=\"P99\">&nbsp;<\/p><\/div><\/section><script>(function( $ ) {\n    \/\/footnotes\n    $('.defaultNote').children(\":first\").css('cursor', 'pointer');\n    $('.defaultNote').children(\":first\").click(function(){\n        var gotoID = '#' + $(this).parent().attr('id');\n        $('html, body').animate(\n            {\n              scrollTop: $('a[href=\"' + gotoID + '\"]').offset().top - 60,\n            },\n            250,\n            'linear'\n          )\n    });\n}(jQuery));\n\n\n<\/script><script>\nvar numFormat = \",.\";\n(function( $ ) {\n    \"use strict\";\n    \/\/do some cleaning on load\n    var sortCells = $('td[data-sorting], th[data-sorting]');\n    sortCells.each(function(){\n        var first = $(this).text().trim().charAt(0);\n        if (first == '@'){\n            var oldHTML = $(this).html();\n            var newHTML = oldHTML.replace('@', '');\n            $(this).html(newHTML);\n        } \n    });\n    function sortingTable(node, pos, ordBy){\n        var rows = node.children('tbody').children('tr').get();\n\n        rows.sort(function(a, b) {\n\n        var X = $(a).children('td').eq(pos).text().toUpperCase();\n        var Y = $(b).children('td').eq(pos).text().toUpperCase();\n        \n        if (numFormat != '.,'){\n            \/\/we are dealing with a different locale and we need to do some \n            \/\/transformation in numbers\n            X = convert2number(X);\n            Y = convert2number(Y);\n        } else {\n            X = X.replace(\/,\/g, '').replace(\/ \/g, '');\n            Y = Y.replace(\/,\/g, '').replace(\/ \/g, '');\n        }\n        var currencies = ['$', '\u00a5', '\u00a3', '\u20ac'];\n        var arrayLength = currencies.length;\n        var XX = X;\n        var YY = Y;\n        for (var i = 0; i < arrayLength; i++) {\n            XX = XX.replace(currencies[i], '');\n            YY = YY.replace(currencies[i], '');\n        }\n        if (!isNaN(XX) && !isNaN(YY)){\n            var floatXX = parseFloat(XX);\n            var floatYY = parseFloat(YY);\n            return -(floatYY-floatXX) * ordBy;\n        } else if (!isNaN(XX) && isNaN(YY)){\n            return -1 * ordBy;\n        } else if (isNaN(XX) && !isNaN(YY)){\n            return ordBy;\n        } else {\n            if(X < Y) {\n                return -1 * ordBy;\n            }\n            if(X > Y) {\n                return 1 * ordBy;\n            }\n            return 0;\n        }\n      });\n\n      $.each(rows, function(index, row) {\n        node.children('tbody').append(row);\n      });\n    }\n    \n    function removeTableCellDecoration() {\n        $(\"td[data-sorting], th[data-sorting]\").removeClass('sortDecorator');    \n    }\n    \n    \/\/unbind the click event just in case we are loading more than one document\n    $(\"td[data-sorting], th[data-sorting]\").off('click');\n    $(\"td[data-sorting], th[data-sorting]\").click(function(){\n        removeTableCellDecoration();\n        $(this).addClass('sortDecorator');\n        \/\/get desired ordering\n        var ordering = $(this).attr('data-sortOrdering');\n        if (ordering == 'ASC'){\n            var ordBy = -1;\n            $(this).attr('data-sortOrdering', 'DESC');\n        } else {\n            var ordBy = 1;\n            $(this).attr('data-sortOrdering', 'ASC');\n        }\n        var cellPosition = $(this).prevAll().length;\n        var table = $(this).parents('table:first');\n        sortingTable(table, cellPosition, ordBy);\n    });  \n    \n    function convert2number(str) {\n        str = str.trim();\n        if (str.match(\/^\\d+\/)) {\n            \/\/we have to take special care when the thousand separators are '.'\n            var result_0 = str.replace(\/\\.\/g, '_@_');\n            var result_1 = result_0.replace(window.numFormat[0], '.');\n            var result = result_1.replace(\/_@_\/g, '');\n            result .replace(\/ \/g, '');\n            return result;\n        } else {\n            return str;\n        }\n        \n    }\n    \n}(jQuery));\n\n\n<\/script><\/div><\/html><\/div>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>For the MCU code, please visit : http:\/\/www.github.com\/rodv92\/synth1 For the Circuit \/ PCB design (work in progress) please visit :http:\/\/www.easyeda.com\/rodv92\/synth1<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_editorskit_title_hidden":false,"_editorskit_reading_time":0,"_editorskit_is_block_options_detached":false,"_editorskit_block_options_position":"{}","pmpro_default_level":"","footnotes":""},"categories":[15],"tags":[],"class_list":["post-34","post","type-post","status-publish","format-standard","hentry","category-diy-projects","pmpro-has-access"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.9 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>The Synth1 project - SKYNEXT Tech.<\/title>\n<meta name=\"description\" content=\"Detail on frequency control for an XR-2206 based monophonic synthesizer, using a DAC for fine tuning and a digital potentiometer for coarse tuning.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.skynext.tech\/index.php\/2021\/01\/29\/an-xr-2206-based-vco-analog-synthesizer\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"The Synth1 project - SKYNEXT Tech.\" \/>\n<meta property=\"og:description\" content=\"Detail on frequency control for an XR-2206 based monophonic synthesizer, using a DAC for fine tuning and a digital potentiometer for coarse tuning.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.skynext.tech\/index.php\/2021\/01\/29\/an-xr-2206-based-vco-analog-synthesizer\/\" \/>\n<meta property=\"og:site_name\" content=\"SKYNEXT Tech.\" \/>\n<meta property=\"article:published_time\" content=\"2021-01-29T15:34:13+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-01-13T11:30:58+00:00\" \/>\n<meta name=\"author\" content=\"R.Verissimo\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"R.Verissimo\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.skynext.tech\/index.php\/2021\/01\/29\/an-xr-2206-based-vco-analog-synthesizer\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.skynext.tech\/index.php\/2021\/01\/29\/an-xr-2206-based-vco-analog-synthesizer\/\"},\"author\":{\"name\":\"R.Verissimo\",\"@id\":\"https:\/\/www.skynext.tech\/#\/schema\/person\/6b71040d3e4353a85583550901159cd8\"},\"headline\":\"The Synth1 project\",\"datePublished\":\"2021-01-29T15:34:13+00:00\",\"dateModified\":\"2023-01-13T11:30:58+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.skynext.tech\/index.php\/2021\/01\/29\/an-xr-2206-based-vco-analog-synthesizer\/\"},\"wordCount\":43,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.skynext.tech\/#organization\"},\"articleSection\":[\"DIY Projects\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.skynext.tech\/index.php\/2021\/01\/29\/an-xr-2206-based-vco-analog-synthesizer\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.skynext.tech\/index.php\/2021\/01\/29\/an-xr-2206-based-vco-analog-synthesizer\/\",\"url\":\"https:\/\/www.skynext.tech\/index.php\/2021\/01\/29\/an-xr-2206-based-vco-analog-synthesizer\/\",\"name\":\"The Synth1 project - SKYNEXT Tech.\",\"isPartOf\":{\"@id\":\"https:\/\/www.skynext.tech\/#website\"},\"datePublished\":\"2021-01-29T15:34:13+00:00\",\"dateModified\":\"2023-01-13T11:30:58+00:00\",\"description\":\"Detail on frequency control for an XR-2206 based monophonic synthesizer, using a DAC for fine tuning and a digital potentiometer for coarse tuning.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.skynext.tech\/index.php\/2021\/01\/29\/an-xr-2206-based-vco-analog-synthesizer\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.skynext.tech\/index.php\/2021\/01\/29\/an-xr-2206-based-vco-analog-synthesizer\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.skynext.tech\/index.php\/2021\/01\/29\/an-xr-2206-based-vco-analog-synthesizer\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.skynext.tech\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"The Synth1 project\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.skynext.tech\/#website\",\"url\":\"https:\/\/www.skynext.tech\/\",\"name\":\"SKYNEXT Tech.\",\"description\":\"Power Electronics &amp; Reverse Engineering\",\"publisher\":{\"@id\":\"https:\/\/www.skynext.tech\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.skynext.tech\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.skynext.tech\/#organization\",\"name\":\"SKYNEXT Tech.\",\"alternateName\":\"DELIVERYSIMO EIRL\",\"url\":\"https:\/\/www.skynext.tech\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.skynext.tech\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.skynext.tech\/wp-content\/uploads\/2019\/09\/cropped-SKYNEXT_logo_square-2.png\",\"contentUrl\":\"https:\/\/www.skynext.tech\/wp-content\/uploads\/2019\/09\/cropped-SKYNEXT_logo_square-2.png\",\"width\":210,\"height\":210,\"caption\":\"SKYNEXT Tech.\"},\"image\":{\"@id\":\"https:\/\/www.skynext.tech\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.skynext.tech\/#\/schema\/person\/6b71040d3e4353a85583550901159cd8\",\"name\":\"R.Verissimo\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.skynext.tech\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/0bf345444b71baae1301e50a1a8cbeb98a5b7f41b85ffe9e1e6c2640ef23b528?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/0bf345444b71baae1301e50a1a8cbeb98a5b7f41b85ffe9e1e6c2640ef23b528?s=96&d=mm&r=g\",\"caption\":\"R.Verissimo\"},\"url\":\"https:\/\/www.skynext.tech\/index.php\/author\/wpadmin\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"The Synth1 project - SKYNEXT Tech.","description":"Detail on frequency control for an XR-2206 based monophonic synthesizer, using a DAC for fine tuning and a digital potentiometer for coarse tuning.","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:\/\/www.skynext.tech\/index.php\/2021\/01\/29\/an-xr-2206-based-vco-analog-synthesizer\/","og_locale":"en_US","og_type":"article","og_title":"The Synth1 project - SKYNEXT Tech.","og_description":"Detail on frequency control for an XR-2206 based monophonic synthesizer, using a DAC for fine tuning and a digital potentiometer for coarse tuning.","og_url":"https:\/\/www.skynext.tech\/index.php\/2021\/01\/29\/an-xr-2206-based-vco-analog-synthesizer\/","og_site_name":"SKYNEXT Tech.","article_published_time":"2021-01-29T15:34:13+00:00","article_modified_time":"2023-01-13T11:30:58+00:00","author":"R.Verissimo","twitter_card":"summary_large_image","twitter_misc":{"Written by":"R.Verissimo","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.skynext.tech\/index.php\/2021\/01\/29\/an-xr-2206-based-vco-analog-synthesizer\/#article","isPartOf":{"@id":"https:\/\/www.skynext.tech\/index.php\/2021\/01\/29\/an-xr-2206-based-vco-analog-synthesizer\/"},"author":{"name":"R.Verissimo","@id":"https:\/\/www.skynext.tech\/#\/schema\/person\/6b71040d3e4353a85583550901159cd8"},"headline":"The Synth1 project","datePublished":"2021-01-29T15:34:13+00:00","dateModified":"2023-01-13T11:30:58+00:00","mainEntityOfPage":{"@id":"https:\/\/www.skynext.tech\/index.php\/2021\/01\/29\/an-xr-2206-based-vco-analog-synthesizer\/"},"wordCount":43,"commentCount":0,"publisher":{"@id":"https:\/\/www.skynext.tech\/#organization"},"articleSection":["DIY Projects"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.skynext.tech\/index.php\/2021\/01\/29\/an-xr-2206-based-vco-analog-synthesizer\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.skynext.tech\/index.php\/2021\/01\/29\/an-xr-2206-based-vco-analog-synthesizer\/","url":"https:\/\/www.skynext.tech\/index.php\/2021\/01\/29\/an-xr-2206-based-vco-analog-synthesizer\/","name":"The Synth1 project - SKYNEXT Tech.","isPartOf":{"@id":"https:\/\/www.skynext.tech\/#website"},"datePublished":"2021-01-29T15:34:13+00:00","dateModified":"2023-01-13T11:30:58+00:00","description":"Detail on frequency control for an XR-2206 based monophonic synthesizer, using a DAC for fine tuning and a digital potentiometer for coarse tuning.","breadcrumb":{"@id":"https:\/\/www.skynext.tech\/index.php\/2021\/01\/29\/an-xr-2206-based-vco-analog-synthesizer\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.skynext.tech\/index.php\/2021\/01\/29\/an-xr-2206-based-vco-analog-synthesizer\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.skynext.tech\/index.php\/2021\/01\/29\/an-xr-2206-based-vco-analog-synthesizer\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.skynext.tech\/"},{"@type":"ListItem","position":2,"name":"The Synth1 project"}]},{"@type":"WebSite","@id":"https:\/\/www.skynext.tech\/#website","url":"https:\/\/www.skynext.tech\/","name":"SKYNEXT Tech.","description":"Power Electronics &amp; Reverse Engineering","publisher":{"@id":"https:\/\/www.skynext.tech\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.skynext.tech\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.skynext.tech\/#organization","name":"SKYNEXT Tech.","alternateName":"DELIVERYSIMO EIRL","url":"https:\/\/www.skynext.tech\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.skynext.tech\/#\/schema\/logo\/image\/","url":"https:\/\/www.skynext.tech\/wp-content\/uploads\/2019\/09\/cropped-SKYNEXT_logo_square-2.png","contentUrl":"https:\/\/www.skynext.tech\/wp-content\/uploads\/2019\/09\/cropped-SKYNEXT_logo_square-2.png","width":210,"height":210,"caption":"SKYNEXT Tech."},"image":{"@id":"https:\/\/www.skynext.tech\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.skynext.tech\/#\/schema\/person\/6b71040d3e4353a85583550901159cd8","name":"R.Verissimo","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.skynext.tech\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/0bf345444b71baae1301e50a1a8cbeb98a5b7f41b85ffe9e1e6c2640ef23b528?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/0bf345444b71baae1301e50a1a8cbeb98a5b7f41b85ffe9e1e6c2640ef23b528?s=96&d=mm&r=g","caption":"R.Verissimo"},"url":"https:\/\/www.skynext.tech\/index.php\/author\/wpadmin\/"}]}},"_links":{"self":[{"href":"https:\/\/www.skynext.tech\/index.php\/wp-json\/wp\/v2\/posts\/34","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.skynext.tech\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.skynext.tech\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.skynext.tech\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.skynext.tech\/index.php\/wp-json\/wp\/v2\/comments?post=34"}],"version-history":[{"count":4,"href":"https:\/\/www.skynext.tech\/index.php\/wp-json\/wp\/v2\/posts\/34\/revisions"}],"predecessor-version":[{"id":40,"href":"https:\/\/www.skynext.tech\/index.php\/wp-json\/wp\/v2\/posts\/34\/revisions\/40"}],"wp:attachment":[{"href":"https:\/\/www.skynext.tech\/index.php\/wp-json\/wp\/v2\/media?parent=34"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.skynext.tech\/index.php\/wp-json\/wp\/v2\/categories?post=34"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.skynext.tech\/index.php\/wp-json\/wp\/v2\/tags?post=34"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}