<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-2394990579473134159</atom:id><lastBuildDate>Fri, 19 Sep 2025 13:11:31 +0000</lastBuildDate><category>Digital</category><category>Analog</category><title>2x4x8</title><description></description><link>http://2x4x8.blogspot.com/</link><managingEditor>noreply@blogger.com ( )</managingEditor><generator>Blogger</generator><openSearch:totalResults>67</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2394990579473134159.post-5063216437420004534</guid><pubDate>Tue, 21 Jan 2025 19:41:00 +0000</pubDate><atom:updated>2025-01-21T11:43:39.056-08:00</atom:updated><title>CuriseControl.net Secured Email Publisher</title><description>&lt;p&gt;ccnet.config example:&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;...&lt;/p&gt;&lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&amp;lt;email&amp;gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;white-space: normal;&quot;&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&amp;lt;useSSL&amp;gt;false&amp;lt;/useSSL&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;white-space: normal;&quot;&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&amp;lt;mailhost&amp;gt;smtp.sendgrid.net&amp;lt;/mailhost&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;white-space: normal;&quot;&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&amp;lt;mailport&amp;gt;587&amp;lt;/mailport&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;white-space: normal;&quot;&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&amp;lt;mailhostUsername&amp;gt;apikey&amp;lt;/mailhostUsername&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;white-space: normal;&quot;&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&amp;lt;mailhostPassword&amp;gt;_secret_&amp;lt;/mailhostPassword&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;white-space: normal;&quot;&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&amp;lt;from&amp;gt;from@email.com&amp;lt;/from&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;...&lt;/p&gt;</description><link>http://2x4x8.blogspot.com/2025/01/curisecontrolnet-ccnet-secured-email.html</link><author>noreply@blogger.com (test)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2394990579473134159.post-3852228479125371110</guid><pubDate>Tue, 17 Dec 2024 01:20:00 +0000</pubDate><atom:updated>2025-05-02T14:38:09.620-07:00</atom:updated><title>Ubuntu 24.10 Setup Notes</title><description>&lt;h1 style=&quot;text-align: left;&quot;&gt;Installation Notes for Ubuntu 25.04 &lt;strike&gt;24.10&amp;nbsp;&lt;/strike&gt;&lt;/h1&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEitFI9Vi5E7lBuOmr9NuwZOqUEG-NTFolVmgNpzFD7wGnYYfrR3V0OzOyrwOSn_E-s0c7pn2vj2N6q-d243udT6kt3Z6tXitDOsP0o1LVBkxnGqGT4hRcwh8w8qScMFzxfTBTweplYN8rrsCOx71SL_Xcog1jIDbGyU9FG4SVsZ8XoD2hknmwbqsdGJbgE&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;1080&quot; data-original-width=&quot;1920&quot; height=&quot;360&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEitFI9Vi5E7lBuOmr9NuwZOqUEG-NTFolVmgNpzFD7wGnYYfrR3V0OzOyrwOSn_E-s0c7pn2vj2N6q-d243udT6kt3Z6tXitDOsP0o1LVBkxnGqGT4hRcwh8w8qScMFzxfTBTweplYN8rrsCOx71SL_Xcog1jIDbGyU9FG4SVsZ8XoD2hknmwbqsdGJbgE=w640-h360&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;1. Clear TPM in BIOS (Optional)&lt;/h2&gt;&lt;div style=&quot;text-align: left;&quot;&gt;Only needed for TPM-backed disk encryption&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;2. Minimal Install with Hardware-Backed Full disk encryption&lt;/h2&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFfez27DEC6ghFoonnHQnEUmS2PQTZLFfz6xCYPVagoW996-Tvd_8tWRGOfbOKqL4iN88vMsBBifyFrDeaaH3sKDKim68BKlqbeos1J7gCSvRM36a0tbuSPgiMfp_YvF3NNcck4xgxI4FuBN5ZQgLnLwE7ttXHo0OU43E1GiQpayrD4vAjo7rHDpUdbcs/s640/image.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;343&quot; data-original-width=&quot;640&quot; height=&quot;344&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFfez27DEC6ghFoonnHQnEUmS2PQTZLFfz6xCYPVagoW996-Tvd_8tWRGOfbOKqL4iN88vMsBBifyFrDeaaH3sKDKim68BKlqbeos1J7gCSvRM36a0tbuSPgiMfp_YvF3NNcck4xgxI4FuBN5ZQgLnLwE7ttXHo0OU43E1GiQpayrD4vAjo7rHDpUdbcs/w640-h344/image.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiauO8z8BsPTtrEfk1-luyLW7Y4_145tmdee2gOPJiC8q623SKVrnBKhGqhp3Z4H_0LvM3MT2XUdMx6JmQFnk_6d2mNHo2MFH7mFzNELkk9imTOrj9E5WK2uUQwNUBY-wLATSx0-W5dCsDA8rXAKDSzhYA0QB_ZgGh4KrJqFplY8XcJEtz3N4bYyXvxv84/s797/Screenshot%20From%202024-12-20%2010-11-30.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;566&quot; data-original-width=&quot;797&quot; height=&quot;454&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiauO8z8BsPTtrEfk1-luyLW7Y4_145tmdee2gOPJiC8q623SKVrnBKhGqhp3Z4H_0LvM3MT2XUdMx6JmQFnk_6d2mNHo2MFH7mFzNELkk9imTOrj9E5WK2uUQwNUBY-wLATSx0-W5dCsDA8rXAKDSzhYA0QB_ZgGh4KrJqFplY8XcJEtz3N4bYyXvxv84/w640-h454/Screenshot%20From%202024-12-20%2010-11-30.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;&lt;span&gt;Access recovery key&lt;/span&gt;&lt;/h4&gt;&lt;div&gt;&lt;span&gt;&lt;div&gt;sudo snap recovery --show-keys&lt;/div&gt;&lt;div style=&quot;font-size: x-large;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;3. Add time to bash terminal prompt&lt;/span&gt;&lt;/h2&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;1. &lt;b&gt;nano ~/.bashrc&lt;/b&gt;&lt;/p&gt;&lt;p&gt;2. Add to the end of file,&lt;/p&gt;&lt;p&gt;&lt;b&gt;PS1=&quot;\t $PS1&quot;&lt;/b&gt;&lt;/p&gt;&lt;div&gt;3. Save and reopen terminal&lt;/div&gt;&lt;p&gt;example output:&lt;/p&gt;&lt;p&gt;17:20:28 &lt;span style=&quot;color: #38761d;&quot;&gt;user@computer:&lt;/span&gt;&lt;span style=&quot;color: #3d85c6;&quot;&gt;~&lt;/span&gt;$&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;h2&gt;&lt;span style=&quot;color: #0c0d0e; font-size: x-large;&quot;&gt;4. Black Background&lt;/span&gt;&lt;/h2&gt;&lt;div&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;Download 1 pixel image&amp;nbsp;&amp;nbsp;&lt;a href=&quot;https://upload.wikimedia.org/wikipedia/commons/c/ca/1x1.png&quot;&gt;https://upload.wikimedia.org/wikipedia/commons/c/ca/1x1.png&lt;/a&gt;&lt;/div&gt;&lt;div&gt;and set as background&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2 style=&quot;--theme-background-attachment: auto; --theme-background-color: var(--white); --theme-background-position: top left; --theme-background-repeat: repeat; --theme-background-size: auto; --theme-base-primary-color-h: 12.87958115; --theme-base-primary-color-l: 48.82352941%; --theme-base-primary-color-s: 76.70682731%; --theme-body-font-color: var(--black-600); --theme-body-font-family: var(--ff-sans); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-color: var(--theme-primary); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-hover-color: var(--theme-primary-400); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-active-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-color: var(--white); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-button-primary-selected-color: var(--white); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-selected-color: var(--theme-primary-600); --theme-content-background-color: var(--white); --theme-content-border-color: var(--black-225); --theme-footer-background-border-top: 0; --theme-footer-background-color: #393939; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-divider-color: hsl(210,8%,25%); --theme-footer-link-color-hover: hsl(0,0%,100%); --theme-footer-link-color: hsl(0,0%,100%); --theme-footer-padding-bottom: 0; --theme-footer-padding-top: 0; --theme-footer-text-color: hsl(0,0%,100%); --theme-footer-title-color: hsl(0,0%,100%); --theme-header-background-border-bottom: 0; --theme-header-background-color: #DC461D; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.6); --theme-link-color-hover: #ec8d73; --theme-link-color-visited: rgba(220,70,29,0.7); --theme-link-color: #DC461D; --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: var(--theme-primary-100); --theme-post-owner-new-background-color: var(--theme-primary-200); --theme-post-title-color-hover: hsla(210,8%,5%,0.8); --theme-post-title-color-visited: hsl(210,8%,35%); --theme-post-title-color: hsl(210,8%,5%); --theme-post-title-font-family: var(--ff-sans); --theme-primary-custom-100: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .9))); --theme-primary-custom-200: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .75))); --theme-primary-custom-300: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .5))); --theme-primary-custom-400: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), var(--theme-base-primary-color-l)); --theme-primary-custom-500: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.3))); --theme-primary-custom-600: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.6))); --theme-primary-custom: var(--theme-primary-custom-400); --theme-topbar-bottom-border: none; border-radius: var(--br-md); border: 0px; box-sizing: inherit; color: #0c0d0e; font-family: var(--ff-mono); font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-emoji: inherit; font-variant-numeric: inherit; font-variant-position: inherit; font-variation-settings: inherit; line-height: var(--lh-md); margin-bottom: 0px; margin-top: 0px; max-height: 600px; overflow-wrap: normal; overflow: auto; padding: var(--su12); scrollbar-color: var(--scrollbar) transparent; text-align: left; vertical-align: baseline; width: auto;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;5. Vertical Taskbar&lt;/span&gt;&lt;/h2&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;pre style=&quot;--theme-background-attachment: auto; --theme-background-color: var(--white); --theme-background-position: top left; --theme-background-repeat: repeat; --theme-background-size: auto; --theme-base-primary-color-h: 12.87958115; --theme-base-primary-color-l: 48.82352941%; --theme-base-primary-color-s: 76.70682731%; --theme-body-font-color: var(--black-600); --theme-body-font-family: var(--ff-sans); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-color: var(--theme-primary); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-hover-color: var(--theme-primary-400); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-active-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-color: var(--white); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-button-primary-selected-color: var(--white); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-selected-color: var(--theme-primary-600); --theme-content-background-color: var(--white); --theme-content-border-color: var(--black-225); --theme-footer-background-border-top: 0; --theme-footer-background-color: #393939; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-divider-color: hsl(210,8%,25%); --theme-footer-link-color-hover: hsl(0,0%,100%); --theme-footer-link-color: hsl(0,0%,100%); --theme-footer-padding-bottom: 0; --theme-footer-padding-top: 0; --theme-footer-text-color: hsl(0,0%,100%); --theme-footer-title-color: hsl(0,0%,100%); --theme-header-background-border-bottom: 0; --theme-header-background-color: #DC461D; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.6); --theme-link-color-hover: #ec8d73; --theme-link-color-visited: rgba(220,70,29,0.7); --theme-link-color: #DC461D; --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: var(--theme-primary-100); --theme-post-owner-new-background-color: var(--theme-primary-200); --theme-post-title-color-hover: hsla(210,8%,5%,0.8); --theme-post-title-color-visited: hsl(210,8%,35%); --theme-post-title-color: hsl(210,8%,5%); --theme-post-title-font-family: var(--ff-sans); --theme-primary-custom-100: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .9))); --theme-primary-custom-200: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .75))); --theme-primary-custom-300: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .5))); --theme-primary-custom-400: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), var(--theme-base-primary-color-l)); --theme-primary-custom-500: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.3))); --theme-primary-custom-600: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.6))); --theme-primary-custom: var(--theme-primary-custom-400); --theme-topbar-bottom-border: none; border-radius: var(--br-md); border: 0px; box-sizing: inherit; color: #0c0d0e; font-family: var(--ff-mono); font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-size: var(--fs-body1); font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-emoji: inherit; font-variant-numeric: inherit; font-variant-position: inherit; font-variation-settings: inherit; line-height: var(--lh-md); margin-bottom: 0px; margin-top: 0px; max-height: 600px; overflow-wrap: normal; overflow: auto; padding: var(--su12); scrollbar-color: var(--scrollbar) transparent; vertical-align: baseline; width: auto;&quot;&gt;&lt;br /&gt;&lt;/pre&gt;&lt;pre style=&quot;--theme-background-attachment: auto; --theme-background-color: var(--white); --theme-background-position: top left; --theme-background-repeat: repeat; --theme-background-size: auto; --theme-base-primary-color-h: 12.87958115; --theme-base-primary-color-l: 48.82352941%; --theme-base-primary-color-s: 76.70682731%; --theme-body-font-color: var(--black-600); --theme-body-font-family: var(--ff-sans); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-color: var(--theme-primary); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-hover-color: var(--theme-primary-400); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-active-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-color: var(--white); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-button-primary-selected-color: var(--white); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-selected-color: var(--theme-primary-600); --theme-content-background-color: var(--white); --theme-content-border-color: var(--black-225); --theme-footer-background-border-top: 0; --theme-footer-background-color: #393939; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-divider-color: hsl(210,8%,25%); --theme-footer-link-color-hover: hsl(0,0%,100%); --theme-footer-link-color: hsl(0,0%,100%); --theme-footer-padding-bottom: 0; --theme-footer-padding-top: 0; --theme-footer-text-color: hsl(0,0%,100%); --theme-footer-title-color: hsl(0,0%,100%); --theme-header-background-border-bottom: 0; --theme-header-background-color: #DC461D; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.6); --theme-link-color-hover: #ec8d73; --theme-link-color-visited: rgba(220,70,29,0.7); --theme-link-color: #DC461D; --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: var(--theme-primary-100); --theme-post-owner-new-background-color: var(--theme-primary-200); --theme-post-title-color-hover: hsla(210,8%,5%,0.8); --theme-post-title-color-visited: hsl(210,8%,35%); --theme-post-title-color: hsl(210,8%,5%); --theme-post-title-font-family: var(--ff-sans); --theme-primary-custom-100: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .9))); --theme-primary-custom-200: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .75))); --theme-primary-custom-300: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .5))); --theme-primary-custom-400: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), var(--theme-base-primary-color-l)); --theme-primary-custom-500: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.3))); --theme-primary-custom-600: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.6))); --theme-primary-custom: var(--theme-primary-custom-400); --theme-topbar-bottom-border: none; border-radius: var(--br-md); border: 0px; box-sizing: inherit; color: #0c0d0e; font-family: var(--ff-mono); font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-size: var(--fs-body1); font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-emoji: inherit; font-variant-numeric: inherit; font-variant-position: inherit; font-variation-settings: inherit; line-height: var(--lh-md); margin-bottom: 0px; margin-top: 0px; max-height: 600px; overflow-wrap: normal; overflow: auto; padding: var(--su12); scrollbar-color: var(--scrollbar) transparent; vertical-align: baseline; width: auto;&quot;&gt;Install &lt;b&gt;Extension Manager&lt;/b&gt;&lt;/pre&gt;&lt;pre style=&quot;--theme-background-attachment: auto; --theme-background-color: var(--white); --theme-background-position: top left; --theme-background-repeat: repeat; --theme-background-size: auto; --theme-base-primary-color-h: 12.87958115; --theme-base-primary-color-l: 48.82352941%; --theme-base-primary-color-s: 76.70682731%; --theme-body-font-color: var(--black-600); --theme-body-font-family: var(--ff-sans); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-color: var(--theme-primary); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-hover-color: var(--theme-primary-400); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-active-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-color: var(--white); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-button-primary-selected-color: var(--white); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-selected-color: var(--theme-primary-600); --theme-content-background-color: var(--white); --theme-content-border-color: var(--black-225); --theme-footer-background-border-top: 0; --theme-footer-background-color: #393939; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-divider-color: hsl(210,8%,25%); --theme-footer-link-color-hover: hsl(0,0%,100%); --theme-footer-link-color: hsl(0,0%,100%); --theme-footer-padding-bottom: 0; --theme-footer-padding-top: 0; --theme-footer-text-color: hsl(0,0%,100%); --theme-footer-title-color: hsl(0,0%,100%); --theme-header-background-border-bottom: 0; --theme-header-background-color: #DC461D; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.6); --theme-link-color-hover: #ec8d73; --theme-link-color-visited: rgba(220,70,29,0.7); --theme-link-color: #DC461D; --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: var(--theme-primary-100); --theme-post-owner-new-background-color: var(--theme-primary-200); --theme-post-title-color-hover: hsla(210,8%,5%,0.8); --theme-post-title-color-visited: hsl(210,8%,35%); --theme-post-title-color: hsl(210,8%,5%); --theme-post-title-font-family: var(--ff-sans); --theme-primary-custom-100: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .9))); --theme-primary-custom-200: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .75))); --theme-primary-custom-300: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .5))); --theme-primary-custom-400: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), var(--theme-base-primary-color-l)); --theme-primary-custom-500: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.3))); --theme-primary-custom-600: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.6))); --theme-primary-custom: var(--theme-primary-custom-400); --theme-topbar-bottom-border: none; border-radius: var(--br-md); border: 0px; box-sizing: inherit; color: #0c0d0e; font-family: var(--ff-mono); font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-size: var(--fs-body1); font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-emoji: inherit; font-variant-numeric: inherit; font-variant-position: inherit; font-variation-settings: inherit; line-height: var(--lh-md); margin-bottom: 0px; margin-top: 0px; max-height: 600px; overflow-wrap: normal; overflow: auto; padding: var(--su12); scrollbar-color: var(--scrollbar) transparent; vertical-align: baseline; width: auto;&quot;&gt;&lt;br /&gt;&lt;/pre&gt;&lt;pre style=&quot;--theme-background-attachment: auto; --theme-background-color: var(--white); --theme-background-position: top left; --theme-background-repeat: repeat; --theme-background-size: auto; --theme-base-primary-color-h: 12.87958115; --theme-base-primary-color-l: 48.82352941%; --theme-base-primary-color-s: 76.70682731%; --theme-body-font-color: var(--black-600); --theme-body-font-family: var(--ff-sans); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-color: var(--theme-primary); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-hover-color: var(--theme-primary-400); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-active-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-color: var(--white); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-button-primary-selected-color: var(--white); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-selected-color: var(--theme-primary-600); --theme-content-background-color: var(--white); --theme-content-border-color: var(--black-225); --theme-footer-background-border-top: 0; --theme-footer-background-color: #393939; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-divider-color: hsl(210,8%,25%); --theme-footer-link-color-hover: hsl(0,0%,100%); --theme-footer-link-color: hsl(0,0%,100%); --theme-footer-padding-bottom: 0; --theme-footer-padding-top: 0; --theme-footer-text-color: hsl(0,0%,100%); --theme-footer-title-color: hsl(0,0%,100%); --theme-header-background-border-bottom: 0; --theme-header-background-color: #DC461D; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.6); --theme-link-color-hover: #ec8d73; --theme-link-color-visited: rgba(220,70,29,0.7); --theme-link-color: #DC461D; --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: var(--theme-primary-100); --theme-post-owner-new-background-color: var(--theme-primary-200); --theme-post-title-color-hover: hsla(210,8%,5%,0.8); --theme-post-title-color-visited: hsl(210,8%,35%); --theme-post-title-color: hsl(210,8%,5%); --theme-post-title-font-family: var(--ff-sans); --theme-primary-custom-100: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .9))); --theme-primary-custom-200: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .75))); --theme-primary-custom-300: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .5))); --theme-primary-custom-400: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), var(--theme-base-primary-color-l)); --theme-primary-custom-500: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.3))); --theme-primary-custom-600: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.6))); --theme-primary-custom: var(--theme-primary-custom-400); --theme-topbar-bottom-border: none; border-radius: var(--br-md); border: 0px; box-sizing: inherit; color: #0c0d0e; font-family: var(--ff-mono); font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-size: var(--fs-body1); font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-emoji: inherit; font-variant-numeric: inherit; font-variant-position: inherit; font-variation-settings: inherit; line-height: var(--lh-md); margin-bottom: 0px; margin-top: 0px; max-height: 600px; overflow-wrap: normal; overflow: auto; padding: var(--su12); scrollbar-color: var(--scrollbar) transparent; vertical-align: baseline; width: auto;&quot;&gt;Install &lt;b&gt;Dash to Panel&lt;/b&gt; extension by charlesg99 &lt;/pre&gt;&lt;pre style=&quot;--theme-background-attachment: auto; --theme-background-color: var(--white); --theme-background-position: top left; --theme-background-repeat: repeat; --theme-background-size: auto; --theme-base-primary-color-h: 12.87958115; --theme-base-primary-color-l: 48.82352941%; --theme-base-primary-color-s: 76.70682731%; --theme-body-font-color: var(--black-600); --theme-body-font-family: var(--ff-sans); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-color: var(--theme-primary); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-hover-color: var(--theme-primary-400); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-active-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-color: var(--white); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-button-primary-selected-color: var(--white); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-selected-color: var(--theme-primary-600); --theme-content-background-color: var(--white); --theme-content-border-color: var(--black-225); --theme-footer-background-border-top: 0; --theme-footer-background-color: #393939; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-divider-color: hsl(210,8%,25%); --theme-footer-link-color-hover: hsl(0,0%,100%); --theme-footer-link-color: hsl(0,0%,100%); --theme-footer-padding-bottom: 0; --theme-footer-padding-top: 0; --theme-footer-text-color: hsl(0,0%,100%); --theme-footer-title-color: hsl(0,0%,100%); --theme-header-background-border-bottom: 0; --theme-header-background-color: #DC461D; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.6); --theme-link-color-hover: #ec8d73; --theme-link-color-visited: rgba(220,70,29,0.7); --theme-link-color: #DC461D; --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: var(--theme-primary-100); --theme-post-owner-new-background-color: var(--theme-primary-200); --theme-post-title-color-hover: hsla(210,8%,5%,0.8); --theme-post-title-color-visited: hsl(210,8%,35%); --theme-post-title-color: hsl(210,8%,5%); --theme-post-title-font-family: var(--ff-sans); --theme-primary-custom-100: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .9))); --theme-primary-custom-200: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .75))); --theme-primary-custom-300: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .5))); --theme-primary-custom-400: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), var(--theme-base-primary-color-l)); --theme-primary-custom-500: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.3))); --theme-primary-custom-600: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.6))); --theme-primary-custom: var(--theme-primary-custom-400); --theme-topbar-bottom-border: none; border-radius: var(--br-md); border: 0px; box-sizing: inherit; color: #0c0d0e; font-family: var(--ff-mono); font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-size: var(--fs-body1); font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-emoji: inherit; font-variant-numeric: inherit; font-variant-position: inherit; font-variation-settings: inherit; line-height: var(--lh-md); margin-bottom: 0px; margin-top: 0px; max-height: 600px; overflow-wrap: normal; overflow: auto; padding: var(--su12); scrollbar-color: var(--scrollbar) transparent; vertical-align: baseline; width: auto;&quot;&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjWcZFYB3lEHCtOwXd5QJV-VgI7fJYXxbgl8DklfoW0oB_kbKoiRIZwH0FxZyI7mBdmBkAj5osbW37E9tbMDPB0dUDSoWLreP4jFdYeNzvJNK9-49SPEae4TI8SebxMho4XtEKxO84hbibaA79e-wPzbK_GXOOeehq3QRR-YNqpeQDHud3fdTUxzXMb9vQ/s1920/Screenshot%20From%202024-12-20%2010-21-57.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;1080&quot; data-original-width=&quot;1920&quot; height=&quot;360&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjWcZFYB3lEHCtOwXd5QJV-VgI7fJYXxbgl8DklfoW0oB_kbKoiRIZwH0FxZyI7mBdmBkAj5osbW37E9tbMDPB0dUDSoWLreP4jFdYeNzvJNK9-49SPEae4TI8SebxMho4XtEKxO84hbibaA79e-wPzbK_GXOOeehq3QRR-YNqpeQDHud3fdTUxzXMb9vQ/w640-h360/Screenshot%20From%202024-12-20%2010-21-57.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;pre style=&quot;--theme-background-attachment: auto; --theme-background-color: var(--white); --theme-background-position: top left; --theme-background-repeat: repeat; --theme-background-size: auto; --theme-base-primary-color-h: 12.87958115; --theme-base-primary-color-l: 48.82352941%; --theme-base-primary-color-s: 76.70682731%; --theme-body-font-color: var(--black-600); --theme-body-font-family: var(--ff-sans); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-color: var(--theme-primary); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-hover-color: var(--theme-primary-400); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-active-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-color: var(--white); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-button-primary-selected-color: var(--white); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-selected-color: var(--theme-primary-600); --theme-content-background-color: var(--white); --theme-content-border-color: var(--black-225); --theme-footer-background-border-top: 0; --theme-footer-background-color: #393939; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-divider-color: hsl(210,8%,25%); --theme-footer-link-color-hover: hsl(0,0%,100%); --theme-footer-link-color: hsl(0,0%,100%); --theme-footer-padding-bottom: 0; --theme-footer-padding-top: 0; --theme-footer-text-color: hsl(0,0%,100%); --theme-footer-title-color: hsl(0,0%,100%); --theme-header-background-border-bottom: 0; --theme-header-background-color: #DC461D; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.6); --theme-link-color-hover: #ec8d73; --theme-link-color-visited: rgba(220,70,29,0.7); --theme-link-color: #DC461D; --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: var(--theme-primary-100); --theme-post-owner-new-background-color: var(--theme-primary-200); --theme-post-title-color-hover: hsla(210,8%,5%,0.8); --theme-post-title-color-visited: hsl(210,8%,35%); --theme-post-title-color: hsl(210,8%,5%); --theme-post-title-font-family: var(--ff-sans); --theme-primary-custom-100: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .9))); --theme-primary-custom-200: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .75))); --theme-primary-custom-300: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .5))); --theme-primary-custom-400: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), var(--theme-base-primary-color-l)); --theme-primary-custom-500: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.3))); --theme-primary-custom-600: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.6))); --theme-primary-custom: var(--theme-primary-custom-400); --theme-topbar-bottom-border: none; border-radius: var(--br-md); border: 0px; box-sizing: inherit; color: #0c0d0e; font-family: var(--ff-mono); font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-size: var(--fs-body1); font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-emoji: inherit; font-variant-numeric: inherit; font-variant-position: inherit; font-variation-settings: inherit; line-height: var(--lh-md); margin-bottom: 0px; margin-top: 0px; max-height: 600px; overflow-wrap: normal; overflow: auto; padding: var(--su12); scrollbar-color: var(--scrollbar) transparent; vertical-align: baseline; width: auto;&quot;&gt;&lt;br /&gt;&lt;/pre&gt;&lt;pre style=&quot;--theme-background-attachment: auto; --theme-background-color: var(--white); --theme-background-position: top left; --theme-background-repeat: repeat; --theme-background-size: auto; --theme-base-primary-color-h: 12.87958115; --theme-base-primary-color-l: 48.82352941%; --theme-base-primary-color-s: 76.70682731%; --theme-body-font-color: var(--black-600); --theme-body-font-family: var(--ff-sans); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-color: var(--theme-primary); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-hover-color: var(--theme-primary-400); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-active-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-color: var(--white); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-button-primary-selected-color: var(--white); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-selected-color: var(--theme-primary-600); --theme-content-background-color: var(--white); --theme-content-border-color: var(--black-225); --theme-footer-background-border-top: 0; --theme-footer-background-color: #393939; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-divider-color: hsl(210,8%,25%); --theme-footer-link-color-hover: hsl(0,0%,100%); --theme-footer-link-color: hsl(0,0%,100%); --theme-footer-padding-bottom: 0; --theme-footer-padding-top: 0; --theme-footer-text-color: hsl(0,0%,100%); --theme-footer-title-color: hsl(0,0%,100%); --theme-header-background-border-bottom: 0; --theme-header-background-color: #DC461D; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.6); --theme-link-color-hover: #ec8d73; --theme-link-color-visited: rgba(220,70,29,0.7); --theme-link-color: #DC461D; --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: var(--theme-primary-100); --theme-post-owner-new-background-color: var(--theme-primary-200); --theme-post-title-color-hover: hsla(210,8%,5%,0.8); --theme-post-title-color-visited: hsl(210,8%,35%); --theme-post-title-color: hsl(210,8%,5%); --theme-post-title-font-family: var(--ff-sans); --theme-primary-custom-100: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .9))); --theme-primary-custom-200: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .75))); --theme-primary-custom-300: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .5))); --theme-primary-custom-400: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), var(--theme-base-primary-color-l)); --theme-primary-custom-500: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.3))); --theme-primary-custom-600: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.6))); --theme-primary-custom: var(--theme-primary-custom-400); --theme-topbar-bottom-border: none; border-radius: var(--br-md); border: 0px; box-sizing: inherit; color: #0c0d0e; font-family: var(--ff-mono); font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-size: var(--fs-body1); font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-emoji: inherit; font-variant-numeric: inherit; font-variant-position: inherit; font-variation-settings: inherit; line-height: var(--lh-md); margin-bottom: 0px; margin-top: 0px; max-height: 600px; overflow-wrap: normal; overflow: auto; padding: var(--su12); scrollbar-color: var(--scrollbar) transparent; vertical-align: baseline; width: auto;&quot;&gt;&lt;code style=&quot;--theme-background-attachment: auto; --theme-background-color: var(--white); --theme-background-position: top left; --theme-background-repeat: repeat; --theme-background-size: auto; --theme-base-primary-color-h: 12.87958115; --theme-base-primary-color-l: 48.82352941%; --theme-base-primary-color-s: 76.70682731%; --theme-body-font-color: var(--black-600); --theme-body-font-family: var(--ff-sans); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-color: var(--theme-primary); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-hover-color: var(--theme-primary-400); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-active-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-color: var(--white); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-button-primary-selected-color: var(--white); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-selected-color: var(--theme-primary-600); --theme-content-background-color: var(--white); --theme-content-border-color: var(--black-225); --theme-footer-background-border-top: 0; --theme-footer-background-color: #393939; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-divider-color: hsl(210,8%,25%); --theme-footer-link-color-hover: hsl(0,0%,100%); --theme-footer-link-color: hsl(0,0%,100%); --theme-footer-padding-bottom: 0; --theme-footer-padding-top: 0; --theme-footer-text-color: hsl(0,0%,100%); --theme-footer-title-color: hsl(0,0%,100%); --theme-header-background-border-bottom: 0; --theme-header-background-color: #DC461D; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.6); --theme-link-color-hover: #ec8d73; --theme-link-color-visited: rgba(220,70,29,0.7); --theme-link-color: #DC461D; --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: var(--theme-primary-100); --theme-post-owner-new-background-color: var(--theme-primary-200); --theme-post-title-color-hover: hsla(210,8%,5%,0.8); --theme-post-title-color-visited: hsl(210,8%,35%); --theme-post-title-color: hsl(210,8%,5%); --theme-post-title-font-family: var(--ff-sans); --theme-primary-custom-100: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .9))); --theme-primary-custom-200: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .75))); --theme-primary-custom-300: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .5))); --theme-primary-custom-400: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), var(--theme-base-primary-color-l)); --theme-primary-custom-500: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.3))); --theme-primary-custom-600: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.6))); --theme-primary-custom: var(--theme-primary-custom-400); --theme-topbar-bottom-border: none; border-radius: 0px; border: 0px; box-sizing: inherit; color: var(--black-600); font-family: var(--ff-mono); font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-size: var(--_pr-code-fs); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline; white-space: inherit;&quot;&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;6. Setup LXD&lt;/h2&gt;&lt;div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;sudo snap install lxd --channel=latest&lt;/b&gt;&lt;/div&gt;&lt;div&gt;#This will get the latest version which can create image directly from backup file on UI&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;sudo lxd init&lt;/b&gt;&lt;/div&gt;&lt;div&gt;# Almost all defaults except:&lt;br /&gt;&lt;div&gt;# Size in GiB of the new loop (pool?) device (1GiB minimum) [default=30GiB]: &lt;b&gt;200GiB&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;sudo adduser $USER lxd&lt;/b&gt;&lt;/div&gt;&lt;div&gt;#&amp;nbsp;You must run ‘lxd init’ as root. ‘lxc’ commands can be run as any user who is a member of group lxd.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;newgrp lxd&lt;/b&gt;&lt;/div&gt;&lt;div&gt;#&amp;nbsp;The new membership will take effect on the next login, or after running newgrp lxd from an existing login.&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;lxc config set core.https_address :8443&lt;/b&gt;&lt;/div&gt;&lt;div&gt;# This enables UI on &lt;a href=&quot;https://localhost:8443&quot;&gt;https://localhost:8443&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;# Increase default stroage pool size&lt;/div&gt;&lt;div&gt;&lt;b&gt;lxc storage set default size=200GiB&lt;/b&gt; or to whatever size you may need.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;7. Uncomplicated Firewall Settings (if needed)&lt;/h2&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;b&gt;sudo ufw allow in on lxdbr0&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;# This rule allows DNS, DHCP, and etc from guests (containers in this case).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;sudo ufw route allow in on lxdbr0&lt;/b&gt;&lt;/div&gt;&lt;div&gt;# Allow internet traffic from guests.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;8. Speed Up Remmina&lt;/h2&gt;&lt;p&gt;Enable UDP protocol&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOgU8x4KQMcnbgsLM5bOOapfuK7voxTXgdEJyhyphenhyphenF7BFJGbSapjNiWD3ezL4d_sjH0fyI5NxU3CPAetZl6-yTEM7WjTzl52BPAJ3FsqRrWMsxrAmzk5buWsmP8-lzEEHaHoxjpmbh-_pIAayXNPQ92WoCpedp8VdjOZaFjzeijwCH0Lv57ZEUn2_sqBuTM/s867/Screenshot%20From%202024-12-20%2010-56-49.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;689&quot; data-original-width=&quot;867&quot; height=&quot;508&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOgU8x4KQMcnbgsLM5bOOapfuK7voxTXgdEJyhyphenhyphenF7BFJGbSapjNiWD3ezL4d_sjH0fyI5NxU3CPAetZl6-yTEM7WjTzl52BPAJ3FsqRrWMsxrAmzk5buWsmP8-lzEEHaHoxjpmbh-_pIAayXNPQ92WoCpedp8VdjOZaFjzeijwCH0Lv57ZEUn2_sqBuTM/w640-h508/Screenshot%20From%202024-12-20%2010-56-49.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;h2&gt;9. Intel GPU&lt;/h2&gt;&lt;p&gt;# TODO&lt;/p&gt;&lt;p&gt;sudo apt install intel-gpu-tools&lt;/p&gt;&lt;p&gt;sudo intel_gpu_top&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;10. Install Wine&lt;/h2&gt;&lt;div style=&quot;text-align: left;&quot;&gt;# Install Wine from Ubuntu Repository&lt;/div&gt;&lt;pre class=&quot;code highlight&quot; lang=&quot;shell&quot;&gt;&lt;b&gt;&lt;span class=&quot;nb&quot;&gt;sudo mkdir&lt;/span&gt; &lt;span class=&quot;nt&quot;&gt;-pm755&lt;/span&gt; /etc/apt/keyrings
wget &lt;span class=&quot;nt&quot;&gt;-O&lt;/span&gt; - https://dl.winehq.org/wine-builds/winehq.key | &lt;span class=&quot;nb&quot;&gt;sudo &lt;/span&gt;gpg &lt;span class=&quot;nt&quot;&gt;--dearmor&lt;/span&gt; &lt;span class=&quot;nt&quot;&gt;-o&lt;/span&gt; /etc/apt/keyrings/winehq-archive.key -
&lt;/b&gt;&lt;/pre&gt;&lt;p&gt;#&amp;nbsp;Add the repository&lt;/p&gt;&lt;p&gt;&lt;b&gt;sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/oracular/winehq-oracular.sources&lt;/b&gt;&lt;/p&gt;&lt;p&gt;# update the package information&lt;/p&gt;&lt;p&gt;&lt;code&gt;&lt;b&gt;&lt;span class=&quot;nb&quot;&gt;sudo &lt;/span&gt;apt update&lt;/b&gt;&lt;/code&gt;&lt;/p&gt;&lt;p&gt;&lt;code&gt;# Install Wine&lt;/code&gt;&lt;/p&gt;&lt;p&gt;&lt;code&gt;&lt;b&gt;sudo apt install --install-recommends winehq-stable&lt;/b&gt;&lt;/code&gt;&lt;/p&gt;&lt;p&gt;&lt;code&gt;&lt;br /&gt;&lt;/code&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;div&gt;&lt;h2&gt;&lt;b&gt;11. Avoid NTFS USB reboot during copying files&lt;/b&gt;&lt;/h2&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;b&gt;$ echo &quot;blacklist ntfs3&quot; | sudo tee -a /etc/modprobe.d/blacklist.conf&lt;br /&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;/p&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;&lt;b&gt;12. Increase Not Responding Box timeout to 10 minutes&lt;/b&gt;&lt;/h2&gt;&lt;p style=&quot;text-align: left;&quot;&gt;&lt;b&gt;$ gsettings set org.gnome.mutter check-alive-timeout 600000&lt;/b&gt;&lt;/p&gt;&lt;p&gt;reboot&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;13. Edit PDF&lt;/h2&gt;&lt;p&gt;&lt;a href=&quot;https://www.microsoft.com/en-us/edge/business/download&quot;&gt;Microsoft Edge for Business&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;14.&amp;nbsp;Disable Usage-Based Sorting App Menu&amp;nbsp;&lt;/h2&gt;&lt;div&gt;GNOME sometimes adjusts order based on usage. Reset this:&lt;/div&gt;&lt;p&gt;&lt;b&gt;gsettings reset org.gnome.shell app-picker-layout&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;</description><link>http://2x4x8.blogspot.com/2024/12/add-time-to-ubuntu-bash-terminal-prompt.html</link><author>noreply@blogger.com ( )</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/a/AVvXsEitFI9Vi5E7lBuOmr9NuwZOqUEG-NTFolVmgNpzFD7wGnYYfrR3V0OzOyrwOSn_E-s0c7pn2vj2N6q-d243udT6kt3Z6tXitDOsP0o1LVBkxnGqGT4hRcwh8w8qScMFzxfTBTweplYN8rrsCOx71SL_Xcog1jIDbGyU9FG4SVsZ8XoD2hknmwbqsdGJbgE=s72-w640-h360-c" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2394990579473134159.post-6495065510209584606</guid><pubDate>Sun, 18 Dec 2022 19:59:00 +0000</pubDate><atom:updated>2023-01-24T17:04:16.508-08:00</atom:updated><title>Raspberry Pi Pico W Notes</title><description>&lt;h2 style=&quot;text-align: left;&quot;&gt;1. Programming Pico W in C with Arduino IDE&lt;/h2&gt;&lt;p&gt;&lt;/p&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/h3&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Project file size: One plain text .ino file for the whole project ~1KB&lt;/p&gt;&lt;p&gt;Arduino IDE program files: 560MB&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://github.com/earlephilhower/arduino-pico&quot;&gt;Pico W library&lt;/a&gt; &amp;amp; examples: 1MB&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEhhSq24Fknjdh85kwclkfXjQ03C0QVvX6PHxZf_Rqn0qmgQaoba1JpSWQW4-Sj5MZeYg5HXqnfmcZvgJF39cechOpE1JayXEjKZOax1whOd_cJr3BYhHjGHd3cLOOstkX-BBEai537HRPyuXOw744ctMps-BLtu3Uf126Y8ImSl6ceDxOqodn9F14EN&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;251&quot; data-original-width=&quot;493&quot; height=&quot;163&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEhhSq24Fknjdh85kwclkfXjQ03C0QVvX6PHxZf_Rqn0qmgQaoba1JpSWQW4-Sj5MZeYg5HXqnfmcZvgJF39cechOpE1JayXEjKZOax1whOd_cJr3BYhHjGHd3cLOOstkX-BBEai537HRPyuXOw744ctMps-BLtu3Uf126Y8ImSl6ceDxOqodn9F14EN&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;2. Power supply&lt;/h2&gt;&lt;p&gt;Pico W draws 45mA in delay(), goes above 100mA when WiFi is transmitting.&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;MicroUSB (power banks may not work because of low power draw)&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;or, battery connect to VSYS (PIN39) with Schottky diode&lt;/li&gt;&lt;ul&gt;&lt;li&gt;3 AA alkaline,&amp;nbsp;&lt;/li&gt;&lt;li&gt;4 AA NiMH rechargable,&amp;nbsp;&lt;/li&gt;&lt;li&gt;or, 1 rechargable&amp;nbsp;Li-ion&amp;nbsp;18650&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;h2 style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;br /&gt;&lt;/h2&gt;&lt;div&gt;&lt;h2&gt;3. Measureing voltage on VSYS&amp;nbsp;&lt;/h2&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;WIFi does NOT function after ADC3 is read.&amp;nbsp;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;pre class=&quot;wp-block-code has-small-font-size&quot; style=&quot;background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; overflow: auto; padding: 0.8em 1em; text-align: left;&quot;&gt;&lt;code style=&quot;box-sizing: border-box; display: block; overflow-wrap: break-word; word-break: normal;&quot;&gt;&lt;span style=&quot;color: #212529; font-family: Menlo, Consolas, monaco, monospace; white-space: pre-wrap;&quot;&gt;int PIN_BAT_ADC = A3; //ADC3 on Pico W&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;box-sizing: border-box; display: block; overflow-wrap: break-word; word-break: normal;&quot;&gt;&lt;span style=&quot;color: #212529; font-family: Menlo, Consolas, monaco, monospace;&quot;&gt;&lt;span style=&quot;white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;box-sizing: border-box; display: block; overflow-wrap: break-word; word-break: normal;&quot;&gt;&lt;span style=&quot;color: #212529; font-family: Menlo, Consolas, monaco, monospace;&quot;&gt;&lt;span style=&quot;white-space: pre-wrap;&quot;&gt;void getBatteryStatus()
{
   int vsys =  analogRead(PIN_BAT_ADC); 
   float volt = vsys * 3 * 3.3/4095; // vsys reads VSYS/3 0~4095 (ADC 12bits)
   int per= volt * 100 / 4.5; //3 AA full 4.5v
   Serial.printf(&quot;VSYS %d, Voltage %d.1v, Percent %d%%\n&quot;, vsys, volt, per);
}&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px; text-align: left;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px; text-align: left;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;4. Onboard LED&lt;/h2&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;Initialize digital pin LED_BUILTIN as an output:&lt;/p&gt;&lt;pre class=&quot;wp-block-code has-small-font-size&quot; style=&quot;background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; overflow: auto; padding: 0.8em 1em;&quot;&gt;&lt;code style=&quot;box-sizing: border-box; display: block; overflow-wrap: break-word; word-break: normal;&quot;&gt;&lt;span color=&quot;inherit&quot; style=&quot;font-family: inherit; white-space: pre-wrap;&quot;&gt;void setup() {&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;box-sizing: border-box; color: inherit; display: block; font-family: inherit; overflow-wrap: break-word; white-space: pre-wrap; word-break: normal;&quot;&gt;  pinMode(LED_BUILTIN, OUTPUT);&lt;/code&gt;&lt;code style=&quot;box-sizing: border-box; color: inherit; display: block; font-family: inherit; overflow-wrap: break-word; white-space: pre-wrap; word-break: normal;&quot;&gt;}&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;Turn the LED on and off:&lt;/p&gt;&lt;pre class=&quot;wp-block-code has-small-font-size&quot; style=&quot;background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; overflow: auto; padding: 0.8em 1em;&quot;&gt;&lt;code style=&quot;box-sizing: border-box; display: block; overflow-wrap: break-word; word-break: normal;&quot;&gt;&lt;span style=&quot;color: #212529; font-family: Menlo, Consolas, monaco, monospace;&quot;&gt;&lt;span style=&quot;white-space: pre-wrap;&quot;&gt;void loop() {
  digitalWrite(LED_BUILTIN, HIGH);  // turn the LED on
  delay(1000);                      // wait for a second
  digitalWrite(LED_BUILTIN, LOW);   // turn the LED off 
  delay(1000);                      // wait for a second
}&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;h2&gt;5. Morse Code&lt;/h2&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;Blink LED_BUILTIN in Morse code:&lt;/p&gt;&lt;pre class=&quot;wp-block-code has-small-font-size&quot; style=&quot;background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; overflow: auto; padding: 0.8em 1em;&quot;&gt;&lt;code style=&quot;box-sizing: border-box; display: block; overflow-wrap: break-word; word-break: normal;&quot;&gt;&lt;span style=&quot;white-space: pre-wrap;&quot;&gt;int ditDelay = 100;  //ms&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;box-sizing: border-box; display: block; overflow-wrap: break-word; word-break: normal;&quot;&gt;&lt;span style=&quot;white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;box-sizing: border-box; display: block; overflow-wrap: break-word; word-break: normal;&quot;&gt;&lt;span style=&quot;white-space: pre-wrap;&quot;&gt;void morse(String status) {
  String letters[] = {
    &quot;.-&quot;, &quot;-...&quot;, &quot;-.-.&quot;, &quot;-..&quot;, &quot;.&quot;, &quot;..-.&quot;, &quot;--.&quot;, &quot;....&quot;, &quot;..&quot;,    // A-I
    &quot;.---&quot;, &quot;-.-&quot;, &quot;.-..&quot;, &quot;--&quot;, &quot;-.&quot;, &quot;---&quot;, &quot;.--.&quot;, &quot;--.-&quot;, &quot;.-.&quot;,  // J-R
    &quot;...&quot;, &quot;-&quot;, &quot;..-&quot;, &quot;...-&quot;, &quot;.--&quot;, &quot;-..-&quot;, &quot;-.--&quot;, &quot;--..&quot;          // S-Z
  };



  Serial.print(&quot;[morse] &quot;);
  Serial.println(status);

  for (int i = 0; i &amp;lt; status.length(); i++) {
    char letter = status.charAt(i);

    String signal;
    if (letter &amp;gt;= &#39;a&#39; &amp;amp;&amp;amp; letter &amp;lt;= &#39;z&#39;)
      signal = letters[letter - &#39;a&#39;];
    else if (letter &amp;gt;= &#39;A&#39; &amp;amp;&amp;amp; letter &amp;lt;= &#39;Z&#39;)
      signal = letters[letter - &#39;A&#39;];
    else
      signal = &quot; &quot;;

    for (int t = 0; t &amp;lt; signal.length(); t++) {
      char ditDah = signal.charAt(t);
      if (ditDah == &#39;.&#39;)
        blink(ditDelay);
      else if (ditDah == &#39;-&#39;)
        blink(ditDelay * 3);
      else
        delay(ditDelay * 3);
    }
    blink(ditDelay * 2);  //letter space
  }
  blink(ditDelay * 4);  // word space

  digitalWrite(LED_BUILTIN, HIGH);  //keep onbard LED ON after
}

void blink(int len) {
  digitalWrite(LED_BUILTIN, HIGH);  // turn the LED on (HIGH is the voltage level)
  delay(len);                       // wait for dit or dah
  digitalWrite(LED_BUILTIN, LOW);   // turn the LED off by making the voltage LOW
  delay(ditDelay);                  // symbol space
}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;h2 style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;6. RGB LED&lt;/span&gt;&lt;/h2&gt;&lt;h2 style=&quot;background-color: white; box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;span&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;I use 5mm common cathode LED HV-5RGB60&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/h2&gt;&lt;div&gt;&lt;span&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_9u8KIG69K9R3zsic1R8UnKay50DN8rjGiaVd8gTfpbiJe984s_8IQ-_xhCrFGiNgWuXaXVJpgBqFlceWQ_gSyRFxXKCAeaYIwGPD-bIB_lS1RCZNIClL93ezq341ZJf58f00enakA-rY9fxZYxa_87wKuO9yjeGCdVLpIC5dNAV-K9sVdjZK3pvc/s648/rgb%20led.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;648&quot; data-original-width=&quot;646&quot; height=&quot;200&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_9u8KIG69K9R3zsic1R8UnKay50DN8rjGiaVd8gTfpbiJe984s_8IQ-_xhCrFGiNgWuXaXVJpgBqFlceWQ_gSyRFxXKCAeaYIwGPD-bIB_lS1RCZNIClL93ezq341ZJf58f00enakA-rY9fxZYxa_87wKuO9yjeGCdVLpIC5dNAV-K9sVdjZK3pvc/w199-h200/rgb%20led.png&quot; width=&quot;199&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXP1b5Uvc1bhKj2z-Q57R7TWi5toogVZrewUATk546wNLOa6XQI4oYMTAzqhDUZZnRNehv7oRgK4IhLR0FP6DzTIGrppHRPDXUZEJLeJo9uZO69AQxXiZpozBRmHa-E5h4pTB-mM1wwvSdrORK5UXYaR-RzNl3gAUU8EmaIkQ_EB5Vjct2qWTBkKfH/s710/rgb.PNG&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;548&quot; data-original-width=&quot;710&quot; height=&quot;309&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXP1b5Uvc1bhKj2z-Q57R7TWi5toogVZrewUATk546wNLOa6XQI4oYMTAzqhDUZZnRNehv7oRgK4IhLR0FP6DzTIGrppHRPDXUZEJLeJo9uZO69AQxXiZpozBRmHa-E5h4pTB-mM1wwvSdrORK5UXYaR-RzNl3gAUU8EmaIkQ_EB5Vjct2qWTBkKfH/w400-h309/rgb.PNG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;Pico W GPIO pins are 3.3v. Forward voltage(Vf) of Green and Blue are both 3.4v. No resistor is needed for G or B. But Red is Vf 2.0v when current is 20mA. I&#39;d add a 65 ohm resistor for Red.&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEiDG6VNIZ_jen7VttJiBwzJEgt7ZLkygeojScDQ_56u_SKWQ5mJ8OAql7jpGPWJ8ydyj11Or8xZL0FlXj_KOnYv-oMSxeu4zI0J7x38zwIR7ZTHk-Xa3s8vE8W8WO5dpWt_CdH58IzVVSpaD3oVOaC6S7D2vUoSURFNhxAFXKxFU70yGqu4Pkd7oN7v&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;81&quot; data-original-width=&quot;129&quot; height=&quot;126&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEiDG6VNIZ_jen7VttJiBwzJEgt7ZLkygeojScDQ_56u_SKWQ5mJ8OAql7jpGPWJ8ydyj11Or8xZL0FlXj_KOnYv-oMSxeu4zI0J7x38zwIR7ZTHk-Xa3s8vE8W8WO5dpWt_CdH58IzVVSpaD3oVOaC6S7D2vUoSURFNhxAFXKxFU70yGqu4Pkd7oN7v=w200-h126&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;R = (3.3v - 2.0v) / 0.02A = 65Ω&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;White light:&lt;/p&gt;&lt;pre class=&quot;wp-block-code has-small-font-size&quot; style=&quot;background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; overflow: auto; padding: 0.8em 1em;&quot;&gt;&lt;code style=&quot;box-sizing: border-box; display: block; overflow-wrap: break-word; word-break: normal;&quot;&gt;&lt;span color=&quot;inherit&quot; style=&quot;white-space: pre-wrap;&quot;&gt;const int RGB_PINS[] = { D2, D3, D1 };  //pins for red GP2 (pin 4), green GP3 (pin 5), blue GP1 (pin 2), GND (pin 3)
const float WHITE_BALANCE[] = { 1.0, 0.6, 0.5 }; //1.0= full intensity&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;box-sizing: border-box; display: block; overflow-wrap: break-word; word-break: normal;&quot;&gt;&lt;span color=&quot;inherit&quot; style=&quot;white-space: pre-wrap;&quot;&gt;const int RGB_BIT_SHIFTS[] = {16, 8, 0}; //bit shift right to get each primary color&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;box-sizing: border-box; display: block; overflow-wrap: break-word; word-break: normal;&quot;&gt;&lt;span color=&quot;inherit&quot; style=&quot;white-space: pre-wrap;&quot;&gt;unsigned long COLOR = 0xffffff; //HTML color code RRGGBB&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;box-sizing: border-box; display: block; overflow-wrap: break-word; word-break: normal;&quot;&gt;&lt;span color=&quot;inherit&quot; style=&quot;white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;box-sizing: border-box; display: block; overflow-wrap: break-word; word-break: normal;&quot;&gt;&lt;span color=&quot;inherit&quot; style=&quot;font-family: inherit; white-space: pre-wrap;&quot;&gt;void setup() {&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;box-sizing: border-box; color: inherit; display: block; font-family: inherit; overflow-wrap: break-word; white-space: pre-wrap; word-break: normal;&quot;&gt;  for (int j = 0; j &amp;lt; 3; j++) {
    pinMode(RGB_PINS[j], OUTPUT);&lt;/code&gt;&lt;code style=&quot;box-sizing: border-box; color: inherit; display: block; font-family: inherit; overflow-wrap: break-word; white-space: pre-wrap; word-break: normal;&quot;&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/span&gt;analogWrite(RGB_PINS[j], (COLOR &amp;gt;&amp;gt; RGB_BIT_SHIFTS[j] &amp;amp; 0xff) * WHITE_BALANCE[j]);
  }&lt;/code&gt;&lt;code style=&quot;box-sizing: border-box; color: inherit; display: block; font-family: inherit; overflow-wrap: break-word; white-space: pre-wrap; word-break: normal;&quot;&gt;&lt;span color=&quot;inherit&quot; style=&quot;font-family: inherit;&quot;&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;h2 style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;7. Breathing RGB LED&lt;/span&gt;&lt;/h2&gt;&lt;div&gt;There are &lt;a href=&quot;https://makersportal.com/blog/2020/3/27/simple-breathing-led-in-arduino#:~:text=A%20%E2%80%9Cbreathing%20LED%E2%80%9D%20is%20a,lung%20breathing%20in%20and%20out.&quot;&gt;several methods&lt;/a&gt; to smoothly change LED brightness from dark to full and back to dark.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;pre class=&quot;wp-block-code has-small-font-size&quot; style=&quot;background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; overflow: auto; padding: 0.8em 1em;&quot;&gt;&lt;code style=&quot;box-sizing: border-box; display: block; overflow-wrap: break-word; word-break: normal;&quot;&gt;&lt;span style=&quot;white-space: pre-wrap;&quot;&gt;void breath(int ms) {
  const float smoothness_pts = 1000;  //larger=slower change in brightness
  const int speed = 10;

  const float gamma = 0.14;  // affects the width of peak (more or less darkness)
  const float beta = 0.5;    // shifts the gaussian to be symmetric

  for (int i = 0; i &amp;lt; ms / smoothness_pts / speed; i++) {
    for (int ii = 0; ii &amp;lt; smoothness_pts; ii++) {
      float pwm_val = (exp(-(pow(((ii / smoothness_pts) - beta) / gamma, 2.0)) / 2.0));
      setColor(&lt;/span&gt;&lt;span style=&quot;white-space: pre-wrap;&quot;&gt;COLOR&lt;/span&gt;&lt;span style=&quot;white-space: pre-wrap;&quot;&gt;, pwm_val);
      delay(speed);
    }
  }
}&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;box-sizing: border-box; display: block; overflow-wrap: break-word; word-break: normal;&quot;&gt;&lt;span style=&quot;white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;box-sizing: border-box; display: block; overflow-wrap: break-word; word-break: normal;&quot;&gt;&lt;span style=&quot;white-space: pre-wrap;&quot;&gt;void setColor(unsigned long color, float brightness) {
  for (int i = 0; i &amp;lt; 3; i++)
    analogWrite(RGB_PINS[i], (&lt;/span&gt;&lt;span style=&quot;white-space: pre-wrap;&quot;&gt;color&lt;/span&gt;&lt;span style=&quot;white-space: pre-wrap;&quot;&gt; &amp;gt;&amp;gt; RGB_BIT_SHIFTS[i] &amp;amp; 0xff) * brightness * WHITE_BALANCE[i]);
}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;h2 style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;8. Room Temperature&lt;/span&gt;&lt;/h2&gt;&lt;div&gt;Read built-in temperature sensor in one line of code. It seems accurate&amp;nbsp;after long delay while core near room temperature.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;pre class=&quot;wp-block-code has-small-font-size&quot; style=&quot;background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; overflow: auto; padding: 0.8em 1em;&quot;&gt;&lt;code style=&quot;box-sizing: border-box; display: block; overflow-wrap: break-word; word-break: normal;&quot;&gt;&lt;span style=&quot;white-space: pre-wrap;&quot;&gt;float c = analogReadTemp();&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;box-sizing: border-box; display: block; overflow-wrap: break-word; word-break: normal;&quot;&gt;&lt;span style=&quot;white-space: pre-wrap;&quot;&gt;c = round(c * 10) / 10.0; //precision 0.1
Serial.printf(&quot;Core temperature: %fC\n&quot;, c);&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;/div&gt;&lt;h2 style=&quot;background-color: white; box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;br /&gt;&lt;/h2&gt;&lt;h2 style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; margin-bottom: 1rem; margin-top: 0px; text-align: left;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;9. Servo&lt;/span&gt;&lt;/h2&gt;&lt;div&gt;Add 100uF capacitor&amp;nbsp;across power and ground to smooth out SG90 current peaks, but not draw too much &lt;i&gt;inrush&amp;nbsp;current &lt;/i&gt;from USB.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqfohz-7EvpTDFRpHp9gp4ugkbsFCIDj1Pg3sv6JXRyP57Y9MGSm4g6lXMYSbltMc9HnE-Bvgz-qFklPUJcS09t3XptknnDaMSzFxwlugI2QUD1YxjZBOnk--y2RIYuRUlxM8G_RlLukomZFHC3Lzo3KDl02FycAivCs2MQVQQPNy3lINbLFaKZnJc/s1366/Spectacular%20Luulia.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;560&quot; data-original-width=&quot;1366&quot; height=&quot;164&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqfohz-7EvpTDFRpHp9gp4ugkbsFCIDj1Pg3sv6JXRyP57Y9MGSm4g6lXMYSbltMc9HnE-Bvgz-qFklPUJcS09t3XptknnDaMSzFxwlugI2QUD1YxjZBOnk--y2RIYuRUlxM8G_RlLukomZFHC3Lzo3KDl02FycAivCs2MQVQQPNy3lINbLFaKZnJc/w400-h164/Spectacular%20Luulia.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;pre class=&quot;wp-block-code has-small-font-size&quot; style=&quot;background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; overflow: auto; padding: 0.8em 1em; text-align: left;&quot;&gt;&lt;code style=&quot;box-sizing: border-box; display: block; overflow-wrap: break-word; word-break: normal;&quot;&gt;&lt;div style=&quot;background-color: #1f272a; color: #dae3e3; font-family: Consolas, &amp;quot;Courier New&amp;quot;, monospace; font-size: 16px; line-height: 22px;&quot;&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;#include&lt;/span&gt; &lt;span style=&quot;color: #7fcbcd;&quot;&gt;&amp;lt;Servo.h&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: #1f272a; color: #dae3e3; font-family: Consolas, &amp;quot;Courier New&amp;quot;, monospace; font-size: 16px; line-height: 22px;&quot;&gt;&lt;span style=&quot;color: #7fcbcd;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: #1f272a; color: #dae3e3; font-family: Consolas, &amp;quot;Courier New&amp;quot;, monospace; font-size: 16px; line-height: 22px;&quot;&gt;&lt;div style=&quot;line-height: 22px;&quot;&gt;&lt;div style=&quot;line-height: 22px;&quot;&gt;&lt;div&gt;Servo myservo;&lt;span style=&quot;color: #7f8c8d;&quot;&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; // create servo object to control a servo&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;color: #0ca1a6;&quot;&gt;const&lt;/span&gt; &lt;span style=&quot;color: #0ca1a6;&quot;&gt;int&lt;/span&gt; SERVO_PIN = D&lt;span style=&quot;color: #7fcbcd;&quot;&gt;0&lt;/span&gt;;&lt;span style=&quot;color: #7f8c8d;&quot;&gt; &amp;nbsp; &amp;nbsp; //GP0 (pinout 1)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;color: #0ca1a6;&quot;&gt;const&lt;/span&gt; &lt;span style=&quot;color: #0ca1a6;&quot;&gt;int&lt;/span&gt; SERVO_MIN = &lt;span style=&quot;color: #7fcbcd;&quot;&gt;600&lt;/span&gt;;&lt;span style=&quot;color: #7f8c8d;&quot;&gt; &amp;nbsp; //smaller number toward right&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;color: #0ca1a6;&quot;&gt;const&lt;/span&gt; &lt;span style=&quot;color: #0ca1a6;&quot;&gt;int&lt;/span&gt; SERVO_MAX = &lt;span style=&quot;color: #7fcbcd;&quot;&gt;2490&lt;/span&gt;;&lt;span style=&quot;color: #7f8c8d;&quot;&gt; &amp;nbsp;//bigger number toward left&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;background-color: #1f272a; color: #dae3e3; font-family: Consolas, &amp;quot;Courier New&amp;quot;, monospace; font-size: 16px; line-height: 22px;&quot;&gt;&lt;span style=&quot;color: #7fcbcd;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: #1f272a; color: #dae3e3; font-family: Consolas, &amp;quot;Courier New&amp;quot;, monospace; font-size: 16px; line-height: 22px;&quot;&gt;&lt;div style=&quot;line-height: 22px;&quot;&gt;&lt;span style=&quot;color: #0ca1a6;&quot;&gt;void&lt;/span&gt; &lt;span style=&quot;color: #f39c12;&quot;&gt;setup&lt;/span&gt;() {&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;background-color: #1f272a; color: #dae3e3; font-family: Consolas, &amp;quot;Courier New&amp;quot;, monospace; font-size: 16px; line-height: 22px;&quot;&gt;&lt;div style=&quot;line-height: 22px;&quot;&gt;&lt;div&gt;&amp;nbsp;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #f39c12;&quot;&gt;myservo&lt;/span&gt;.&lt;span style=&quot;color: #f39c12;&quot;&gt;attach&lt;/span&gt;(SERVO_PIN, SERVO_MIN, SERVO_MAX);&lt;span style=&quot;color: #7f8c8d;&quot;&gt; &amp;nbsp;// turn on the servo&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp; &lt;span style=&quot;color: #0ca1a6;&quot;&gt;int&lt;/span&gt; lastPos = &lt;span style=&quot;color: #f39c12;&quot;&gt;myservo&lt;/span&gt;.&lt;span style=&quot;color: #f39c12;&quot;&gt;read&lt;/span&gt;();&lt;/div&gt;&lt;div style=&quot;line-height: 22px;&quot;&gt;&lt;br /&gt;&lt;/div&gt;  &lt;span style=&quot;color: #7f8c8d;&quot;&gt;//all the way to the right&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&amp;nbsp; &lt;span style=&quot;color: #c586c0;&quot;&gt;for&lt;/span&gt; (&lt;span style=&quot;color: #0ca1a6;&quot;&gt;int&lt;/span&gt; i = lastPos; i &amp;gt;= &lt;span style=&quot;color: #7fcbcd;&quot;&gt;0&lt;/span&gt;; i--) {&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #f39c12;&quot;&gt;myservo&lt;/span&gt;.&lt;span style=&quot;color: #f39c12;&quot;&gt;write&lt;/span&gt;(i);&lt;span style=&quot;color: #7f8c8d;&quot;&gt; &amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #f39c12;&quot;&gt;delay&lt;/span&gt;(&lt;span style=&quot;color: #7fcbcd;&quot;&gt;50&lt;/span&gt;);&lt;span style=&quot;color: #7f8c8d;&quot;&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; //give servo time to move&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp; }&lt;/div&gt;&lt;div&gt;&amp;nbsp; &lt;span style=&quot;color: #f39c12;&quot;&gt;delay&lt;/span&gt;(&lt;span style=&quot;color: #7fcbcd;&quot;&gt;1000&lt;/span&gt;);&lt;/div&gt;&lt;div&gt;  &lt;span style=&quot;color: #7f8c8d;&quot;&gt;//all the way to the left&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp; &lt;span style=&quot;color: #c586c0;&quot;&gt;for&lt;/span&gt; (&lt;span style=&quot;color: #0ca1a6;&quot;&gt;int&lt;/span&gt; i = &lt;span style=&quot;color: #7fcbcd;&quot;&gt;0&lt;/span&gt;; i &amp;lt;= &lt;span style=&quot;color: #7fcbcd;&quot;&gt;180&lt;/span&gt;; i++) {&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #f39c12;&quot;&gt;myservo&lt;/span&gt;.&lt;span style=&quot;color: #f39c12;&quot;&gt;write&lt;/span&gt;(i);&lt;span style=&quot;color: #7f8c8d;&quot;&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #f39c12;&quot;&gt;delay&lt;/span&gt;(&lt;span style=&quot;color: #7fcbcd;&quot;&gt;20&lt;/span&gt;);       &lt;span style=&quot;color: #7f8c8d;&quot;&gt;//give servo time to move&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp; }&lt;/div&gt;&lt;div&gt;&amp;nbsp; &lt;span style=&quot;color: #f39c12;&quot;&gt;delay&lt;/span&gt;(&lt;span style=&quot;color: #7fcbcd;&quot;&gt;1000&lt;/span&gt;);&lt;span style=&quot;color: #7f8c8d;&quot;&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp; &lt;span style=&quot;color: #f39c12;&quot;&gt;myservo&lt;/span&gt;.&lt;span style=&quot;color: #f39c12;&quot;&gt;detach&lt;/span&gt;();&lt;span style=&quot;color: #7f8c8d;&quot;&gt; &amp;nbsp;//turn off servo to save power&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;background-color: #1f272a; color: #dae3e3; font-family: Consolas, &amp;quot;Courier New&amp;quot;, monospace; font-size: 16px; line-height: 22px;&quot;&gt;&lt;span style=&quot;color: #7fcbcd;&quot;&gt;}&lt;/span&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;div&gt;&lt;h2 style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;10. Improved map() function&lt;/span&gt;&lt;/h2&gt;&lt;h2 style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;div style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;; font-size: medium; font-weight: 400;&quot;&gt;When input range is greater than output range, override built-in map() function to fix edge problem.&lt;/div&gt;&lt;/h2&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;pre class=&quot;wp-block-code has-small-font-size&quot; style=&quot;background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; overflow: auto; padding: 0.8em 1em;&quot;&gt;&lt;code style=&quot;box-sizing: border-box; display: block; overflow-wrap: break-word; word-break: normal;&quot;&gt;&lt;div style=&quot;background-color: black; color: white; font-family: Consolas, &amp;quot;Courier New&amp;quot;, monospace; line-height: 22px;&quot;&gt;&lt;div&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;long&lt;/span&gt; &lt;span style=&quot;color: #dcdcaa;&quot;&gt;map&lt;/span&gt;(&lt;span style=&quot;color: #569cd6;&quot;&gt;long&lt;/span&gt; &lt;span style=&quot;color: #9cdcfe;&quot;&gt;x&lt;/span&gt;, &lt;span style=&quot;color: #569cd6;&quot;&gt;long&lt;/span&gt; &lt;span style=&quot;color: #9cdcfe;&quot;&gt;in_min&lt;/span&gt;, &lt;span style=&quot;color: #569cd6;&quot;&gt;long&lt;/span&gt; &lt;span style=&quot;color: #9cdcfe;&quot;&gt;in_max&lt;/span&gt;, &lt;span style=&quot;color: #569cd6;&quot;&gt;long&lt;/span&gt; &lt;span style=&quot;color: #9cdcfe;&quot;&gt;out_min&lt;/span&gt;, &lt;span style=&quot;color: #569cd6;&quot;&gt;long&lt;/span&gt; &lt;span style=&quot;color: #9cdcfe;&quot;&gt;out_max&lt;/span&gt; )&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;{&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&amp;nbsp; &lt;span style=&quot;color: #c586c0;&quot;&gt;if&lt;/span&gt; ((in_max &lt;span style=&quot;color: #d4d4d4;&quot;&gt;-&lt;/span&gt; in_min) &lt;span style=&quot;color: #d4d4d4;&quot;&gt;&amp;gt;&lt;/span&gt; (out_max &lt;span style=&quot;color: #d4d4d4;&quot;&gt;-&lt;/span&gt; out_min)) {&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #c586c0;&quot;&gt;return&lt;/span&gt; (x &lt;span style=&quot;color: #d4d4d4;&quot;&gt;-&lt;/span&gt; in_min) &lt;span style=&quot;color: #d4d4d4;&quot;&gt;*&lt;/span&gt; (out_max &lt;span style=&quot;color: #d4d4d4;&quot;&gt;-&lt;/span&gt; out_min&lt;span style=&quot;color: #d4d4d4;&quot;&gt;+&lt;/span&gt;&lt;span style=&quot;color: #b5cea8;&quot;&gt;1&lt;/span&gt;) &lt;span style=&quot;color: #d4d4d4;&quot;&gt;/&lt;/span&gt; (in_max &lt;span style=&quot;color: #d4d4d4;&quot;&gt;-&lt;/span&gt; in_min&lt;span style=&quot;color: #d4d4d4;&quot;&gt;+&lt;/span&gt;&lt;span style=&quot;color: #b5cea8;&quot;&gt;1&lt;/span&gt;) &lt;span style=&quot;color: #d4d4d4;&quot;&gt;+&lt;/span&gt; out_min;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&amp;nbsp; } &lt;span style=&quot;color: #c586c0;&quot;&gt;else&lt;/span&gt; {&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #c586c0;&quot;&gt;return&lt;/span&gt; (x &lt;span style=&quot;color: #d4d4d4;&quot;&gt;-&lt;/span&gt; in_min) &lt;span style=&quot;color: #d4d4d4;&quot;&gt;*&lt;/span&gt; (out_max &lt;span style=&quot;color: #d4d4d4;&quot;&gt;-&lt;/span&gt; out_min) &lt;span style=&quot;color: #d4d4d4;&quot;&gt;/&lt;/span&gt; (in_max &lt;span style=&quot;color: #d4d4d4;&quot;&gt;-&lt;/span&gt; in_min) &lt;span style=&quot;color: #d4d4d4;&quot;&gt;+&lt;/span&gt; out_min;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;}&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;h2 style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/h2&gt;&lt;h2 style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;11. Over The Air (OTA) Update and HTTPClient&lt;/span&gt;&lt;/h2&gt;&lt;h2 style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;div style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;; font-size: medium; font-weight: 400;&quot;&gt;This implementation fetchs app update from a website. Allows other HTTPClient on Pico W.&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;; font-size: medium; font-weight: 400;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;; font-size: medium; font-weight: 400;&quot;&gt;Export binary file in subfolder where the sketch file is located. Upload the .bin file to to your server.&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;; font-size: medium; font-weight: 400;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;; font-size: medium; font-weight: 400;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;; font-size: medium; font-weight: 400;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEg3KAqnObMcxQkB9KcoqryuoEKp_q3IJa1uopkLabHlu0rfM5GNZPqH_gW1EKG-OlyPCA95G7AslC_KBD1oQ3zwxStq9HSGrNJJ1SPLAX9wl-6fzp0GswHZOUnmbRPxRsfAhgp9vEB-NRFEeBpLFJcEEInM8fSOZM25YYC6GfOdJgvM6JmVUTpNNzPm&quot; style=&quot;margin-left: 1em; margin-right: 1em; text-align: center;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;247&quot; data-original-width=&quot;233&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEg3KAqnObMcxQkB9KcoqryuoEKp_q3IJa1uopkLabHlu0rfM5GNZPqH_gW1EKG-OlyPCA95G7AslC_KBD1oQ3zwxStq9HSGrNJJ1SPLAX9wl-6fzp0GswHZOUnmbRPxRsfAhgp9vEB-NRFEeBpLFJcEEInM8fSOZM25YYC6GfOdJgvM6JmVUTpNNzPm&quot; width=&quot;226&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;; font-size: medium; font-weight: 400;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;; font-size: medium; font-weight: 400;&quot;&gt;Allocate Flash: Sketch 1.5MB, FS 0.5MB (depends on myapp.ino.bin file size) under Arduino IDE Tools menu. Adjsut the FS size needed for downloading .bin file onto Pico W.&lt;/div&gt;&lt;/h2&gt;&lt;/div&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEjarLEWxlo85jObeSOrOYOFZ0BX4LEY97kiKO7GikHkVXgqIxELaNxteMSvZ1T26YjVYuVCqsh5aADAsSdP_xKTM5HArJEppcW1UnQly15XdBMSDu-6H3-h4kPWh3FduoclPxXh00-LrMCETjRWRnO9dM3PxY3p70sf-MHJaQFFNkFetotJy76Beae0&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;198&quot; data-original-width=&quot;561&quot; height=&quot;113&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEjarLEWxlo85jObeSOrOYOFZ0BX4LEY97kiKO7GikHkVXgqIxELaNxteMSvZ1T26YjVYuVCqsh5aADAsSdP_xKTM5HArJEppcW1UnQly15XdBMSDu-6H3-h4kPWh3FduoclPxXh00-LrMCETjRWRnO9dM3PxY3p70sf-MHJaQFFNkFetotJy76Beae0&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: right;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;Simple code to update after WiFi is connected.&lt;/div&gt;&lt;div&gt;&lt;pre class=&quot;wp-block-code has-small-font-size&quot; style=&quot;background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; overflow: auto; padding: 0.8em 1em;&quot;&gt;&lt;code style=&quot;box-sizing: border-box; display: block; overflow-wrap: break-word; word-break: normal;&quot;&gt;&lt;div style=&quot;background-color: black; line-height: 22px;&quot;&gt;&lt;div style=&quot;color: white; font-family: Consolas, &amp;quot;Courier New&amp;quot;, monospace; font-size: 16px; line-height: 22px;&quot;&gt;&lt;div style=&quot;line-height: 22px;&quot;&gt;&lt;div&gt;&amp;nbsp; WiFiClientSecure client;&lt;/div&gt;&lt;div&gt;&amp;nbsp; &lt;span style=&quot;color: #9cdcfe;&quot;&gt;client&lt;/span&gt;.&lt;span style=&quot;color: #dcdcaa;&quot;&gt;setInsecure&lt;/span&gt;();&lt;span style=&quot;color: #7ca668;&quot;&gt; //Ignore any server cert problem&lt;/span&gt;&lt;/div&gt;  String url = &quot;https://my.server/file.php&quot;;&lt;/div&gt;&lt;div style=&quot;line-height: 22px;&quot;&gt;  String VERSION = &quot;1.0.0&quot;;&lt;br /&gt;&lt;div&gt;&amp;nbsp; t_httpUpdate_return ret &lt;span style=&quot;color: #d4d4d4;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #9cdcfe;&quot;&gt;httpUpdate&lt;/span&gt;.&lt;span style=&quot;color: #dcdcaa;&quot;&gt;update&lt;/span&gt;(client, url, VERSION);&lt;/div&gt;&lt;div&gt;&lt;div style=&quot;line-height: 22px;&quot;&gt;&lt;span style=&quot;color: #7ca668;&quot;&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;//Pico W reboots if update successful, continue if up-to-date&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;div&gt;On the server&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;pre class=&quot;wp-block-code has-small-font-size&quot; style=&quot;background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; overflow: auto; padding: 0.8em 1em;&quot;&gt;&lt;code style=&quot;box-sizing: border-box; display: block; overflow-wrap: break-word; word-break: normal;&quot;&gt;&lt;span style=&quot;white-space: pre-wrap;&quot;&gt;&amp;lt;?php
$currentVersion = &#39;1.0.0&#39;; //same version in sketch
$header = apache_request_headers();
if (isset($header[&#39;x-Pico-Version&#39;]))
{
	$clientVer = $header[&#39;x-Pico-Version&#39;]; 
	
	if ($clientVer != $currentVersion)
	{
		$filename = &quot;myapp.ino.bin&quot;;
		if(file_exists($filename)) 
		{

			//Define header information
			header(&#39;Content-Description: File Transfer&#39;);
			header(&#39;Content-Type: application/octet-stream&#39;);
			header(&#39;Cache-Control:no-cache, must-revalidate, post-check=0, pre-check=0&#39;);
			header(&#39;Content-Disposition: attachment; filename=&quot;&#39;.basename($filename).&#39;&quot;&#39;);
			header(&#39;Content-Transfer-Encoding: binary&#39;);
			header(&#39;Content-Length: &#39; . filesize($filename));
			header(&#39;Pragma: public&#39;);
	
    		&lt;span&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/span&gt;//Clear system output buffer
			flush();

			//Read the size of the file
			readfile($filename);

			exit;
			//Terminate from the script
			die();
		}
		else
		{
			echo &quot;File does not exist.&quot;;
		}
	}
}

http_response_code(304); //HTTP_CODE_NOT_MODIFIED
exit;&lt;/span&gt;
&lt;/code&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/pre&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;h2 style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;12. Simulate Scheduled Task&lt;/span&gt;&lt;/h2&gt;&lt;div&gt;No extra library needed. Every time when Pico W powers on, the built-in clock starts from epoch time 0. That is 1970-01-01 00:00:00. After WiFi is connected, set clock once:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;pre class=&quot;wp-block-code has-small-font-size&quot; style=&quot;background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; overflow: auto; padding: 0.8em 1em;&quot;&gt;&lt;code style=&quot;box-sizing: border-box; display: block; overflow-wrap: break-word; word-break: normal;&quot;&gt;&lt;div style=&quot;background-color: black; color: white; font-family: Consolas, &amp;quot;Courier New&amp;quot;, monospace; font-size: 16px; line-height: 22px;&quot;&gt;&lt;div&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;  NTP&lt;/span&gt;.&lt;span style=&quot;color: #dcdcaa;&quot;&gt;begin&lt;/span&gt;(&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;pool.ntp.org&quot;&lt;/span&gt;, &lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;time.nist.gov&quot;&lt;/span&gt;);&lt;/div&gt;&lt;div&gt;&amp;nbsp; &lt;span style=&quot;color: #9cdcfe;&quot;&gt;NTP&lt;/span&gt;.&lt;span style=&quot;color: #dcdcaa;&quot;&gt;waitSet&lt;/span&gt;([]() {&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;.&lt;span style=&quot;color: #dcdcaa;&quot;&gt;print&lt;/span&gt;(&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;.&quot;&lt;/span&gt;);&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #dcdcaa;&quot;&gt;delay&lt;/span&gt;(&lt;span style=&quot;color: #b5cea8;&quot;&gt;500&lt;/span&gt;);&lt;/div&gt;&lt;div&gt;&amp;nbsp; }, &lt;span style=&quot;color: #b5cea8;&quot;&gt;30000&lt;/span&gt;);&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;h2 style=&quot;background-color: white; box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;div style=&quot;font-size: medium; font-weight: 400;&quot;&gt;Once the clock is set, we can read time by calling time(nullptr):&lt;/div&gt;&lt;div style=&quot;font-size: medium; font-weight: 400;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-size: medium; font-weight: 400;&quot;&gt;&lt;pre class=&quot;wp-block-code has-small-font-size&quot; style=&quot;border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; overflow: auto; padding: 0.8em 1em;&quot;&gt;&lt;code style=&quot;box-sizing: border-box; display: block; overflow-wrap: break-word; word-break: normal;&quot;&gt;&lt;div style=&quot;background-color: black; color: white; font-family: Consolas, &amp;quot;Courier New&amp;quot;, monospace; font-size: 16px; line-height: 22px;&quot;&gt;&lt;div&gt;&lt;div style=&quot;line-height: 22px;&quot;&gt;&lt;div&gt;&lt;div style=&quot;line-height: 22px;&quot;&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;const&lt;/span&gt; &lt;span style=&quot;color: #569cd6;&quot;&gt;long&lt;/span&gt; TIMEZONEOFFSET &lt;span style=&quot;color: #d4d4d4;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #d4d4d4;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color: #b5cea8;&quot;&gt;8&lt;/span&gt; &lt;span style=&quot;color: #d4d4d4;&quot;&gt;*&lt;/span&gt; &lt;span style=&quot;color: #b5cea8;&quot;&gt;60&lt;/span&gt; &lt;span style=&quot;color: #d4d4d4;&quot;&gt;*&lt;/span&gt; &lt;span style=&quot;color: #b5cea8;&quot;&gt;60&lt;/span&gt;;&lt;span style=&quot;color: #7ca668;&quot;&gt; &amp;nbsp;//PST&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&lt;span style=&quot;color: #569cd6;&quot;&gt;time_t&lt;/span&gt; now &lt;span style=&quot;color: #d4d4d4;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #dcdcaa;&quot;&gt;time&lt;/span&gt;(&lt;span style=&quot;color: #569cd6;&quot;&gt;nullptr&lt;/span&gt;) &lt;span style=&quot;color: #d4d4d4;&quot;&gt;+&lt;/span&gt; TIMEZONEOFFSET;&lt;/div&gt;&lt;div&gt;&lt;div style=&quot;line-height: 22px;&quot;&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt; struct&lt;/span&gt; &lt;span style=&quot;color: #4ec9b0;&quot;&gt;tm&lt;/span&gt; &lt;span style=&quot;color: #9cdcfe;&quot;&gt;timeInfo&lt;/span&gt;; &lt;/div&gt;&lt;/div&gt;&lt;div&gt; &lt;span style=&quot;color: #dcdcaa;&quot;&gt;localtime_r&lt;/span&gt;(&lt;span style=&quot;color: #d4d4d4;&quot;&gt;&amp;amp;&lt;/span&gt;now, &lt;span style=&quot;color: #d4d4d4;&quot;&gt;&amp;amp;&lt;/span&gt;timeInfo);&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&lt;span style=&quot;color: #7ca668;&quot;&gt;//timeInfo.tm_year + 1900 = current year, e.g. 123 is 2023&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/h2&gt;&lt;/div&gt;&lt;h2 style=&quot;background-color: white; box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;div style=&quot;font-size: medium; font-weight: 400;&quot;&gt;In loop(): e.g. every hour during weekdays&lt;/div&gt;&lt;div style=&quot;font-size: medium; font-weight: 400;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;font-size: medium; font-weight: 400;&quot;&gt;&lt;pre class=&quot;wp-block-code has-small-font-size&quot; style=&quot;border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; overflow: auto; padding: 0.8em 1em;&quot;&gt;&lt;code style=&quot;box-sizing: border-box; display: block; overflow-wrap: break-word; word-break: normal;&quot;&gt;&lt;div style=&quot;background-color: black; font-family: Consolas, &amp;quot;Courier New&amp;quot;, monospace; font-size: 16px; line-height: 22px;&quot;&gt;&lt;div style=&quot;line-height: 22px;&quot;&gt;&lt;div style=&quot;color: white; line-height: 22px;&quot;&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;unsigned&lt;/span&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;long&lt;/span&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt; _previousRunAt &lt;/span&gt;&lt;span style=&quot;color: #d4d4d4;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #b5cea8;&quot;&gt;0&lt;/span&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;; &lt;/span&gt;&lt;span style=&quot;color: #7ca668;&quot;&gt;//declare outside loop(), prevent reset to 0&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;color: white; line-height: 22px;&quot;&gt;&lt;div style=&quot;line-height: 22px;&quot;&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;void&lt;/span&gt; &lt;span style=&quot;color: #dcdcaa;&quot;&gt;loop&lt;/span&gt;() {&lt;/div&gt;&lt;div style=&quot;line-height: 22px;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;line-height: 22px;&quot;&gt;  &lt;span style=&quot;color: #7ca668;&quot;&gt;//get timeInfo from time(nullptr) ....&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;line-height: 22px;&quot;&gt;&lt;span style=&quot;color: #7ca668;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;color: white; line-height: 22px;&quot;&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;if&lt;/span&gt; (&lt;span style=&quot;color: #9cdcfe;&quot;&gt;timeInfo&lt;/span&gt;.&lt;span style=&quot;color: #9cdcfe;&quot;&gt;tm_wday&lt;/span&gt; &lt;span style=&quot;color: #d4d4d4;&quot;&gt;&amp;gt;=&lt;/span&gt; &lt;span style=&quot;color: #b5cea8;&quot;&gt;1&lt;/span&gt; &lt;span style=&quot;color: #d4d4d4;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span style=&quot;color: #9cdcfe;&quot;&gt;timeInfo&lt;/span&gt;.&lt;span style=&quot;color: #9cdcfe;&quot;&gt;tm_wday&lt;/span&gt; &lt;span style=&quot;color: #d4d4d4;&quot;&gt;&amp;lt;=&lt;/span&gt; &lt;span style=&quot;color: #b5cea8;&quot;&gt;5 &lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;color: white; line-height: 22px;&quot;&gt;&lt;span style=&quot;color: #b5cea8;&quot;&gt;  &amp;amp;&amp;amp; &lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;timeInfo&lt;/span&gt;&lt;span style=&quot;color: white;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;tm_min&lt;/span&gt;&lt;span style=&quot;color: white;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #d4d4d4;&quot;&gt;==&lt;/span&gt;&lt;span style=&quot;color: white;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #b5cea8;&quot;&gt;00&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;line-height: 22px;&quot;&gt;&lt;div style=&quot;color: white;&quot;&gt;&amp;nbsp; &lt;span style=&quot;color: #d4d4d4;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; (&lt;span style=&quot;color: #9cdcfe;&quot;&gt;timeInfo&lt;/span&gt;.&lt;span style=&quot;color: #9cdcfe;&quot;&gt;tm_sec&lt;/span&gt; &lt;span style=&quot;color: #d4d4d4;&quot;&gt;==&lt;/span&gt; &lt;span style=&quot;color: #b5cea8;&quot;&gt;0&lt;/span&gt; &lt;span style=&quot;color: #d4d4d4;&quot;&gt;||&lt;/span&gt; &lt;span style=&quot;color: #dcdcaa;&quot;&gt;millis&lt;/span&gt;() &lt;span style=&quot;color: #d4d4d4;&quot;&gt;-&lt;/span&gt; _previousRunAt &lt;span style=&quot;color: #d4d4d4;&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&quot;color: #b5cea8;&quot;&gt;60000&lt;/span&gt;)&lt;span style=&quot;color: #7ca668;&quot;&gt; //Run missed task within one minute&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;color: white;&quot;&gt;  ) &lt;/div&gt;&lt;div style=&quot;color: white;&quot;&gt;&amp;nbsp; {&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;color: white;&quot;&gt;     &lt;span style=&quot;color: #7ca668;&quot;&gt;//Run task&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;color: white;&quot;&gt;&lt;span style=&quot;color: #7ca668;&quot;&gt;     //...&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;color: white;&quot;&gt;&lt;div style=&quot;line-height: 22px;&quot;&gt;     _previousRunAt &lt;span style=&quot;color: #d4d4d4;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #dcdcaa;&quot;&gt;millis&lt;/span&gt;();&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;color: white;&quot;&gt;&lt;span style=&quot;color: #7ca668;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;color: white;&quot;&gt;  }&lt;/div&gt;&lt;div style=&quot;color: white;&quot;&gt;  &lt;span style=&quot;color: #dcdcaa;&quot;&gt;delay&lt;/span&gt;(&lt;span style=&quot;color: #b5cea8;&quot;&gt;1000&lt;/span&gt;); &lt;span style=&quot;color: #7ca668;&quot;&gt;//Check every second&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;color: white;&quot;&gt;&lt;div style=&quot;line-height: 22px;&quot;&gt;}&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/h2&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;h2 style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;13. Adding a Switch&lt;/span&gt;&lt;/h2&gt;&lt;div&gt;Connect a switch to GPIO pin (e.g. GP14) and ground.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEi9sriEXb1NsgQnjdA1jR86ZD3mSLea5zyVInXwq7g7nNXMUHtX4D2IEFYF6kghQCrdQnL_ledrfYV5MFg0MX30givbTMT5bliEBFcdqGa_XoXU8gPl_Hqir6rdRmc0Tje-m-NUKnOURt5A5GXRqMH93rg_cotN1FiWT8v4o9E8Bus0M7warEX-5Nll&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;581&quot; data-original-width=&quot;672&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEi9sriEXb1NsgQnjdA1jR86ZD3mSLea5zyVInXwq7g7nNXMUHtX4D2IEFYF6kghQCrdQnL_ledrfYV5MFg0MX30givbTMT5bliEBFcdqGa_XoXU8gPl_Hqir6rdRmc0Tje-m-NUKnOURt5A5GXRqMH93rg_cotN1FiWT8v4o9E8Bus0M7warEX-5Nll&quot; width=&quot;278&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;pre class=&quot;wp-block-code has-small-font-size&quot; style=&quot;background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; overflow: auto; padding: 0.8em 1em;&quot;&gt;&lt;code style=&quot;box-sizing: border-box; display: block; overflow-wrap: break-word; word-break: normal;&quot;&gt;&lt;div style=&quot;background-color: black; font-family: Consolas, &amp;quot;Courier New&amp;quot;, monospace; font-size: 16px; line-height: 22px;&quot;&gt;&lt;div style=&quot;color: white; line-height: 22px;&quot;&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;const&lt;/span&gt; &lt;span style=&quot;color: #569cd6;&quot;&gt;int&lt;/span&gt; SWITCH_PIN &lt;span style=&quot;color: #d4d4d4;&quot;&gt;=&lt;/span&gt; D14;&lt;/div&gt;&lt;div style=&quot;color: white; line-height: 22px;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;line-height: 22px;&quot;&gt;&lt;div style=&quot;line-height: 22px;&quot;&gt;&lt;div style=&quot;color: white;&quot;&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;void&lt;/span&gt; &lt;span style=&quot;color: #dcdcaa;&quot;&gt;setup&lt;/span&gt;() {&lt;/div&gt;&lt;div style=&quot;color: white;&quot;&gt;&amp;nbsp; &lt;span style=&quot;color: #dcdcaa;&quot;&gt;pinMode&lt;/span&gt;(SWITCH_PIN, INPUT_PULLUP); &lt;span style=&quot;color: #7ca668;&quot;&gt;//HIGH when swith is OFF&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;color: white;&quot;&gt;}&lt;/div&gt;&lt;div style=&quot;color: white;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;color: white;&quot;&gt;&lt;div style=&quot;line-height: 22px;&quot;&gt;&lt;span style=&quot;color: #569cd6;&quot;&gt;void&lt;/span&gt; &lt;span style=&quot;color: #dcdcaa;&quot;&gt;loop&lt;/span&gt;() {&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;line-height: 22px;&quot;&gt;&lt;div style=&quot;color: white; line-height: 22px;&quot;&gt; &amp;nbsp;&lt;span style=&quot;color: #c586c0;&quot;&gt;if&lt;/span&gt; (&lt;span style=&quot;color: #dcdcaa;&quot;&gt;digitalRead&lt;/span&gt;(SWITCH_PIN)&amp;nbsp;&lt;span style=&quot;color: #d4d4d4;&quot;&gt;==&lt;/span&gt; LOW) &lt;span style=&quot;color: #7ca668;&quot;&gt;//LOW when swith is ON&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;color: white; line-height: 22px;&quot;&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;.&lt;span style=&quot;color: #dcdcaa;&quot;&gt;println&lt;/span&gt;(&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;ON&quot;&lt;/span&gt;);&lt;/div&gt;&lt;div style=&quot;line-height: 22px;&quot;&gt;&lt;span style=&quot;color: white;&quot;&gt;  &lt;/span&gt;&lt;span style=&quot;color: #c586c0;&quot;&gt;else&lt;/span&gt;&lt;span style=&quot;color: white;&quot;&gt; &lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;line-height: 22px;&quot;&gt;&lt;span style=&quot;color: white;&quot;&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #9cdcfe;&quot;&gt;Serial&lt;/span&gt;&lt;span style=&quot;color: white;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;println&lt;/span&gt;&lt;span style=&quot;color: white;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ce9178;&quot;&gt;&quot;OFF&quot;&lt;/span&gt;&lt;span style=&quot;color: white;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;color: white; line-height: 22px;&quot;&gt;&lt;div style=&quot;line-height: 22px;&quot;&gt;&lt;span style=&quot;color: #dcdcaa;&quot;&gt;  delay&lt;/span&gt;(&lt;span style=&quot;color: #b5cea8;&quot;&gt;1000&lt;/span&gt;);&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;color: white; line-height: 22px;&quot;&gt;}&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;h2 style=&quot;background-color: white; box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;div style=&quot;font-size: medium; font-weight: 400;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;/h2&gt;&lt;/div&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&amp;lt;Edited 2023-01-24&amp;gt;&lt;/p&gt;&lt;/div&gt;&lt;p style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; font-size: 14px; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;h2 style=&quot;background-color: white; box-sizing: border-box; font-family: helvetica, Verdana, Arial, sans-serif; margin-bottom: 1rem; margin-top: 0px;&quot;&gt;&lt;br /&gt;&lt;/h2&gt;&lt;/div&gt;&lt;/div&gt;</description><link>http://2x4x8.blogspot.com/2022/12/raspberry-pi-pico-w-notes.html</link><author>noreply@blogger.com ( )</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/a/AVvXsEhhSq24Fknjdh85kwclkfXjQ03C0QVvX6PHxZf_Rqn0qmgQaoba1JpSWQW4-Sj5MZeYg5HXqnfmcZvgJF39cechOpE1JayXEjKZOax1whOd_cJr3BYhHjGHd3cLOOstkX-BBEai537HRPyuXOw744ctMps-BLtu3Uf126Y8ImSl6ceDxOqodn9F14EN=s72-c" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2394990579473134159.post-7481364191789514143</guid><pubDate>Thu, 27 Jan 2022 01:16:00 +0000</pubDate><atom:updated>2024-02-28T15:04:15.972-08:00</atom:updated><title>Port forwarding in Hyper-V</title><description>&lt;p&gt;How to port forwarding&amp;nbsp; to an internal network switch VM in Hyper-V (Windows Pro or Enterprise).&lt;/p&gt;&lt;p&gt;Configure a new virtual NAT switch using PowerShell (elevated privilege required)&lt;/p&gt;&lt;div class=&quot;language-powershell highlighter-rouge&quot; style=&quot;background-color: #f2f2f2; border: 0px; color: #373737; font-family: &amp;quot;Myriad Pro&amp;quot;, Calibri, Helvetica, Arial, sans-serif; font-size: 16px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; line-height: inherit; margin: 0px; padding: 0px; text-align: left; vertical-align: baseline;&quot;&gt;&lt;div class=&quot;highlight&quot; style=&quot;background-color: #f8f8f8; border: 0px; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;pre class=&quot;highlight&quot; style=&quot;border-radius: 2px; border: 0px; box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 10px; color: #222222; font-family: Monaco, &amp;quot;Bitstream Vera Sans Mono&amp;quot;, &amp;quot;Lucida Console&amp;quot;, Terminal, monospace; font-size: 0.875em; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin-bottom: 0px; margin-top: 0px; overflow: auto; padding: 10px; vertical-align: baseline;&quot;&gt;&lt;code style=&quot;background-color: white; border-radius: 2px; border: 0px; box-shadow: none; display: block; font-family: Monaco, &amp;quot;Bitstream Vera Sans Mono&amp;quot;, &amp;quot;Lucida Console&amp;quot;, Terminal, monospace; font-size: 0.875em; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px 3px; padding: 3px; vertical-align: baseline;&quot;&gt;&lt;span class=&quot;n&quot; style=&quot;border: 0px; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;New-VMSwitch&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nt&quot; style=&quot;border: 0px; color: navy; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;-SwitchName&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s2&quot; style=&quot;border: 0px; color: #dd1144; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&quot;NATSwitch&quot;&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nt&quot; style=&quot;border: 0px; color: navy; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;-SwitchType&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nx&quot; style=&quot;border: 0px; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;Internal&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;n&quot; style=&quot;border: 0px; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;New-NetIPAddress&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nt&quot; style=&quot;border: 0px; color: navy; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;-IPAddress&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nx&quot; style=&quot;border: 0px; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;192.168.10.1&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nt&quot; style=&quot;border: 0px; color: navy; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;-PrefixLength&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nx&quot; style=&quot;border: 0px; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;24&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nt&quot; style=&quot;border: 0px; color: navy; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;-InterfaceAlias&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s2&quot; style=&quot;border: 0px; color: #dd1144; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&quot;vEthernet (NATSwitch)&quot;&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;n&quot; style=&quot;border: 0px; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;New-NetNAT&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nt&quot; style=&quot;border: 0px; color: navy; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;-Name&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s2&quot; style=&quot;border: 0px; color: #dd1144; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&quot;NATNetwork&quot;&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nt&quot; style=&quot;border: 0px; color: navy; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;-InternalIPInterfaceAddressPrefix&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nx&quot; style=&quot;border: 0px; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;192.168.10.0/24&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For example, to be able to RDP into the VM, you need to forward TCP port 3389 to the same port number on the VM. (No RDP to host in this example)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div class=&quot;language-powershell highlighter-rouge&quot; style=&quot;background-color: #f2f2f2; border: 0px; font-family: &amp;quot;Myriad Pro&amp;quot;, Calibri, Helvetica, Arial, sans-serif; font-size: 16px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;div class=&quot;highlight&quot; style=&quot;background-color: #f8f8f8; border: 0px; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;pre class=&quot;highlight&quot; style=&quot;border-radius: 2px; border: 0px; box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 10px; font-family: Monaco, &amp;quot;Bitstream Vera Sans Mono&amp;quot;, &amp;quot;Lucida Console&amp;quot;, Terminal, monospace; font-size: 0.875em; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin-bottom: 0px; margin-top: 0px; overflow: auto; padding: 10px; vertical-align: baseline;&quot;&gt;&lt;code style=&quot;background-color: white; border-radius: 2px; border: 0px; box-shadow: none; display: block; font-family: Monaco, &amp;quot;Bitstream Vera Sans Mono&amp;quot;, &amp;quot;Lucida Console&amp;quot;, Terminal, monospace; font-size: 0.875em; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px 3px; padding: 3px; vertical-align: baseline;&quot;&gt;&lt;span class=&quot;n&quot; style=&quot;border: 0px; color: #222222; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;Add-NetNatStaticMapping&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nt&quot; style=&quot;border: 0px; color: navy; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;-ExternalIPAddress&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s2&quot; style=&quot;border: 0px; color: #dd1144; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&quot;0.0.0.0/24&quot;&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nt&quot; style=&quot;border: 0px; color: navy; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;-ExternalPort&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;span style=&quot;color: #222222;&quot;&gt;3389 &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;nt&quot; style=&quot;border: 0px; color: navy; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;-Protocol&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nx&quot; style=&quot;border: 0px; color: #222222; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;TCP&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nt&quot; style=&quot;border: 0px; color: navy; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;-InternalIPAddress&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s2&quot; style=&quot;border: 0px; color: #dd1144; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&quot;192.168.10.2&quot;&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nt&quot; style=&quot;border: 0px; color: navy; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;-InternalPort&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;span style=&quot;color: #222222;&quot;&gt;3389 &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;nt&quot; style=&quot;border: 0px; color: navy; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;-NatName&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nx&quot; style=&quot;border: 0px; color: #222222; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;NATNetwork&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;
&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;background-color: white; border-radius: 2px; border: 0px; box-shadow: none; display: block; font-family: Monaco, &amp;quot;Bitstream Vera Sans Mono&amp;quot;, &amp;quot;Lucida Console&amp;quot;, Terminal, monospace; font-size: 0.875em; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px 3px; padding: 3px; vertical-align: baseline;&quot;&gt;&lt;span class=&quot;nx&quot; style=&quot;border: 0px; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;span class=&quot;n&quot; style=&quot;border: 0px; color: #222222; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;Add-NetNatStaticMapping&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nt&quot; style=&quot;border: 0px; color: navy; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;-ExternalIPAddress&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s2&quot; style=&quot;border: 0px; color: #dd1144; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&quot;0.0.0.0/24&quot;&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nt&quot; style=&quot;border: 0px; color: navy; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;-ExternalPort&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nx&quot; style=&quot;border: 0px; color: #222222; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;3389&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nt&quot; style=&quot;border: 0px; color: navy; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;-Protocol&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;span style=&quot;color: #222222;&quot;&gt;UDP &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;nt&quot; style=&quot;border: 0px; color: navy; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;-InternalIPAddress&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s2&quot; style=&quot;border: 0px; color: #dd1144; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&quot;192.168.10.2&quot;&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nt&quot; style=&quot;border: 0px; color: navy; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;-InternalPort&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;span style=&quot;color: #222222;&quot;&gt;3389 &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;nt&quot; style=&quot;border: 0px; color: navy; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;-NatName&lt;/span&gt;&lt;span class=&quot;w&quot; style=&quot;border: 0px; color: #bbbbbb; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nx&quot; style=&quot;border: 0px; color: #222222; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;NATNetwork&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;Create a new 64-bit Windows VM guest and configure it to use the above network switch.&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;b&gt;On the VM guest&lt;/b&gt;,&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;add 192.168.10.2 as alternate IP address.&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;Set DNS server to 1.1.1.2 and 1.0.0.2&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEg8Rz158CsQJOsGTrmGnhkHGc2eH7pjFdD1OlfX17lncGpU5JxfDGGE-geP7OXJINqBXWdFNTjDvUoeWDKsCRyCcXNb7obOS8o_OpLOAG9yiPwYxCmiGoGuxepmBGumKjYJc4wW8t-ceNnqXfR6KdJThC1eFjnUruu5RXvm6md0kkPQ9zk0ay6XNZG3=s1074&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;630&quot; data-original-width=&quot;1074&quot; height=&quot;188&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEg8Rz158CsQJOsGTrmGnhkHGc2eH7pjFdD1OlfX17lncGpU5JxfDGGE-geP7OXJINqBXWdFNTjDvUoeWDKsCRyCcXNb7obOS8o_OpLOAG9yiPwYxCmiGoGuxepmBGumKjYJc4wW8t-ceNnqXfR6KdJThC1eFjnUruu5RXvm6md0kkPQ9zk0ay6XNZG3=s320&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;b&gt;On the host&lt;/b&gt;, enable RDP ports on firewall&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEgNdbhsG_XfBAIBfMbWnS9HDO_1azOnPfNtmHKOVBWd0zV0H4mL1OhUaMdfcY25wuzLb9mxnJfIoxqHgUQgZ-6KHstQVsVtzknJNqBhBLz0E-BVNrhivcda5wCzNMWRPBQ1oho3mrTWCxuiC8xYfGSVTWNUo4TkKNNyiY1CXL3iZmTamCeJISgtXWkN&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;263&quot; data-original-width=&quot;1321&quot; height=&quot;64&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEgNdbhsG_XfBAIBfMbWnS9HDO_1azOnPfNtmHKOVBWd0zV0H4mL1OhUaMdfcY25wuzLb9mxnJfIoxqHgUQgZ-6KHstQVsVtzknJNqBhBLz0E-BVNrhivcda5wCzNMWRPBQ1oho3mrTWCxuiC8xYfGSVTWNUo4TkKNNyiY1CXL3iZmTamCeJISgtXWkN&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;On the host&lt;/b&gt;, make sure 192.168.10.1 is alternate IP address for vEthernet (NATSwitch).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEjQDFieOxCcqT35042jwZHmqmTxjcGmAeHGz5x86jLIiXHN2jYwcDS7GjvuzNb9KUvF8biVp33Ugd3o7GccVCsisAFxjFlQiNfznWZxec8Af3YIsCTzMUyt3eKpoChe2LTcuz93qnFPvbgyhit3u3PxWw3hIKgGay5SW2BiGnmz8wuqkMKj6qdcMRaN&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;1117&quot; data-original-width=&quot;2163&quot; height=&quot;165&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEjQDFieOxCcqT35042jwZHmqmTxjcGmAeHGz5x86jLIiXHN2jYwcDS7GjvuzNb9KUvF8biVp33Ugd3o7GccVCsisAFxjFlQiNfznWZxec8Af3YIsCTzMUyt3eKpoChe2LTcuz93qnFPvbgyhit3u3PxWw3hIKgGay5SW2BiGnmz8wuqkMKj6qdcMRaN&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;To shutdown VM at specific time, on Task Scheduler, start a program/script: &lt;b&gt;powershell&lt;/b&gt;&amp;nbsp;&lt;/div&gt;&lt;div&gt;Add arguments:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div class=&quot;language-powershell highlighter-rouge&quot; style=&quot;background-color: #f2f2f2; border: 0px; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;div class=&quot;highlight&quot; style=&quot;background-color: #f8f8f8; border: 0px; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; font-variant-position: inherit; font-variation-settings: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;pre class=&quot;highlight&quot; style=&quot;border-radius: 2px; border: 0px; box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 10px; font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; font-variant-position: inherit; line-height: inherit; margin-bottom: 0px; margin-top: 0px; overflow: auto; padding: 10px; vertical-align: baseline;&quot;&gt;&lt;code style=&quot;background-color: white; border-radius: 2px; border: 0px; box-shadow: none; display: block; font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; font-variant-position: inherit; line-height: inherit; margin: 0px 3px; padding: 3px; vertical-align: baseline;&quot;&gt;&lt;span style=&quot;color: #222222; font-family: Monaco, Bitstream Vera Sans Mono, Lucida Console, Terminal, monospace;&quot;&gt;&lt;span style=&quot;font-size: 12.25px;&quot;&gt;-Command Save-VM -Name &#39;Name of VM&#39;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEhzjRBQFfkwznv9NxltA7lASN9zQfuPzGH8uig6WRJuHDAXm8Df2Y4pvy8hjMeEFXat7VRui55wpNd87cdv-F1ZjIwiAmFc0W4T72Rs9rG5QKpc0bDeqyXY-KTja1EOeoCP_RB3bMre-CMR-Ph1vuUS0YhsVW3YQUsUNB3cVGrkZrSjpOf5l3Z4LuGBM50&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;&quot; data-original-height=&quot;889&quot; data-original-width=&quot;1205&quot; height=&quot;236&quot; src=&quot;https://blogger.googleusercontent.com/img/a/AVvXsEhzjRBQFfkwznv9NxltA7lASN9zQfuPzGH8uig6WRJuHDAXm8Df2Y4pvy8hjMeEFXat7VRui55wpNd87cdv-F1ZjIwiAmFc0W4T72Rs9rG5QKpc0bDeqyXY-KTja1EOeoCP_RB3bMre-CMR-Ph1vuUS0YhsVW3YQUsUNB3cVGrkZrSjpOf5l3Z4LuGBM50&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;</description><link>http://2x4x8.blogspot.com/2022/01/port-forwarding-in-hyper-v.html</link><author>noreply@blogger.com ( )</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/a/AVvXsEg8Rz158CsQJOsGTrmGnhkHGc2eH7pjFdD1OlfX17lncGpU5JxfDGGE-geP7OXJINqBXWdFNTjDvUoeWDKsCRyCcXNb7obOS8o_OpLOAG9yiPwYxCmiGoGuxepmBGumKjYJc4wW8t-ceNnqXfR6KdJThC1eFjnUruu5RXvm6md0kkPQ9zk0ay6XNZG3=s72-c" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2394990579473134159.post-1606737033757740377</guid><pubDate>Thu, 06 Aug 2020 17:54:00 +0000</pubDate><atom:updated>2025-03-26T13:04:07.373-07:00</atom:updated><title>Nissan Leaf 12V Battery Disconnect Procedure</title><description>&lt;p&gt;&amp;nbsp;1. Check that EVSE charger is not connected.&lt;/p&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;p&gt;NOTE:&lt;/p&gt;&lt;p&gt;If EVSE charger is connected, the air conditioning system may be automatically activated by the timer A/C function.&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;2. Pull hood release handle&lt;/p&gt;&lt;p&gt;3. Turn the power switch OFF --&amp;gt; ON --&amp;gt; OFF. Get out of the vehicle. Close all doors (including back door).&lt;/p&gt;&lt;p&gt;4. Check that the charge status indicator lamp does not blink and wait for 5 minutes or more.&lt;/p&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;p&gt;NOTE:&lt;/p&gt;&lt;p&gt;If the battery is removed within 5 minutes after the power switch is turned OFF, plural DTCs may be detected.&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;5. Remove 12V battery within 1 hour after step 3. turning the power switch OFF --&amp;gt; ON --&amp;gt; OFF.&lt;/p&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;p&gt;NOTE:&lt;/p&gt;&lt;/blockquote&gt;&lt;blockquote style=&quot;border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;&quot;&gt;&lt;p&gt;&lt;/p&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;The 12V battery automatic charge control may start automatically even when the power switch is in OFF state.&lt;/li&gt;&lt;li&gt;Once the power switch is turned ON --&amp;gt; OFF, the 12V battery automatic charge control does not start for approximately 1 hour.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;CAUTION:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;After all doors (including back door) are closed, if a door (including back door) is opened before battery terminals are disconnected, start over from step 1.&lt;/li&gt;&lt;li&gt;After turning the power switch OFF, if &quot;Remote A/C&quot; is activated by user operation, stop the air conditioner and start over from Step 1.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;/p&gt;</description><link>http://2x4x8.blogspot.com/2020/08/nissan-leaf-12v-battery-disconnect.html</link><author>noreply@blogger.com ( )</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2394990579473134159.post-7127986675519074368</guid><pubDate>Thu, 21 Feb 2019 20:36:00 +0000</pubDate><atom:updated>2019-02-21T12:36:40.389-08:00</atom:updated><title>SMART KEY INSTRUCTIONS TO REKEY YOUR SMARTKEY LOCK</title><description>Resetting your cylinder to work with a new Weiser key&lt;br /&gt;
&lt;a href=&quot;https://www.dropbox.com/s/cgcwjx1tfnajrxt/SmartKey.png?dl=0&quot;&gt;Download manual png&lt;/a&gt;</description><link>http://2x4x8.blogspot.com/2019/02/smart-key-instructions-to-rekey-your.html</link><author>noreply@blogger.com ( )</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2394990579473134159.post-3758048563202148440</guid><pubDate>Thu, 21 Feb 2019 20:32:00 +0000</pubDate><atom:updated>2019-02-21T12:32:58.075-08:00</atom:updated><title>Honeywell Solar Timer Switch RPLS740B/RPLS741B User Guide</title><description>&lt;a href=&quot;https://www.dropbox.com/s/0y0plb4vg0pq79p/Honeywell%20Solar%20Timer%20Switch.pdf?dl=0&quot;&gt;Download manual pdf&lt;/a&gt;</description><link>http://2x4x8.blogspot.com/2019/02/honeywell-solar-timer-switch.html</link><author>noreply@blogger.com ( )</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2394990579473134159.post-3767449896097351806</guid><pubDate>Thu, 21 Feb 2019 20:31:00 +0000</pubDate><atom:updated>2019-02-21T12:31:54.152-08:00</atom:updated><title>HP 10bll+ Financial Calculator User Guide</title><description>&lt;a href=&quot;https://www.dropbox.com/s/ycwlzbxvo5mbrs2/hp%2010bii%2B%20User%20Guide.pdf?dl=0&quot;&gt;Download manual pdf&lt;/a&gt;</description><link>http://2x4x8.blogspot.com/2019/02/hp-10bll-financial-calculator-user-guide.html</link><author>noreply@blogger.com ( )</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2394990579473134159.post-7840063868972586274</guid><pubDate>Thu, 21 Feb 2019 20:26:00 +0000</pubDate><atom:updated>2019-02-21T12:26:03.905-08:00</atom:updated><title>WYZE CAM v1/v2 Manual PDF</title><description>&lt;a href=&quot;https://www.dropbox.com/s/lgt6dm7sm8r6k7o/WyzeCam%20v1%20v2%20manual.pdf?dl=0&quot;&gt;Download PDF&lt;/a&gt;</description><link>http://2x4x8.blogspot.com/2019/02/wyze-cam-v1v2-manual-pdf.html</link><author>noreply@blogger.com ( )</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2394990579473134159.post-2552660725034825814</guid><pubDate>Tue, 14 Nov 2017 17:05:00 +0000</pubDate><atom:updated>2017-11-14T09:05:52.193-08:00</atom:updated><title> Extend logical volume size after gparted</title><description>&lt;br /&gt;
Ubuntu server 16.04 vm out-of-space may lead to bigger problems. Increase disk space is easy.&lt;br /&gt;
&lt;br /&gt;





&lt;style type=&quot;text/css&quot;&gt;
p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Monaco; color: #f5f5f5; background-color: #000000}
span.s1 {font-variant-ligatures: no-common-ligatures}
&lt;/style&gt;


&lt;br /&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;$ df -h /&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;




&lt;style type=&quot;text/css&quot;&gt;
p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Monaco; color: #f5f5f5; background-color: #000000}
span.s1 {font-variant-ligatures: no-common-ligatures}
&lt;/style&gt;


&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;Filesystem &lt;span class=&quot;Apple-converted-space&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;Size&lt;span class=&quot;Apple-converted-space&quot;&gt;&amp;nbsp; &lt;/span&gt;Used Avail Use% Mounted on&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;




&lt;style type=&quot;text/css&quot;&gt;
p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Monaco; color: #f5f5f5; background-color: #000000}
span.s1 {font-variant-ligatures: no-common-ligatures}
&lt;/style&gt;


&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;/dev/mapper/ubuntu--vg-root &lt;span class=&quot;Apple-converted-space&quot;&gt;&amp;nbsp; &lt;/span&gt;19G &lt;span class=&quot;Apple-converted-space&quot;&gt;&amp;nbsp; &lt;/span&gt;16G&lt;span class=&quot;Apple-converted-space&quot;&gt;&amp;nbsp; &lt;/span&gt;1.7G&lt;span class=&quot;Apple-converted-space&quot;&gt;&amp;nbsp; &lt;/span&gt;91% /&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
1. Google and download gparted image&lt;br /&gt;
&lt;br /&gt;
2. Boot from gparted image&lt;br /&gt;
&lt;br /&gt;
3. Deactivate the /dev/sda5 lock and resize the physical disk&lt;br /&gt;
&lt;br /&gt;
4. Reboot into Ubuntu and extend logical volume size&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;





&lt;style type=&quot;text/css&quot;&gt;
p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Monaco; color: #f5f5f5; background-color: #000000}
span.s1 {font-variant-ligatures: no-common-ligatures}
&lt;/style&gt;


&lt;br /&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;&lt;b&gt;$ sudo lvextend -l +100%FREE /dev/ubuntu-vg/root&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;&lt;span class=&quot;Apple-converted-space&quot;&gt;&amp;nbsp; &lt;/span&gt;Size of logical volume ubuntu-vg/root changed from 18.52 GiB (4741 extents) to 291.49 GiB (74621 extents).&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;




&lt;style type=&quot;text/css&quot;&gt;
p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Monaco; color: #f5f5f5; background-color: #000000}
span.s1 {font-variant-ligatures: no-common-ligatures}
&lt;/style&gt;



&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;&lt;span class=&quot;Apple-converted-space&quot;&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;Logical volume root successfully resized.&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;&lt;b&gt;$ sudo resize2fs /dev/ubuntu-vg/root&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;resize2fs 1.42.13 (17-May-2015)&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;Filesystem at /dev/ubuntu-vg/root is mounted on /; on-line resizing required&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;old_desc_blocks = 2, new_desc_blocks = 19&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;The filesystem on /dev/ubuntu-vg/root is now 76411904 (4k) blocks long.&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
5. Verify with df&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;$ df -h /&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;Filesystem &lt;span class=&quot;Apple-converted-space&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;Size&lt;span class=&quot;Apple-converted-space&quot;&gt;&amp;nbsp; &lt;/span&gt;Used Avail Use% Mounted on&lt;/span&gt;&lt;/div&gt;
&lt;style type=&quot;text/css&quot;&gt;
p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Monaco; color: #f5f5f5; background-color: #000000}
span.s1 {font-variant-ligatures: no-common-ligatures}
&lt;/style&gt;




&lt;br /&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;/dev/mapper/ubuntu--vg-root&lt;span class=&quot;Apple-converted-space&quot;&gt;&amp;nbsp; &lt;/span&gt;287G &lt;span class=&quot;Apple-converted-space&quot;&gt;&amp;nbsp; &lt;/span&gt;16G&lt;span class=&quot;Apple-converted-space&quot;&gt;&amp;nbsp; &lt;/span&gt;260G &lt;span class=&quot;Apple-converted-space&quot;&gt;&amp;nbsp; &lt;/span&gt;6% /&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
done.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;style type=&quot;text/css&quot;&gt;
p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Monaco; color: #f5f5f5; background-color: #000000}
span.s1 {font-variant-ligatures: no-common-ligatures}
&lt;/style&gt;&lt;style type=&quot;text/css&quot;&gt;
p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Monaco; color: #f5f5f5; background-color: #000000}
span.s1 {font-variant-ligatures: no-common-ligatures}
&lt;/style&gt;</description><link>http://2x4x8.blogspot.com/2017/11/extend-logical-volume-size-after-gparted.html</link><author>noreply@blogger.com ( )</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2394990579473134159.post-6205927720630806594</guid><pubDate>Mon, 19 Jun 2017 19:40:00 +0000</pubDate><atom:updated>2017-06-19T12:40:28.200-07:00</atom:updated><title>Batch Download Files From A List Of Urls</title><description>&lt;b&gt;Step 1.&lt;/b&gt; Make a text file contains URLs. One url on each line.&lt;br /&gt;
&lt;br /&gt;
e.g.&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh1qb50lhel_Vmc00un4gG-R8HmZ5z8ihTTTCDPV7MKf26SAdXI3mUF8uQzmYoDhlcFGuKeVYl5OFBQJzs3wRpBONTny5L24wBAG808lHE1jKY5ITqEBI8hEEVodV3f71ZF-5Y9ij0sXs0/s1600/Screen+Shot+2017-06-19+at+12.33.36+PM.png&quot; imageanchor=&quot;1&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;116&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh1qb50lhel_Vmc00un4gG-R8HmZ5z8ihTTTCDPV7MKf26SAdXI3mUF8uQzmYoDhlcFGuKeVYl5OFBQJzs3wRpBONTny5L24wBAG808lHE1jKY5ITqEBI8hEEVodV3f71ZF-5Y9ij0sXs0/s320/Screen+Shot+2017-06-19+at+12.33.36+PM.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Step 2.&lt;/b&gt; Download BatchFileDownload app for Windows from&amp;nbsp;&lt;a href=&quot;https://www.dropbox.com/s/rke8wpnuni8qsm0/BatchFileDownload.zip?dl=0&quot;&gt;here&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Step 3. &lt;/b&gt;Run&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;
&lt;b&gt;BatchFileDownload.exe urls.txt ./pics/&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-jT60U0ll4d2MD2hkPkNo0G3o-0by5EgqnHtzHokXOimGO6nBuVeDqeqCYimaHScpeUgp_A80a6dyNQXVZtyzxVdRvds-UNl2TsQuzTIOnHx40Lbz0o14d4IkDpkS6xBPRzKPqjNQRco/s1600/Screen+Shot+2017-06-19+at+12.35.55+PM.png&quot; imageanchor=&quot;1&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;142&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-jT60U0ll4d2MD2hkPkNo0G3o-0by5EgqnHtzHokXOimGO6nBuVeDqeqCYimaHScpeUgp_A80a6dyNQXVZtyzxVdRvds-UNl2TsQuzTIOnHx40Lbz0o14d4IkDpkS6xBPRzKPqjNQRco/s320/Screen+Shot+2017-06-19+at+12.35.55+PM.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Files will be downloaded into ./pics/ folder.</description><link>http://2x4x8.blogspot.com/2017/06/batch-download-files-from-list-of-urls.html</link><author>noreply@blogger.com ( )</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh1qb50lhel_Vmc00un4gG-R8HmZ5z8ihTTTCDPV7MKf26SAdXI3mUF8uQzmYoDhlcFGuKeVYl5OFBQJzs3wRpBONTny5L24wBAG808lHE1jKY5ITqEBI8hEEVodV3f71ZF-5Y9ij0sXs0/s72-c/Screen+Shot+2017-06-19+at+12.33.36+PM.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2394990579473134159.post-3897898440704631570</guid><pubDate>Fri, 05 May 2017 18:12:00 +0000</pubDate><atom:updated>2017-05-05T11:23:05.832-07:00</atom:updated><title>3 Steps to Setup Resilio Sync On Ubuntu</title><description>Imagine your laptop contains the whole live website. Forget about the publish procedure, ftp passwords, the versionings, etc. If you need to make a spelling change, add a page or delete an image, you just modify it on your laptop and boom the live site is updated instantly automatically. If you unfortunately lost your laptop, just go to your webserver, disconnect the old device, add new laptop device, you can continue working within minutes.&lt;br /&gt;
&lt;br /&gt;
We are implementing our little robotic system using Resilio Sync and Ubuntu 16.04 LTS.&lt;br /&gt;
Resilio Sync, formerly known as BTSync, is a secure, free, fast, peer-to-peer file syncing tool.&lt;br /&gt;
Ubuntu is a web server operating system powering the internet costs nothing and does everything.&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;
1. Install Resilio Sync&amp;nbsp;&lt;/h2&gt;
&lt;br /&gt;
Add Resilio Sync official repository&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;background: rgba(0, 0, 0, 0.027451); border-left: 4px solid rgba(0, 0, 0, 0.0980392); color: #222222; font-size: 15px; overflow: auto; padding: 15px; white-space: pre-wrap; word-break: break-all; word-wrap: break-word;&quot;&gt;sudo vi /etc/apt/sources.list&lt;/pre&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Add the following line at the end of the file&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;background: rgba(0, 0, 0, 0.027451); border-left: 4px solid rgba(0, 0, 0, 0.0980392); color: #222222; font-size: 15px; overflow: auto; padding: 15px; white-space: pre-wrap; word-break: break-all; word-wrap: break-word;&quot;&gt;deb http://linux-packages.resilio.com/resilio-sync/deb resilio-sync non-free&lt;/pre&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhnAvoLCXHD3ZXXfLFi9o7aYWwDYigYT9OA-lvlQ7ViPYsdmCRYVBpPydzwS8nynpIreCCOZwpRDEkvYN91sdaNBhrAS_-qDl8Q5n2H3zhWPAIAQBdU87UJj8kXX0fU-TQOMwMswf_Nh3w/s1600/Screen+Shot+2017-05-05+at+10.56.40.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;256&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhnAvoLCXHD3ZXXfLFi9o7aYWwDYigYT9OA-lvlQ7ViPYsdmCRYVBpPydzwS8nynpIreCCOZwpRDEkvYN91sdaNBhrAS_-qDl8Q5n2H3zhWPAIAQBdU87UJj8kXX0fU-TQOMwMswf_Nh3w/s400/Screen+Shot+2017-05-05+at+10.56.40.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
Download public key&lt;br /&gt;
&lt;pre style=&quot;background: rgba(0, 0, 0, 0.027451); border-left: 4px solid rgba(0, 0, 0, 0.0980392); color: #222222; font-size: 15px; overflow: auto; padding: 15px; white-space: pre-wrap; word-break: break-all; word-wrap: break-word;&quot;&gt;wget https://linux-packages.resilio.com/resilio-sync/key.asc&lt;/pre&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;pre style=&quot;background: rgba(0, 0, 0, 0.027451); border-left: 4px solid rgba(0, 0, 0, 0.0980392); color: #222222; font-size: 15px; overflow: auto; padding: 15px; white-space: pre-wrap; word-break: break-all; word-wrap: break-word;&quot;&gt;sudo apt-key add key.asc&lt;/pre&gt;
&lt;/div&gt;
&lt;br /&gt;
Install Resilio Sync&lt;br /&gt;
&lt;pre style=&quot;background: rgba(0, 0, 0, 0.027451); border-left: 4px solid rgba(0, 0, 0, 0.0980392); color: #222222; font-size: 15px; overflow: auto; padding: 15px; white-space: pre-wrap; word-break: break-all; word-wrap: break-word;&quot;&gt;sudo apt update

sudo apt install resilio-sync&lt;/pre&gt;
&lt;br /&gt;
&lt;h2&gt;
2. Configuration&lt;/h2&gt;
By default, Resilio Sync management interface listening only on local machine, we need to change it to allow manage from remote locations. To do this, change listening interface from 127.0.0.0:8888 to 0.0.0.0:8888 in&amp;nbsp;&lt;span style=&quot;background-color: rgba(0 , 0 , 0 , 0.027451); color: #222222; font-family: monospace; font-size: 15px;&quot;&gt;/etc/resilio-sync/config.json file.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;background: rgba(0, 0, 0, 0.027451); border-left: 4px solid rgba(0, 0, 0, 0.0980392); overflow: auto; padding: 15px; word-break: break-all; word-wrap: break-word;&quot;&gt;&lt;span style=&quot;color: #222222; font-size: 15px; white-space: pre-wrap;&quot;&gt;sudo vi &lt;/span&gt;&lt;span style=&quot;color: #222222;&quot;&gt;&lt;span style=&quot;font-size: 15px; white-space: pre-wrap;&quot;&gt;/etc/resilio-sync/config.json&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjN-0bcCErbbX6R7vtwvyZNZDQMMxnColn5wi_2Arwt7nm5VY4EMU4jwoBo-AFlvZjemMZrLVXN4trf1GM5V4zlo7QW7yMrrbm8iIBsi62VsKid-tS4xXSb_mRN1_Plhneb6r0srFC4NNc/s1600/Screen+Shot+2017-05-05+at+11.03.37.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;252&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjN-0bcCErbbX6R7vtwvyZNZDQMMxnColn5wi_2Arwt7nm5VY4EMU4jwoBo-AFlvZjemMZrLVXN4trf1GM5V4zlo7QW7yMrrbm8iIBsi62VsKid-tS4xXSb_mRN1_Plhneb6r0srFC4NNc/s400/Screen+Shot+2017-05-05+at+11.03.37.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;br /&gt;
Start Resilio-sync&lt;br /&gt;
&lt;pre style=&quot;background: rgba(0, 0, 0, 0.027451); border-left: 4px solid rgba(0, 0, 0, 0.0980392); color: #222222; font-size: 15px; overflow: auto; padding: 15px; white-space: pre-wrap; word-break: break-all; word-wrap: break-word;&quot;&gt;sudo systemctl start resilio-sync&lt;/pre&gt;
&lt;br /&gt;
To start automatically when boot&lt;br /&gt;
&lt;pre style=&quot;background: rgba(0, 0, 0, 0.027451); border-left: 4px solid rgba(0, 0, 0, 0.0980392); color: #222222; font-size: 15px; overflow: auto; padding: 15px; white-space: pre-wrap; word-break: break-all; word-wrap: break-word;&quot;&gt;sudo systemctl enable resilio-sync&lt;/pre&gt;
&lt;br /&gt;
Check status and investigate problem&lt;br /&gt;
&lt;pre style=&quot;background: rgba(0, 0, 0, 0.027451); border-left: 4px solid rgba(0, 0, 0, 0.0980392); color: #222222; font-size: 15px; overflow: auto; padding: 15px; white-space: pre-wrap; word-break: break-all; word-wrap: break-word;&quot;&gt;systemctl status resilio-sync&lt;/pre&gt;
&lt;br /&gt;
&lt;h2&gt;
3. Using Resilio Sync&lt;/h2&gt;
Browse to http://address:8888&lt;br /&gt;
Create user and password&lt;br /&gt;
Add website folder for syncing.&lt;br /&gt;
&lt;br /&gt;
If you receive error says &quot;Don’t have permissions to write to selected folder.&quot;&lt;br /&gt;
You can investigate the cause in log file&lt;br /&gt;
&lt;pre style=&quot;background: rgba(0, 0, 0, 0.027451); border-left: 4px solid rgba(0, 0, 0, 0.0980392); color: #222222; font-size: 15px; overflow: auto; padding: 15px; white-space: pre-wrap; word-break: break-all; word-wrap: break-word;&quot;&gt;tail -f /var/lib/resilio-sync/sync.log&lt;/pre&gt;
&lt;br /&gt;
Most likely you just need to give user &quot;rslsync&quot; rights to your website folder&lt;br /&gt;
&lt;pre style=&quot;background: rgba(0, 0, 0, 0.027451); border-left: 4px solid rgba(0, 0, 0, 0.0980392); color: #222222; font-size: 15px; overflow: auto; padding: 15px; white-space: pre-wrap; word-break: break-all; word-wrap: break-word;&quot;&gt;sudo setfacl -R -m &quot;u:rslsync:rwx&quot; /&lt;i&gt;your_website_folder&lt;/i&gt;&lt;/pre&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;
One More Tip&lt;/h3&gt;
This is important important important! After you add each folder, make sure right click the folder, choose Preferences..., and uncheck the &quot;Store deleted files in folder archive&quot;. This will avoid the folder filling up all disk space.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBAZl7R9QML9_r1Zdjw-7_BWYP0sRnp6JGbg3mmpewGpyzJH0uFkGtr7iNJ90raK2jk8VXnutoAet42Ae75eiVaKV5LuJv1q6R8lrleS6hmZlEO8BMNJvRyPVlqHoit4U5cpK1d7rapLI/s1600/Screen+Shot+2017-05-05+at+11.13.48.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;246&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBAZl7R9QML9_r1Zdjw-7_BWYP0sRnp6JGbg3mmpewGpyzJH0uFkGtr7iNJ90raK2jk8VXnutoAet42Ae75eiVaKV5LuJv1q6R8lrleS6hmZlEO8BMNJvRyPVlqHoit4U5cpK1d7rapLI/s400/Screen+Shot+2017-05-05+at+11.13.48.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
You can use Dropbox, Git or SVN on your laptop to keep the file archives instead.&lt;br /&gt;
&lt;br /&gt;
(end)</description><link>http://2x4x8.blogspot.com/2017/05/3-steps-to-setup-resilio-sync-on-ubuntu.html</link><author>noreply@blogger.com ( )</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhnAvoLCXHD3ZXXfLFi9o7aYWwDYigYT9OA-lvlQ7ViPYsdmCRYVBpPydzwS8nynpIreCCOZwpRDEkvYN91sdaNBhrAS_-qDl8Q5n2H3zhWPAIAQBdU87UJj8kXX0fU-TQOMwMswf_Nh3w/s72-c/Screen+Shot+2017-05-05+at+10.56.40.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2394990579473134159.post-6080713417466298248</guid><pubDate>Fri, 20 Jan 2017 17:43:00 +0000</pubDate><atom:updated>2017-01-20T09:44:08.051-08:00</atom:updated><title>Simple C# HTTP GET</title><description>In one line:&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;string response = new System.Net.WebClient().DownloadString(&quot;https://server/someapp.php?hi=hey&quot;);&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;</description><link>http://2x4x8.blogspot.com/2017/01/simple-c-http-get.html</link><author>noreply@blogger.com ( )</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2394990579473134159.post-7313989210123655259</guid><pubDate>Mon, 10 Oct 2016 17:36:00 +0000</pubDate><atom:updated>2016-10-23T13:04:14.124-07:00</atom:updated><title>Turn Off ONLY_FULL_GROUP_BY for MySQL in Ubuntu</title><description>1. &lt;b&gt;sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
2. At the end of [mysqld] add:&lt;br /&gt;
&lt;b&gt;sql_mode = &quot;STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION&quot;&lt;/b&gt;&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
3. Save and restart MySQL&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;sudo service mysql restart&lt;/b&gt;&lt;/div&gt;
</description><link>http://2x4x8.blogspot.com/2016/10/turn-off-onlyfullgroupby-for-mysql-in.html</link><author>noreply@blogger.com ( )</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2394990579473134159.post-1740611478695909255</guid><pubDate>Mon, 10 Oct 2016 03:42:00 +0000</pubDate><atom:updated>2016-10-09T20:42:33.973-07:00</atom:updated><title>Move Downloads to Another Drive</title><description>On macos, to set Downloads to second drive&lt;br /&gt;
&lt;br /&gt;








&lt;br /&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;&lt;b&gt;ln -s &quot;/Volumes/&lt;i&gt;Macintosh HD&lt;/i&gt;/Downloads&quot; ~/&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;Replace &lt;i&gt;Macintosh HD&lt;/i&gt; with the name of your second drive.&lt;/span&gt;&lt;/div&gt;
</description><link>http://2x4x8.blogspot.com/2016/10/move-downloads-to-another-drive.html</link><author>noreply@blogger.com ( )</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2394990579473134159.post-5987514272220795089</guid><pubDate>Sun, 09 Oct 2016 18:08:00 +0000</pubDate><atom:updated>2016-10-09T14:58:26.129-07:00</atom:updated><title>Setup Amazon EC2 Ubuntu LAMP in One Command</title><description>An Ubuntu 16.04 LTS server with Apache, PHP, phpMyAdmin and Mysql.&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
1. Refresh your package index&lt;br /&gt;
&lt;b&gt;$ sudo apt-get update&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2. Install LAMP stack&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;$ sudo apt-get install lamp-server^&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;div style=&quot;background-color: white; color: #333333; font-family: &amp;quot;Helvetica Neue Light&amp;quot;, HelveticaNeue-Light, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px; margin: 0px; outline: none; padding: 0px; text-align: justify;&quot;&gt;
3. Install phpMyAdmin&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #333333; font-family: &amp;quot;Helvetica Neue Light&amp;quot;, HelveticaNeue-Light, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px; margin: 0px; outline: none; padding: 0px; text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #333333; font-family: &amp;quot;Helvetica Neue Light&amp;quot;, HelveticaNeue-Light, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 14px; margin: 0px; outline: none; padding: 0px; text-align: justify;&quot;&gt;
&lt;b&gt;$ sudo apt-get install phpmyadmin&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
4. Apache2 error log&lt;br /&gt;
&lt;b&gt;$ tail /var/log/apache2/error.log&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
5. Install sendmail for php&lt;br /&gt;
&lt;b&gt;$ sudo apt-get install sendmail&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
</description><link>http://2x4x8.blogspot.com/2016/10/setup-amazon-ec2-ubuntu-lamp-in-one.html</link><author>noreply@blogger.com ( )</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2394990579473134159.post-6956633701903186509</guid><pubDate>Thu, 21 Jul 2016 21:22:00 +0000</pubDate><atom:updated>2016-07-21T14:22:06.298-07:00</atom:updated><title>How to completely disable Guest and Other User</title><description>&lt;h4&gt;
To disable Guest user on login screen&lt;/h4&gt;
&lt;br /&gt;
1.  -&amp;gt; System Preferences -&amp;gt; Users &amp;amp; Groups -&amp;gt; Click the lock to make changes -&amp;gt; select Guest User -&amp;gt; Uncheck Allow guests to log in to this computer.&lt;br /&gt;
&lt;br /&gt;
2.  -&amp;gt; System Preferences -&amp;gt; Security &amp;amp; Privacy -&amp;gt; FileVault -&amp;gt; Turn Off FileVault&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
To disable Other user on login screen&lt;/h4&gt;
&lt;ol style=&quot;background-color: white; color: #333333; font-family: &amp;quot;Lucida Grande&amp;quot;, &amp;quot;Lucida Sans Unicode&amp;quot;, Helvetica, Arial, Verdana, sans-serif; font-size: 14px; line-height: 22px; margin: 0px 0px 18px 2.2em; padding: 0px;&quot;&gt;
&lt;li style=&quot;margin: 0px; padding: 0px;&quot;&gt;Open Users &amp;amp; Groups preferences, click Login Options, then click the lock icon to unlock it. If necessary, type your password, then click Unlock.&lt;/li&gt;
&lt;li style=&quot;margin: 0px; padding: 0px;&quot;&gt;In the Network Account Server section, click Join or Edit.&lt;/li&gt;
&lt;li style=&quot;margin: 0px; padding: 0px;&quot;&gt;Click Open Directory Utility.&lt;/li&gt;
&lt;li style=&quot;margin: 0px; padding: 0px;&quot;&gt;Click the lock icon to unlock it, then enter your administrator name and password.&lt;/li&gt;
&lt;li style=&quot;margin: 0px; padding: 0px;&quot;&gt;Choose Edit &amp;gt; Disable Root User.&lt;/li&gt;
&lt;/ol&gt;
&lt;div&gt;
&lt;span style=&quot;color: #333333; font-family: Lucida Grande, Lucida Sans Unicode, Helvetica, Arial, Verdana, sans-serif;&quot;&gt;&lt;span style=&quot;font-size: 14px; line-height: 22px;&quot;&gt;&lt;a href=&quot;https://support.apple.com/kb/PH14281?viewlocale=en_US&amp;amp;locale=en_US&quot;&gt;https://support.apple.com/kb/PH14281?viewlocale=en_US&amp;amp;locale=en_US&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
</description><link>http://2x4x8.blogspot.com/2016/07/how-to-completely-disable-guest-and.html</link><author>noreply@blogger.com ( )</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2394990579473134159.post-3600171836914849555</guid><pubDate>Sat, 04 Jun 2016 14:36:00 +0000</pubDate><atom:updated>2016-06-04T07:36:48.933-07:00</atom:updated><title>Eclipse shows “Insufficient access privileges to apply this update” on Mac</title><description>In order to apply Eclipse Update 2, you will need to run Eclipse as administrator:&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
First on Terminal:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;







&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;color: #999999;&quot;&gt;$ sudo /Applications/Eclipse.app/Contents/MacOS/Eclipse&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;Then,&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;&lt;span style=&quot;color: #999999;&quot;&gt;On Eclipse menu Help -&amp;gt; Check for Updates.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot; style=&quot;text-align: center;&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgh81BE1MCiy9JJIQ9r30dafJLccZoiUsk-JoVONQ2Aqk1jP7nkYPX6qzVomyFah_NEDDJFoNssgO8VsI6aiTnx2kPKF4sfF0ZRnKV-1q45giDp7t1FhmEl5pmn9DHKtvUT_lS2lPSZBPo/s1600/Screen+Shot+2016-06-04+at+7.32.30+AM.png&quot; imageanchor=&quot;1&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;206&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgh81BE1MCiy9JJIQ9r30dafJLccZoiUsk-JoVONQ2Aqk1jP7nkYPX6qzVomyFah_NEDDJFoNssgO8VsI6aiTnx2kPKF4sfF0ZRnKV-1q45giDp7t1FhmEl5pmn9DHKtvUT_lS2lPSZBPo/s320/Screen+Shot+2016-06-04+at+7.32.30+AM.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://2x4x8.blogspot.com/2016/06/eclipse-shows-insufficient-access.html</link><author>noreply@blogger.com ( )</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgh81BE1MCiy9JJIQ9r30dafJLccZoiUsk-JoVONQ2Aqk1jP7nkYPX6qzVomyFah_NEDDJFoNssgO8VsI6aiTnx2kPKF4sfF0ZRnKV-1q45giDp7t1FhmEl5pmn9DHKtvUT_lS2lPSZBPo/s72-c/Screen+Shot+2016-06-04+at+7.32.30+AM.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2394990579473134159.post-8573058049114403673</guid><pubDate>Fri, 13 May 2016 01:56:00 +0000</pubDate><atom:updated>2016-05-12T19:07:05.341-07:00</atom:updated><title>iOS App Icon Generator</title><description>Before Apple able to use vector file for AppIcons, we stuck with making multiple png files in varies resolutions. I made a small script to generate these files easier. This script uses Inkscape in my machine.&lt;br /&gt;
&lt;br /&gt;
Run this command in Terminal in the same path as the &lt;i&gt;app_icon&lt;/i&gt;.svg file:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;ol style=&quot;background-color: white; color: #333333; font-family: &#39;myriad set pro&#39;, &#39;helvetica neue&#39;, helvetica, arial, verdana, sans-serif; line-height: 26.1px; list-style-position: outside; margin: 1em 0px 0px 1.25em; padding: 0px;&quot;&gt;&lt;pre style=&quot;background-color: #fafbfc; border: 1px solid rgb(222, 222, 222); color: #666666; margin-top: 1em; overflow: auto; padding: 8px;&quot;&gt;&lt;b&gt;./resize.sh app_icon.svg&lt;/b&gt;&lt;/pre&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/ol&gt;
This is the content of resize.sh. Feel free to modify and copy.&lt;br /&gt;
&lt;br /&gt;
&lt;ol style=&quot;background-color: white; list-style-position: outside; margin: 1em 0px 0px 1.25em; padding: 0px;&quot;&gt;&lt;pre style=&quot;background-color: #fafbfc; border-image-outset: initial; border-image-repeat: initial; border-image-slice: initial; border-image-source: initial; border-image-width: initial; border: 1px solid rgb(222, 222, 222); margin-top: 1em; overflow: auto; padding: 8px;&quot;&gt;&lt;span style=&quot;color: #666666; font-family: &#39;myriad set pro&#39;, &#39;helvetica neue&#39;, helvetica, arial, verdana, sans-serif; line-height: 26.1px;&quot;&gt;&lt;span style=&quot;line-height: 26.1px;&quot;&gt;#!/bin/bash

INK=/Applications/Inkscape.app/Contents/Resources/bin/inkscape

if [[ -z &quot;$1&quot; ]] 
then
 echo &quot;SVG file needed.&quot;
 exit;
fi

BASE=`basename &quot;$1&quot; .svg`
SVG=&quot;$1&quot;

mkdir $BASE

# iPhone Spotlight iOS5,6 Settings iOS and iPad 5-8 29pt
$INK -z -C -e &quot;$(pwd)/$BASE/$BASE-29.png&quot;  -f &quot;$(pwd)/$SVG&quot; -w 29 -h 29
$INK -z -C -e &quot;$(pwd)/$BASE/$BASE-29@2x.png&quot;  -f &quot;$(pwd)/$SVG&quot; -w 58 -h 58
$INK -z -C -e &quot;$(pwd)/$BASE/$BASE-29@3x.png&quot;  -f &quot;$(pwd)/$SVG&quot; -w 87 -h 87

# iPhone iPad Spotlight iOS7,8 40pt
$INK -z -C -e &quot;$(pwd)/$BASE/$BASE-40.png&quot;  -f &quot;$(pwd)/$SVG&quot; -w 40 -h 40
$INK -z -C -e &quot;$(pwd)/$BASE/$BASE-40@2x.png&quot;  -f &quot;$(pwd)/$SVG&quot; -w 80 -h 80
$INK -z -C -e &quot;$(pwd)/$BASE/$BASE-40@3x.png&quot;  -f &quot;$(pwd)/$SVG&quot; -w 120 -h 120


# iPhone App iOS 7,8 60pt
$INK -z -C -e &quot;$(pwd)/$BASE/$BASE-60@2x.png&quot;  -f &quot;$(pwd)/$SVG&quot; -w 120 -h 120
$INK -z -C -e &quot;$(pwd)/$BASE/$BASE-60@3x.png&quot;  -f &quot;$(pwd)/$SVG&quot; -w 180 -h 180

# iPad Pro App iOS 9 83.5pt
$INK -z -C -e &quot;$(pwd)/$BASE/$BASE-83.5@2x.png&quot;  -f &quot;$(pwd)/$SVG&quot; -w 167 -h 167


# iPad App iOS 7  76pt
$INK -z -C -e &quot;$(pwd)/$BASE/$BASE-76.png&quot;  -f &quot;$(pwd)/$SVG&quot; -w 76 -h 76 
$INK -z -C -e &quot;$(pwd)/$BASE/$BASE-76@2x.png&quot;  -f &quot;$(pwd)/$SVG&quot; -w 152 -h 152

#iTunes Artwork
$INK -z -C -e &quot;$(pwd)/$BASE/$BASE-512.png&quot;  -f &quot;$(pwd)/$SVG&quot; -w 512 -h 512
$INK -z -C -e &quot;$(pwd)/$BASE/$BASE-1024.png&quot; -f &quot;$(pwd)/$SVG&quot; -w 1024 -h 1024
$INK -z -C -e &quot;$(pwd)/$BASE/$BASE-1536.png&quot; -f &quot;$(pwd)/$SVG&quot; -w 1536 -h 1536

cp &quot;$BASE/$BASE-512.png&quot; $BASE/iTunesArtwork.png
cp &quot;$BASE/$BASE-1024.png&quot; $BASE/iTunesArtwork@2x.png
cp &quot;$BASE/$BASE-1536.png&quot; $BASE/iTunesArtwork@3x.png
&lt;/span&gt;&lt;span style=&quot;font-family: myriad set pro, helvetica neue, helvetica, arial, verdana, sans-serif;&quot;&gt;&lt;span style=&quot;line-height: 26.1px;&quot;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;div style=&quot;color: #333333; font-family: &#39;myriad set pro&#39;, &#39;helvetica neue&#39;, helvetica, arial, verdana, sans-serif; line-height: 26.1px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;color: #333333; font-family: &#39;myriad set pro&#39;, &#39;helvetica neue&#39;, helvetica, arial, verdana, sans-serif; line-height: 26.1px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/ol&gt;
</description><link>http://2x4x8.blogspot.com/2016/05/ios-app-icon-generator.html</link><author>noreply@blogger.com ( )</author><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2394990579473134159.post-4633660498940277556</guid><pubDate>Fri, 29 Apr 2016 14:50:00 +0000</pubDate><atom:updated>2016-04-29T14:03:26.720-07:00</atom:updated><title>Missing Widgets on Mac </title><description>&lt;span style=&quot;font-family: &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;This morning, as usual, when I woke up to check out my investments, only to find that Stocks, Calculator, and other items were missing from Notification Center.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjGSb6c2c_MOMKsOQwRdnFStIlzrV0Z2UGeQk9W918GIqwKndazrSZRrENBd6Afr0AdEMWwzl86ihCrTJ90ffhyM_5yUptyo_ss9nfWqYKnrfWykmm2Ey1tDjcqTYfFbjVqqqGmO03LbWc/s1600/Screen+Shot+2016-04-29+at+7.17.46+AM.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjGSb6c2c_MOMKsOQwRdnFStIlzrV0Z2UGeQk9W918GIqwKndazrSZRrENBd6Afr0AdEMWwzl86ihCrTJ90ffhyM_5yUptyo_ss9nfWqYKnrfWykmm2Ey1tDjcqTYfFbjVqqqGmO03LbWc/s320/Screen+Shot+2016-04-29+at+7.17.46+AM.png&quot; width=&quot;272&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;(Widget tab looked like this)&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;I thought maybe Apple uninstalled them for me because they had new advanced widgets in App Store. That hope lost after couple minutes browsing. Good news is there is a&amp;nbsp;solution&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;&amp;nbsp;to bring the old ones back:&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;ol style=&quot;background-color: white; color: #333333; font-family: &#39;myriad set pro&#39;, &#39;helvetica neue&#39;, helvetica, arial, verdana, sans-serif; line-height: 26.1px; list-style-position: outside; margin: 1em 0px 0px 1.25em; padding: 0px;&quot;&gt;
&lt;li style=&quot;font-size: 18px; margin: 0px; padding: 0px;&quot;&gt;Open the Terminal app, which is in the Utilities folder of your Applications folder.&amp;nbsp;&lt;/li&gt;
&lt;li style=&quot;font-size: 18px; margin: 0px; padding: 0px;&quot;&gt;Type this command in Terminal:&lt;/li&gt;
&lt;br /&gt;
&lt;pre style=&quot;background-color: #fafbfc; border-image-outset: initial; border-image-repeat: initial; border-image-slice: initial; border-image-source: initial; border-image-width: initial; border: 1px solid rgb(222, 222, 222); color: #666666; margin-top: 1em; overflow: auto; padding: 8px;&quot;&gt;/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -seed&lt;/pre&gt;
&lt;ol style=&quot;background-color: white; color: #333333; font-family: &#39;myriad set pro&#39;, &#39;helvetica neue&#39;, helvetica, arial, verdana, sans-serif; line-height: 26.1px; list-style-position: outside; margin: 1em 0px 0px 1.25em; padding: 0px;&quot;&gt;(make sure copy the whole line all the way to -seed)&lt;/ol&gt;
&lt;br /&gt;
&lt;li style=&quot;font-size: 18px; margin: 0px; padding: 0px;&quot;&gt;Press Return and wait for the Terminal prompt—which ends in $—to reappear. It may take a few minutes.&lt;/li&gt;
&lt;li style=&quot;font-size: 18px; margin: 0px; padding: 0px;&quot;&gt;Reboot.&lt;/li&gt;
&lt;/ol&gt;
&lt;div&gt;
&lt;span style=&quot;color: #333333; font-family: &amp;quot;myriad set pro&amp;quot; , &amp;quot;helvetica neue&amp;quot; , &amp;quot;helvetica&amp;quot; , &amp;quot;arial&amp;quot; , &amp;quot;verdana&amp;quot; , sans-serif;&quot;&gt;&lt;span style=&quot;font-size: 18px; line-height: 26.1px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div id=&quot;sections&quot; itemprop=&quot;articleBody&quot; style=&quot;background-color: white; color: #333333; counter-reset: steps-counter 0; font-family: &#39;Myriad Set Pro&#39;, &#39;Helvetica Neue&#39;, Helvetica, Arial, Verdana, sans-serif; line-height: 26.1px; margin: 0px; padding: 0px;&quot;&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;section class=&quot;&quot; style=&quot;box-sizing: border-box; width: auto;&quot;&gt;&lt;div style=&quot;font-size: 18px; margin-top: 1em; padding: 0px; word-wrap: break-word;&quot;&gt;
If another user account on your Mac has the same issue, log in to that account and repeat these steps.&lt;/div&gt;
&lt;div style=&quot;font-size: 18px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;font-size: 18px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Reference:&amp;nbsp;https://support.apple.com/en-us/HT203129&lt;/div&gt;
&lt;/section&gt;&lt;/div&gt;
&lt;div class=&quot;sosumi&quot; style=&quot;background-color: white; color: #666666; font-family: &#39;Myriad Set Pro&#39;, &#39;Helvetica Neue&#39;, Helvetica, Arial, Verdana, sans-serif; font-size: 14px !important; margin: 0px; padding: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
</description><link>http://2x4x8.blogspot.com/2016/04/missing-widgets-on-mac.html</link><author>noreply@blogger.com ( )</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjGSb6c2c_MOMKsOQwRdnFStIlzrV0Z2UGeQk9W918GIqwKndazrSZRrENBd6Afr0AdEMWwzl86ihCrTJ90ffhyM_5yUptyo_ss9nfWqYKnrfWykmm2Ey1tDjcqTYfFbjVqqqGmO03LbWc/s72-c/Screen+Shot+2016-04-29+at+7.17.46+AM.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2394990579473134159.post-5732360521696365341</guid><pubDate>Fri, 22 Apr 2016 14:54:00 +0000</pubDate><atom:updated>2016-04-22T12:23:59.987-07:00</atom:updated><title>DNS323 Transmission Installation</title><description>This is a simplified guide to install Transmission, a light-weight BitTorrent client, on older version of DNS-323. You will need 3 components: fun_plug, SSH, and Transmission.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;
Install Funpkg&lt;/h2&gt;
&lt;br /&gt;
1. Download&lt;br /&gt;
&lt;a href=&quot;https://dl.dropboxusercontent.com/u/6338199/2x4x8/fun_plug&quot;&gt;fun_plug&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://dl.dropboxusercontent.com/u/6338199/2x4x8/fun_plug.tgz&quot;&gt;fun_plug.tgz&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
2. Install&lt;br /&gt;
&lt;div&gt;
Place the 2 files at the root of &lt;b&gt;Volume_1&lt;/b&gt; network share.&lt;/div&gt;
&lt;div&gt;
Then, &lt;b&gt;reboot&lt;/b&gt; your NAS.&lt;/div&gt;
&lt;div&gt;
If everything has gone fine,you will get a new &lt;b&gt;ffp.log&lt;/b&gt; file at the root of Volume_1.&lt;/div&gt;
&lt;br /&gt;
**** fun_plug script for DNS-323 (2008-08-11 tp@fonz.de) ****&lt;br /&gt;
...&lt;br /&gt;
* &amp;nbsp;OK&lt;br /&gt;
The last line shows that fun_plug is properly launched.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;
Enable SSH&lt;/h2&gt;
1. Connect via Telnet&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;code style=&quot;background-color: #f3f3f3; border: 1px solid rgb(221, 221, 221); display: block; margin: 0px; overflow: auto; padding: 3px; text-align: left;&quot;&gt;&lt;span style=&quot;color: #303030;&quot;&gt;&lt;span style=&quot;font-family: inherit; line-height: 26px;&quot;&gt;$ telnet your.nas.ip.address&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #303030;&quot;&gt;&lt;span style=&quot;line-height: 26px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
2. Create user root&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;code style=&quot;background-color: #f3f3f3; border: 1px solid rgb(221, 221, 221); display: block; margin: 0px; overflow: auto; padding: 3px;&quot;&gt;&lt;span style=&quot;color: #303030;&quot;&gt;&lt;span style=&quot;font-family: inherit; line-height: 26px;&quot;&gt;&lt;span style=&quot;line-height: 26px;&quot;&gt;# usermod -s /ffp/bin/sh root&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;background-color: #f3f3f3; border: 1px solid rgb(221, 221, 221); display: block; margin: 0px; overflow: auto; padding: 3px;&quot;&gt;&lt;span style=&quot;color: #303030;&quot;&gt;&lt;span style=&quot;font-family: inherit; line-height: 26px;&quot;&gt;&lt;span style=&quot;line-height: 26px;&quot;&gt;# mkdir -p /ffp/home/root/&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;background-color: #f3f3f3; border: 1px solid rgb(221, 221, 221); display: block; margin: 0px; overflow: auto; padding: 3px;&quot;&gt;&lt;span style=&quot;color: #303030;&quot;&gt;&lt;span style=&quot;font-family: inherit; line-height: 26px;&quot;&gt;&lt;span style=&quot;line-height: 26px;&quot;&gt;# sed -ie &#39;s#:/home/root:#:/ffp/home/root:#g&#39; /etc/passwd&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;background-color: #f3f3f3; border: 1px solid rgb(221, 221, 221); display: block; margin: 0px; overflow: auto; padding: 3px;&quot;&gt;&lt;span style=&quot;color: #303030;&quot;&gt;&lt;span style=&quot;font-family: inherit; line-height: 26px;&quot;&gt;# pwconv&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3. Set a password&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;-webkit-text-stroke-width: 0px; color: black; font-family: Times; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px;&quot;&gt;
&lt;div style=&quot;margin: 0px;&quot;&gt;
&lt;code style=&quot;background-color: #f3f3f3; border: 1px solid rgb(221, 221, 221); display: block; margin: 0px; overflow: auto; padding: 3px; text-align: left;&quot;&gt;&lt;span style=&quot;color: #303030;&quot;&gt;&lt;span style=&quot;font-family: inherit; line-height: 26px;&quot;&gt;# passwd&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;br /&gt;
Changing password for root&lt;br /&gt;
Enter the new password (minimum of 5 characters)&lt;br /&gt;
Please use a combination of upper and lower case letters and numbers.&lt;br /&gt;
New password: &lt;b&gt;&lt;write down=&quot;&quot; it=&quot;&quot; some=&quot;&quot; where=&quot;&quot;&gt;&lt;/write&gt;&lt;/b&gt;&lt;br /&gt;
Re-enter new password:&lt;br /&gt;
passwd: password changed.&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;code style=&quot;background-color: #f3f3f3; border: 1px solid rgb(221, 221, 221); display: block; margin: 0px; overflow: auto; padding: 3px; text-align: left;&quot;&gt;&lt;span style=&quot;color: #303030;&quot;&gt;&lt;span style=&quot;font-family: inherit; line-height: 26px;&quot;&gt;# login&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
NAS login: &lt;b&gt;root&lt;/b&gt;&lt;br /&gt;
Password:&lt;br /&gt;
No mail.&lt;br /&gt;
root@NAS:~#&lt;br /&gt;
&lt;br /&gt;
4. Save configuration&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;code style=&quot;background-color: #f3f3f3; border: 1px solid rgb(221, 221, 221); display: block; margin: 0px; overflow: auto; padding: 3px; text-align: left;&quot;&gt;&lt;span style=&quot;color: #303030;&quot;&gt;&lt;span style=&quot;font-family: inherit; line-height: 26px;&quot;&gt;root@NAS:~# wget http://wolf-u.li/u/172/ -O /ffp/sbin/store-passwd.sh&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
...&lt;br /&gt;
Saving to: &#39;/ffp/sbin/store-passwd.sh&#39;&lt;br /&gt;
100%[======================================================================================================================&amp;gt;] 875 --.-K/s in 0s&lt;br /&gt;
2012-05-22 12:29:52 (7.45 MB/s) - &#39;/ffp/sbin/store-passwd.sh&#39; saved [875/875]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;code style=&quot;background-color: #f3f3f3; border: 1px solid rgb(221, 221, 221); display: block; margin: 0px; overflow: auto; padding: 3px; text-align: left;&quot;&gt;&lt;span style=&quot;color: #303030;&quot;&gt;&lt;span style=&quot;font-family: inherit; line-height: 26px;&quot;&gt;root@NAS:~# store-passwd.sh&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
Saving Userdata to flash storage&lt;br /&gt;
Mounting flash ...&lt;br /&gt;
Updating files ...&lt;br /&gt;
/sys/mtd1/passwd&lt;br /&gt;
...&lt;br /&gt;
/sys/mtd2/smbpasswd&lt;br /&gt;
Unmounting flash ...&lt;br /&gt;
&lt;br /&gt;
5. Generate key pairs&lt;br /&gt;
This will take a long time. DO NOT close the telnet session.&lt;br /&gt;
&lt;br /&gt;
&lt;code style=&quot;background-color: #f3f3f3; border: 1px solid rgb(221, 221, 221); display: block; margin: 0px; overflow: auto; padding: 3px;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;root@NAS:~#&amp;nbsp;chmod a+x /ffp/start/sshd.sh&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: inherit;&quot;&gt;root@NAS:~#&amp;nbsp;sh /ffp/start/sshd.sh start&lt;/span&gt;&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
Generating public/private rsa1 key pair.&lt;br /&gt;
Your identification has been saved in /ffp/etc/ssh/ssh_host_key.&lt;br /&gt;
Your public key has been saved in /ffp/etc/ssh/ssh_host_key.pub.&lt;br /&gt;
&lt;br /&gt;
...&lt;br /&gt;
&lt;br /&gt;
| * E S |&lt;br /&gt;
| + = |&lt;br /&gt;
| o . |&lt;br /&gt;
| . |&lt;br /&gt;
| |&lt;br /&gt;
+-----------------+&lt;br /&gt;
Starting /ffp/sbin/sshd&lt;br /&gt;
&lt;br /&gt;
6. SSH from your desktop&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;code style=&quot;background-color: #f3f3f3; border: 1px solid rgb(221, 221, 221); display: block; margin: 0px; overflow: auto; padding: 3px; text-align: left;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;$&amp;nbsp;ssh root@ 192.168.x.x&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;
If you get &quot;Host key verification failed&quot; error, remove the offending key from known_hosts&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;code style=&quot;background-color: #f3f3f3; border: 1px solid rgb(221, 221, 221); display: block; margin: 0px; overflow: auto; padding: 3px; text-align: left;&quot;&gt;&lt;span style=&quot;color: #303030;&quot;&gt;&lt;span style=&quot;font-family: inherit; line-height: 26px;&quot;&gt;$ ssh-keygen -R 192.168.x.x&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #303030;&quot;&gt;&lt;span style=&quot;font-family: inherit; line-height: 26px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
7. Disable telnet&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;code style=&quot;background-color: #f3f3f3; border: 1px solid rgb(221, 221, 221); display: block; margin: 0px; overflow: auto; padding: 3px; text-align: left;&quot;&gt;&lt;span style=&quot;color: #303030;&quot;&gt;&lt;span style=&quot;line-height: 26px;&quot;&gt;# chmod -x /ffp/start/telnetd.sh&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
8. &lt;b&gt;Reboot &lt;/b&gt;and test SSH login&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;
Install Transmission&lt;/h2&gt;
&lt;br /&gt;
1. Install slacker&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;background-color: white; margin: 0px 0px 15px; outline: none; padding: 0px; text-align: justify;&quot;&gt;
&lt;br /&gt;
&lt;code style=&quot;background-color: #f3f3f3; border-image-outset: initial; border-image-repeat: initial; border-image-slice: initial; border-image-source: initial; border-image-width: initial; border: 1px solid rgb(221, 221, 221); display: block; margin: 0px; overflow: auto; padding: 3px; text-align: left;&quot;&gt;&lt;span style=&quot;color: #303030;&quot;&gt;&lt;span style=&quot;line-height: 26px;&quot;&gt;# echo &quot;mijzelf http://downloads.zyxel.nas-central.org/Users/Mijzelf/FFP-Stick/packages/0.7/oabi&quot; &amp;gt;&amp;gt; /ffp/etc/funpkg/sites&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;background-color: #f3f3f3; border-image-outset: initial; border-image-repeat: initial; border-image-slice: initial; border-image-source: initial; border-image-width: initial; border: 1px solid rgb(221, 221, 221); display: block; margin: 0px; overflow: auto; padding: 3px; text-align: left;&quot;&gt;&lt;span style=&quot;color: #303030;&quot;&gt;&lt;span style=&quot;line-height: 26px;&quot;&gt;# echo &quot;memiks http://ffp.memiks.fr/pkg/oarm&quot; &amp;gt;&amp;gt; /ffp/etc/funpkg/sites&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;background-color: #f3f3f3; border-image-outset: initial; border-image-repeat: initial; border-image-slice: initial; border-image-source: initial; border-image-width: initial; border: 1px solid rgb(221, 221, 221); display: block; margin: 0px; overflow: auto; padding: 3px; text-align: left;&quot;&gt;&lt;span style=&quot;color: #303030;&quot;&gt;&lt;span style=&quot;line-height: 26px;&quot;&gt;# echo &quot;kylek http://kylek.is-a-geek.org:31337/files/ffp/0.7-oabi&quot; &amp;gt;&amp;gt; /ffp/etc/funpkg/sites&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;background-color: #f3f3f3; border-image-outset: initial; border-image-repeat: initial; border-image-slice: initial; border-image-source: initial; border-image-width: initial; border: 1px solid rgb(221, 221, 221); display: block; margin: 0px; overflow: auto; padding: 3px; text-align: left;&quot;&gt;&lt;span style=&quot;color: #303030;&quot;&gt;&lt;span style=&quot;line-height: 26px;&quot;&gt;# slacker -U&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;color: #303030; font-family: &#39;Helvetica Neue&#39;, Verdana, Helvetica, Tahoma, Arial, sans-serif; font-size: 14.72px; line-height: 26px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
2. Install libevent-2.0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;-webkit-text-stroke-width: 0px; color: black; font-family: Times; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; margin: 0px; orphans: auto; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px;&quot;&gt;
&lt;code style=&quot;background-color: #f3f3f3; border: 1px solid rgb(221, 221, 221); display: block; margin: 0px; overflow: auto; padding: 3px; text-align: left;&quot;&gt;&lt;span style=&quot;color: #303030;&quot;&gt;&lt;span style=&quot;line-height: 26px;&quot;&gt;# slacker -a&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;
&lt;br /&gt;
scroll down to about 41% of the Package list and check&lt;br /&gt;
mijzelf:libevent-2.0.16-oarm-1.txz&lt;br /&gt;
Press Enter or OK to install.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3. Download&lt;br /&gt;
&lt;a href=&quot;https://dl.dropboxusercontent.com/u/6338199/2x4x8/Transmission-2.83-oabi-1.txz&quot;&gt;Transmission 2.83 (ffp-0.7-oabi)&lt;/a&gt;&lt;br /&gt;
&amp;nbsp;&lt;a href=&quot;https://dl.dropboxusercontent.com/u/6338199/2x4x8/curl-7.24.0-oarm-1.txz&quot;&gt;curl-7.24.0-oarm-1.txz&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
put them on the root of Volume_1&lt;br /&gt;
&lt;br /&gt;
4. Install&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;code style=&quot;background-color: #f3f3f3; border: 1px solid rgb(221, 221, 221); display: block; margin: 0px; overflow: auto; padding: 3px; text-align: left;&quot;&gt;&lt;span style=&quot;color: #303030;&quot;&gt;&lt;span style=&quot;line-height: 26px;&quot;&gt;# cd ~/Volume_1&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;background-color: #f3f3f3; border: 1px solid rgb(221, 221, 221); display: block; margin: 0px; overflow: auto; padding: 3px; text-align: left;&quot;&gt;&lt;span style=&quot;color: #303030;&quot;&gt;&lt;span style=&quot;line-height: 26px;&quot;&gt;# funpkg -i curl-7.24.0-oarm-1.txz&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;code style=&quot;background-color: #f3f3f3; border: 1px solid rgb(221, 221, 221); display: block; margin: 0px; overflow: auto; padding: 3px; text-align: left;&quot;&gt;&lt;span style=&quot;background-color: transparent; line-height: 26px; text-align: justify;&quot;&gt;&lt;span style=&quot;color: #303030;&quot;&gt;# funpkg -i Transmission-2.83-oabi-1.txz&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
5. Configuration&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0px; text-align: justify;&quot;&gt;
&lt;code style=&quot;background-color: #f3f3f3; border-image-outset: initial; border-image-repeat: initial; border-image-slice: initial; border-image-source: initial; border-image-width: initial; border: 1px solid rgb(221, 221, 221); display: block; margin: 0px; overflow: auto; padding: 3px; text-align: left;&quot;&gt;# chown -R nobody /mnt/HD_a2/.transmission-daemon&lt;/code&gt;&lt;code style=&quot;background-color: #f3f3f3; border-image-outset: initial; border-image-repeat: initial; border-image-slice: initial; border-image-source: initial; border-image-width: initial; border: 1px solid rgb(221, 221, 221); display: block; margin: 0px; overflow: auto; padding: 3px; text-align: left;&quot;&gt;# chown -R nobody /mnt/HD_a2/Downloads&lt;/code&gt;&lt;code style=&quot;background-color: #f3f3f3; border-image-outset: initial; border-image-repeat: initial; border-image-slice: initial; border-image-source: initial; border-image-width: initial; border: 1px solid rgb(221, 221, 221); display: block; margin: 0px; overflow: auto; padding: 3px; text-align: left;&quot;&gt;# su nobody -c &quot;/ffp/bin/transmission-daemon -f -g /mnt/HD_a2/.transmission-daemon -w /mnt/HD_a2/Downloads -t -u -v -a 127.0.0.1,192.168.*.*&quot;&lt;/code&gt;&lt;br /&gt;
&lt;div style=&quot;font-family: times;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;username&gt; and &lt;password&gt; are for login to Transmission web UI.&lt;/password&gt;&lt;/username&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Then try your browser http://&lt;your ip=&quot;&quot; nas=&quot;&quot;&gt;:9091/&lt;/your&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
6. Settings&lt;/div&gt;
&lt;div&gt;
If there are no error messages, you can quit Transmission by pressing Ctrl-C.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Review and modify settings&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;div style=&quot;margin: 0px; text-align: justify;&quot;&gt;
&lt;code style=&quot;background-color: #f3f3f3; border-image-outset: initial; border-image-repeat: initial; border-image-slice: initial; border-image-source: initial; border-image-width: initial; border: 1px solid rgb(221, 221, 221); display: block; margin: 0px; overflow: auto; padding: 3px; text-align: left;&quot;&gt;# vi /mnt/HD_a2/.transmission-daemon/settings.json&lt;/code&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
start Transaction with&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;code style=&quot;background-color: #f3f3f3; border: 1px solid rgb(221, 221, 221); display: block; margin: 0px; overflow: auto; padding: 3px; text-align: left;&quot;&gt;# /ffp/start/transmission.sh start&lt;/code&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;
References:&lt;br /&gt;
&lt;a href=&quot;http://bernaerts.dyndns.org/nas/72-dns-323-ffp07/231-dns323-ffp7-install-funplug7&quot;&gt;DNS 323 - Extend your NAS possibilities with Funplug 0.7 By Nicolas Bernaerts&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://forum.dsmg600.info/t2719-%5BREL%5D-Transmission.html&quot;&gt;DSM-G600, DNS-3xx and NSA-220 Hack Forum / [REL] Transmis&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://stackoverflow.com/questions/4161548/how-to-establish-ssh-key-pair-when-host-key-verification-failed&quot;&gt;How to establish ssh key pair when “Host key verification failed”&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
</description><link>http://2x4x8.blogspot.com/2016/04/dns323-transmission-installation.html</link><author>noreply@blogger.com ( )</author><thr:total>2</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2394990579473134159.post-2371248888479111307</guid><pubDate>Wed, 02 Mar 2016 04:38:00 +0000</pubDate><atom:updated>2016-03-01T20:38:44.877-08:00</atom:updated><title></title><description>Practice multiplication skill using this simple triangle shape times table.&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;a href=&quot;https://dl.dropboxusercontent.com/u/6338199/2x4x8/TimesTable.pdf&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;124&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpl9UAodKmZKRSd_XxePkMMjXfhcV4bkOPxmJx3gRtOedCWwJ0r_vZqM2Vc__k3wa2_s4I7iDj12I84JytHrOoavtYMipLBbkXKvtyDTnMNlDpY4MBX2ggqwOaZ-zuZyk9zKFmGk5rqP0/s320/Screen+Shot+2016-03-01+at+6.55.14+PM.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
Download printable &lt;a href=&quot;https://dl.dropboxusercontent.com/u/6338199/2x4x8/TimesTable.pdf&quot;&gt;PDF&lt;/a&gt;.&lt;/div&gt;
</description><link>http://2x4x8.blogspot.com/2016/03/practice-multiplication-skill-using.html</link><author>noreply@blogger.com ( )</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpl9UAodKmZKRSd_XxePkMMjXfhcV4bkOPxmJx3gRtOedCWwJ0r_vZqM2Vc__k3wa2_s4I7iDj12I84JytHrOoavtYMipLBbkXKvtyDTnMNlDpY4MBX2ggqwOaZ-zuZyk9zKFmGk5rqP0/s72-c/Screen+Shot+2016-03-01+at+6.55.14+PM.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2394990579473134159.post-7105146134775538208</guid><pubDate>Sat, 10 Oct 2015 02:04:00 +0000</pubDate><atom:updated>2017-05-05T11:57:50.263-07:00</atom:updated><title>Run Inkscape On El Capitan, Yosemite and Sierra</title><description>&lt;span style=&quot;background-color: white; line-height: 26px;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;After upgrade Mac to OS 10.11 El Capitan, Inkscape wont open. Same thing happened before when upgraded to 10.10 Yosemite. The solution was simple:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: white; line-height: 26px;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;background-color: white; line-height: 26px;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;1. &lt;b&gt;Install&lt;/b&gt; XQuartz and Inkscape from their official sites.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: white; line-height: 26px;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;Here are my copies&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: white; line-height: 26px;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;a href=&quot;https://dl.dropboxusercontent.com/u/6338199/Inkscape/Inkscape-0.91-1-x11-10.7-x86_64.dmg&quot;&gt;Inkscape 0.91&lt;/a&gt;&amp;nbsp;(md5:&amp;nbsp;&lt;/span&gt;&lt;/span&gt;90da81460ce99470ccb875310cd4c388)&lt;br /&gt;
&lt;span style=&quot;background-color: white; line-height: 26px;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;a href=&quot;https://dl.dropboxusercontent.com/u/6338199/Inkscape/XQuartz-2.7.8.dmg&quot;&gt;XQuartz 2.7.8&lt;/a&gt;&amp;nbsp;(md5:&amp;nbsp;&lt;/span&gt;&lt;/span&gt;e3067841d38ba36cc10e6d1542ce2101)&lt;br /&gt;
&lt;span style=&quot;background-color: white; line-height: 26px;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;background-color: white; line-height: 26px;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;2. Run &lt;b&gt;XQuartz&lt;/b&gt;&amp;nbsp;from Launchpad (in &lt;b&gt;Other&lt;/b&gt; group),&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: white; line-height: 26px;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjo50oPv62iifXkMT1Ot5MUAlQkXoph4ajoc1N2D0aTcZFqgXHO_sKoq4b2dmxdGU5R11HAaCkd5Nb4HtLjGpI18fi9iC8bCSURJNTXJ1ijoTQD60JShwT3Qwy6VdCfQXNB8vnw18BLk1c/s1600/Screen+Shot+2016-01-07+at+7.19.36+AM.png&quot; imageanchor=&quot;1&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;186&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjo50oPv62iifXkMT1Ot5MUAlQkXoph4ajoc1N2D0aTcZFqgXHO_sKoq4b2dmxdGU5R11HAaCkd5Nb4HtLjGpI18fi9iC8bCSURJNTXJ1ijoTQD60JShwT3Qwy6VdCfQXNB8vnw18BLk1c/s320/Screen+Shot+2016-01-07+at+7.19.36+AM.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: white; line-height: 26px;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;background-color: white; line-height: 26px;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;3. In &lt;b&gt;xterm&lt;/b&gt; (not Terminal) type in this&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;background-color: white; line-height: 26px;&quot;&gt;command&lt;/span&gt;&lt;span style=&quot;background-color: white; font-family: inherit; line-height: 26px;&quot;&gt;:&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #f3f3f3; color: #303030; line-height: 26px;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div style=&quot;background-color: white; color: #303030; font-family: &#39;Helvetica Neue&#39;, Verdana, Helvetica, Tahoma, Arial, sans-serif; font-size: 14.72px; line-height: 26px; margin-bottom: 15px; padding: 0px;&quot;&gt;
&lt;code style=&quot;background-color: #f3f3f3; border: 1px solid rgb(221, 221, 221); display: block; font-size: 1.2em; margin: 0px; overflow: auto; padding: 3px;&quot;&gt;&amp;nbsp;&lt;b&gt;open -a Inkscape&lt;/b&gt;&lt;/code&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOji-__5zIccQwDoK5nhAi3ylpM4j1teCkO0M1W6a5pzx8gkvK9ynGhrviHDvNRBUPeih5GVmvouT8JHjJuy7YfWgqDafNLe6izBj0gA6SccI4crvlcHZ14wl-lX5HwKTjy1hKuvqnUvM/s1600/Screen+Shot+2016-01-07+at+7.18.04+AM.png&quot; imageanchor=&quot;1&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOji-__5zIccQwDoK5nhAi3ylpM4j1teCkO0M1W6a5pzx8gkvK9ynGhrviHDvNRBUPeih5GVmvouT8JHjJuy7YfWgqDafNLe6izBj0gA6SccI4crvlcHZ14wl-lX5HwKTjy1hKuvqnUvM/s1600/Screen+Shot+2016-01-07+at+7.18.04+AM.png&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
4. Inkscape will start in 5 minutes or so. It will run from Launchpad as normal next time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi6wp7cm2Xfpv0gabtGOXQBzkb3_jmtF6sHyjj-IrBqFNdKkGgvdp__erWbekbd3WF8LsMX522kn40Of4ySWNX-g9FdfQV-ExZSy7tSAyagInLUMO2re0iBmPSjwngH2ZO1hGDiXZ1cYpE/s1600/download.jpeg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi6wp7cm2Xfpv0gabtGOXQBzkb3_jmtF6sHyjj-IrBqFNdKkGgvdp__erWbekbd3WF8LsMX522kn40Of4ySWNX-g9FdfQV-ExZSy7tSAyagInLUMO2re0iBmPSjwngH2ZO1hGDiXZ1cYpE/s1600/download.jpeg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
</description><link>http://2x4x8.blogspot.com/2015/10/run-inkscape-in-el-capitan-or-yosemite.html</link><author>noreply@blogger.com ( )</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjo50oPv62iifXkMT1Ot5MUAlQkXoph4ajoc1N2D0aTcZFqgXHO_sKoq4b2dmxdGU5R11HAaCkd5Nb4HtLjGpI18fi9iC8bCSURJNTXJ1ijoTQD60JShwT3Qwy6VdCfQXNB8vnw18BLk1c/s72-c/Screen+Shot+2016-01-07+at+7.19.36+AM.png" height="72" width="72"/><thr:total>21</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2394990579473134159.post-3169836675740296018</guid><pubDate>Wed, 07 Oct 2015 06:09:00 +0000</pubDate><atom:updated>2015-10-06T23:35:14.736-07:00</atom:updated><title>8-Year Old&#39;s Drawing</title><description>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEirMqodEKALL4MaUCPUiSSPktjV8ovuzRCC7vEkOtpU2Wrf2_LqEjeF9OQ0iJ__s77dZmOfMn04y5rdlReZY19tefg9HdzmkfaMcorqy8zTiEdF7u0_f9GJzowLpoyG69yXPbn7ZN2C7r8/s1600/Who+draw+this.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;451&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEirMqodEKALL4MaUCPUiSSPktjV8ovuzRCC7vEkOtpU2Wrf2_LqEjeF9OQ0iJ__s77dZmOfMn04y5rdlReZY19tefg9HdzmkfaMcorqy8zTiEdF7u0_f9GJzowLpoyG69yXPbn7ZN2C7r8/s640/Who+draw+this.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
In Greater Vancouver, especially in recent years, sometimes we get rainy days in Christmas time. The good thing is the rain does not last long. The ground dries very fast after rain stops. Very fortunate, children have peaceful memory, wouldn&#39;t ask for more,&amp;nbsp;&lt;/div&gt;
&lt;br /&gt;</description><link>http://2x4x8.blogspot.com/2015/10/8-year-olds-drawing.html</link><author>noreply@blogger.com ( )</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEirMqodEKALL4MaUCPUiSSPktjV8ovuzRCC7vEkOtpU2Wrf2_LqEjeF9OQ0iJ__s77dZmOfMn04y5rdlReZY19tefg9HdzmkfaMcorqy8zTiEdF7u0_f9GJzowLpoyG69yXPbn7ZN2C7r8/s72-c/Who+draw+this.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-2394990579473134159.post-3877696461051536219</guid><pubDate>Sun, 12 Jul 2015 18:55:00 +0000</pubDate><atom:updated>2015-07-12T12:01:18.461-07:00</atom:updated><title>808 #16 HD Camera</title><description>For $39 (shipping included), this fun micro camera weights only 17g, is just beautiful. Why stick a &quot;polaroid&quot; camera on helmet?&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiMkYCmcImyLA9OgcNl6icCmDhq7udiJKM018OHpofCTCqTXsIskL58tEFHUbeWdXZJSq-dmZTnrRftzBycR5vKCe8Im2_wbZdrpuje5Jx1IdP85Vzgy4pAW-OL3NqOrx6bfjT1770zc34/s1600/Screen+Shot+2015-07-12+at+11.58.50+AM.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;238&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiMkYCmcImyLA9OgcNl6icCmDhq7udiJKM018OHpofCTCqTXsIskL58tEFHUbeWdXZJSq-dmZTnrRftzBycR5vKCe8Im2_wbZdrpuje5Jx1IdP85Vzgy4pAW-OL3NqOrx6bfjT1770zc34/s320/Screen+Shot+2015-07-12+at+11.58.50+AM.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;h4&gt;
What is 808 #16 HD Camera?&lt;/h4&gt;
Google 808 #16&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
How to use 808 #16?&lt;/h4&gt;
Google how to use 808 #16&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
Can I use 64GB SDXC with 808 #16?&lt;/h4&gt;
Yes.&lt;br /&gt;
&lt;br /&gt;
1. Insert a 64GB SDXC into 808 #16&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&amp;nbsp;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsqj7C1_3COeFjKndeszp5_agg5w5p7hJZIbIw3iKjgsIV9DWHjZy81hTVtD3-1441l45CQzun9rKlVXvrFotlSQNNjzBIR2YaSjD6HKGrj4jHmPUzC_6Tk8oiOX4WwKf5fkasYOOpw1Q/s1600/31xWl1lDYaL._SX425_.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em; text-align: center;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;242&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsqj7C1_3COeFjKndeszp5_agg5w5p7hJZIbIw3iKjgsIV9DWHjZy81hTVtD3-1441l45CQzun9rKlVXvrFotlSQNNjzBIR2YaSjD6HKGrj4jHmPUzC_6Tk8oiOX4WwKf5fkasYOOpw1Q/s320/31xWl1lDYaL._SX425_.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
2. Connect 808 #16 to USB port directly&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4ExlTm1bxpQ9xFAkXYJfE4lCAYBzkBZ_yLVcP0RzWAsg6BkRdGIRHK8CirPGkPERr702QnXDF8ikxuJrbUrYsIQcUaWft9aSMiO45GmSBW2M6otNuQbtZgvtsrZchxSpaA3_zYquJEew/s1600/IMG_0085.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4ExlTm1bxpQ9xFAkXYJfE4lCAYBzkBZ_yLVcP0RzWAsg6BkRdGIRHK8CirPGkPERr702QnXDF8ikxuJrbUrYsIQcUaWft9aSMiO45GmSBW2M6otNuQbtZgvtsrZchxSpaA3_zYquJEew/s320/IMG_0085.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3. Erase using MS-DOS (FAT) format on Disk Utility&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjavjXhHIwV3Yr94rQ1Pn9cpYfyq3RCQrRfWiSig9oEYj0M98p2To3G1-RfIaqv0u4PrQif_AbA9bKjb_IdoehW__bxmZynZR67-DPCNrWpRuIMv73LxlvShHHzqzTrghHGHWgspbwJH_I/s1600/Screen+Shot+2015-07-12+at+11.38.17+AM.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;236&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjavjXhHIwV3Yr94rQ1Pn9cpYfyq3RCQrRfWiSig9oEYj0M98p2To3G1-RfIaqv0u4PrQif_AbA9bKjb_IdoehW__bxmZynZR67-DPCNrWpRuIMv73LxlvShHHzqzTrghHGHWgspbwJH_I/s320/Screen+Shot+2015-07-12+at+11.38.17+AM.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
Enjoy!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;</description><link>http://2x4x8.blogspot.com/2015/07/808-16-hd-camera.html</link><author>noreply@blogger.com ( )</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiMkYCmcImyLA9OgcNl6icCmDhq7udiJKM018OHpofCTCqTXsIskL58tEFHUbeWdXZJSq-dmZTnrRftzBycR5vKCe8Im2_wbZdrpuje5Jx1IdP85Vzgy4pAW-OL3NqOrx6bfjT1770zc34/s72-c/Screen+Shot+2015-07-12+at+11.58.50+AM.png" height="72" width="72"/><thr:total>0</thr:total></item></channel></rss>