INSERT INTO `g5_write_tech` VALUES (634,-631,'',634,0,0,'','','html1','[Arduino] MOSFET LED 스트립 스위칭 - 3.3V 제어 신호 사용','<div class=\"page-header\" style=\"padding-bottom: 17px; margin: 17px 0px 18px; border-bottom: 1px solid rgb(238, 238, 238); color: #333333; font-size: 13px; background-color: #ffffff;\">\r\n   <h1 itemprop=\"name\" class=\"fs-headline1 ow-break-word mb8 flex--item fl1\" style=\"-webkit-text-stroke-width: 0.6px; margin-top: 0px; margin-right: 0px; margin-bottom: var(--su8) !important; margin-left: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: 1.3; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-size: var(--fs-headline1) !important; vertical-align: baseline; box-sizing: inherit; flex: 1 1 auto !important; overflow-wrap: break-word !important; --theme-base-primary-color-h: 5.61403509; --theme-base-primary-color-s: 78.08219178%; --theme-base-primary-color-l: 57.05882353%; --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-button-color: var(--theme-primary); --theme-button-hover-color: var(--theme-primary-400); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-selected-color: var(--theme-primary-600); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-color: var(--white); --theme-button-primary-active-color: var(--white); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-background-color: #fcfcfc; --theme-background-position: 50px 0; --theme-background-repeat: repeat; --theme-background-size: 71px 71px; --theme-background-attachment: auto; --theme-content-background-color: var(--white); --theme-content-border-color: hsl(210,8%,90%); --theme-header-background-color: transparent; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-background-border-bottom: 0; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-footer-background-color: transparent; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-background-border-top: 0; --theme-footer-title-color: var(--theme-primary); --theme-footer-text-color: var(--black-400); --theme-footer-link-color: var(--black-500); --theme-footer-link-color-hover: var(--black-600); --theme-footer-divider-color: var(--black-225); --theme-footer-padding-top: 0; --theme-footer-padding-bottom: 0; --theme-link-color: hsl(210,77%,36%); --theme-link-color-hover: hsl(210,77%,46%); --theme-link-color-visited: hsl(210,77%,16%); --theme-tag-background-color: hsl(0,0%,100%); --theme-tag-border-color: #aaa; --theme-tag-color: #696969; --theme-tag-hover-background-color: hsl(0,0%,95%); --theme-tag-hover-border-color: #9d9d9d; --theme-tag-hover-color: #5c5c5c; --theme-tag-required-border-color: #696969; --theme-tag-required-hover-border-color: #5c5c5c; --theme-body-font-family: var(--ff-sans); --theme-body-font-color: var(--black-600); --theme-post-title-font-family: var(--ff-sans); --theme-post-title-color: var(--theme-link-color); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: hsla(210,77%,21%,0.08); --theme-post-owner-new-background-color: hsla(210,77%,16%,0.08); --theme-topbar-bottom-border: none;\"><a href=\"https://electronics.stackexchange.com/questions/50627/transistor-mosfet-for-pwm-dimming-of-30w-rgb-led\" class=\"question-hyperlink\" style=\"-webkit-text-stroke-width: 0.6px; margin: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: normal; font-stretch: inherit; line-height: 1.35; font-family: var(--theme-post-title-font-family, var(--theme-body-font-family)); font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-size: var(--fs-headline1); vertical-align: baseline; --_li-fc: var(--theme-link-color, var(--theme-secondary-400)); --_li-fc-hover: var(--theme-link-color-hover, var(--theme-secondary-500)); --_li-fc-visited: var(--theme-link-color-visited, var(--theme-secondary-600)); color: var(--black-500); cursor: pointer; text-decoration: none; user-select: auto; box-sizing: inherit; --theme-base-primary-color-h: 5.61403509; --theme-base-primary-color-s: 78.08219178%; --theme-base-primary-color-l: 57.05882353%; --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-button-color: var(--theme-primary); --theme-button-hover-color: var(--theme-primary-400); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-selected-color: var(--theme-primary-600); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-color: var(--white); --theme-button-primary-active-color: var(--white); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-background-color: #fcfcfc; --theme-background-position: 50px 0; --theme-background-repeat: repeat; --theme-background-size: 71px 71px; --theme-background-attachment: auto; --theme-content-background-color: var(--white); --theme-content-border-color: hsl(210,8%,90%); --theme-header-background-color: transparent; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-background-border-bottom: 0; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-footer-background-color: transparent; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-background-border-top: 0; --theme-footer-title-color: var(--theme-primary); --theme-footer-text-color: var(--black-400); --theme-footer-link-color: var(--black-500); --theme-footer-link-color-hover: var(--black-600); --theme-footer-divider-color: var(--black-225); --theme-footer-padding-top: 0; --theme-footer-padding-bottom: 0; --theme-link-color: hsl(210,77%,36%); --theme-link-color-hover: hsl(210,77%,46%); --theme-link-color-visited: hsl(210,77%,16%); --theme-tag-background-color: hsl(0,0%,100%); --theme-tag-border-color: #aaa; --theme-tag-color: #696969; --theme-tag-hover-background-color: hsl(0,0%,95%); --theme-tag-hover-border-color: #9d9d9d; --theme-tag-hover-color: #5c5c5c; --theme-tag-required-border-color: #696969; --theme-tag-required-hover-border-color: #5c5c5c; --theme-body-font-family: var(--ff-sans); --theme-body-font-color: var(--black-600); --theme-post-title-font-family: var(--ff-sans); --theme-post-title-color: var(--theme-link-color); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: hsla(210,77%,21%,0.08); --theme-post-owner-new-background-color: hsla(210,77%,16%,0.08); --theme-topbar-bottom-border: none;\" target=\"_blank\">Transistor / mosfet for PWM dimming of 30W RGB LED</a></h1>\r\n   <h1 style=\"margin: 0px; text-rendering: optimizelegibility; font-size: 30px; line-height: 1;\">\r\n      <div id=\"question-header\" class=\"d-flex sm:fd-column\" style=\"margin: 0px; padding: 0px; border: 0px; font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-weight: 400; font-stretch: inherit; line-height: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-size: 13px; vertical-align: baseline; box-sizing: inherit; display: flex; --theme-base-primary-color-h: 5.61403509; --theme-base-primary-color-s: 78.08219178%; --theme-base-primary-color-l: 57.05882353%; --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-button-color: var(--theme-primary); --theme-button-hover-color: var(--theme-primary-400); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-selected-color: var(--theme-primary-600); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-color: var(--white); --theme-button-primary-active-color: var(--white); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-background-color: #fcfcfc; --theme-background-position: 50px 0; --theme-background-repeat: repeat; --theme-background-size: 71px 71px; --theme-background-attachment: auto; --theme-content-background-color: var(--white); --theme-content-border-color: hsl(210,8%,90%); --theme-header-background-color: transparent; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-background-border-bottom: 0; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-footer-background-color: transparent; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-background-border-top: 0; --theme-footer-title-color: var(--theme-primary); --theme-footer-text-color: var(--black-400); --theme-footer-link-color: var(--black-500); --theme-footer-link-color-hover: var(--black-600); --theme-footer-divider-color: var(--black-225); --theme-footer-padding-top: 0; --theme-footer-padding-bottom: 0; --theme-link-color: hsl(210,77%,36%); --theme-link-color-hover: hsl(210,77%,46%); --theme-link-color-visited: hsl(210,77%,16%); --theme-tag-background-color: hsl(0,0%,100%); --theme-tag-border-color: #aaa; --theme-tag-color: #696969; --theme-tag-hover-background-color: hsl(0,0%,95%); --theme-tag-hover-border-color: #9d9d9d; --theme-tag-hover-color: #5c5c5c; --theme-tag-required-border-color: #696969; --theme-tag-required-hover-border-color: #5c5c5c; --theme-body-font-family: var(--ff-sans); --theme-body-font-color: var(--black-600); --theme-post-title-font-family: var(--ff-sans); --theme-post-title-color: var(--theme-link-color); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: hsla(210,77%,21%,0.08); --theme-post-owner-new-background-color: hsla(210,77%,16%,0.08); --theme-topbar-bottom-border: none; flex-flow: row; justify-content: space-between; color: #0c0d0e;\">\r\n         <div class=\"ml12 aside-cta flex--item sm:ml0 sm:mb12 sm:order-first d-flex jc-end\" style=\"margin-top: 0px; margin-right: 0px; margin-bottom: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; vertical-align: baseline; box-sizing: inherit; --theme-base-primary-color-h: 5.61403509; --theme-base-primary-color-s: 78.08219178%; --theme-base-primary-color-l: 57.05882353%; --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-button-color: var(--theme-primary); --theme-button-hover-color: var(--theme-primary-400); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-selected-color: var(--theme-primary-600); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-color: var(--white); --theme-button-primary-active-color: var(--white); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-background-color: #fcfcfc; --theme-background-position: 50px 0; --theme-background-repeat: repeat; --theme-background-size: 71px 71px; --theme-background-attachment: auto; --theme-content-background-color: var(--white); --theme-content-border-color: hsl(210,8%,90%); --theme-header-background-color: transparent; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-background-border-bottom: 0; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-footer-background-color: transparent; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-background-border-top: 0; --theme-footer-title-color: var(--theme-primary); --theme-footer-text-color: var(--black-400); --theme-footer-link-color: var(--black-500); --theme-footer-link-color-hover: var(--black-600); --theme-footer-divider-color: var(--black-225); --theme-footer-padding-top: 0; --theme-footer-padding-bottom: 0; --theme-link-color: hsl(210,77%,36%); --theme-link-color-hover: hsl(210,77%,46%); --theme-link-color-visited: hsl(210,77%,16%); --theme-tag-background-color: hsl(0,0%,100%); --theme-tag-border-color: #aaa; --theme-tag-color: #696969; --theme-tag-hover-background-color: hsl(0,0%,95%); --theme-tag-hover-border-color: #9d9d9d; --theme-tag-hover-color: #5c5c5c; --theme-tag-required-border-color: #696969; --theme-tag-required-hover-border-color: #5c5c5c; --theme-body-font-family: var(--ff-sans); --theme-body-font-color: var(--black-600); --theme-post-title-font-family: var(--ff-sans); --theme-post-title-color: var(--theme-link-color); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: hsla(210,77%,21%,0.08); --theme-post-owner-new-background-color: hsla(210,77%,16%,0.08); --theme-topbar-bottom-border: none; margin-left: var(--su12) !important; justify-content: flex-end !important; display: flex !important;\">\r\n            <div class=\"ml12 aside-cta flex--item print:d-none\" style=\"margin-top: 0px; margin-right: 0px; margin-bottom: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; vertical-align: baseline; box-sizing: inherit; --theme-base-primary-color-h: 5.61403509; --theme-base-primary-color-s: 78.08219178%; --theme-base-primary-color-l: 57.05882353%; --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-button-color: var(--theme-primary); --theme-button-hover-color: var(--theme-primary-400); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-selected-color: var(--theme-primary-600); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-color: var(--white); --theme-button-primary-active-color: var(--white); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-background-color: #fcfcfc; --theme-background-position: 50px 0; --theme-background-repeat: repeat; --theme-background-size: 71px 71px; --theme-background-attachment: auto; --theme-content-background-color: var(--white); --theme-content-border-color: hsl(210,8%,90%); --theme-header-background-color: transparent; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-background-border-bottom: 0; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-footer-background-color: transparent; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-background-border-top: 0; --theme-footer-title-color: var(--theme-primary); --theme-footer-text-color: var(--black-400); --theme-footer-link-color: var(--black-500); --theme-footer-link-color-hover: var(--black-600); --theme-footer-divider-color: var(--black-225); --theme-footer-padding-top: 0; --theme-footer-padding-bottom: 0; --theme-link-color: hsl(210,77%,36%); --theme-link-color-hover: hsl(210,77%,46%); --theme-link-color-visited: hsl(210,77%,16%); --theme-tag-background-color: hsl(0,0%,100%); --theme-tag-border-color: #aaa; --theme-tag-color: #696969; --theme-tag-hover-background-color: hsl(0,0%,95%); --theme-tag-hover-border-color: #9d9d9d; --theme-tag-hover-color: #5c5c5c; --theme-tag-required-border-color: #696969; --theme-tag-required-hover-border-color: #5c5c5c; --theme-body-font-family: var(--ff-sans); --theme-body-font-color: var(--black-600); --theme-post-title-font-family: var(--ff-sans); --theme-post-title-color: var(--theme-link-color); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: hsla(210,77%,21%,0.08); --theme-post-owner-new-background-color: hsla(210,77%,16%,0.08); --theme-topbar-bottom-border: none; margin-left: var(--su12) !important;\"><a href=\"https://electronics.stackexchange.com/questions/ask\" class=\"ws-nowrap s-btn s-btn__filled\" style=\"margin: 0px; padding: var(--_bu-py, var(--_bu-p)) var(--_bu-px, var(--_bu-p)); border-color: var(--_bu-filled-bc); font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: var(--lh-sm); font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-size: var(--_bu-fs); vertical-align: baseline; --_li-fc: var(--theme-link-color, var(--theme-secondary-400)); --_li-fc-hover: var(--theme-link-color-hover, var(--theme-secondary-500)); --_li-fc-visited: var(--theme-link-color-visited, var(--theme-secondary-600)); cursor: pointer; text-decoration-line: none; user-select: none; box-sizing: inherit; --_bu-baw: var(--su-static1); --_bu-bc: transparent; --_bu-br: var(--br-md); --_bu-fc: var(--theme-button-color, var(--theme-secondary-400)); --_bu-fs: var(--fs-body1); --_bu-p: .8em; --_bu-bc-active: var(--_bu-bc); --_bu-bg-active: var(--theme-button-active-background-color, var(--theme-secondary-300)); --_bu-fc-active: var(--theme-button-hover-color, var(--theme-secondary-500)); --_bu-bc-hover: var(--_bu-bc); --_bu-bg-hover: var(--theme-button-hover-background-color, var(--theme-secondary-200)); --_bu-fc-hover: var(--theme-button-hover-color, var(--theme-secondary-500)); --_bu-bg-selected: var(--theme-button-selected-background-color, var(--theme-secondary-300)); --_bu-fc-selected: var(--theme-button-selected-color, var(--theme-secondary-600)); --_bu-filled-bc: transparent; --_bu-filled-bg: var(--theme-button-primary-background-color, var(--theme-secondary-400)); --_bu-filled-fc: var(--theme-button-primary-color, var(--white)); --_bu-filled-bc-selected: transparent; --_bu-filled-bg-selected: var(--theme-button-primary-selected-background-color, var(--theme-secondary-500)); --_bu-filled-fc-selected: var(--theme-button-primary-selected-color, var(--white)); --_bu-filled-bc-active: var(--_bu-filled-bc); --_bu-filled-bg-active: var(--theme-button-primary-active-background-color, var(--theme-secondary-600)); --_bu-filled-fc-active: var(--theme-button-primary-hover-color, var(--white)); --_bu-filled-bc-hover: var(--_bu-filled-bc); --_bu-filled-bg-hover: var(--theme-button-primary-hover-background-color, var(--theme-secondary-500)); --_bu-filled-fc-hover: var(--theme-button-primary-hover-color, var(--white)); --_bu-outlined-bc: var(--theme-button-outlined-border-color, var(--theme-secondary-400)); --_bu-outlined-bg: var(--theme-button-outlined-background-color); --_bg-outlined-fc: var(--theme-button-outlined-color, var(--theme-secondary-400)); --_bu-outlined-bc-selected: var(--theme-button-outlined-selected-border-color, var(--theme-secondary-400)); --_bu-outlined-bg-selected: var(--theme-button-selected-background-color, var(--theme-secondary-300)); --_bu-outlined-fc-selected: var(--theme-button-selected-color, var(--theme-secondary-600)); --_bu-badge-o: .5; --_bu-dropdown-bw: var(--su-static4); --_bu-number-fc: var(--white); --_bu-number-fc-filled: var(--theme-button-primary-number-color, var(--theme-secondary-600)); --_bu-number-fc-selected: var(--white); background-color: var(--_bu-filled-bg); border-radius: var(--_bu-br); box-shadow: none; display: inline-block; position: relative; outline: none; text-align: center; --theme-base-primary-color-h: 5.61403509; --theme-base-primary-color-s: 78.08219178%; --theme-base-primary-color-l: 57.05882353%; --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-button-color: var(--theme-primary); --theme-button-hover-color: var(--theme-primary-400); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-selected-color: var(--theme-primary-600); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-color: var(--white); --theme-button-primary-active-color: var(--white); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-background-color: #fcfcfc; --theme-background-position: 50px 0; --theme-background-repeat: repeat; --theme-background-size: 71px 71px; --theme-background-attachment: auto; --theme-content-background-color: var(--white); --theme-content-border-color: hsl(210,8%,90%); --theme-header-background-color: transparent; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-background-border-bottom: 0; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-footer-background-color: transparent; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-background-border-top: 0; --theme-footer-title-color: var(--theme-primary); --theme-footer-text-color: var(--black-400); --theme-footer-link-color: var(--black-500); --theme-footer-link-color-hover: var(--black-600); --theme-footer-divider-color: var(--black-225); --theme-footer-padding-top: 0; --theme-footer-padding-bottom: 0; --theme-link-color: hsl(210,77%,36%); --theme-link-color-hover: hsl(210,77%,46%); --theme-link-color-visited: hsl(210,77%,16%); --theme-tag-background-color: hsl(0,0%,100%); --theme-tag-border-color: #aaa; --theme-tag-color: #696969; --theme-tag-hover-background-color: hsl(0,0%,95%); --theme-tag-hover-border-color: #9d9d9d; --theme-tag-hover-color: #5c5c5c; --theme-tag-required-border-color: #696969; --theme-tag-required-hover-border-color: #5c5c5c; --theme-body-font-family: var(--ff-sans); --theme-body-font-color: var(--black-600); --theme-post-title-font-family: var(--ff-sans); --theme-post-title-color: var(--theme-link-color); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: hsla(210,77%,21%,0.08); --theme-post-owner-new-background-color: hsla(210,77%,16%,0.08); --theme-topbar-bottom-border: none; text-wrap: nowrap !important;\" target=\"_blank\">Ask Question</a></div>\r\n            </div>\r\n         </div>\r\n      <div class=\"d-flex fw-wrap pb8 mb16 bb bc-black-200\" style=\"margin-top: 0px; margin-right: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-left-width: 0px; border-top-style: initial; border-right-style: initial; border-left-style: initial; border-image: initial; font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-weight: 400; font-stretch: inherit; line-height: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-size: 13px; vertical-align: baseline; box-sizing: inherit; --theme-base-primary-color-h: 5.61403509; --theme-base-primary-color-s: 78.08219178%; --theme-base-primary-color-l: 57.05882353%; --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-button-color: var(--theme-primary); --theme-button-hover-color: var(--theme-primary-400); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-selected-color: var(--theme-primary-600); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-color: var(--white); --theme-button-primary-active-color: var(--white); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-background-color: #fcfcfc; --theme-background-position: 50px 0; --theme-background-repeat: repeat; --theme-background-size: 71px 71px; --theme-background-attachment: auto; --theme-content-background-color: var(--white); --theme-content-border-color: hsl(210,8%,90%); --theme-header-background-color: transparent; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-background-border-bottom: 0; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-footer-background-color: transparent; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-background-border-top: 0; --theme-footer-title-color: var(--theme-primary); --theme-footer-text-color: var(--black-400); --theme-footer-link-color: var(--black-500); --theme-footer-link-color-hover: var(--black-600); --theme-footer-divider-color: var(--black-225); --theme-footer-padding-top: 0; --theme-footer-padding-bottom: 0; --theme-link-color: hsl(210,77%,36%); --theme-link-color-hover: hsl(210,77%,46%); --theme-link-color-visited: hsl(210,77%,16%); --theme-tag-background-color: hsl(0,0%,100%); --theme-tag-border-color: #aaa; --theme-tag-color: #696969; --theme-tag-hover-background-color: hsl(0,0%,95%); --theme-tag-hover-border-color: #9d9d9d; --theme-tag-hover-color: #5c5c5c; --theme-tag-required-border-color: #696969; --theme-tag-required-hover-border-color: #5c5c5c; --theme-body-font-family: var(--ff-sans); --theme-body-font-color: var(--black-600); --theme-post-title-font-family: var(--ff-sans); --theme-post-title-color: var(--theme-link-color); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: hsla(210,77%,21%,0.08); --theme-post-owner-new-background-color: hsla(210,77%,16%,0.08); --theme-topbar-bottom-border: none; color: #0c0d0e; margin-bottom: var(--su16) !important; padding-bottom: var(--su8) !important; border-bottom-width: var(--su-static1) !important; border-bottom-style: solid !important; border-color: var(--black-200) !important; flex-wrap: wrap !important; display: flex !important;\">\r\n         <div class=\"flex--item ws-nowrap mr16 mb8\" title=\"2012-12-05 14:46:01Z\" style=\"margin-top: 0px; margin-left: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; vertical-align: baseline; box-sizing: inherit; --theme-base-primary-color-h: 5.61403509; --theme-base-primary-color-s: 78.08219178%; --theme-base-primary-color-l: 57.05882353%; --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-button-color: var(--theme-primary); --theme-button-hover-color: var(--theme-primary-400); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-selected-color: var(--theme-primary-600); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-color: var(--white); --theme-button-primary-active-color: var(--white); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-background-color: #fcfcfc; --theme-background-position: 50px 0; --theme-background-repeat: repeat; --theme-background-size: 71px 71px; --theme-background-attachment: auto; --theme-content-background-color: var(--white); --theme-content-border-color: hsl(210,8%,90%); --theme-header-background-color: transparent; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-background-border-bottom: 0; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-footer-background-color: transparent; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-background-border-top: 0; --theme-footer-title-color: var(--theme-primary); --theme-footer-text-color: var(--black-400); --theme-footer-link-color: var(--black-500); --theme-footer-link-color-hover: var(--black-600); --theme-footer-divider-color: var(--black-225); --theme-footer-padding-top: 0; --theme-footer-padding-bottom: 0; --theme-link-color: hsl(210,77%,36%); --theme-link-color-hover: hsl(210,77%,46%); --theme-link-color-visited: hsl(210,77%,16%); --theme-tag-background-color: hsl(0,0%,100%); --theme-tag-border-color: #aaa; --theme-tag-color: #696969; --theme-tag-hover-background-color: hsl(0,0%,95%); --theme-tag-hover-border-color: #9d9d9d; --theme-tag-hover-color: #5c5c5c; --theme-tag-required-border-color: #696969; --theme-tag-required-hover-border-color: #5c5c5c; --theme-body-font-family: var(--ff-sans); --theme-body-font-color: var(--black-600); --theme-post-title-font-family: var(--ff-sans); --theme-post-title-color: var(--theme-link-color); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: hsla(210,77%,21%,0.08); --theme-post-owner-new-background-color: hsla(210,77%,16%,0.08); --theme-topbar-bottom-border: none; margin-right: var(--su16) !important; margin-bottom: var(--su8) !important; text-wrap: nowrap !important;\"><span class=\"fc-black-400 mr2\" style=\"margin-top: 0px; margin-bottom: 0px; margin-left: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; vertical-align: baseline; box-sizing: inherit; --theme-base-primary-color-h: 5.61403509; --theme-base-primary-color-s: 78.08219178%; --theme-base-primary-color-l: 57.05882353%; --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-button-color: var(--theme-primary); --theme-button-hover-color: var(--theme-primary-400); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-selected-color: var(--theme-primary-600); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-color: var(--white); --theme-button-primary-active-color: var(--white); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-background-color: #fcfcfc; --theme-background-position: 50px 0; --theme-background-repeat: repeat; --theme-background-size: 71px 71px; --theme-background-attachment: auto; --theme-content-background-color: var(--white); --theme-content-border-color: hsl(210,8%,90%); --theme-header-background-color: transparent; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-background-border-bottom: 0; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-footer-background-color: transparent; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-background-border-top: 0; --theme-footer-title-color: var(--theme-primary); --theme-footer-text-color: var(--black-400); --theme-footer-link-color: var(--black-500); --theme-footer-link-color-hover: var(--black-600); --theme-footer-divider-color: var(--black-225); --theme-footer-padding-top: 0; --theme-footer-padding-bottom: 0; --theme-link-color: hsl(210,77%,36%); --theme-link-color-hover: hsl(210,77%,46%); --theme-link-color-visited: hsl(210,77%,16%); --theme-tag-background-color: hsl(0,0%,100%); --theme-tag-border-color: #aaa; --theme-tag-color: #696969; --theme-tag-hover-background-color: hsl(0,0%,95%); --theme-tag-hover-border-color: #9d9d9d; --theme-tag-hover-color: #5c5c5c; --theme-tag-required-border-color: #696969; --theme-tag-required-hover-border-color: #5c5c5c; --theme-body-font-family: var(--ff-sans); --theme-body-font-color: var(--black-600); --theme-post-title-font-family: var(--ff-sans); --theme-post-title-color: var(--theme-link-color); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: hsla(210,77%,21%,0.08); --theme-post-owner-new-background-color: hsla(210,77%,16%,0.08); --theme-topbar-bottom-border: none; margin-right: var(--su2) !important; color: var(--black-400) !important;\">Asked</span>&nbsp;<time itemprop=\"dateCreated\" datetime=\"2012-12-05T14:46:01\" style=\"margin: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; vertical-align: baseline; box-sizing: inherit; --theme-base-primary-color-h: 5.61403509; --theme-base-primary-color-s: 78.08219178%; --theme-base-primary-color-l: 57.05882353%; --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-button-color: var(--theme-primary); --theme-button-hover-color: var(--theme-primary-400); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-selected-color: var(--theme-primary-600); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-color: var(--white); --theme-button-primary-active-color: var(--white); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-background-color: #fcfcfc; --theme-background-position: 50px 0; --theme-background-repeat: repeat; --theme-background-size: 71px 71px; --theme-background-attachment: auto; --theme-content-background-color: var(--white); --theme-content-border-color: hsl(210,8%,90%); --theme-header-background-color: transparent; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-background-border-bottom: 0; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-footer-background-color: transparent; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-background-border-top: 0; --theme-footer-title-color: var(--theme-primary); --theme-footer-text-color: var(--black-400); --theme-footer-link-color: var(--black-500); --theme-footer-link-color-hover: var(--black-600); --theme-footer-divider-color: var(--black-225); --theme-footer-padding-top: 0; --theme-footer-padding-bottom: 0; --theme-link-color: hsl(210,77%,36%); --theme-link-color-hover: hsl(210,77%,46%); --theme-link-color-visited: hsl(210,77%,16%); --theme-tag-background-color: hsl(0,0%,100%); --theme-tag-border-color: #aaa; --theme-tag-color: #696969; --theme-tag-hover-background-color: hsl(0,0%,95%); --theme-tag-hover-border-color: #9d9d9d; --theme-tag-hover-color: #5c5c5c; --theme-tag-required-border-color: #696969; --theme-tag-required-hover-border-color: #5c5c5c; --theme-body-font-family: var(--ff-sans); --theme-body-font-color: var(--black-600); --theme-post-title-font-family: var(--ff-sans); --theme-post-title-color: var(--theme-link-color); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: hsla(210,77%,21%,0.08); --theme-post-owner-new-background-color: hsla(210,77%,16%,0.08); --theme-topbar-bottom-border: none;\">11 years, 6 months ago</time></div>\r\n         <div class=\"flex--item ws-nowrap mr16 mb8\" style=\"margin-top: 0px; margin-left: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; vertical-align: baseline; box-sizing: inherit; --theme-base-primary-color-h: 5.61403509; --theme-base-primary-color-s: 78.08219178%; --theme-base-primary-color-l: 57.05882353%; --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-button-color: var(--theme-primary); --theme-button-hover-color: var(--theme-primary-400); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-selected-color: var(--theme-primary-600); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-color: var(--white); --theme-button-primary-active-color: var(--white); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-background-color: #fcfcfc; --theme-background-position: 50px 0; --theme-background-repeat: repeat; --theme-background-size: 71px 71px; --theme-background-attachment: auto; --theme-content-background-color: var(--white); --theme-content-border-color: hsl(210,8%,90%); --theme-header-background-color: transparent; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-background-border-bottom: 0; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-footer-background-color: transparent; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-background-border-top: 0; --theme-footer-title-color: var(--theme-primary); --theme-footer-text-color: var(--black-400); --theme-footer-link-color: var(--black-500); --theme-footer-link-color-hover: var(--black-600); --theme-footer-divider-color: var(--black-225); --theme-footer-padding-top: 0; --theme-footer-padding-bottom: 0; --theme-link-color: hsl(210,77%,36%); --theme-link-color-hover: hsl(210,77%,46%); --theme-link-color-visited: hsl(210,77%,16%); --theme-tag-background-color: hsl(0,0%,100%); --theme-tag-border-color: #aaa; --theme-tag-color: #696969; --theme-tag-hover-background-color: hsl(0,0%,95%); --theme-tag-hover-border-color: #9d9d9d; --theme-tag-hover-color: #5c5c5c; --theme-tag-required-border-color: #696969; --theme-tag-required-hover-border-color: #5c5c5c; --theme-body-font-family: var(--ff-sans); --theme-body-font-color: var(--black-600); --theme-post-title-font-family: var(--ff-sans); --theme-post-title-color: var(--theme-link-color); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: hsla(210,77%,21%,0.08); --theme-post-owner-new-background-color: hsla(210,77%,16%,0.08); --theme-topbar-bottom-border: none; margin-right: var(--su16) !important; margin-bottom: var(--su8) !important; text-wrap: nowrap !important;\"><span class=\"fc-black-400 mr2\" style=\"margin-top: 0px; margin-bottom: 0px; margin-left: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; vertical-align: baseline; box-sizing: inherit; --theme-base-primary-color-h: 5.61403509; --theme-base-primary-color-s: 78.08219178%; --theme-base-primary-color-l: 57.05882353%; --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-button-color: var(--theme-primary); --theme-button-hover-color: var(--theme-primary-400); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-selected-color: var(--theme-primary-600); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-color: var(--white); --theme-button-primary-active-color: var(--white); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-background-color: #fcfcfc; --theme-background-position: 50px 0; --theme-background-repeat: repeat; --theme-background-size: 71px 71px; --theme-background-attachment: auto; --theme-content-background-color: var(--white); --theme-content-border-color: hsl(210,8%,90%); --theme-header-background-color: transparent; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-background-border-bottom: 0; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-footer-background-color: transparent; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-background-border-top: 0; --theme-footer-title-color: var(--theme-primary); --theme-footer-text-color: var(--black-400); --theme-footer-link-color: var(--black-500); --theme-footer-link-color-hover: var(--black-600); --theme-footer-divider-color: var(--black-225); --theme-footer-padding-top: 0; --theme-footer-padding-bottom: 0; --theme-link-color: hsl(210,77%,36%); --theme-link-color-hover: hsl(210,77%,46%); --theme-link-color-visited: hsl(210,77%,16%); --theme-tag-background-color: hsl(0,0%,100%); --theme-tag-border-color: #aaa; --theme-tag-color: #696969; --theme-tag-hover-background-color: hsl(0,0%,95%); --theme-tag-hover-border-color: #9d9d9d; --theme-tag-hover-color: #5c5c5c; --theme-tag-required-border-color: #696969; --theme-tag-required-hover-border-color: #5c5c5c; --theme-body-font-family: var(--ff-sans); --theme-body-font-color: var(--black-600); --theme-post-title-font-family: var(--ff-sans); --theme-post-title-color: var(--theme-link-color); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: hsla(210,77%,21%,0.08); --theme-post-owner-new-background-color: hsla(210,77%,16%,0.08); --theme-topbar-bottom-border: none; margin-right: var(--su2) !important; color: var(--black-400) !important;\">Modified</span>&nbsp;<a href=\"https://electronics.stackexchange.com/questions/50627/transistor-mosfet-for-pwm-dimming-of-30w-rgb-led?lastactivity\" class=\"s-link s-link__inherit\" title=\"2014-02-20 21:40:07Z\" style=\"margin: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit','https://electronics.stackexchange.com/questions/50627/transistor-mosfet-for-pwm-dimming-of-30w-rgb-led','',1,0,6,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-06-25 12:11:55',1,'2024-06-25 12:11:55','14.41.12.104','','','','','','','','','','','',''),(619,-616,'',619,0,0,'','','html1','[Arduino] ESP32로 배터리 전압 측정','<p>&nbsp;</p>\r\n<table id=\"printPost1\" class=\"post-body\" cellspacing=\"0\" cellpadding=\"0\" role=\"presentation\" style=\"margin: 0px; padding: 0px; font-family: Helvetica-Light, 나눔고딕, nanumgothic, AppleSDGothicNeo, &quot;malgun gothic&quot;, &quot;맑은 고딕&quot;, sans-serif; table-layout: fixed; width: 772.997px; color: #000000; font-size: medium; background-color: #ffffff;\">\r\n   <tbody>\r\n      <tr>\r\n         <td class=\"bcc\" style=\"margin: 0px; padding: 0px; background: transparent;\">\r\n            <table class=\"post-top\" style=\"margin: 0px; padding: 0px; width: 742.997px; table-layout: fixed;\">\r\n               <tbody>\r\n                  <tr>\r\n                     <td valign=\"bottom\" class=\"p12\" style=\"margin: 0px; padding: 0px;\">\r\n                        <div class=\"htitle\" id=\"title_1\" style=\"padding: 3px 0px 5px 3px; font-family: 돋움; clear: both; overflow: hidden; word-break: break-all; overflow-wrap: break-word; zoom: 1;\"><span class=\"pcol1 itemSubjectBoldfont\" style=\"color: #e19c72; font-size: 18px; display: inline; letter-spacing: -1px; font-weight: bold;\">[ESP32] ESP32로 배터리 전압 측정</span>&nbsp;<span class=\"cate pcol2\" style=\"color: #615652; display: inline; padding-left: 3px;\"><img src=\"https://blogimgs.pstatic.net/imgs/nblog/spc.gif\" alt=\"\" class=\"pcol2b fil3 egjs-visible\" width=\"1\" height=\"11\" style=\"border: 0px; opacity: 0.3; background: rgb(97, 86, 82); margin: 0px 5px -1px 0px;\" />&nbsp;<a href=\"https://blog.naver.com/PostList.naver?blogId=heennavi1004&amp;categoryNo=86&amp;from=postList\" class=\"pcol2\" style=\"text-decoration-line: none; color: #615652; cursor: pointer;\" target=\"_blank\">arduino</a>&nbsp;/&nbsp;<a href=\"https://blog.naver.com/PostList.naver?blogId=heennavi1004&amp;categoryNo=46&amp;parentCategoryNo=46&amp;from=postList\" class=\"pcol2\" style=\"text-decoration-line: none; color: #615652; cursor: pointer;\" target=\"_blank\">ESP32/ESP8266</a>&nbsp;<img src=\"https://blogimgs.pstatic.net/imgs/nblog/spc.gif\" alt=\"\" width=\"105\" height=\"1\" class=\"egjs-visible\" style=\"border: 0px;\" />&nbsp;&nbsp;</span></div>\r\n                        <p class=\"date fil5 pcol2 _postAddDate\" style=\"margin-top: -19px; padding: 0px 1px 0px 3px; opacity: 0.5; color: #615652; float: right; position: relative; font-family: dotum; font-size: 11px;\">2021. 6. 16. 0:33</p>\r\n                        <p class=\"fil3 dline\" style=\"padding: 0px; opacity: 0.3; border-top: 1px dotted rgb(225, 156, 114); height: 7px; overflow: hidden; font-size: 0px;\">&nbsp;</p>\r\n                        <p class=\"url\" id=\"url_heennavi1004_222399697927\" style=\"padding: 0px 0px 0px 3px; height: 18px; text-align: right; float: right;\"><img id=\"copyBtn_heennavi1004_222399697927\" src=\"https://blogimgs.pstatic.net/nblog/btn_urlcopy.gif\" width=\"21\" title=\"https://blog.naver.com/heennavi1004/222399697927\" height=\"13\" alt=\"복사\" class=\"btn_urlcopy _setClipboard egjs-visible\" style=\"border: 0px; float: right; font-family: dotum; font-size: 11px; margin-left: 4px;\" /><a href=\"https://blog.naver.com/heennavi1004/222399697927\" target=\"_top\" class=\"fil5 pcol2\" style=\"text-decoration-line: none; color: #615652; cursor: pointer; opacity: 0.5; float: right; font-family: dotum; font-size: 11px;\">https://blog.naver.com/heennavi1004/222399697927</a></p>\r\n                        <div class=\"clear blank5\" style=\"clear: both; height: 5px; overflow: hidden; font-size: 0px;\">&nbsp;</div>\r\n                        <p class=\"post_option\" style=\"padding: 0px; height: 18px; text-align: right;\">&nbsp;</p>\r\n                        </td>\r\n                     </tr>\r\n                  </tbody>\r\n               </table>\r\n            <div id=\"postViewArea\">\r\n               <div id=\"post-view222399697927\" class=\"post-view pcol2 _param(1) _postViewArea222399697927\" style=\"color: #615652; font-family: 돋움; font-size: 12px; overflow: auto hidden; width: 742.997px; position: relative; padding: 15px 0px; margin: 0px 0px 15px; clear: both; text-align: justify; line-height: 1.5; overflow-wrap: break-word;\">\r\n                  <p style=\"padding: 0px; line-height: 1.5;\">ESP32로 배터리 전압 측정</p>\r\n                  <p style=\"padding: 0px; line-height: 1.5;\"><br /></p>\r\n                  <p style=\"padding: 0px; line-height: 1.5;\">참고:&nbsp;<a href=\"https://blog.naver.com/twophase/220809096718\" target=\"_blank\" class=\"con_link\" style=\"text-decoration-line: none; cursor: pointer; overflow-wrap: break-word;\">https://blog.naver.com/twophase/220809096718</a></p>\r\n                  <p style=\"padding: 0px; line-height: 1.5;\"><br /></p>\r\n                  <p style=\"padding: 0px; line-height: 1.5;\"><img src=\"https://postfiles.pstatic.net/20160909_222/twophase_1473422240121QvlUU_JPEG/20160909_1.jpg?type=w2\" id=\"20160909_222/twophase_1473422240121QvlUU_JPEG/20160909_1.jpg\" alt=\"\" class=\"egjs-visible\" style=\"border: 0px; cursor: pointer;\" /></p>\r\n                  <p style=\"padding: 0px; line-height: 1.5;\"><br /></p>\r\n                  <p style=\"padding: 0px; line-height: 1.5;\"><br /></p>\r\n                  <p style=\"padding: 0px; line-height: 1.5;\"><br /></p>\r\n                  <p style=\"padding: 0px; line-height: 1.5;\"><br /></p>\r\n                  <div style=\"line-height: 19px; color: #d4d4d4; background-color: #1e1e1e; font-family: Consolas, &quot;Courier New&quot;, monospace; font-size: 14px; white-space: pre;\">\r\n                     <div style=\"line-height: 1.5;\"><span style=\"color: #6a9955;\">//&nbsp;전압&nbsp;측정</span></div>\r\n                     <div style=\"line-height: 1.5;\"><span style=\"color: #569cd6;\">const</span>&nbsp;<span style=\"color: #569cd6;\">float</span>&nbsp;loadR&nbsp;=&nbsp;<span style=\"color: #b5cea8;\">4.7</span>;<span style=\"color: #6a9955;\">&nbsp;&nbsp;//&nbsp;Load&nbsp;Resistor&nbsp;(Ohm)</span></div>\r\n                     <div style=\"line-height: 1.5;\"><span style=\"color: #569cd6;\">const</span>&nbsp;<span style=\"color: #569cd6;\">float</span>&nbsp;refV&nbsp;=&nbsp;<span style=\"color: #b5cea8;\">3.8</span>;<span style=\"color: #6a9955;\">&nbsp;&nbsp;&nbsp;//&nbsp;Reference&nbsp;(Rated)&nbsp;Voltage</span></div>\r\n                     <div style=\"line-height: 1.5;\"><span style=\"color: #569cd6;\">float</span>&nbsp;Wh&nbsp;=&nbsp;<span style=\"color: #b5cea8;\">0.0</span>;</div>\r\n                     <div style=\"line-height: 1.5;\"><span style=\"color: #569cd6;\">const</span>&nbsp;<span style=\"color: #569cd6;\">unsigned</span>&nbsp;<span style=\"color: #569cd6;\">long</span>&nbsp;interval&nbsp;=&nbsp;<span style=\"color: #b5cea8;\">3000</span>;<span style=\"color: #6a9955;\">&nbsp;&nbsp;//30000;&nbsp;&nbsp;&nbsp;//&nbsp;Recording&nbsp;interval&nbsp;(&gt;&nbsp;15000ms)</span></div>\r\n                     <div style=\"line-height: 1.5;\"><span style=\"color: #569cd6;\">unsigned</span>&nbsp;<span style=\"color: #569cd6;\">long</span>&nbsp;logTime&nbsp;=&nbsp;<span style=\"color: #b5cea8;\">0</span>;</div>\r\n                     </div>\r\n                  <p style=\"padding: 0px; line-height: 1.5;\"><br /></p>\r\n                  <p style=\"padding: 0px; line-height: 1.5;\"><br /></p>\r\n                  <div style=\"line-height: 19px; color: #d4d4d4; background-color: #1e1e1e; font-family: Consolas, &quot;Courier New&quot;, monospace; font-size: 14px; white-space: pre;\">\r\n                     <div style=\"line-height: 1.5;\"><span style=\"color: #569cd6;\">void</span>&nbsp;<span style=\"color: #dcdcaa;\">getBatteryStatus</span>()&nbsp;{<span style=\"color: #6a9955;\">&nbsp;//&nbsp;배터리&nbsp;상태&nbsp;가져오기</span></div>\r\n                     <div style=\"line-height: 1.5;\">&nbsp;<span style=\"color: #c586c0;\">if</span>(<span style=\"color: #dcdcaa;\">millis</span>()-logTime&nbsp;&gt;=&nbsp;interval)&nbsp;{</div>\r\n                     <div style=\"line-height: 1.5;\">&nbsp;&nbsp;&nbsp;&nbsp;logTime&nbsp;=&nbsp;<span style=\"color: #dcdcaa;\">millis</span>();</div>\r\n                     <div style=\"line-height: 1.5;\">&nbsp;&nbsp;&nbsp;&nbsp;<span style=\"color: #569cd6;\">float</span>&nbsp;volt&nbsp;=&nbsp;(<span style=\"color: #569cd6;\">float</span>)<span style=\"color: #dcdcaa;\">analogRead</span>(BAT_ADC)&nbsp;*&nbsp;<span style=\"color: #b5cea8;\">4.15</span>&nbsp;/&nbsp;<span style=\"color: #b5cea8;\">607.0</span>&nbsp;*&nbsp;<span style=\"color: #b5cea8;\">4.087</span>/<span style=\"color: #b5cea8;\">15.9</span>;<span style=\"color: #6a9955;\">&nbsp;//&nbsp;4.087V/15.9&nbsp;값</span></div>\r\n                     <div style=\"line-height: 1.5;\">&nbsp;&nbsp;&nbsp;&nbsp;<span style=\"color: #569cd6;\">float</span>&nbsp;ampere&nbsp;=&nbsp;volt&nbsp;/&nbsp;loadR;</div>\r\n                     <div style=\"line-height: 1.5;\">&nbsp;&nbsp;&nbsp;&nbsp;<span style=\"color: #569cd6;\">float</span>&nbsp;watt&nbsp;=&nbsp;volt&nbsp;*&nbsp;ampere;</div>\r\n                     <div style=\"line-height: 1.5;\">&nbsp;&nbsp;&nbsp;&nbsp;Wh&nbsp;+=&nbsp;watt&nbsp;*&nbsp;(<span style=\"color: #569cd6;\">float</span>)interval&nbsp;/&nbsp;<span style=\"color: #b5cea8;\">3600000.0</span>;</div>\r\n                     <div style=\"line-height: 1.5;\">&nbsp;&nbsp;&nbsp;&nbsp;<span style=\"color: #569cd6;\">float</span>&nbsp;mAh&nbsp;=&nbsp;Wh&nbsp;/&nbsp;refV&nbsp;*&nbsp;<span style=\"color: #b5cea8;\">1000.0</span>;</div>\r\n                     <div style=\"line-height: 1.5;\">&nbsp;&nbsp;</div>\r\n                     <div style=\"line-height: 1.5;\">&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;postStr&nbsp;=&nbsp;<span style=\"color: #ce9178;\">\"Bat.&nbsp;\"</span>;</div>\r\n                     <div style=\"line-height: 1.5;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;postStr&nbsp;+=<span style=\"color: #ce9178;\">\"Volt:&nbsp;\"</span>;</div>\r\n                     <div style=\"line-height: 1.5;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;postStr&nbsp;+=&nbsp;<span style=\"color: #dcdcaa;\">String</span>(volt,&nbsp;<span style=\"color: #b5cea8;\">3</span>);</div>\r\n                     <div style=\"line-height: 1.5;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;postStr&nbsp;+=<span style=\"color: #ce9178;\">\"</span><span style=\"color: #d7ba7d;\">\\t</span><span style=\"color: #ce9178;\">Amp:&nbsp;\"</span>;</div>\r\n                     <div style=\"line-height: 1.5;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;postStr&nbsp;+=&nbsp;<span style=\"color: #dcdcaa;\">String</span>(ampere,&nbsp;<span style=\"color: #b5cea8;\">3</span>);</div>\r\n                     <div style=\"line-height: 1.5;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;postStr&nbsp;+=<span style=\"color: #ce9178;\">\"</span><span style=\"color: #d7ba7d;\">\\t</span><span style=\"color: #ce9178;\">Watt:&nbsp;\"</span>;</div>\r\n                     <div style=\"line-height: 1.5;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;postStr&nbsp;+=&nbsp;<span style=\"color: #dcdcaa;\">String</span>(watt,&nbsp;<span style=\"color: #b5cea8;\">3</span>);</div>\r\n                     <div style=\"line-height: 1.5;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;postStr&nbsp;+=<span style=\"color: #ce9178;\">\"</span><span style=\"color: #d7ba7d;\">\\t</span><span style=\"color: #ce9178;\">mAh:&nbsp;\"</span>;</div>\r\n                     <div style=\"line-height: 1.5;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;postStr&nbsp;+=&nbsp;<span style=\"color: #dcdcaa;\">String</span>(mAh,&nbsp;<span style=\"color: #b5cea8;\">2</span>);</div>\r\n                     <div style=\"line-height: 1.5;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;postStr&nbsp;+=<span style=\"color: #ce9178;\">\"</span><span style=\"color: #d7ba7d;\">\\t</span><span style=\"color: #ce9178;\">Wh:&nbsp;\"</span>;</div>\r\n                     <div style=\"line-height: 1.5;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;postStr&nbsp;+=&nbsp;<span style=\"color: #dcdcaa;\">String</span>(Wh,&nbsp;<span style=\"color: #b5cea8;\">3</span>);</div>\r\n                     <div style=\"line-height: 1.5;\">&nbsp;&nbsp;&nbsp;&nbsp;<span style=\"color: #9cdcfe;\">Serial</span>.<span style=\"color: #dcdcaa;\">println</span>(postStr);</div>\r\n                     <div style=\"line-height: 1.5;\">&nbsp;}</div>\r\n                     <div style=\"line-height: 1.5;\">}</div>\r\n                     </div>\r\n                  <p style=\"padding: 0px; line-height: 1.5;\"><br /></p>\r\n                  <p style=\"padding: 0px; line-height: 1.5;\">결과</p>\r\n                  <p style=\"margin-left: 40px; padding: 0px; line-height: 1.5;\">Bat. Volt: 4.088<span style=\"white-space: pre;\"></span>Amp: 0.870<span style=\"white-space: pre;\"></span>Watt: 3.555<span style=\"white-space: pre;\"></span>mAh: 12.49<span style=\"white-space: pre;\"></span>Wh: 0.047</p>\r\n                  <p style=\"margin-left: 40px; padding: 0px; line-height: 1.5;\">Bat. Volt: 4.088<span style=\"white-space: pre;\"></span>Amp: 0.870<span style=\"white-space: pre;\"></span>Watt: 3.555<span style=\"white-space: pre;\"></span>mAh: 13.27<span style=\"white-space: pre;\"></span>Wh: 0.050</p>\r\n                  <p style=\"margin-left: 40px; padding: 0px; line-height: 1.5;\">Bat. Volt: 4.093<span style=\"white-space: pre;\"></span>Amp: 0.871<span style=\"white-space: pre;\"></span>Watt: 3.564<span style=\"white-space: pre;\"></span>mAh: 14.05<span style=\"white-space: pre;\"></span>Wh: 0.053</p>\r\n                  <p style=\"margin-left: 40px; padding: 0px; line-height: 1.5;\">Bat. Volt: 4.091<span style=\"white-space: pre;\"></span>Amp: 0.870<span style=\"white-space: pre;\"></span>Watt: 3.561<span style=\"white-space: pre;\"></span>mAh: 14.83<span style=\"white-space: pre;\"></span>Wh: 0.056</p>\r\n                  <p style=\"margin-left: 40px; padding: 0px; line-height: 1.5;\">Bat. Volt: 4.089<span style=\"white-space: pre;\"></span>Amp: 0.870<span style=\"white-space: pre;\"></span>Watt: 3.558<span style=\"white-space: pre;\"></span>mAh: 15.61<span style=\"white-space: pre;\"></span>Wh: 0.059</p>\r\n                  <p style=\"margin-left: 40px; padding: 0px; line-height: 1.5;\">Bat. Volt: 4.093<span style=\"white-space: pre;\"></span>Amp: 0.871<span style=\"white-space: pre;\"></span>Watt: 3.564<span style=\"white-space: pre;\"></span>mAh: 16.39<span style=\"white-space: pre;\"></span>Wh: 0.062</p>\r\n                  <div style=\"line-height: 1.5;\">실제 Li ion 18650 전압</div>\r\n                  <div style=\"line-height: 1.5; margin-left: 40px;\"><span id=\"docs-internal-guid-e4cf380b-7fff-78c8-7c49-b882e4da55a0\"><span style=\"font-size: 11pt; font-family: Arial; font-variant-numeric: normal; font-variant-east-asian: normal; vertical-align: baseline; white-space-collapse: preserve;\">&nbsp;4.088 ~ 4.089 V   OK\r\n                           <div class=\"autosourcing-stub-extra\" style=\"line-height: 1.5; zoom: 1; opacity: 1;\">\r\n                              <p style=\"margin-top: 11px; margin-bottom: 7px; padding: 0px; line-height: 1.5; font-size: 12px; font-family: Dotum;\"><strong style=\"padding: 0px 7px 0px 0px;\">[출처]</strong><a href=\"https://blog.naver.com/heennavi1004/222399697927\" target=\"_blank\" style=\"text-decoration-line: none; cursor: pointer;\">[ESP32] ESP32로 배터리 전압 측정</a><span style=\"padding: 0px 7px 0px 5px;\">|</span><strong style=\"padding: 0px 7px 0px 0px;\">작성자</strong><a href=\"https://blog.naver.com/heennavi1004\" target=\"_blank\" style=\"text-decoration-line: none; cursor: pointer;\">초초</a></p>\r\n                              </div>\r\n                           </span></span></div>\r\n                  </div>\r\n               </div>\r\n            </td>\r\n         </tr>\r\n      </tbody>\r\n   </table>','https://blog.naver.com/heennavi1004/222399697927','',1,0,2,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-03-11 20:55:35',1,'2024-03-11 20:55:35','192.168.219.103','','','','','','','','','','','',''),(620,-617,'',620,0,0,'','','html1','[ETC] 윈도우11 버전에 구글 플레이 스토어 설치','<p><iframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/B_QeyUXfsfA?si=RdfTOnnABoH_rIRk\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen=\"\"></iframe></p>','https://infohelpful.com/%EC%9C%88%EB%8F%84%EC%9A%B0%EC%97%90-%EA%B5%AC%EA%B8%80-%ED%94%8C%EB%A0%88%EC%9D%B4-%EC%8A%A4%ED%86%A0%EC%96%B4%EB%A5%BC-%EC%84%A4%EC%B9%98%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95/','https://www.mediafire.com/file/mux6yg4nj31oe19/WSA_2211.40000_x64-magisk-Android-13.zip/file',0,0,1,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-03-13 08:27:50',0,'2024-03-13 08:27:50','14.41.12.104','','','','','','','','','','','',''),(621,-618,'',621,0,0,'','','html1','[ETC] Aliexpress 구매 카메라 정보','<p>-기본설정 IP : 192.168.1.88&nbsp;</p>\r\n<p>-로그인 : admin / admin</p>\r\n<p>&nbsp;</p>\r\n<p style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; padding: 0px 0px 0px 0em; line-height: 18px; font-family: verdana, arial, helvetica, sans-serif;\"><span style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px; max-width: 100%; word-break: break-word; color: #f44e3b; font-size: 20px;\"><strong data-spm-anchor-id=\"a2g0o.detail.1000023.i9.578b8EFP8EFP3Q\" style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px;\">Specification</strong></span>:</p>\r\n<p data-spm-anchor-id=\"a2g0o.detail.1000023.i3.578b8EFP8EFP3Q\" style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; padding: 0px 0px 0px 0em; line-height: 18px; font-family: verdana, arial, helvetica, sans-serif;\">8MP(4K): Using Starlight Sony 4K IMX415 CMOS Sensor can output 3840*2160 Image</p>\r\n<p style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; padding: 0px 0px 0px 0em; line-height: 18px; font-family: verdana, arial, helvetica, sans-serif;\">5MP Starvis： Using starlight Sony IMX335 Sensor, output image 2560*1920</p>\r\n<div style=\"box-sizing: content-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px; font-family: verdana, arial, helvetica, sans-serif; line-height: 18px;\">*1080P :ingenic chip + SC2235 CMOS Sensor, max output 1920*1080 Image</div>\r\n<ul style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; list-style-position: initial; list-style-image: initial; padding: 0px; margin-block-start: 1em; color: #222222; font-size: 14px;\">\r\n   <li style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px;\">\r\n      <p style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; padding: 0px; line-height: inherit;\">5MP: Using 5MP CMOS Sensor, can output 2560*1920 image</p>\r\n      </li>\r\n   <li style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px;\">\r\n      <p style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; padding: 0px; line-height: inherit;\">4MP: 1/3\" 4MP CMOS Senso, can ouput 2560*1440 Image</p>\r\n      </li>\r\n   </ul>\r\n<div style=\"box-sizing: content-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px; font-family: verdana, arial, helvetica, sans-serif; line-height: 18px;\">* Day / Night mode support external triggering by CDS (or 3.5V ~ 5V voltage signal);</div>\r\n<div style=\"box-sizing: content-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px; font-family: verdana, arial, helvetica, sans-serif; line-height: 18px;\">*&nbsp;Support standard CS/M12 lens</div>\r\n<div style=\"box-sizing: content-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px; font-family: verdana, arial, helvetica, sans-serif; line-height: 18px;\">* Operation Temperature -20C ~ +50C;</div>\r\n<div style=\"box-sizing: content-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px; font-family: verdana, arial, helvetica, sans-serif; line-height: 18px;\">* PAL / NTSC selectable on OSD menu.</div>\r\n<ul style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; list-style-position: initial; list-style-image: initial; padding: 0px; margin-block-start: 1em; color: #222222; font-size: 14px;\">\r\n   <li style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px;\">\r\n      <div style=\"box-sizing: content-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px; font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px; color: #000000;\">Support TF Card Storage max 128GB</div>\r\n      </li>\r\n   <li style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px;\">\r\n      <div style=\"box-sizing: content-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px; font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px; color: #000000;\"><strong style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px;\"><span style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px; max-width: 100%; word-break: break-word; color: #ff006f;\">5MP/4MP support Supports both H.265&amp;H.264, 8MP supports H.265 only</span></strong></div>\r\n      </li>\r\n   <li style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px;\">\r\n      <div style=\"box-sizing: content-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px; font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px; color: #000000;\"><span style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px; max-width: 100%; word-break: break-word;\"><span style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px; max-width: 100%; word-break: break-word; color: #ff0000;\"><strong style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px;\">5MP/4MP/8MP Version Supports Human detection, Motion detection and Audio alarm, 1080P supports motion detection &nbsp;and motion tracking and audio alarm</strong></span></span></div>\r\n      </li>\r\n   <li style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px;\">\r\n      <div style=\"box-sizing: content-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px; font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px; color: #000000;\">5MP/4MP/8MP Version Can support human tracking after installed with pan and tilt house, 1080P supports motion tracking after installing pan&amp;tilt house</div>\r\n      </li>\r\n   </ul>\r\n<div data-spm-anchor-id=\"a2g0o.detail.1000023.i0.578b8EFP8EFP3Q\" style=\"box-sizing: content-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px; font-family: verdana, arial, helvetica, sans-serif; line-height: 18px;\">*Self AP: can connect the wifi emitted by the camera itself</div>\r\n<div data-spm-anchor-id=\"a2g0o.detail.1000023.i4.578b8EFP8EFP3Q\" style=\"box-sizing: content-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px; font-family: verdana, arial, helvetica, sans-serif; line-height: 18px;\">*Support onvif and RTSP</div>\r\n<div style=\"box-sizing: content-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px; font-family: verdana, arial, helvetica, sans-serif; line-height: 18px;\">&nbsp;</div>\r\n<p data-spm-anchor-id=\"a2g0o.detail.1000023.i5.578b8EFP8EFP3Q\" style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; padding: 0px 0px 0px 0em; line-height: 20px; color: #222222; font-family: arial, helvetica; font-size: 13.3333px; border: 0px;\">FAQ:</p>\r\n<p data-spm-anchor-id=\"a2g0o.detail.1000023.i1.578b8EFP8EFP3Q\" style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; padding: 0px 0px 0px 0em; line-height: 20px; color: #222222; font-family: arial, helvetica; font-size: 13.3333px; border: 0px;\"><span style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px; max-width: 100%; word-break: break-word; color: #00b0f0;\">Does the camera have AP wifi?</span></p>\r\n<p style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; padding: 0px 0px 0px 0em; line-height: 20px; color: #222222; font-family: arial, helvetica; font-size: 13.3333px; border: 0px;\"><span style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px; max-width: 100%; word-break: break-word; color: #ff0000;\">Yes, but need to choose the option (add wifi module)&nbsp;just plug the power, don\'t connect the RJ45 network cable and dont connect the camera to your wifi router, you will check a wifi with name start with IPCam, the password for the AP wifi is 01234567.</span></p>\r\n<p style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; padding: 0px 0px 0px 0em; line-height: 20px; color: #222222; font-family: arial, helvetica; font-size: 13.3333px; border: 0px;\"><span style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px; max-width: 100%; word-break: break-word; color: #00b0f0;\">What is the default username and password?</span></p>\r\n<p style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; padding: 0px 0px 0px 0em; line-height: 20px; color: #222222; font-family: arial, helvetica; font-size: 13.3333px; border: 0px;\"><span style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px; max-width: 100%; word-break: break-word; color: #ff0000;\">Username: admin &nbsp;pwd: admin</span></p>\r\n<p style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; padding: 0px 0px 0px 0em; line-height: 20px; color: #222222; font-family: arial, helvetica; font-size: 13.3333px; border: 0px;\"><span style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px; max-width: 100%; word-break: break-word; color: #00b0f0;\">What is the Phone APP?</span></p>\r\n<p style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; padding: 0px 0px 0px 0em; line-height: 20px; color: #222222; font-family: arial, helvetica; font-size: 13.3333px; border: 0px;\"><span style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px; max-width: 100%; word-break: break-word; color: #ff0000;\">It is camhipro or Camhi</span></p>\r\n<div style=\"box-sizing: content-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px; color: #222222; font-size: 14px;\"><br style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px;\" /></div>\r\n<div class=\"detailmodule_html\" style=\"box-sizing: content-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px; color: #222222; font-size: 14px;\">\r\n   <div class=\"detail-desc-decorate-richtext\" style=\"box-sizing: content-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px;\">\r\n      <p style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; padding: 0px 0px 0px 0em; line-height: 20px; font-family: arial, helvetica; font-size: 13.3333px; color: #000000; border: 0px;\"><span style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px; max-width: 100%; word-break: break-word; color: #00b0f0;\">What is free returning?</span></p>\r\n      <p data-spm-anchor-id=\"a2g0o.detail.1000023.i8.578b8EFP8EFP3Q\" style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; padding: 0px 0px 0px 0em; line-height: 20px; font-family: arial, helvetica; font-size: 13.3333px; color: #000000; border: 0px;\"><span style=\"box-sizing: border-box; -webkit-tap-highlight-color: transparent; outline: 0px; margin: 0px; padding: 0px; max-width: 100%; word-break: break-word; color: #ff0000;\">If the camera doesnt meet your expection or other reason you dont want it. you can ask free return with no reason,we will provide prepaid shipping lable and you dont need to pay shipping fee. this service supports most countries. if it has shown \"Free Return\", then your address will have the free return service</span></p>\r\n      </div>\r\n   </div>','https://www.aliexpress.com/item/1005002745478182.html?spm=a2g0o.order_list.order_list_main.115.9e741802ko3Igb','',3,0,16,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-03-13 12:20:30',0,'2024-03-13 12:20:30','14.41.12.104','','','','','','','','','','','',''),(622,-619,'',622,0,0,'','','html1','[ETC] 카메라 렌즈별 초점거리','<p><a href=\"https://www.aliexpress.com/item/1005005087175108.html?spm=a2g0o.detail.pcDetailTopMoreOtherSeller.9.578b8EFP8EFP3Q&amp;gps-id=pcDetailTopMoreOtherSeller&amp;scm=1007.40000.327270.0&amp;scm_id=1007.40000.327270.0&amp;scm-url=1007.40000.327270.0&amp;pvid=a6a62ee3-ed32-4635-b578-695ec9b8fdfb&amp;_t=gps-id:pcDetailTopMoreOtherSeller,scm-url:1007.40000.327270.0,pvid:a6a62ee3-ed32-4635-b578-695ec9b8fdfb,tpp_buckets:668%232846%238113%231998&amp;pdp_npi=4%40dis%21KRW%2147300%2133107%21%21%2135.06%2124.54%21%40213bce9317102961797784222ed0fa%2112000031593688907%21rec%21KR%21142421782%21&amp;utparam-url=scene%3ApcDetailTopMoreOtherSeller%7Cquery_from%3A\" target=\"_blank\">출처 :&nbsp;https://www.aliexpress.com/item/100500508...</a></p>','https://www.aliexpress.com/item/1005005087175108.html?spm=a2g0o.detail.pcDetailTopMoreOtherSeller.9.578b8EFP8EFP3Q&gps-id=pcDetailTopMoreOtherSeller&scm=1007.40000.327270.0&scm_id=1007.40000.327270.0&scm-url=1007.40000.327270.0&pvid=a6a62ee3-ed32-4635-b578-695ec9b8fdfb&_t=gps-id:pcDetailTopMoreOtherSeller,scm-url:1007.40000.327270.0,pvid:a6a62ee3-ed32-4635-b578-695ec9b8fdfb,tpp_buckets:668%232846%238113%231998&pdp_npi=4%40dis%21KRW%2147300%2133107%21%21%2135.06%2124.54%21%40213bce9317102961797784222ed0fa%2112000031593688907%21rec%21KR%21142421782%21&utparam-url=scene%3ApcDetailTopMoreOtherSeller%7Cquery_from%3A','',0,0,1,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-03-13 12:52:04',1,'2024-03-13 12:52:04','14.41.12.104','','','','','','','','','','','',''),(623,-620,'',623,0,0,'','','html1','[Arduino] WSL에서 USB장치 연결하기(usbipd-win) //에러발생시 해제방','<p>*아래와 같은 에러 발생시,</p>\r\n<p>C:\\Users\\bk940&gt;usbipd wsl attach -b 7-4 --auto-attach</p>\r\n<p>usbipd: error: WSL \'usbip\' client not correctly installed. See https://github.com/dorssel/usbipd-win/wiki/WSL-support for the latest instructions.</p>\r\n<p>&nbsp;</p>\r\n<p><span style=\"color: #ececec; font-size: 18px; letter-spacing: -0.072px; background-color: #121212;\">WSL2 게스트 리눅스에서 아래 명령어를 입력하여 linux-tools-generic과 hwdata를 설치해준다.</span></p>\r\n<p>&nbsp;</p>\r\n<pre class=\" language-bash\" style=\"box-sizing: inherit; font-family: &quot;Fira Mono&quot;, source-code-pro, Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; font-size: 0.875rem; padding: 1em; border-radius: 4px; line-height: 1.5; overflow: auto; letter-spacing: 0px; background-image: ; background-position-x: ; background-position-y: ; background-size: ; background-repeat: ; background-attachment: ; background-origin: ; background-clip: ; color: var(--prism-default-text); word-break: normal; overflow-wrap: normal; tab-size: 4; hyphens: none; margin-top: 0.5em; margin-bottom: 0.5em;\">\r\n   <code class=\" language-bash\" style=\"box-sizing: inherit; font-family: &quot;Fira Mono&quot;, source-code-pro, Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; color: var(--prism-default-text); background-image: none; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; word-spacing: normal; word-break: normal; overflow-wrap: normal; tab-size: 4; hyphens: none;\"><span class=\"token function\" style=\"box-sizing: inherit; color: var(--prism-code-8);\">sudo</span><span class=\"token function\" style=\"box-sizing: inherit; color: var(--prism-code-8);\">apt</span> update\r\n<span class=\"token function\" style=\"box-sizing: inherit; color: var(--prism-code-8);\">sudo</span><span class=\"token function\" style=\"box-sizing: inherit; color: var(--prism-code-8);\">apt</span><span class=\"token function\" style=\"box-sizing: inherit; color: var(--prism-code-8);\">install</span> -y linux-tools-5.4.0-77-generic hwdata\r\n<span class=\"token function\" style=\"box-sizing: inherit; color: var(--prism-code-8);\">sudo</span> update-alternatives --install /usr/local/bin/usbip usbip <span class=\"token variable\" style=\"box-sizing: inherit; color: var(--prism-code-9);\"><span class=\"token variable\" style=\"box-sizing: inherit; color: var(--prism-code-9);\">$(</span><span class=\"token function\" style=\"box-sizing: inherit; color: var(--prism-code-8);\">ls</span> /usr/lib/linux-tools/*/usbip<span class=\"token variable\" style=\"box-sizing: inherit; color: var(--prism-code-9);\">)</span></span><span class=\"token number\" style=\"box-sizing: inherit; color: var(--prism-code-4);\">20</span></code>\r\n   </pre>\r\n<p><span style=\"letter-spacing: -0.072px; background-color: #121212; font-size: 16px; color: #313131;\">&nbsp;</span><span style=\"letter-spacing: -0.072px; font-size: 16px; color: #313131;\">geoworld@geoworldLaptop:~$ cat usbipd.sh</span></p>\r\n<p><span style=\"letter-spacing: -0.072px; font-size: 16px; color: #313131;\">#!/bin/bash</span></p>\r\n<p><font color=\"#ececec\"><span style=\"letter-spacing: -0.072px; font-size: 16px; color: #313131;\">sudo update-alternatives --install /usr/local/bin/usbip usbip $(ls /usr/lib/linux-tools/*/usbip) 20</span></font></p>','https://velog.io/@pikamon/Linux-6','',2,0,5,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-03-21 13:53:13',0,'2024-03-21 13:53:13','14.41.12.104','','','','','','','','','','','',''),(624,-621,'',624,0,0,'','','html1','[Arduino] Transistor / mosfet for PWM dimming of 30W RGB LED','<div class=\"question js-question\" data-questionid=\"50627\" data-position-on-page=\"0\" data-score=\"2\" id=\"question\" style=\"margin: 0px; padding: 0px; border: 0px; font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; line-height: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-size: 13px; vertical-align: baseline; box-sizing: inherit; clear: both; --theme-base-primary-color-h: 5.61403509; --theme-base-primary-color-s: 78.08219178%; --theme-base-primary-color-l: 57.05882353%; --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-button-color: var(--theme-primary); --theme-button-hover-color: var(--theme-primary-400); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-selected-color: var(--theme-primary-600); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-color: var(--white); --theme-button-primary-active-color: var(--white); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-background-color: #fcfcfc; --theme-background-position: 50px 0; --theme-background-repeat: repeat; --theme-background-size: 71px 71px; --theme-background-attachment: auto; --theme-content-background-color: var(--white); --theme-content-border-color: hsl(210,8%,90%); --theme-header-background-color: transparent; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-background-border-bottom: 0; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-footer-background-color: transparent; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-background-border-top: 0; --theme-footer-title-color: var(--theme-primary); --theme-footer-text-color: var(--black-400); --theme-footer-link-color: var(--black-500); --theme-footer-link-color-hover: var(--black-600); --theme-footer-divider-color: var(--black-225); --theme-footer-padding-top: 0; --theme-footer-padding-bottom: 0; --theme-link-color: hsl(210,77%,36%); --theme-link-color-hover: hsl(210,77%,46%); --theme-link-color-visited: hsl(210,77%,16%); --theme-tag-color: #696969; --theme-tag-background-color: hsl(0,0%,100%); --theme-tag-border-color: #aaa; --theme-tag-hover-color: #5c5c5c; --theme-tag-hover-background-color: hsl(0,0%,95%); --theme-tag-hover-border-color: #9d9d9d; --theme-tag-required-color: var(--white); --theme-tag-required-background-color: var(--theme-secondary-500); --theme-tag-required-border-color: transparent; --theme-tag-required-hover-color: var(--white); --theme-tag-required-hover-background-color: var(--theme-secondary-400); --theme-tag-required-hover-border-color: transparent; --theme-body-font-family: var(--ff-sans); --theme-body-font-color: var(--black-600); --theme-post-title-font-family: var(--ff-sans); --theme-post-title-color: var(--theme-link-color); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: hsla(210,77%,21%,0.08); --theme-post-owner-new-background-color: hsla(210,77%,16%,0.08); --theme-topbar-bottom-border: none; color: #0c0d0e; background-color: #ffffff;\">\r\n   <div class=\"post-layout \" style=\"margin: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; vertical-align: baseline; box-sizing: inherit; display: grid; grid-template-columns: max-content 1fr; --theme-base-primary-color-h: 5.61403509; --theme-base-primary-color-s: 78.08219178%; --theme-base-primary-color-l: 57.05882353%; --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-button-color: var(--theme-primary); --theme-button-hover-color: var(--theme-primary-400); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-selected-color: var(--theme-primary-600); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-color: var(--white); --theme-button-primary-active-color: var(--white); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-background-color: #fcfcfc; --theme-background-position: 50px 0; --theme-background-repeat: repeat; --theme-background-size: 71px 71px; --theme-background-attachment: auto; --theme-content-background-color: var(--white); --theme-content-border-color: hsl(210,8%,90%); --theme-header-background-color: transparent; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-background-border-bottom: 0; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-footer-background-color: transparent; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-background-border-top: 0; --theme-footer-title-color: var(--theme-primary); --theme-footer-text-color: var(--black-400); --theme-footer-link-color: var(--black-500); --theme-footer-link-color-hover: var(--black-600); --theme-footer-divider-color: var(--black-225); --theme-footer-padding-top: 0; --theme-footer-padding-bottom: 0; --theme-link-color: hsl(210,77%,36%); --theme-link-color-hover: hsl(210,77%,46%); --theme-link-color-visited: hsl(210,77%,16%); --theme-tag-color: #696969; --theme-tag-background-color: hsl(0,0%,100%); --theme-tag-border-color: #aaa; --theme-tag-hover-color: #5c5c5c; --theme-tag-hover-background-color: hsl(0,0%,95%); --theme-tag-hover-border-color: #9d9d9d; --theme-tag-required-color: var(--white); --theme-tag-required-background-color: var(--theme-secondary-500); --theme-tag-required-border-color: transparent; --theme-tag-required-hover-color: var(--white); --theme-tag-required-hover-background-color: var(--theme-secondary-400); --theme-tag-required-hover-border-color: transparent; --theme-body-font-family: var(--ff-sans); --theme-body-font-color: var(--black-600); --theme-post-title-font-family: var(--ff-sans); --theme-post-title-color: var(--theme-link-color); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: hsla(210,77%,21%,0.08); --theme-post-owner-new-background-color: hsla(210,77%,16%,0.08); --theme-topbar-bottom-border: none;\">\r\n      <div class=\"postcell post-layout--right\" style=\"margin: 0px; padding-top: 0px; padding-right: var(--su16); padding-bottom: 0px; padding-left: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; vertical-align: top; box-sizing: inherit; grid-column: 2; width: auto; min-width: 0px; --theme-base-primary-color-h: 5.61403509; --theme-base-primary-color-s: 78.08219178%; --theme-base-primary-color-l: 57.05882353%; --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-button-color: var(--theme-primary); --theme-button-hover-color: var(--theme-primary-400); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-selected-color: var(--theme-primary-600); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-color: var(--white); --theme-button-primary-active-color: var(--white); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-background-color: #fcfcfc; --theme-background-position: 50px 0; --theme-background-repeat: repeat; --theme-background-size: 71px 71px; --theme-background-attachment: auto; --theme-content-background-color: var(--white); --theme-content-border-color: hsl(210,8%,90%); --theme-header-background-color: transparent; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-background-border-bottom: 0; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-footer-background-color: transparent; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-background-border-top: 0; --theme-footer-title-color: var(--theme-primary); --theme-footer-text-color: var(--black-400); --theme-footer-link-color: var(--black-500); --theme-footer-link-color-hover: var(--black-600); --theme-footer-divider-color: var(--black-225); --theme-footer-padding-top: 0; --theme-footer-padding-bottom: 0; --theme-link-color: hsl(210,77%,36%); --theme-link-color-hover: hsl(210,77%,46%); --theme-link-color-visited: hsl(210,77%,16%); --theme-tag-color: #696969; --theme-tag-background-color: hsl(0,0%,100%); --theme-tag-border-color: #aaa; --theme-tag-hover-color: #5c5c5c; --theme-tag-hover-background-color: hsl(0,0%,95%); --theme-tag-hover-border-color: #9d9d9d; --theme-tag-required-color: var(--white); --theme-tag-required-background-color: var(--theme-secondary-500); --theme-tag-required-border-color: transparent; --theme-tag-required-hover-color: var(--white); --theme-tag-required-hover-background-color: var(--theme-secondary-400); --theme-tag-required-hover-border-color: transparent; --theme-body-font-family: var(--ff-sans); --theme-body-font-color: var(--black-600); --theme-post-title-font-family: var(--ff-sans); --theme-post-title-color: var(--theme-link-color); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: hsla(210,77%,21%,0.08); --theme-post-owner-new-background-color: hsla(210,77%,16%,0.08); --theme-topbar-bottom-border: none;\">\r\n         <div class=\"mt24 mb12\" style=\"margin-right: 0px; margin-left: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; vertical-align: baseline; box-sizing: inherit; --theme-base-primary-color-h: 5.61403509; --theme-base-primary-color-s: 78.08219178%; --theme-base-primary-color-l: 57.05882353%; --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-button-color: var(--theme-primary); --theme-button-hover-color: var(--theme-primary-400); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-selected-color: var(--theme-primary-600); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-color: var(--white); --theme-button-primary-active-color: var(--white); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-background-color: #fcfcfc; --theme-background-position: 50px 0; --theme-background-repeat: repeat; --theme-background-size: 71px 71px; --theme-background-attachment: auto; --theme-content-background-color: var(--white); --theme-content-border-color: hsl(210,8%,90%); --theme-header-background-color: transparent; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-background-border-bottom: 0; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-footer-background-color: transparent; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-background-border-top: 0; --theme-footer-title-color: var(--theme-primary); --theme-footer-text-color: var(--black-400); --theme-footer-link-color: var(--black-500); --theme-footer-link-color-hover: var(--black-600); --theme-footer-divider-color: var(--black-225); --theme-footer-padding-top: 0; --theme-footer-padding-bottom: 0; --theme-link-color: hsl(210,77%,36%); --theme-link-color-hover: hsl(210,77%,46%); --theme-link-color-visited: hsl(210,77%,16%); --theme-tag-color: #696969; --theme-tag-background-color: hsl(0,0%,100%); --theme-tag-border-color: #aaa; --theme-tag-hover-color: #5c5c5c; --theme-tag-hover-background-color: hsl(0,0%,95%); --theme-tag-hover-border-color: #9d9d9d; --theme-tag-required-color: var(--white); --theme-tag-required-background-color: var(--theme-secondary-500); --theme-tag-required-border-color: transparent; --theme-tag-required-hover-color: var(--white); --theme-tag-required-hover-background-color: var(--theme-secondary-400); --theme-tag-required-hover-border-color: transparent; --theme-body-font-family: var(--ff-sans); --theme-body-font-color: var(--black-600); --theme-post-title-font-family: var(--ff-sans); --theme-post-title-color: var(--theme-link-color); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: hsla(210,77%,21%,0.08); --theme-post-owner-new-background-color: hsla(210,77%,16%,0.08); --theme-topbar-bottom-border: none; margin-top: var(--su24) !important; margin-bottom: var(--su12) !important;\">\r\n            <div class=\"post-taglist d-flex gs4 gsy fd-column\" style=\"margin-right: 0px; margin-bottom: 10px; margin-left: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; vertical-align: baseline; box-sizing: inherit; clear: both; --theme-base-primary-color-h: 5.61403509; --theme-base-primary-color-s: 78.08219178%; --theme-base-primary-color-l: 57.05882353%; --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-button-color: var(--theme-primary); --theme-button-hover-color: var(--theme-primary-400); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-selected-color: var(--theme-primary-600); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-color: var(--white); --theme-button-primary-active-color: var(--white); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-background-color: #fcfcfc; --theme-background-position: 50px 0; --theme-background-repeat: repeat; --theme-background-size: 71px 71px; --theme-background-attachment: auto; --theme-content-background-color: var(--white); --theme-content-border-color: hsl(210,8%,90%); --theme-header-background-color: transparent; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-background-border-bottom: 0; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-footer-background-color: transparent; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-background-border-top: 0; --theme-footer-title-color: var(--theme-primary); --theme-footer-text-color: var(--black-400); --theme-footer-link-color: var(--black-500); --theme-footer-link-color-hover: var(--black-600); --theme-footer-divider-color: var(--black-225); --theme-footer-padding-top: 0; --theme-footer-padding-bottom: 0; --theme-link-color: hsl(210,77%,36%); --theme-link-color-hover: hsl(210,77%,46%); --theme-link-color-visited: hsl(210,77%,16%); --theme-tag-color: #696969; --theme-tag-background-color: hsl(0,0%,100%); --theme-tag-border-color: #aaa; --theme-tag-hover-color: #5c5c5c; --theme-tag-hover-background-color: hsl(0,0%,95%); --theme-tag-hover-border-color: #9d9d9d; --theme-tag-required-color: var(--white); --theme-tag-required-background-color: var(--theme-secondary-500); --theme-tag-required-border-color: transparent; --theme-tag-required-hover-color: var(--white); --theme-tag-required-hover-background-color: var(--theme-secondary-400); --theme-tag-required-hover-border-color: transparent; --theme-body-font-family: var(--ff-sans); --theme-body-font-color: var(--black-600); --theme-post-title-font-family: var(--ff-sans); --theme-post-title-color: var(--theme-link-color); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: hsla(210,77%,21%,0.08); --theme-post-owner-new-background-color: hsla(210,77%,16%,0.08); --theme-topbar-bottom-border: none; flex-direction: column !important; display: flex !important;\">\r\n               <div class=\"d-flex ps-relative fw-wrap\" style=\"margin-right: 0px; margin-left: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; vertical-align: baseline; box-sizing: inherit; --theme-base-primary-color-h: 5.61403509; --theme-base-primary-color-s: 78.08219178%; --theme-base-primary-color-l: 57.05882353%; --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-button-color: var(--theme-primary); --theme-button-hover-color: var(--theme-primary-400); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-selected-color: var(--theme-primary-600); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-color: var(--white); --theme-button-primary-active-color: var(--white); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-background-color: #fcfcfc; --theme-background-position: 50px 0; --theme-background-repeat: repeat; --theme-background-size: 71px 71px; --theme-background-attachment: auto; --theme-content-background-color: var(--white); --theme-content-border-color: hsl(210,8%,90%); --theme-header-background-color: transparent; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-background-border-bottom: 0; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-footer-background-color: transparent; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-background-border-top: 0; --theme-footer-title-color: var(--theme-primary); --theme-footer-text-color: var(--black-400); --theme-footer-link-color: var(--black-500); --theme-footer-link-color-hover: var(--black-600); --theme-footer-divider-color: var(--black-225); --theme-footer-padding-top: 0; --theme-footer-padding-bottom: 0; --theme-link-color: hsl(210,77%,36%); --theme-link-color-hover: hsl(210,77%,46%); --theme-link-color-visited: hsl(210,77%,16%); --theme-tag-color: #696969; --theme-tag-background-color: hsl(0,0%,100%); --theme-tag-border-color: #aaa; --theme-tag-hover-color: #5c5c5c; --theme-tag-hover-background-color: hsl(0,0%,95%); --theme-tag-hover-border-color: #9d9d9d; --theme-tag-required-color: var(--white); --theme-tag-required-background-color: var(--theme-secondary-500); --theme-tag-required-border-color: transparent; --theme-tag-required-hover-color: var(--white); --theme-tag-required-hover-background-color: var(--theme-secondary-400); --theme-tag-required-hover-border-color: transparent; --theme-body-font-family: var(--ff-sans); --theme-body-font-color: var(--black-600); --theme-post-title-font-family: var(--ff-sans); --theme-post-title-color: var(--theme-link-color); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: hsla(210,77%,21%,0.08); --theme-post-owner-new-background-color: hsla(210,77%,16%,0.08); --theme-topbar-bottom-border: none; flex-wrap: wrap !important; display: flex !important; position: relative !important;\">\r\n                  <ul class=\"ml0 list-ls-none js-post-tag-list-wrapper d-inline\" style=\"margin-top: 0px; margin-right: 0px; margin-bottom: 1em; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; vertical-align: baseline; box-sizing: inherit; --theme-base-primary-color-h: 5.61403509; --theme-base-primary-color-s: 78.08219178%; --theme-base-primary-color-l: 57.05882353%; --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-button-color: var(--theme-primary); --theme-button-hover-color: var(--theme-primary-400); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-selected-color: var(--theme-primary-600); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-color: var(--white); --theme-button-primary-active-color: var(--white); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-background-color: #fcfcfc; --theme-background-position: 50px 0; --theme-background-repeat: repeat; --theme-background-size: 71px 71px; --theme-background-attachment: auto; --theme-content-background-color: var(--white); --theme-content-border-color: hsl(210,8%,90%); --theme-header-background-color: transparent; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-background-border-bottom: 0; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-footer-background-color: transparent; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-background-border-top: 0; --theme-footer-title-color: var(--theme-primary); --theme-footer-text-color: var(--black-400); --theme-footer-link-color: var(--black-500); --theme-footer-link-color-hover: var(--black-600); --theme-footer-divider-color: var(--black-225); --theme-footer-padding-top: 0; --theme-footer-padding-bottom: 0; --theme-link-color: hsl(210,77%,36%); --theme-link-color-hover: hsl(210,77%,46%); --theme-link-color-visited: hsl(210,77%,16%); --theme-tag-color: #696969; --theme-tag-background-color: hsl(0,0%,100%); --theme-tag-border-color: #aaa; --theme-tag-hover-color: #5c5c5c; --theme-tag-hover-background-color: hsl(0,0%,95%); --theme-tag-hover-border-color: #9d9d9d; --theme-tag-required-color: var(--white); --theme-tag-required-background-color: var(--theme-secondary-500); --theme-tag-required-border-color: transparent; --theme-tag-required-hover-color: var(--white); --theme-tag-required-hover-background-color: var(--theme-secondary-400); --theme-tag-required-hover-border-color: transparent; --theme-body-font-family: var(--ff-sans); --theme-body-font-color: var(--black-600); --theme-post-title-font-family: var(--ff-sans); --theme-post-title-color: var(--theme-link-color); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: hsla(210,77%,21%,0.08); --theme-post-owner-new-background-color: hsla(210,77%,16%,0.08); --theme-topbar-bottom-border: none; margin-left: 0px !important; list-style: none !important; display: inline !important;\"><span style=\"font-family: -apple-system, BlinkMacSystemFont, &quot;Segoe UI Adjusted&quot;, &quot;Segoe UI&quot;, &quot;Liberation Sans&quot;, sans-serif; font-size: 15px;\">I would suggest setting up a high side switch with a P-channel MOSFET (e.g. IRF9Z24) conrolled by an NPN BJT (e.g. 2N3904). Say 100ohm resistor into the base of the BJT and a 4.7kohm pullup on the gate of the MOSFET. Connect LED between MOSFET drain and GND. Connect PWM input to the aforementioned 100 ohm resistor.</span></ul>\r\n                  </div>\r\n               </div>\r\n            </div>\r\n         <div class=\"mb0 \" style=\"margin-top: 0px; margin-right: 0px; margin-left: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; vertical-align: baseline; box-sizing: inherit; --theme-base-primary-color-h: 5.61403509; --theme-base-primary-color-s: 78.08219178%; --theme-base-primary-color-l: 57.05882353%; --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-button-color: var(--theme-primary); --theme-button-hover-color: var(--theme-primary-400); --theme-button-hover-background-color: var(--theme-primary-100); --theme-button-active-background-color: var(--theme-primary-200); --theme-button-selected-color: var(--theme-primary-600); --theme-button-selected-background-color: var(--theme-primary-300); --theme-button-outlined-border-color: var(--theme-primary-400); --theme-button-outlined-selected-border-color: var(--theme-primary-500); --theme-button-primary-color: var(--white); --theme-button-primary-active-color: var(--white); --theme-button-primary-hover-color: var(--white); --theme-button-primary-selected-color: var(--white); --theme-button-primary-background-color: var(--theme-primary-400); --theme-button-primary-active-background-color: var(--theme-primary-600); --theme-button-primary-hover-background-color: var(--theme-primary-500); --theme-button-primary-selected-background-color: var(--theme-primary-600); --theme-background-color: #fcfcfc; --theme-background-position: 50px 0; --theme-background-repeat: repeat; --theme-background-size: 71px 71px; --theme-background-attachment: auto; --theme-content-background-color: var(--white); --theme-content-border-color: hsl(210,8%,90%); --theme-header-background-color: transparent; --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-background-border-bottom: 0; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-footer-background-color: transparent; --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-background-border-top: 0; --theme-footer-title-color: var(--theme-primary); --theme-footer-text-color: var(--black-400); --theme-footer-link-color: var(--black-500); --theme-footer-link-color-hover: var(--black-600); --theme-footer-divider-color: var(--black-225); --theme-footer-padding-top: 0; --theme-footer-padding-bottom: 0; --theme-link-color: hsl(210,77%,36%); --theme-link-color-hover: hsl(210,77%,46%); --theme-link-color-visited: hsl(210,77%,16%); --theme-tag-color: #696969; --theme-tag-background-color: hsl(0,0%,100%); --theme-tag-border-color: #aaa; --theme-tag-hover-color: #5c5c5c; --theme-tag-hover-background-color: hsl(0,0%,95%); --theme-tag-hover-border-color: #9d9d9d; --theme-tag-required-color: var(--white); --theme-tag-required-background-color: var(--theme-secondary-500); --theme-tag-required-border-color: transparent; --theme-tag-required-hover-color: var(--white); --theme-tag-required-hover-background-color: var(--theme-secondary-400); --theme-tag-required-hover-border-color: transparent; --theme-body-font-family: var(--ff-sans); --theme-body-font-color: var(--black-600); --theme-post-title-font-family: var(--ff-sans); --theme-post-title-color: var(--theme-link-color); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: hsla(210,77%,21%,0.08); --theme-post-owner-new-background-color: hsla(210,77%,16%,0.08); --theme-topbar-bottom-border: none; margin-bottom: 0px !important;\"></div>\r\n         </div>\r\n      </div>\r\n   </div>','https://electronics.stackexchange.com/questions/50627/transistor-mosfet-for-pwm-dimming-of-30w-rgb-led','',2,0,5,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-03-22 08:18:23',1,'2024-03-22 08:18:23','14.41.12.104','','','','','','','','','','','',''),(626,-623,'',626,0,0,'','','html1','[ETC] ESP32 practical power saving: deep sleep and hibernation – 3','<div class=\"line number1 index0 alt2\" style=\"font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 12.6px; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #666666; margin: 0px !important; padding: 0px !important; border: 0px !important; line-height: 1.1em !important; vertical-align: baseline !important; border-radius: 0px !important; background: none rgb(15, 25, 42) !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; white-space: pre !important;\">\r\n   <code class=\"arduino comments\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #428bdd !important;\">/*</code>\r\n   </div>\r\n<div class=\"line number2 index1 alt1\" style=\"font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 12.6px; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #666666; margin: 0px !important; padding: 0px !important; border: 0px !important; line-height: 1.1em !important; vertical-align: baseline !important; border-radius: 0px !important; background: none rgb(15, 25, 42) !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; white-space: pre !important;\">\r\n   <code class=\"arduino spaces\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important;\">&nbsp;</code>\r\n   <code class=\"arduino comments\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #428bdd !important;\">*&nbsp; ESP32</code>\r\n   </div>\r\n<div class=\"line number3 index2 alt2\" style=\"font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 12.6px; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #666666; margin: 0px !important; padding: 0px !important; border: 0px !important; line-height: 1.1em !important; vertical-align: baseline !important; border-radius: 0px !important; background: none rgb(15, 25, 42) !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; white-space: pre !important;\">\r\n   <code class=\"arduino spaces\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important;\">&nbsp;</code>\r\n   <code class=\"arduino comments\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #428bdd !important;\">*&nbsp; DEEP Sleep and wake up</code>\r\n   </div>\r\n<div class=\"line number4 index3 alt1\" style=\"font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 12.6px; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #666666; margin: 0px !important; padding: 0px !important; border: 0px !important; line-height: 1.1em !important; vertical-align: baseline !important; border-radius: 0px !important; background: none rgb(15, 25, 42) !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; white-space: pre !important;\">\r\n   <code class=\"arduino spaces\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important;\">&nbsp;</code>\r\n   <code class=\"arduino comments\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #428bdd !important;\">*&nbsp; by Mischianti Renzo &lt;<a href=\"https://mischianti.org/\" style=\"font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; transition: all 0.2s ease 0s; margin: 0px !important; padding: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; vertical-align: baseline !important; color: #428bdd !important; border-radius: 0px !important; background: none !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important;\" target=\"_blank\">https://mischianti.org</a>&gt;</code>\r\n   </div>\r\n<div class=\"line number5 index4 alt2\" style=\"font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 12.6px; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #666666; margin: 0px !important; padding: 0px !important; border: 0px !important; line-height: 1.1em !important; vertical-align: baseline !important; border-radius: 0px !important; background: none rgb(15, 25, 42) !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; white-space: pre !important;\">\r\n   <code class=\"arduino spaces\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important;\">&nbsp;</code>\r\n   <code class=\"arduino comments\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #428bdd !important;\">*</code>\r\n   </div>\r\n<div class=\"line number6 index5 alt1\" style=\"font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 12.6px; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #666666; margin: 0px !important; padding: 0px !important; border: 0px !important; line-height: 1.1em !important; vertical-align: baseline !important; border-radius: 0px !important; background: none rgb(15, 25, 42) !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; white-space: pre !important;\">\r\n   <code class=\"arduino spaces\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important;\">&nbsp;</code>\r\n   <code class=\"arduino comments\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #428bdd !important;\">*&nbsp; <a href=\"https://mischianti.org/esp32-practical-power-saving-deep-sleep-and-hibernation-3/\" style=\"font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; transition: all 0.2s ease 0s; margin: 0px !important; padding: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; vertical-align: baseline !important; color: #428bdd !important; border-radius: 0px !important; background: none !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important;\" target=\"_blank\">https://mischianti.org/esp32-practical-power-saving-deep-sleep-and-hibernation-3/</a></code>\r\n   </div>\r\n<div class=\"line number7 index6 alt2\" style=\"font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 12.6px; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #666666; margin: 0px !important; padding: 0px !important; border: 0px !important; line-height: 1.1em !important; vertical-align: baseline !important; border-radius: 0px !important; background: none rgb(15, 25, 42) !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; white-space: pre !important;\">\r\n   <code class=\"arduino spaces\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important;\">&nbsp;</code>\r\n   <code class=\"arduino comments\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #428bdd !important;\">*</code>\r\n   </div>\r\n<div class=\"line number8 index7 alt1\" style=\"font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 12.6px; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #666666; margin: 0px !important; padding: 0px !important; border: 0px !important; line-height: 1.1em !important; vertical-align: baseline !important; border-radius: 0px !important; background: none rgb(15, 25, 42) !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; white-space: pre !important;\">\r\n   <code class=\"arduino spaces\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important;\">&nbsp;</code>\r\n   <code class=\"arduino comments\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #428bdd !important;\">*/</code>\r\n   </div>\r\n<div class=\"line number9 index8 alt2\" style=\"font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 12.6px; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #666666; margin: 0px !important; padding: 0px !important; border: 0px !important; line-height: 1.1em !important; vertical-align: baseline !important; border-radius: 0px !important; background: none rgb(15, 25, 42) !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; white-space: pre !important;\">&nbsp;</div>\r\n<div class=\"line number10 index9 alt1\" style=\"font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 12.6px; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #666666; margin: 0px !important; padding: 0px !important; border: 0px !important; line-height: 1.1em !important; vertical-align: baseline !important; border-radius: 0px !important; background: none rgb(15, 25, 42) !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; white-space: pre !important;\">\r\n   <code class=\"arduino preprocessor\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #8aa6c1 !important;\">#include</code>\r\n   <code class=\"arduino plain\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #d1edff !important;\">&lt;WiFi.h&gt;</code>\r\n   </div>\r\n<div class=\"line number11 index10 alt2\" style=\"font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 12.6px; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #666666; margin: 0px !important; padding: 0px !important; border: 0px !important; line-height: 1.1em !important; vertical-align: baseline !important; border-radius: 0px !important; background: none rgb(15, 25, 42) !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; white-space: pre !important;\">\r\n   <code class=\"arduino preprocessor\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #8aa6c1 !important;\">#include</code>\r\n   <code class=\"arduino plain\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #d1edff !important;\">&lt;BluetoothSerial.h&gt;</code>\r\n   </div>\r\n<div class=\"line number12 index11 alt1\" style=\"font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 12.6px; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #666666; margin: 0px !important; padding: 0px !important; border: 0px !important; line-height: 1.1em !important; vertical-align: baseline !important; border-radius: 0px !important; background: none rgb(15, 25, 42) !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; white-space: pre !important;\">\r\n   <code class=\"arduino preprocessor\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #8aa6c1 !important;\">#include</code>\r\n   <code class=\"arduino string\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #1dc116 !important;\">\"driver/adc.h\"</code>\r\n   </div>\r\n<div class=\"line number13 index12 alt2\" style=\"font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 12.6px; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #666666; margin: 0px !important; padding: 0px !important; border: 0px !important; line-height: 1.1em !important; vertical-align: baseline !important; border-radius: 0px !important; background: none rgb(15, 25, 42) !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; white-space: pre !important;\">\r\n   <code class=\"arduino preprocessor\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #8aa6c1 !important;\">#include</code>\r\n   <code class=\"arduino plain\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #d1edff !important;\">&lt;esp_bt.h&gt;</code>\r\n   </div>\r\n<div class=\"line number14 index13 alt1\" style=\"font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 12.6px; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #666666; margin: 0px !important; padding: 0px !important; border: 0px !important; line-height: 1.1em !important; vertical-align: baseline !important; border-radius: 0px !important; background: none rgb(15, 25, 42) !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; white-space: pre !important;\">\r\n   <code class=\"arduino preprocessor\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #8aa6c1 !important;\">#include</code>\r\n   <code class=\"arduino plain\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #d1edff !important;\">&lt;esp_wifi.h&gt;</code>\r\n   </div>\r\n<div class=\"line number15 index14 alt2\" style=\"font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 12.6px; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #666666; margin: 0px !important; padding: 0px !important; border: 0px !important; line-height: 1.1em !important; vertical-align: baseline !important; border-radius: 0px !important; background: none rgb(15, 25, 42) !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; white-space: pre !important;\">\r\n   <code class=\"arduino preprocessor\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #8aa6c1 !important;\">#include</code>\r\n   <code class=\"arduino plain\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #d1edff !important;\">&lt;esp_sleep.h&gt;</code>\r\n   </div>\r\n<div class=\"line number16 index15 alt1\" style=\"font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 12.6px; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #666666; margin: 0px !important; padding: 0px !important; border: 0px !important; line-height: 1.1em !important; vertical-align: baseline !important; border-radius: 0px !important; background: none rgb(15, 25, 42) !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; white-space: pre !important;\">&nbsp;</div>\r\n<div class=\"line number17 index16 alt2\" style=\"font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 12.6px; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #666666; margin: 0px !important; padding: 0px !important; border: 0px !important; line-height: 1.1em !important; vertical-align: baseline !important; border-radius: 0px !important; background: none rgb(15, 25, 42) !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; white-space: pre !important;\">\r\n   <code class=\"arduino preprocessor\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #8aa6c1 !important;\">#define</code>\r\n   <code class=\"arduino plain\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #d1edff !important;\">STA_SSID </code>\r\n   <code class=\"arduino string\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #1dc116 !important;\">\"&lt;YOUR-SSID&gt;\"</code>\r\n   </div>\r\n<div class=\"line number18 index17 alt1\" style=\"font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 12.6px; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #666666; margin: 0px !important; padding: 0px !important; border: 0px !important; line-height: 1.1em !important; vertical-align: baseline !important; border-radius: 0px !important; background: none rgb(15, 25, 42) !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; white-space: pre !important;\">\r\n   <code class=\"arduino preprocessor\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #8aa6c1 !important;\">#define</code>\r\n   <code class=\"arduino plain\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #d1edff !important;\">STA_PASS </code>\r\n   <code class=\"arduino string\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #1dc116 !important;\">\"&lt;YOUR-PASSWD&gt;\"</code>\r\n   </div>\r\n<div class=\"line number19 index18 alt2\" style=\"font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 12.6px; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #666666; margin: 0px !important; padding: 0px !important; border: 0px !important; line-height: 1.1em !important; vertical-align: baseline !important; border-radius: 0px !important; background: none rgb(15, 25, 42) !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; white-space: pre !important;\">&nbsp;</div>\r\n<div class=\"line number20 index19 alt1\" style=\"font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 12.6px; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #666666; margin: 0px !important; padding: 0px !important; border: 0px !important; line-height: 1.1em !important; vertical-align: baseline !important; border-radius: 0px !important; background: none rgb(15, 25, 42) !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; white-space: pre !important;\">\r\n   <code class=\"arduino plain\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #d1edff !important;\">BluetoothSerial SerialBT;</code>\r\n   </div>\r\n<div class=\"line number21 index20 alt2\" style=\"font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 12.6px; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #666666; margin: 0px !important; padding: 0px !important; border: 0px !important; line-height: 1.1em !important; vertical-align: baseline !important; border-radius: 0px !important; background: none rgb(15, 25, 42) !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; white-space: pre !important;\">&nbsp;</div>\r\n<div class=\"line number22 index21 alt1\" style=\"font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 12.6px; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #666666; margin: 0px !important; padding: 0px !important; border: 0px !important; line-height: 1.1em !important; vertical-align: baseline !important; border-radius: 0px !important; background: none rgb(15, 25, 42) !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; white-space: pre !important;\">\r\n   <code class=\"arduino color1 bold\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-weight: bold !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #f8bb00 !important;\">int</code>\r\n   <code class=\"arduino plain\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #d1edff !important;\">variable </code>\r\n   <code class=\"arduino plain bold\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-weight: bold !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #d1edff !important;\">=</code>\r\n   <code class=\"arduino constants\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #e0e8ff !important;\">0</code>\r\n   <code class=\"arduino plain\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #d1edff !important;\">;</code>\r\n   </div>\r\n<div class=\"line number23 index22 alt2\" style=\"font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 12.6px; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #666666; margin: 0px !important; padding: 0px !important; border: 0px !important; line-height: 1.1em !important; vertical-align: baseline !important; border-radius: 0px !important; background: none rgb(15, 25, 42) !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; white-space: pre !important;\">&nbsp;</div>\r\n<div class=\"line number24 index23 alt1\" style=\"font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 12.6px; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #666666; margin: 0px !important; padding: 0px !important; border: 0px !important; line-height: 1.1em !important; vertical-align: baseline !important; border-radius: 0px !important; background: none rgb(15, 25, 42) !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; white-space: pre !important;\">\r\n   <code class=\"arduino color1 bold\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-weight: bold !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #f8bb00 !important;\">void</code>\r\n   <code class=\"arduino keyword bold\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-weight: bold !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #b43d3d !important;\">setup</code>\r\n   <code class=\"arduino plain\" style=\"padding: 0px 3px; font-variant: inherit; font-stretch: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; background: rgb(238, 238, 238); margin: 0px !important; border: 0px !important; font-size: 1em !important; line-height: 1.1em !important; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace !important; vertical-align: baseline !important; border-radius: 0px !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; display: inline !important; color: #d1edff !important;\">() {</code>\r\n   </div>\r\n<div class=\"line number25 index24 alt2\" style=\"font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 12.6px; font-family: Monaco, Consolas, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, Courier, monospace; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #666666; margin: 0px !important; padding: 0px !important; border: 0px !important; line-height: 1.1em !important; vertical-align: baseline !important; border-radius: 0px !important; background: none rgb(15, 25, 42) !important; inset: auto !important; float: none !important; height: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; width: auto !important; box-sizing: content-box !important; direction: ltr !important; box-shadow: none !important; white-space: pre !important;\"></div>','https://mischianti.org/esp32-practical-power-saving-deep-sleep-and-hibernation-3/','https://www.wemos.cc/en/latest/d32/d32.html',5,5,7,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-04-15 00:49:31',0,'2024-04-15 00:49:31','192.168.219.103','','','','','','','','','','','',''),(625,-622,'',625,0,0,'','','html1','[ETC] How to get the best low power while in sleep mode','<p><span style=\"color: #444444; font-family: &quot;Open Sans&quot;, sans-serif; font-size: 13px; background-color: #ffffff;\">1. Powering the esp32 from the 3V battery always and the sensors from the 3.3V - is it possible and correct to do so? Using an efficient dc-dc converter what magnitude of current do they take with enable off?</span></p>\r\n<div class=\"inline-attachment\" style=\"margin: 0px; padding: 0px; border: 0px; font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 13px; line-height: inherit; font-family: &quot;Open Sans&quot;, sans-serif; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; vertical-align: baseline; color: #444444; background-color: #ffffff;\">\r\n   <dl class=\"file\" style=\"margin: 0px 0px 4px; padding: 0px; border: 0px; font: inherit; vertical-align: baseline;\"><dt class=\"attach-image\" style=\"margin: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; vertical-align: baseline; max-width: 100%;\"><img src=\"https://esp32.com/download/file.php?id=8218\" class=\"postimage\" alt=\"Screenshot 2022-01-18 223011.png\" style=\"margin: 0px; padding: 0px; border: 1px solid rgb(238, 238, 238); font: inherit; vertical-align: baseline; height: auto; max-width: 100%; cursor: default; box-sizing: border-box;\" /></dt>\r\n      <dd style=\"margin: 0px; padding: 0px; border: 0px; font: inherit; vertical-align: baseline; color: #666666;\">Screenshot 2022-01-18 223011.png (31.4 KiB) Viewed 5279 times</dd>\r\n      </dl>\r\n   </div>\r\n<p><span style=\"color: #444444; font-family: &quot;Open Sans&quot;, sans-serif; font-size: 13px; background-color: #ffffff;\">2. Switching between the power sources - when in active mode - esp32 is on the 3.3V, and when in sleep mode esp32 is on the 3V battery.</span></p>\r\n<div class=\"inline-attachment\" style=\"margin: 0px; padding: 0px; border: 0px; font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 13px; line-height: inherit; font-family: &quot;Open Sans&quot;, sans-serif; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; vertical-align: baseline; color: #444444; background-color: #ffffff;\">\r\n   <dl class=\"file\" style=\"margin: 0px 0px 4px; padding: 0px; border: 0px; font: inherit; vertical-align: baseline;\"><dt class=\"attach-image\" style=\"margin: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; vertical-align: baseline; max-width: 100%;\"><img src=\"https://esp32.com/download/file.php?id=8217\" class=\"postimage\" alt=\"Screenshot 2022-01-18 223035.png\" style=\"margin: 0px; padding: 0px; border: 1px solid rgb(238, 238, 238); font: inherit; vertical-align: baseline; height: auto; max-width: 100%; cursor: default; box-sizing: border-box;\" /></dt></dl>\r\n   </div>','https://esp32.com/viewtopic.php?t=25625','',1,0,5,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-04-15 00:21:52',0,'2024-04-15 00:21:52','192.168.219.103','','','','','','','','','','','',''),(627,-624,'',627,0,0,'','','html1','[Linux] CM4 RaspberryPi에 Mosquitto 간편하게 설치하고 사용자 추가하기','<p>1. 프로그램설치</p>\r\n<p>&gt;sudo apt install mosquitto mosquitto-clients</p>\r\n<p>&nbsp;</p>\r\n<p>2. 사용자생성, 파일 암호화 후 설정파일 이동</p>\r\n<p>&gt;echo \"id:pw\" &gt; pwfile</p>\r\n<p>&gt;mosquitto_passwd -U pwfile</p>\r\n<p>&gt;sudo mv pwfile /etc/mosquitto/</p>\r\n<p>&nbsp;</p>\r\n<p>3. 사용자 설정 적용</p>\r\n<p>&gt;sudo vim /etc/mosquitto/mosquitto.conf</p>\r\n<p>======================================</p>\r\n<p>allow_anoymous false</p>\r\n<p>password_file /etc/mosquitto/pwfile</p>\r\n<p>&nbsp;</p>\r\n<p>listener 1883 0.0.0.0</p>\r\n<p>======================================</p>\r\n<p>&nbsp;</p>\r\n<p>4. mosquitto 재시작</p>\r\n<p>&gt;sudo /etc/init.d/mosquitto restart</p>','https://remnant24c1.tistory.com/80','',0,0,2,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-04-26 11:24:14',0,'2024-04-26 11:24:14','14.41.12.104','','','','','','','','','','','',''),(628,-625,'',628,0,0,'','','html1','[ETC] 배터리 소비전류 계','<p><span style=\"font-size: 12px;\">-배터리 누설전류 : 6.5uA ==&nbsp;</span><span style=\"background-color: #ffffff; font-size: 12px;\">0.0000065A</span></p>\r\n<p><span style=\"background-color: #ffffff; font-size: 12px;\">-1년간 소비전류 : 1년 == 365일 = 365 x24h = 8,760h ---&gt;&nbsp;</span><span style=\"background-color: #ffffff; font-size: 13px;\">0.0000065A x 8,760h =&nbsp;</span><span style=\"background-color: #ffffff; font-size: 13px;\">0.05694Ah</span></p>\r\n<p><span style=\"background-color: #ffffff; font-size: 13px;\">&nbsp;</span></p>\r\n<p><span style=\"background-color: #ffffff; font-size: 13px;\">*참고</span></p>\r\n<p><span style=\"font-size: 13px; background-color: #ffffff;\">전류의 단위는 다들 아시다시피 당연히 A(암페어)입니다.</span><br style=\"font-size: 13px; background-color: #ffffff;\" /><span style=\"font-size: 13px; background-color: #ffffff;\">전하량의 단위는 쿨롱(C)입니다.</span><br style=\"font-size: 13px; background-color: #ffffff;\" /><span style=\"font-size: 13px; background-color: #ffffff;\">1C = 1암페어 * 초로 정의 됩니다.(그렇게 하기로 약속한 겁니다.)</span><br style=\"font-size: 13px; background-color: #ffffff;\" /><span style=\"font-size: 13px; background-color: #ffffff;\">1A로 1초를 흘리면 약 6.2 * 10^18개의 전하가 지나갑니다.</span><br style=\"font-size: 13px; background-color: #ffffff;\" /><br style=\"font-size: 13px; background-color: #ffffff;\" /><span style=\"font-size: 13px; background-color: #ffffff;\">전류의 단위는 전기의 기본 단위이며 굳이 따지자면 1C / 1sec 이므로</span><br style=\"font-size: 13px; background-color: #ffffff;\" /><span style=\"font-size: 13px; background-color: #ffffff;\">억지로 따지자면 말도 안되지만 그래도 어거지로 꼭 붙여야 한다면 정의에 따라 초라고 보는게 맞겠습니다.</span><br style=\"font-size: 13px; background-color: #ffffff;\" /><span style=\"font-size: 13px; background-color: #ffffff;\">그런데 이걸 말이 안되요. 서울-부산 거리가 몇 km/h 이냐고 묻는것과 같거든요.</span><br style=\"font-size: 13px; background-color: #ffffff;\" /><span style=\"font-size: 13px; background-color: #ffffff;\">속도 km/h하고 거리 km는 엄연히 다른 물리량입니다. 서울-천안간 거리와 ktx속도중 어느게 더 높냐고 말하면 이건 답할 수 없는겁니다. 그리고 1m하고 1kg하고 어느게 더 큰지도 말할 수 없듯이요.</span></p>','https://cafe.naver.com/carroty/343051','',0,0,8,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-05-01 19:58:50',0,'2024-05-01 19:58:50','14.54.16.132','','','','','','','','','','','',''),(633,-630,'',633,0,0,'','','html1','[Arduino] Using IRF520 MOSFET Switch button for Arduino','<p>&nbsp;</p>\r\n<h2>Using IRF520 MOSFET Switch button for Arduino</h2>\r\n<p style=\"font-size: medium;\">This code is for IRF520 MOSFET module to control DC load using arduino without any relay. This device can work with up to 100V and continuously control a 2A load. With proper heat sink it can handle up to 9A but we have tested it up to 4A.</p>\r\n<img src=\"https://robojax.com/learn/arduino/robojax-IRF520-MOSFET_schematic.jpg\" alt=\"Schematic diagram for IRF520 MOSFET Module\" style=\"font-size: medium;\" /><span style=\"font-size: medium;\"></span>\r\n<ul style=\"font-size: medium;\">\r\n   <li><a href=\"http://www.irf.com/product-info/datasheets/data/irf520ns.pdf\" target=\"_blank\">IRF520 Data sheet (IRF International)</a></li>\r\n   <li><a href=\"https://www.vishay.com/docs/91017/91017.pdf\" target=\"_blank\">IRF520 Data sheet (Vishay)</a></li>\r\n   </ul>','https://robojax.com/learn/arduino/?vid=robojax-IRF520-MOSFET','',0,0,7,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-06-10 13:08:18',1,'2024-06-10 13:08:18','113.185.74.52','','','','','','','','','','','',''),(629,-626,'',629,0,0,'','','html1','[Linux] vsftp 서버에서 외부에서 접속시 목록읽기 에러발생 해결방','<p>1. /etc/vsftpd.conf에 아래사항 추가</p>\r\n<p>pasv_enable=Yes</p>\r\n<p>pasv_min_port=10090</p>\r\n<p>pasv_max_port=10100</p>\r\n<p>&nbsp;</p>\r\n<p>2. 방화벽에서 포트 설정(open)</p>\r\n<p>iptables -I INPUT -p tcp --destination-port 10090:10100 -j ACCEPT</p>','https://serverfault.com/questions/421161/how-to-configure-vsftpd-to-work-with-passive-mode','',1,0,5,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-05-02 20:29:45',0,'2024-05-02 20:29:45','192.168.219.103','','','','','','','','','','','',''),(630,-627,'',630,0,0,'','','html1','[Linux] Ubuntu 계열에서 Eagle 실행시 에러 조치사항','<p>*증상</p>\r\n<p>우분투 계열(22.04 등)에서 Eagle 실행시 에러발생</p>\r\n<p>&nbsp;</p>\r\n<p>*해결</p>\r\n<pre class=\"lia-code-sample line-numbers language-markup\" tabindex=\"0\" style=\"box-sizing: border-box; overflow: auto; font-family: Consolas, Monaco, &quot;Andale Mono&quot;, &quot;Ubuntu Mono&quot;, monospace; font-size: 15px; padding: 1em 1em 1em 3.8em; margin-top: 0.5em; margin-bottom: 0.5em; line-height: 1.5; word-break: normal; overflow-wrap: normal; background: rgb(245, 242, 240); border: 1px solid rgb(204, 204, 204); border-radius: 5px; tab-size: 4; hyphens: none; text-shadow: rgb(255, 255, 255) 0px 1px; box-shadow: none; position: relative; counter-reset: linenumber 0; outline: none !important;\">\r\n   <code class=\"language-markup\" style=\"box-sizing: border-box; font-family: Consolas, Monaco, &quot;Andale Mono&quot;, &quot;Ubuntu Mono&quot;, monospace; font-size: inherit; padding: 0px; color: inherit; background-color: transparent; border-radius: 0px; white-space: inherit; position: relative;\">rm -r ./lib/libQt* ./plugins qt.conf\r\nrm ./libexec/QtWebEngineProcess ./libexec/qt.conf\r\nsudo apt-get install libqt5quickcontrols2-5 libqt5multimedia5 libqt5webengine5 libqt5quick5 libqt5qml5\r\nsudo apt install libqt5webenginecore5 libqt5webenginewidgets5 libqt5script5 libqt5scripttools5\r\nsudo apt-get install libqt5xml5\r\ncd .local/share/Eagle/WebCache/\r\nrm -r ControlPanel</code>\r\n   </pre>','https://forums.autodesk.com/t5/eagle-forum/running-eagle-on-fedora-33-dialogs-fail-display-properly-appears/m-p/10374674/highlight/true#M34418','https://hamonikr.org/hamoni_board/135430',0,0,3,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-05-03 06:52:22',0,'2024-05-03 06:52:22','14.41.12.104','','','','','','','','','','','',''),(631,-628,'',631,0,0,'','','html1','[Linux] Raspberry Pi Compute Module 4. CM4-IO-BASE-B','<h1 id=\"firstHeading\" class=\"firstHeading page-header\" lang=\"en\" style=\"box-sizing: border-box; font-size: 2.5em; margin: 10px 0px 15px; font-weight: 450; line-height: 1.2em; color: #333333; padding-bottom: 15px; border-bottom: 1px solid rgb(238, 238, 238); letter-spacing: -0.01em; background-color: #ffffff;\"><span dir=\"auto\" style=\"box-sizing: border-box;\">CM4-IO-BASE-B</span></h1>\r\n<div id=\"bodyContent\" style=\"box-sizing: border-box; color: #333333; font-size: 16px; background-color: #ffffff;\">\r\n   <div id=\"contentSub\" style=\"box-sizing: border-box; font-size: 13.44px; line-height: 1.2em; margin: 0px 0px 1.4em 1em; color: #545454; width: auto;\">&nbsp;</div>\r\n   <div id=\"mw-content-text\" lang=\"en\" dir=\"ltr\" class=\"mw-content-ltr\" style=\"box-sizing: border-box; direction: ltr;\">\r\n      <div class=\"mw-parser-output\" style=\"box-sizing: border-box;\">\r\n         <div class=\"wiki-pages jet-green-color\" style=\"box-sizing: border-box;\">\r\n            <div class=\"tabber\" style=\"box-sizing: border-box;\">\r\n               <div class=\"tabbertab\" title=\"Introduction\" style=\"box-sizing: border-box;\">\r\n                  <table class=\"a-r at-c roundy bgd-green bl-white\" style=\"border-spacing: 0px; max-width: 320px; height: auto; text-align: center; float: right; border-style: solid; border-color: #d8d8d8; margin-left: 5px; margin-bottom: 5px; width: 218.4px; background-color: #336633 !important;\">\r\n                     <tbody style=\"box-sizing: border-box;\">\r\n                        <tr style=\"box-sizing: border-box;\">\r\n                           <td style=\"box-sizing: border-box; padding: 0px;\">\r\n                              <table class=\"at-c roundy\" style=\"border-spacing: 0px; background: transparent; max-width: 100%; height: auto; text-align: center; width: 217.187px;\">\r\n                                 <tbody style=\"box-sizing: border-box;\">\r\n                                    <tr style=\"box-sizing: border-box;\">\r\n                                       <td class=\"at-c textwhite\" style=\"box-sizing: border-box; padding: 0px; color: #ffffff !important;\"><b style=\"box-sizing: border-box;\">CM4-IO-BASE-B</b></td>\r\n                                       </tr>\r\n                                    <tr style=\"box-sizing: border-box;\">\r\n                                       <td class=\"at-c bgwhite\" style=\"box-sizing: border-box; padding: 0px; background: rgb(255, 255, 255); margin: 5px;\">\r\n                                          <div class=\"tabber\" style=\"box-sizing: border-box;\">\r\n                                             <div class=\"tabbertab\" title=\"CM4-IO-BASE-B\" style=\"box-sizing: border-box;\"><a href=\"https://www.waveshare.com/product/cm4-io-base-b.htm\" target=\"_blank\" rel=\"nofollow noreferrer noopener\" style=\"box-sizing: border-box; background-color: transparent; color: #337ab7; text-decoration-line: none; line-height: 1.6;\"><img alt=\"CM4-IO-BASE-B-4.jpg\" src=\"https://www.waveshare.com/w/A6Y79bcq/Kdy80nYY.php?f=CM4-IO-BASE-B-4.jpg&amp;width=400\" decoding=\"async\" loading=\"lazy\" width=\"400\" srcset=\"/w/A6Y79bcq/Kdy80nYY.php?f=CM4-IO-BASE-B-4.jpg&amp;width=600 1.5x, /w/A6Y79bcq/Kdy80nYY.php?f=CM4-IO-BASE-B-4.jpg&amp;width=800 2x\" data-file-width=\"1600\" data-file-height=\"1200\" style=\"box-sizing: border-box; border: none; vertical-align: middle; max-width: 100%; height: auto;\" /></a></div>\r\n                                             <div class=\"tabbertab\" title=\"Compute Module 4\" style=\"box-sizing: border-box;\"><a href=\"https://www.waveshare.com/product/cm4-io-base-b.htm\" target=\"_blank\" rel=\"nofollow noreferrer noopener\" style=\"box-sizing: border-box; background-color: transparent; color: #337ab7; text-decoration-line: none; line-height: 1.6;\"><img alt=\"Compute-Module-4-1.jpg\" src=\"https://www.waveshare.com/w/A6Y79bcq/Kdy80nYY.php?f=Compute-Module-4-1.jpg&amp;width=400\" decoding=\"async\" loading=\"lazy\" width=\"400\" srcset=\"/w/A6Y79bcq/Kdy80nYY.php?f=Compute-Module-4-1.jpg&amp;width=600 1.5x, /w/upload/d/d7/Compute-Module-4-1.jpg 2x\" data-file-width=\"720\" data-file-height=\"540\" style=\"box-sizing: border-box; border: none; vertical-align: middle; max-width: 100%; height: auto;\" /></a></div>\r\n                                             <br style=\"box-sizing: border-box;\" /><br style=\"box-sizing: border-box;\" /><small style=\"box-sizing: border-box; font-size: 12.8px;\">Mini Base Board, Composite Breakout Board for Developing with Raspberry Pi CM4 / CM4L</small></div>\r\n                                          </td>\r\n                                       </tr>\r\n                                    </tbody>\r\n                                 </table>\r\n                              </td>\r\n                           </tr>\r\n                        <tr style=\"box-sizing: border-box;\">\r\n                           <td style=\"box-sizing: border-box; padding: 0px;\"></td>\r\n                           </tr>\r\n                        <tr style=\"box-sizing: border-box;\">\r\n                           <td style=\"box-sizing: border-box; padding: 0px;\"></td>\r\n                           </tr>\r\n                        <tr style=\"box-sizing: border-box;\">\r\n                           <td style=\"box-sizing: border-box; padding: 0px;\"></td>\r\n                           </tr>\r\n                        </tbody>\r\n                     </table>\r\n                  <h1 style=\"box-sizing: border-box; font-size: 30px; margin: 16px 0px 20px; font-family: inherit; font-weight: 500; line-height: 1.1; color: inherit;\"><span class=\"mw-headline\" id=\"Overview\" style=\"box-sizing: border-box; text-shadow: none; color: #7eb128;\">Overview</span></h1>\r\n                  <p style=\"box-sizing: border-box; margin: 7.5px 16px; overflow-wrap: break-word; line-height: 1.8;\">CM4-IO-BASE-B is the basic IO board of the Raspberry Pi Compute Module 4. CM4-IO-BASE-B is a baseboard that can be used with the Raspberry Pi Compute Module 4. It is powered by a 5V/ 2.5A USB Type C interface.</p>\r\n                  <h2 style=\"box-sizing: border-box; font-family: inherit; font-weight: 500; line-height: 45px; color: inherit; margin: 5px; font-size: 22px; padding: 0px 10px; background-color: rgba(247, 247, 247, 0.4); text-shadow: none;\"><span class=\"mw-headline\" id=\"Version_Introduction\" style=\"box-sizing: border-box; text-shadow: none; color: #7eb128; margin-left: -10px; padding: 8px 12px; border-left: 10px solid rgb(126, 177, 40) !important;\">Version Introduction</span></h2>\r\n                  <p style=\"box-sizing: border-box; margin: 7.5px 16px; overflow-wrap: break-word; line-height: 1.8;\">Version: CM4-IO-BASE-B V4<br style=\"box-sizing: border-box;\" /></p>\r\n                  <pre style=\"box-sizing: border-box; overflow: auto; font-family: monospace, Courier; font-size: 14px; padding: 1em; margin: 12px; line-height: 1.5; color: black; word-break: break-all; overflow-wrap: break-word; background-color: #f9f9f9; border: 1px solid rgb(221, 221, 221); border-radius: 4px; text-wrap: wrap;\">1: Repair BT-DIS and WIFI-DIS screen printing and actual pins are inconsistent.\r\n2: <font color=\"#FF0000\" style=\"box-sizing: border-box;\">The DSI interface is changed from DSI0 to DSI1, which already supports high resolution. </font></pre>\r\n                  <p style=\"box-sizing: border-box; margin: 7.5px 16px; overflow-wrap: break-word; line-height: 1.8;\"><a href=\"https://www.waveshare.com/wiki/File:CM4-IO-BASE-B_V4.jpg\" class=\"image\" style=\"box-sizing: border-box; background-color: transparent; color: #337ab7; text-decoration-line: none; line-height: 1.6;\" target=\"_blank\"><img alt=\"CM4-IO-BASE-B V4.jpg\" src=\"https://www.waveshare.com/w/upload/0/08/CM4-IO-BASE-B_V4.jpg\" decoding=\"async\" loading=\"lazy\" width=\"360\" data-file-width=\"360\" data-file-height=\"227\" style=\"box-sizing: border-box; border: none; vertical-align: middle; max-width: 100%; height: auto;\" /></a></p>\r\n                  </div>\r\n               </div>\r\n            </div>\r\n         </div>\r\n      </div>\r\n   </div>','https://www.waveshare.com/wiki/CM4-IO-BASE-B','',0,0,2,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-05-03 12:29:33',1,'2024-05-03 12:29:33','14.41.12.104','','','','','','','','','','','',''),(632,-629,'',632,0,0,'','','html1','[Arduino] How to Measure And Calculate Board Runtime for a Single Battery Charge - ESP32 Example','<p><iframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/gAiu7i1K1Lk?si=VL4944mDqoDIfMfj\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen=\"\"></iframe></p>','','',0,0,2,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-05-12 21:35:57',0,'2024-05-12 21:35:57','192.168.219.103','','','','','','','','','','','',''),(635,-632,'',635,0,0,'','','html1','[Arduino] ESP32 Ethernet PHY Board','<p>&nbsp;<span style=\"color: #333333; font-size: 20px; background-color: #ffffff;\">The ESP32 from Espressif features - along with a lot of other cool function blocks - an Ethernet MAC with an&nbsp;</span><a href=\"https://en.wikipedia.org/wiki/Media-independent_interface#Reduced_media-independent_interface\" style=\"text-rendering: optimizelegibility; box-sizing: border-box; background: 0px 0px rgb(255, 255, 255); color: #333333; transition: color 0.3s ease 0s; font-size: 20px;\" target=\"_blank\">RMII</a><span style=\"color: #333333; font-size: 20px; background-color: #ffffff;\">-interface. You only have to add an Ethernet PHY, some transformers, a RJ45 connector and a few resistors and capacitors.</span></p>\r\n<span style=\"color: #333333; font-size: 20px; background-color: #ffffff;\">Espressif have&nbsp;</span><a href=\"https://github.com/espressif/esp-idf/tree/master/examples/ethernet/ethernet\" style=\"text-rendering: optimizelegibility; box-sizing: border-box; background: 0px 0px rgb(255, 255, 255); color: #333333; transition: color 0.3s ease 0s; font-size: 20px;\" target=\"_blank\">published some code</a><span style=\"color: #333333; font-size: 20px; background-color: #ffffff;\">&nbsp;for the&nbsp;</span><a href=\"http://www.ti.com/product/TLK110\" style=\"text-rendering: optimizelegibility; box-sizing: border-box; background: 0px 0px rgb(255, 255, 255); color: #333333; transition: color 0.3s ease 0s; font-size: 20px;\" target=\"_blank\">TLK110</a><span style=\"color: #333333; font-size: 20px; background-color: #ffffff;\">. But it is relatively expensive (around&nbsp;</span><a href=\"http://www.mouser.de/ProductDetail/Texas-Instruments/TLK110PT/\" style=\"text-rendering: optimizelegibility; box-sizing: border-box; background: 0px 0px rgb(255, 255, 255); color: #333333; transition: color 0.3s ease 0s; font-size: 20px;\" target=\"_blank\">6 EUR</a><span style=\"color: #333333; font-size: 20px; background-color: #ffffff;\">&nbsp;when bought in small quantities) and is relatively big as it has an MII-interface which is not entirely needed.</span><br style=\"text-rendering: optimizelegibility; box-sizing: border-box; color: #333333; font-size: 20px; background-color: #ffffff;\" /><span style=\"color: #333333; font-size: 20px; background-color: #ffffff;\">A better choice seems to be the&nbsp;</span><a href=\"http://www.microchip.com/wwwproducts/en/LAN8720A\" style=\"text-rendering: optimizelegibility; box-sizing: border-box; background: 0px 0px rgb(255, 255, 255); color: #333333; transition: color 0.3s ease 0s; font-size: 20px;\" target=\"_blank\">LAN8720</a><span style=\"color: #333333; font-size: 20px; background-color: #ffffff;\">&nbsp;which costs only&nbsp;</span><a href=\"http://www.mouser.de/ProductDetail/Microchip-Technology/LAN8720A-CP-ABC\" style=\"text-rendering: optimizelegibility; box-sizing: border-box; background: 0px 0px rgb(255, 255, 255); color: #333333; transition: color 0.3s ease 0s; font-size: 20px;\" target=\"_blank\">1EUR</a><span style=\"color: #333333; font-size: 20px; background-color: #ffffff;\">&nbsp;and is significantly smaller as it only has a RMII-interface an therefore lesser pins.</span><br style=\"text-rendering: optimizelegibility; box-sizing: border-box; color: #333333; font-size: 20px; background-color: #ffffff;\" /><a href=\"https://github.com/RobinCutshaw\" style=\"text-rendering: optimizelegibility; box-sizing: border-box; background: 0px 0px rgb(255, 255, 255); color: #333333; transition: color 0.3s ease 0s; font-size: 20px;\" target=\"_blank\">Robin Cutshaw</a><span style=\"color: #333333; font-size: 20px; background-color: #ffffff;\">&nbsp;and&nbsp;</span><a href=\"https://github.com/ESP32DE\" style=\"text-rendering: optimizelegibility; box-sizing: border-box; background: 0px 0px rgb(255, 255, 255); color: #333333; transition: color 0.3s ease 0s; font-size: 20px;\" target=\"_blank\">Rudi Wagner</a><span style=\"color: #333333; font-size: 20px; background-color: #ffffff;\">&nbsp;made some effort and made a pull request for the&nbsp;</span><a href=\"https://github.com/espressif/esp-idf/pull/383/\" style=\"text-rendering: optimizelegibility; box-sizing: border-box; background: 0px 0px rgb(255, 255, 255); color: #333333; transition: color 0.3s ease 0s; font-size: 20px;\" target=\"_blank\">ESP-IDF</a><span style=\"color: #333333; font-size: 20px; background-color: #ffffff;\">.</span>','https://kazkojima.github.io/esp32-phy.html','https://sautter.com/blog/ethernet-on-esp32-using-lan8720/',0,0,3,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-07-03 10:03:45',1,'2024-07-03 10:03:45','14.41.12.104','','','','','','','','','','','',''),(636,-633,'',636,0,0,'','','html1','[Arduino] WiFiMager 라이브러리에서 설정화면 수정하기','<p>1. 설정화면에서 Info 버튼 숨기기</p>\r\n<p>wm_strings_en.h //49번줄에서,</p>\r\n<p>&nbsp;</p>\r\n<p>\"&lt;form action=\'/info\'&nbsp; &nbsp; method=\'get\'&gt;&lt;button&gt;Info&lt;/button&gt;&lt;/form&gt;&lt;br/&gt;\\n\", // MENU_INFO</p>\r\n<p>--&gt;&nbsp;\"&lt;form action=\'/info\'&nbsp; &nbsp; method=\'get\'&gt;\\n\", // MENU_INFO</p>\r\n<p>&nbsp;</p>\r\n<p>2. autoConnect() 함수에 두번째 인자를 넘겨서 웹화면에 표출하기</p>\r\n<p>(1) 표출되는 웹 화면 부분은 wm_strings_en.h //43번줄에서,</p>\r\n<p>const char HTTP_ROOT_MAIN[]&nbsp; &nbsp; &nbsp; &nbsp; PROGMEM = \"&lt;center&gt;&lt;h1&gt;{t}&lt;/h1&gt;&lt;h3&gt;{v}&lt;/h3&gt;&lt;/center&gt;\";</p>\r\n<p>정의되어 있음. 참고로 {t} 부분에 표출되는 부분은 같은파일 181번줄을 수정하면 됨.</p>\r\n<p>const char HTTP_INFO_esphead[]&nbsp; &nbsp; PROGMEM = \"&lt;h3&gt;NextGreen Co,.Ltd.&lt;/h3&gt;&lt;hr&gt;&lt;dl&gt;\";<br /><br />(2) WiFiManager.h 245번 줄 class WiFiManager { ... } 함수안에<br /></p>\r\n<p>-&gt; String add_name;<span style=\"white-space:pre\"></span>// *** 내가 수정한 부분</p>\r\n<p>&nbsp;</p>\r\n<p>기존 autoConnect() 함수에 add_name 추가 //250번 줄</p>\r\n<p>boolean&nbsp; &nbsp; &nbsp; &nbsp;autoConnect(char const *apName, char const *apPassword = NULL);</p>\r\n<p>-&gt; boolean&nbsp; &nbsp; &nbsp; &nbsp;autoConnect(char const *apName, char const *addName, char const *apPassword = NULL);<span style=\"white-space: pre;\"></span>// *** 내가 수정한 부분</p>\r\n<p>&nbsp;</p>\r\n<p>boolean&nbsp; &nbsp; &nbsp; &nbsp;startConfigPortal(char const *apName, char const *apPassword = NULL);</p>\r\n<p>-&gt; boolean&nbsp; &nbsp; &nbsp; &nbsp;startConfigPortal(char const *apName, char const *addName, char const *apPassword = NULL);<span style=\"white-space: pre;\"></span>// *** 내가 수정한 부분&nbsp;</p>\r\n<p>&nbsp;</p>\r\n<p>(3) WiFiManger.cpp 278번 줄에 add_name 추가</p>\r\n<p>boolean WiFiManager::autoConnect(char const *apName, char const *apPassword) {</p>\r\n<p>-&gt; boolean WiFiManager::autoConnect(char const *apName, char const *addName, char const *apPassword) {<span style=\"white-space: pre;\"></span>// *** 내가 수정한 부분</p>\r\n<p>&nbsp;</p>\r\n<p>(4) WiFiManager.cpp 709번 줄에 add_name 추가</p>\r\n<p>-&gt; boolean&nbsp; WiFiManager::startConfigPortal(char const *apName, char const *addName, char const *apPassword) {<span style=\"white-space: pre;\"></span>// *** 내가 수정한 부분</p>\r\n<p><br />(5) 같은 WiFiManager.cpp 1351번 줄 다음에 추가</p>\r\n<p>// dev_name과 add_name을 추가로 표시하는 부분</p>\r\n<p>&nbsp; str += \"&lt;br&gt;&lt;h3&gt;[\" + add_name + \"]&lt;/h3&gt;\";</p>\r\n<p>&nbsp;</p>\r\n<p>(6) WiFiManger.cpp 280번 줄, 712번 줄에 다음 추가</p>\r\n<p>add_name = addName;<span style=\"white-space:pre\"></span>// *** 내가 수정한 부분</p>\r\n<p><br /></p>','','',0,0,10,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-07-08 14:52:30',1,'2024-07-08 14:52:30','14.41.12.104','','','','','','','','','','','',''),(638,-635,'',638,0,0,'','','html1','[chatGPT]','<p>대기중 온도, 습도, 일조량, 강우량 데이터를 지속적으로 측정한 후, 축적하여 데이터베이스로 만든 후에 chatgpt-4o 를 이용해서 축적된 데이터를 분석하여 딸기, 고추, 엽채류 작물의 파종시기와 수확시기, 작물성장이 적당한 대기 환경인지 결과값을 알 수 있을까?</p>\r\n<p>&nbsp;</p>\r\n<div class=\"flex-shrink-0 flex flex-col relative items-end\">\r\n   <div class=\"pt-0.5 juice:pt-0\">\r\n      <div class=\"gizmo-bot-avatar flex h-6 w-6 items-center justify-center overflow-hidden rounded-full juice:h-8 juice:w-8\">\r\n         <div class=\"relative p-1 rounded-sm flex items-center justify-center bg-token-main-surface-primary text-token-text-primary h-8 w-8\"><svg width=\"41\" height=\"41\" viewBox=\"0 0 41 41\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" class=\"icon-md\" role=\"img\"><text x=\"-9999\" y=\"-9999\"></text><path d=\"M37.5324 16.8707C37.9808 15.5241 38.1363 14.0974 37.9886 12.6859C37.8409 11.2744 37.3934 9.91076 36.676 8.68622C35.6126 6.83404 33.9882 5.3676 32.0373 4.4985C30.0864 3.62941 27.9098 3.40259 25.8215 3.85078C24.8796 2.7893 23.7219 1.94125 22.4257 1.36341C21.1295 0.785575 19.7249 0.491269 18.3058 0.500197C16.1708 0.495044 14.0893 1.16803 12.3614 2.42214C10.6335 3.67624 9.34853 5.44666 8.6917 7.47815C7.30085 7.76286 5.98686 8.3414 4.8377 9.17505C3.68854 10.0087 2.73073 11.0782 2.02839 12.312C0.956464 14.1591 0.498905 16.2988 0.721698 18.4228C0.944492 20.5467 1.83612 22.5449 3.268 24.1293C2.81966 25.4759 2.66413 26.9026 2.81182 28.3141C2.95951 29.7256 3.40701 31.0892 4.12437 32.3138C5.18791 34.1659 6.8123 35.6322 8.76321 36.5013C10.7141 37.3704 12.8907 37.5973 14.9789 37.1492C15.9208 38.2107 17.0786 39.0587 18.3747 39.6366C19.6709 40.2144 21.0755 40.5087 22.4946 40.4998C24.6307 40.5054 26.7133 39.8321 28.4418 38.5772C30.1704 37.3223 31.4556 35.5506 32.1119 33.5179C33.5027 33.2332 34.8167 32.6547 35.9659 31.821C37.115 30.9874 38.0728 29.9178 38.7752 28.684C39.8458 26.8371 40.3023 24.6979 40.0789 22.5748C39.8556 20.4517 38.9639 18.4544 37.5324 16.8707ZM22.4978 37.8849C20.7443 37.8874 19.0459 37.2733 17.6994 36.1501C17.7601 36.117 17.8666 36.0586 17.936 36.0161L25.9004 31.4156C26.1003 31.3019 26.2663 31.137 26.3813 30.9378C26.4964 30.7386 26.5563 30.5124 26.5549 30.2825V19.0542L29.9213 20.998C29.9389 21.0068 29.9541 21.0198 29.9656 21.0359C29.977 21.052 29.9842 21.0707 29.9867 21.0902V30.3889C29.9842 32.375 29.1946 34.2791 27.7909 35.6841C26.3872 37.0892 24.4838 37.8806 22.4978 37.8849ZM6.39227 31.0064C5.51397 29.4888 5.19742 27.7107 5.49804 25.9832C5.55718 26.0187 5.66048 26.0818 5.73461 26.1244L13.699 30.7248C13.8975 30.8408 14.1233 30.902 14.3532 30.902C14.583 30.902 14.8088 30.8408 15.0073 30.7248L24.731 25.1103V28.9979C24.7321 29.0177 24.7283 29.0376 24.7199 29.0556C24.7115 29.0736 24.6988 29.0893 24.6829 29.1012L16.6317 33.7497C14.9096 34.7416 12.8643 35.0097 10.9447 34.4954C9.02506 33.9811 7.38785 32.7263 6.39227 31.0064ZM4.29707 13.6194C5.17156 12.0998 6.55279 10.9364 8.19885 10.3327C8.19885 10.4013 8.19491 10.5228 8.19491 10.6071V19.808C8.19351 20.0378 8.25334 20.2638 8.36823 20.4629C8.48312 20.6619 8.64893 20.8267 8.84863 20.9404L18.5723 26.5542L15.206 28.4979C15.1894 28.5089 15.1703 28.5155 15.1505 28.5173C15.1307 28.5191 15.1107 28.516 15.0924 28.5082L7.04046 23.8557C5.32135 22.8601 4.06716 21.2235 3.55289 19.3046C3.03862 17.3858 3.30624 15.3413 4.29707 13.6194ZM31.955 20.0556L22.2312 14.4411L25.5976 12.4981C25.6142 12.4872 25.6333 12.4805 25.6531 12.4787C25.6729 12.4769 25.6928 12.4801 25.7111 12.4879L33.7631 17.1364C34.9967 17.849 36.0017 18.8982 36.6606 20.1613C37.3194 21.4244 37.6047 22.849 37.4832 24.2684C37.3617 25.6878 36.8382 27.0432 35.9743 28.1759C35.1103 29.3086 33.9415 30.1717 32.6047 30.6641C32.6047 30.5947 32.6047 30.4733 32.6047 30.3889V21.188C32.6066 20.9586 32.5474 20.7328 32.4332 20.5338C32.319 20.3348 32.154 20.1698 31.955 20.0556ZM35.3055 15.0128C35.2464 14.9765 35.1431 14.9142 35.069 14.8717L27.1045 10.2712C26.906 10.1554 26.6803 10.0943 26.4504 10.0943C26.2206 10.0943 25.9948 10.1554 25.7963 10.2712L16.0726 15.8858V11.9982C16.0715 11.9783 16.0753 11.9585 16.0837 11.9405C16.0921 11.9225 16.1048 11.9068 16.1207 11.8949L24.1719 7.25025C25.4053 6.53903 26.8158 6.19376 28.2383 6.25482C29.6608 6.31589 31.0364 6.78077 32.2044 7.59508C33.3723 8.40939 34.2842 9.53945 34.8334 10.8531C35.3826 12.1667 35.5464 13.6095 35.3055 15.0128ZM14.2424 21.9419L10.8752 19.9981C10.8576 19.9893 10.8423 19.9763 10.8309 19.9602C10.8195 19.9441 10.8122 19.9254 10.8098 19.9058V10.6071C10.8107 9.18295 11.2173 7.78848 11.9819 6.58696C12.7466 5.38544 13.8377 4.42659 15.1275 3.82264C16.4173 3.21869 17.8524 2.99464 19.2649 3.1767C20.6775 3.35876 22.0089 3.93941 23.1034 4.85067C23.0427 4.88379 22.937 4.94215 22.8668 4.98473L14.9024 9.58517C14.7025 9.69878 14.5366 9.86356 14.4215 10.0626C14.3065 10.2616 14.2466 10.4877 14.2479 10.7175L14.2424 21.9419ZM16.071 17.9991L20.4018 15.4978L24.7325 17.9975V22.9985L20.4018 25.4983L16.071 22.9985V17.9991Z\" fill=\"currentColor\"></path></svg></div>\r\n         </div>\r\n      </div>\r\n   </div>\r\n<div class=\"group/conversation-turn relative flex w-full min-w-0 flex-col agent-turn\">\r\n   <div class=\"flex-col gap-1 md:gap-3\">\r\n      <div class=\"flex flex-grow flex-col max-w-full\">\r\n         <div data-message-author-role=\"assistant\" data-message-id=\"cd9c43e2-f8f3-4323-be43-448d49114cc2\" dir=\"auto\" class=\"min-h-[20px] text-message flex flex-col items-start whitespace-pre-wrap break-words [.text-message+&amp;]:mt-5 juice:w-full juice:items-end overflow-x-auto gap-2\">\r\n            <div class=\"flex w-full flex-col gap-1 juice:empty:hidden juice:first:pt-[3px]\">\r\n               <div class=\"markdown prose w-full break-words dark:prose-invert dark\">\r\n                  <p>네, 가능합니다. 대기 중 온도, 습도, 일조량, 강우량 데이터를 지속적으로 측정하고 데이터베이스에 축적한 후, ChatGPT-4와 같은 AI를 이용해 해당 데이터를 분석하면 딸기, 고추, 엽채류 등의 작물의 파종 시기와 수확 시기, 그리고 작물 성장이 적절한 대기 환경인지 판단할 수 있습니다.</p>\r\n                  <p>이를 위해 다음과 같은 단계를 수행할 수 있습니다:</p>\r\n                  <ol>\r\n                     <li>\r\n                        <p><strong>데이터 수집 및 축적</strong>:</p>\r\n                        <ul>\r\n                           <li>센서를 사용하여 온도, 습도, 일조량, 강우량 등의 데이터를 지속적으로 측정합니다.</li>\r\n                           <li>측정된 데이터를 데이터베이스에 축적합니다.</li>\r\n                           </ul>\r\n                        </li>\r\n                     <li>\r\n                        <p><strong>데이터 전처리</strong>:</p>\r\n                        <ul>\r\n                           <li>수집된 데이터를 정제하고, 분석에 필요한 형식으로 변환합니다.</li>\r\n                           <li>누락된 값이나 이상치를 처리합니다.</li>\r\n                           </ul>\r\n                        </li>\r\n                     <li>\r\n                        <p><strong>작물 성장 조건 설정</strong>:</p>\r\n                        <ul>\r\n                           <li>딸기, 고추, 엽채류 각각에 대한 최적의 성장 조건을 정의합니다.</li>\r\n                           <li>이러한 조건은 기존 연구나 농업 관련 자료를 바탕으로 설정할 수 있습니다.</li>\r\n                           </ul>\r\n                        </li>\r\n                     <li>\r\n                        <p><strong>AI 모델 학습</strong>:</p>\r\n                        <ul>\r\n                           <li>수집된 데이터와 작물 성장 조건을 이용해 AI 모델을 학습시킵니다.</li>\r\n                           <li>모델은 특정 기후 조건에서 작물의 성장 패턴을 학습하고 예측할 수 있게 됩니다.</li>\r\n                           </ul>\r\n                        </li>\r\n                     <li>\r\n                        <p><strong>분석 및 예측</strong>:</p>\r\n                        <ul>\r\n                           <li>학습된 모델을 이용해 실시간으로 수집된 데이터를 분석합니다.</li>\r\n                           <li>파종 시기와 수확 시기를 예측하고, 현재 기후 조건이 작물 성장에 적합한지 여부를 판단합니다.</li>\r\n                           </ul>\r\n                        </li>\r\n                     </ol>\r\n                  <h3>예시 코드</h3>\r\n                  <p>간단한 예시로 Python과 Pandas, Scikit-Learn을 이용해 데이터를 분석하는 방법을 소개합니다.</p>\r\n                  <pre>\r\n                     <div class=\"dark bg-gray-950 rounded-md border-[0.5px] border-token-border-medium\">\r\n                        <div class=\"flex items-center relative text-token-text-secondary bg-token-main-surface-secondary px-4 py-2 text-xs font-sans justify-between rounded-t-md\">python\r\n                           <div class=\"flex items-center\"><span class=\"\" data-state=\"closed\"><button class=\"flex gap-1 items-center\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" fill=\"none\" viewBox=\"0 0 24 24\" class=\"icon-sm\"><path fill=\"currentColor\" fill-rule=\"evenodd\" d=\"M7 5a3 3 0 0 1 3-3h9a3 3 0 0 1 3 3v9a3 3 0 0 1-3 3h-2v2a3 3 0 0 1-3 3H5a3 3 0 0 1-3-3v-9a3 3 0 0 1 3-3h2zm2 2h5a3 3 0 0 1 3 3v5h2a1 1 0 0 0 1-1V5a1 1 0 0 0-1-1h-9a1 1 0 0 0-1 1zM5 9a1 1 0 0 0-1 1v9a1 1 0 0 0 1 1h9a1 1 0 0 0 1-1v-9a1 1 0 0 0-1-1z\" clip-rule=\"evenodd\"></path></svg>코드 복사</button></span></div>\r\n                           </div>\r\n                        <div class=\"overflow-y-auto p-4\" dir=\"ltr\">\r\n                           <code class=\"!whitespace-pre hljs language-python\"><span class=\"hljs-keyword\">import</span> pandas <span class=\"hljs-keyword\">as</span> pd\r\n<span class=\"hljs-keyword\">from</span> sklearn.model_selection <span class=\"hljs-keyword\">import</span> train_test_split\r\n<span class=\"hljs-keyword\">from</span> sklearn.ensemble <span class=\"hljs-keyword\">import</span> RandomForestRegressor\r\n<span class=\"hljs-comment\"># 데이터 불러오기</span>\r\ndata = pd.read_csv(<span class=\"hljs-string\">\'crop_data.csv\'</span>)\r\n<span class=\"hljs-comment\"># 특성과 목표 변수 설정</span>\r\nfeatures = data[[<span class=\"hljs-string\">\'temperature\'</span>, <span class=\"hljs-string\">\'humidity\'</span>, <span class=\"hljs-string\">\'sunlight\'</span>, <span class=\"hljs-string\">\'rainfall\'</span>]]\r\ntarget = data[<span class=\"hljs-string\">\'growth_rate\'</span>]\r\n<span class=\"hljs-comment\"># 데이터 분할</span>\r\nX_train, X_test, y_train, y_test = train_test_split(features, target, test_size=<span class=\"hljs-number\">0.2</span>, random_state=<span class=\"hljs-number\">42</span>)\r\n<span class=\"hljs-comment\"># 모델 학습</span>\r\nmodel = RandomForestRegressor(n_estimators=<span class=\"hljs-number\">100</span>, random_state=<span class=\"hljs-number\">42</span>)\r\nmodel.fit(X_train, y_train)\r\n<span class=\"hljs-comment\"># 예측</span>\r\npredictions = model.predict(X_test)\r\n<span class=\"hljs-comment\"># 예측 결과 출력</span><span class=\"hljs-built_in\">print</span>(predictions)\r\n<span class=\"hljs-comment\"># 새로운 데이터에 대한 예측</span>\r\nnew_data = pd.DataFrame({\r\n    <span class=\"hljs-string\">\'temperature\'</span>: [<span class=\"hljs-number\">25</span>],\r\n    <span class=\"hljs-string\">\'humidity\'</span>: [<span class=\"hljs-number\">60</span>],\r\n    <span class=\"hljs-string\">\'sunlight\'</span>: [<span class=\"hljs-number\">8</span>],\r\n    <span class=\"hljs-string\">\'rainfall\'</span>: [<span class=\"hljs-number\">5</span>]\r\n})\r\nnew_prediction = model.predict(new_data)\r\n<span class=\"hljs-built_in\">print</span>(new_prediction)\r\n</code>\r\n                           </div>\r\n                        </div>\r\n                     </pre>\r\n                  <p>이 예시는 기본적인 머신러닝 모델을 사용한 작물 성장 예측 방법을 보여줍니다. 실제로는 더 많은 데이터와 복잡한 모델을 사용할 수 있으며, 데이터 전처리와 모델 튜닝이 필요합니다.</p>\r\n                  <p>이와 같은 방법을 사용하면 ChatGPT-4를 통해 축적된 데이터를 분석하여 작물의 파종 시기와 수확 시기를 예측하고, 현재 대기 환경이 작물 성장에 적합한지 판단할 수 있습니다.</p>\r\n                  <p>&nbsp;</p>\r\n                  <div class=\"w-full text-token-text-primary\" dir=\"auto\" data-testid=\"conversation-turn-4\" data-scroll-anchor=\"false\">\r\n                     <div class=\"py-2 juice:py-[18px] px-3 text-base md:px-4 m-auto md:px-5 lg:px-1 xl:px-5\">\r\n                        <div class=\"mx-auto flex flex-1 gap-3 text-base juice:gap-4 juice:md:gap-5 juice:lg:gap-6 md:max-w-3xl lg:max-w-[40rem] xl:max-w-[48rem]\">\r\n                           <div class=\"group/conversation-turn relative flex w-full min-w-0 flex-col\">\r\n                              <div class=\"flex-col gap-1 md:gap-3\">\r\n                                 <div class=\"flex flex-grow flex-col max-w-full\">\r\n                                    <div data-message-author-role=\"user\" data-message-id=\"aaa2be63-99a0-409b-bf04-c6071c3d88de\" dir=\"auto\" class=\"min-h-[20px] text-message flex flex-col items-start whitespace-pre-wrap break-words [.text-message+&amp;]:mt-5 juice:w-full juice:items-end overflow-x-auto gap-2\">\r\n                                       <div class=\"flex w-full flex-col gap-1 juice:empty:hidden items-end rtl:items-start\">\r\n                                          <div class=\"relative max-w-[70%] rounded-3xl bg-[#f4f4f4] px-5 py-2.5 dark:bg-token-main-surface-secondary\">\r\n                                             <div>Pandas, Scikit-Learn 이 무엇인지 간단하게 설명해줘.</div>\r\n                                             <div class=\"absolute bottom-0 right-full top-0 -mr-3.5 hidden pr-5 pt-1 [.group\\/conversation-turn:hover_&amp;]:block\"><span class=\"\" data-state=\"closed\"><button class=\"flex h-9 w-9 items-center justify-center rounded-full text-token-text-secondary transition hover:bg-token-main-surface-tertiary\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" fill=\"none\" viewBox=\"0 0 24 24\" class=\"icon-md\"><path fill=\"currentColor\" fill-rule=\"evenodd\" d=\"M13.293 4.293a4.536 4.536 0 1 1 6.414 6.414l-1 1-7.094 7.094A5 5 0 0 1 8.9 20.197l-4.736.79a1 1 0 0 1-1.15-1.151l.789-4.736a5 5 0 0 1 1.396-2.713zM13 7.414l-6.386 6.387a3 3 0 0 0-.838 1.628l-.56 3.355 3.355-.56a3 3 0 0 0 1.628-.837L16.586 11zm5 2.172L14.414 6l.293-.293a2.536 2.536 0 0 1 3.586 3.586z\" clip-rule=\"evenodd\"></path></svg></button></span></div>\r\n                                             </div>\r\n                                          </div>\r\n                                       </div>\r\n                                    </div>\r\n                                 </div>\r\n                              </div>\r\n                           </div>\r\n                        </div>\r\n                     </div>\r\n                  <div class=\"w-full text-token-text-primary\" dir=\"auto\" data-testid=\"conversation-turn-5\" data-scroll-anchor=\"true\">\r\n                     <div class=\"py-2 juice:py-[18px] px-3 text-base md:px-4 m-auto md:px-5 lg:px-1 xl:px-5\">\r\n                        <div class=\"mx-auto flex flex-1 gap-3 text-base juice:gap-4 juice:md:gap-5 juice:lg:gap-6 md:max-w-3xl lg:max-w-[40rem] xl:max-w-[48rem]\">\r\n                           <div class=\"flex-shrink-0 flex flex-col relative items-end\">\r\n                              <div class=\"pt-0.5 juice:pt-0\">\r\n                                 <div class=\"gizmo-bot-avatar flex h-6 w-6 items-center justify-center overflow-hidden rounded-full juice:h-8 juice:w-8\">\r\n                                    <div class=\"relative p-1 rounded-sm flex items-center justify-center bg-token-main-surface-primary text-token-text-primary h-8 w-8\"><svg width=\"41\" height=\"41\" viewBox=\"0 0 41 41\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" class=\"icon-md\" role=\"img\"><text x=\"-9999\" y=\"-9999\">ChatGPT</text><path d=\"M37.5324 16.8707C37.9808 15.5241 38.1363 14.0974 37.9886 12.6859C37.8409 11.2744 37.3934 9.91076 36.676 8.68622C35.6126 6.83404 33.9882 5.3676 32.0373 4.4985C30.0864 3.62941 27.9098 3.40259 25.8215 3.85078C24.8796 2.7893 23.7219 1.94125 22.4257 1.36341C21.1295 0.785575 19.7249 0.491269 18.3058 0.500197C16.1708 0.495044 14.0893 1.16803 12.3614 2.42214C10.6335 3.67624 9.34853 5.44666 8.6917 7.47815C7.30085 7.76286 5.98686 8.3414 4.8377 9.17505C3.68854 10.0087 2.73073 11.0782 2.02839 12.312C0.956464 14.1591 0.498905 16.2988 0.721698 18.4228C0.944492 20.5467 1.83612 22.5449 3.268 24.1293C2.81966 25.4759 2.66413 26.9026 2.81182 28.3141C2.95951 29.7256 3.40701 31.0892 4.12437 32.3138C5.18791 34.1659 6.8123 35.6322 8.76321 36.5013C10.7141 37.3704 12.8907 37.5973 14.9789 37.1492C15.9208 38.2107 17.0786 39.0587 18.3747 39.6366C19.6709 40.2144 21.0755 40.5087 22.4946 40.4998C24.6307 40.5054 26.7133 39.8321 28.4418 38.5772C30.1704 37.3223 31.4556 35.5506 32.1119 33.5179C33.5027 33.2332 34.8167 32.6547 35.9659 31.821C37.115 30.9874 38.0728 29.9178 38.7752 28.684C39.8458 26.8371 40.3023 24.6979 40.0789 22.5748C39.8556 20.4517 38.9639 18.4544 37.5324 16.8707ZM22.4978 37.8849C20.7443 37.8874 19.0459 37.2733 17.6994 36.1501C17.7601 36.117 17.8666 36.0586 17.936 36.0161L25.9004 31.4156C26.1003 31.3019 26.2663 31.137 26.3813 30.9378C26.4964 30.7386 26.5563 30.5124 26.5549 30.2825V19.0542L29.9213 20.998C29.9389 21.0068 29.9541 21.0198 29.9656 21.0359C29.977 21.052 29.9842 21.0707 29.9867 21.0902V30.3889C29.9842 32.375 29.1946 34.2791 27.7909 35.6841C26.3872 37.0892 24.4838 37.8806 22.4978 37.8849ZM6.39227 31.0064C5.51397 29.4888 5.19742 27.7107 5.49804 25.9832C5.55718 26.0187 5.66048 26.0818 5.73461 26.1244L13.699 30.7248C13.8975 30.8408 14.1233 30.902 14.3532 30.902C14.583 30.902 14.8088 30.8408 15.0073 30.7248L24.731 25.1103V28.9979C24.7321 29.0177 24.7283 29.0376 24.7199 29.0556C24.7115 29.0736 24.6988 29.0893 24.6829 29.1012L16.6317 33.7497C14.9096 34.7416 12.8643 35.0097 10.9447 34.4954C9.02506 33.9811 7.38785 32.7263 6.39227 31.0064ZM4.29707 13.6194C5.17156 12.0998 6.55279 10.9364 8.19885 10.3327C8.19885 10.4013 8.19491 10.5228 8.19491 10.6071V19.808C8.19351 20.0378 8.25334 20.2638 8.36823 20.4629C8.48312 20.6619 8.64893 20.8267 8.84863 20.9404L18.5723 26.5542L15.206 28.4979C15.1894 28.5089 15.1703 28.5155 15.1505 28.5173C15.1307 28.5191 15.1107 28.516 15.0924 28.5082L7.04046 23.8557C5.32135 22.8601 4.06716 21.2235 3.55289 19.3046C3.03862 17.3858 3.30624 15.3413 4.29707 13.6194ZM31.955 20.0556L22.2312 14.4411L25.5976 12.4981C25.6142 12.4872 25.6333 12.4805 25.6531 12.4787C25.6729 12.4769 25.6928 12.4801 25.7111 12.4879L33.7631 17.1364C34.9967 17.849 36.0017 18.8982 36.6606 20.1613C37.3194 21.4244 37.6047 22.849 37.4832 24.2684C37.3617 25.6878 36.8382 27.0432 35.9743 28.1759C35.1103 29.3086 33.9415 30.1717 32.6047 30.6641C32.6047 30.5947 32.6047 30.4733 32.6047 30.3889V21.188C32.6066 20.9586 32.5474 20.7328 32.4332 20.5338C32.319 20.3348 32.154 20.1698 31.955 20.0556ZM35.3055 15.0128C35.2464 14.9765 35.1431 14.9142 35.069 14.8717L27.1045 10.2712C26.906 10.1554 26.6803 10.0943 26.4504 10.0943C26.2206 10.0943 25.9948 10.1554 25.7963 10.2712L16.0726 15.8858V11.9982C16.0715 11.9783 16.0753 11.9585 16.0837 11.9405C16.0921 11.9225 16.1048 11.9068 16.1207 11.8949L24.1719 7.25025C25.4053 6.53903 26.8158 6.19376 28.2383 6.25482C29.6608 6.31589 31.0364 6.78077 32.2044 7.59508C33.3723 8.40939 34.2842 9.53945 34.8334 10.8531C35.3826 12.1667 35.5464 13.6095 35.3055 15.0128ZM14.2424 21.9419L10.8752 19.9981C10.8576 19.9893 10.8423 19.9763 10.8309 19.9602C10.8195 19.9441 10.8122 19.9254 10.8098 19.9058V10.6071C10.8107 9.18295 11.2173 7.78848 11.9819 6.58696C12.7466 5.38544 13.8377 4.42659 15.1275 3.82264C16.4173 3.21869 17.8524 2.99464 19.2649 3.1767C20.6775 3.35876 22.0089 3.93941 23.1034 4.85067C23.0427 4.88379 22.937 4.94215 22.8668 4.98473L14.9024 9.58517C14.7025 9.69878 14.5366 9.86356 14.4215 10.0626C14.3065 10.2616 14.2466 10.4877 14.2479 10.7175L14.2424 21.9419ZM16.071 17.9991L20.4018 15.4978L24.7325 17.9975V22.9985L20.4018 25.4983L16.071 22.9985V17.9991Z\" fill=\"currentColor\"></path></svg></div>\r\n                                    </div>\r\n                                 </div>\r\n                              </div>\r\n                           <div class=\"group/conversation-turn relative flex w-full min-w-0 flex-col agent-turn\">\r\n                              <div class=\"flex-col gap-1 md:gap-3\">\r\n                                 <div class=\"flex flex-grow flex-col max-w-full\">\r\n                                    <div data-message-author-role=\"assistant\" data-message-id=\"44f05197-4ee6-48c8-ab0b-529e878d36c5\" dir=\"auto\" class=\"min-h-[20px] text-message flex flex-col items-start whitespace-pre-wrap break-words [.text-message+&amp;]:mt-5 juice:w-full juice:items-end overflow-x-auto gap-2\">\r\n                                       <div class=\"flex w-full flex-col gap-1 juice:empty:hidden juice:first:pt-[3px]\">\r\n                                          <div class=\"markdown prose w-full break-words dark:prose-invert dark\">\r\n                                             <p>물론입니다! Pandas와 Scikit-Learn은 데이터 분석과 머신러닝 작업에 많이 사용되는 Python 라이브러리입니다.</p>\r\n                                             <h3>Pandas</h3>\r\n                                             <p>Pandas는 데이터 조작과 분석을 쉽게 할 수 있게 도와주는 Python 라이브러리입니다. 특히, 구조화된 데이터(예: 테이블 형식의 데이터)를 다루는 데 유용합니다.</p>\r\n                                             <ul>\r\n                                                <li><strong>데이터 구조</strong>: Pandas는 Series(1차원 배열)와 DataFrame(2차원 테이블)이라는 두 가지 주요 데이터 구조를 제공합니다.</li>\r\n                                                <li><strong>데이터 조작</strong>: 데이터 정제, 변환, 필터링, 집계 등을 쉽게 수행할 수 있습니다.</li>\r\n                                                <li><strong>파일 처리</strong>: CSV, Excel, SQL 등 다양한 형식의 파일을 읽고 쓸 수 있습니다.</li>\r\n                                                </ul>\r\n                                             <p>예시 코드:</p>\r\n                                             <pre>\r\n                                                <div class=\"dark bg-gray-950 rounded-md border-[0.5px] border-token-border-medium\">\r\n                                                   <div class=\"flex items-center relative text-token-text-secondary bg-token-main-surface-secondary px-4 py-2 text-xs font-sans justify-between rounded-t-md\">python\r\n                                                      <div class=\"flex items-center\"><span class=\"\" data-state=\"closed\"><button class=\"flex gap-1 items-center\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" fill=\"none\" viewBox=\"0 0 24 24\" class=\"icon-sm\"><path fill=\"currentColor\" fill-rule=\"evenodd\" d=\"M7 5a3 3 0 0 1 3-3h9a3 3 0 0 1 3 3v9a3 3 0 0 1-3 3h-2v2a3 3 0 0 1-3 3H5a3 3 0 0 1-3-3v-9a3 3 0 0 1 3-3h2zm2 2h5a3 3 0 0 1 3 3v5h2a1 1 0 0 0 1-1V5a1 1 0 0 0-1-1h-9a1 1 0 0 0-1 1zM5 9a1 1 0 0 0-1 1v9a1 1 0 0 0 1 1h9a1 1 0 0 0 1-1v-9a1 1 0 0 0-1-1z\" clip-rule=\"evenodd\"></path></svg>코드 복사</button></span></div>\r\n                                                      </div>\r\n                                                   <div class=\"overflow-y-auto p-4\" dir=\"ltr\">\r\n                                                      <code class=\"!whitespace-pre hljs language-python\"><span class=\"hljs-keyword\">import</span> pandas <span class=\"hljs-keyword\">as</span> pd\r\n<span class=\"hljs-comment\"># CSV 파일 읽기</span>\r\ndata = pd.read_csv(<span class=\"hljs-string\">\'data.csv\'</span>)\r\n<span class=\"hljs-comment\"># 데이터 조회</span><span class=\"hljs-built_in\">print</span>(data.head())\r\n<span class=\"hljs-comment\"># 데이터 필터링</span>\r\nfiltered_data = data[data[<span class=\"hljs-string\">\'column_name\'</span>] &gt; <span class=\"hljs-number\">50</span>]\r\n<span class=\"hljs-comment\"># 데이터 집계</span>\r\nmean_value = data[<span class=\"hljs-string\">\'column_name\'</span>].mean()\r\n</code>\r\n                                                      </div>\r\n                                                   </div>\r\n                                                </pre>\r\n                                             <h3>Scikit-Learn</h3>\r\n                                             <p>Scikit-Learn은 머신러닝 모델을 쉽게 구현할 수 있도록 도와주는 Python 라이브러리입니다. 다양한 알고리즘과 데이터 전처리 도구를 제공합니다.</p>\r\n                                             <ul>\r\n                                                <li><strong>모델 학습 및 예측</strong>: 다양한 머신러닝 알고리즘(회귀, 분류, 클러스터링 등)을 쉽게 사용할 수 있습니다.</li>\r\n                                                <li><strong>데이터 전처리</strong>: 데이터 표준화, 특성 추출, 차원 축소 등의 기능을 제공합니다.</li>\r\n                                                <li><strong>모델 평가</strong>: 교차 검증, 하이퍼파라미터 튜닝 등 모델 평가와 개선을 위한 도구를 포함하고 있습니다.</li>\r\n                                                </ul>\r\n                                             <p>예시 코드:</p>\r\n                                             <pre>\r\n                                                <div class=\"dark bg-gray-950 rounded-md border-[0.5px] border-token-border-medium\">\r\n                                                   <div class=\"flex items-center relative text-token-text-secondary bg-token-main-surface-secondary px-4 py-2 text-xs font-sans justify-between rounded-t-md\">python\r\n                                                      <div class=\"flex items-center\"><span class=\"\" data-state=\"closed\"><button class=\"flex gap-1 items-center\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" fill=\"none\" viewBox=\"0 0 24 24\" class=\"icon-sm\"><path fill=\"currentColor\" fill-rule=\"evenodd\" d=\"M7 5a3 3 0 0 1 3-3h9a3 3 0 0 1 3 3v9a3 3 0 0 1-3 3h-2v2a3 3 0 0 1-3 3H5a3 3 0 0 1-3-3v-9a3 3 0 0 1 3-3h2zm2 2h5a3 3 0 0 1 3 3v5h2a1 1 0 0 0 1-1V5a1 1 0 0 0-1-1h-9a1 1 0 0 0-1 1zM5 9a1 1 0 0 0-1 1v9a1 1 0 0 0 1 1h9a1 1 0 0 0 1-1v-9a1 1 0 0 0-1-1z\" clip-rule=\"evenodd\"></path></svg>코드 복사</button></span></div>\r\n                                                      </div>\r\n                                                   <div class=\"overflow-y-auto p-4\" dir=\"ltr\">\r\n                                                      <code class=\"!whitespace-pre hljs language-python\"><span class=\"hljs-keyword\">from</span> sklearn.model_selection <span class=\"hljs-keyword\">import</span> train_test_split\r\n<span class=\"hljs-keyword\">from</span> sklearn.ensemble <span class=\"hljs-keyword\">import</span> RandomForestRegressor\r\n<span class=\"hljs-keyword\">from</span> sklearn.metrics <span class=\"hljs-keyword\">import</span> mean_squared_error\r\n<span class=\"hljs-comment\"># 데이터 분할</span>\r\nX = data[[<span class=\"hljs-string\">\'feature1\'</span>, <span class=\"hljs-string\">\'feature2\'</span>]]\r\ny = data[<span class=\"hljs-string\">\'target\'</span>]\r\nX_train, X_test, y_train, y_test = train_test_split(X, y, test_size=<span class=\"hljs-number\">0.2</span>, random_state=<span class=\"hljs-number\">42</span>)\r\n<span class=\"hljs-comment\"># 모델 학습</span>\r\nmodel = RandomForestRegressor(n_estimators=<span class=\"hljs-number\">100</span>, random_state=<span class=\"hljs-number\">42</span>)\r\nmodel.fit(X_train, y_train)\r\n<span class=\"hljs-comment\"># 예측</span>\r\npredictions = model.predict(X_test)\r\n<span class=\"hljs-comment\"># 모델 평가</span>\r\nmse = mean_squared_error(y_test, predictions)\r\n<span class=\"hljs-built_in\">print</span>(<span class=\"hljs-string\">\'Mean Squared Error:\'</span>, mse)\r\n</code>\r\n                                                      </div>\r\n                                                   </div>\r\n                                                </pre>\r\n                                             <p>Pandas와 Scikit-Learn을 사용하면 데이터 분석과 머신러닝 작업을 효과적으로 수행할 수 있습니다. Pandas는 데이터를 다루는 데 강력한 도구를 제공하며, Scikit-Learn은 다양한 머신러닝 알고리즘과 유틸리티를 제공하여 데이터에서 인사이트를 추출하고 예측 모델을 만들 수 있게 해줍니다.</p>\r\n                                             </div>\r\n                                          </div>\r\n                                       </div>\r\n                                    </div>\r\n                                 </div>\r\n                              </div>\r\n                           </div>\r\n                        </div>\r\n                     </div>\r\n                  </div>\r\n               </div>\r\n            </div>\r\n         </div>\r\n      </div>\r\n   </div>','','',0,0,7,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-07-12 15:43:03',0,'2024-07-12 15:43:03','14.41.12.104','','','','','','','','','','','',''),(639,-636,'',639,0,0,'','','html1','[ESP32] ESP32 모듈의 슬립모드에서 전력 소모를 줄이기 위해 몇 가지 방법','<p>ESP32-wroom-32e 모듈을 이용해서 custom board pcb를 제작했어. 여기에 전원공급을 위해서 AAA형 1.5V 배터리 4개를 직렬로 연결하여 입력전원으로 사용하고, MCP1802T-3302I/OT DC-BUCK IC를 이용해서 입력전원 전압을 3.3V로 만들어서 ESP32 모듈에 공급해 주고 있어.\r\n이때 custom board pcb를 esp_deep_sleep_start(); 를 이용해서 슬립모드로 동작할때 6.5digit 멀티미터로 측정시 약 0.18mA가 측정되었어. 슬립모드에서 소모전력을 더 적게 만들 수 있는 방법이 있을지 알려줘.</p>\r\n<p>&nbsp;</p>\r\n<p>ESP32 모듈의 슬립모드에서 전력 소모를 줄이기 위해 몇 가지 방법을 고려할 수 있습니다. 여기 몇 가지 제안 사항을 제공합니다:</p>\r\n<ol>\r\n   <li>\r\n      <p><strong>GPIO 핀 상태 설정</strong>:</p>\r\n      <ul>\r\n         <li>슬립 모드로 들어가기 전에 모든 GPIO 핀을 적절한 상태로 설정합니다. 대부분의 핀을 풀업(Pull-up) 또는 풀다운(Pull-down) 상태로 설정하여 불필요한 전력 소모를 줄입니다.</li>\r\n         <li>\r\n            <code>gpio_hold_en(GPIO_NUM_x)</code>\r\n             함수를 사용하여 슬립 모드에서 핀의 상태를 유지할 수 있습니다.</li>\r\n         </ul>\r\n      </li>\r\n   <li>\r\n      <p><strong>외부 회로 전력 차단</strong>:</p>\r\n      <ul>\r\n         <li>ESP32 외부의 센서나 모듈이 슬립 모드 동안 전력을 소비하지 않도록 합니다. 필요한 경우 MOSFET 또는 다른 스위칭 소자를 사용하여 슬립 모드에서 외부 회로의 전원을 차단할 수 있습니다.</li>\r\n         </ul>\r\n      </li>\r\n   <li>\r\n      <p><strong>RTC 메모리 사용 최소화</strong>:</p>\r\n      <ul>\r\n         <li>슬립 모드에서 유지해야 할 데이터를 최소화합니다. RTC 메모리에 많은 데이터를 저장하면 전력 소모가 증가할 수 있습니다.</li>\r\n         </ul>\r\n      </li>\r\n   <li>\r\n      <p><strong>전원 레귤레이터 최적화</strong>:</p>\r\n      <ul>\r\n         <li>MCP1802T-3302I/OT 레귤레이터의 효율성을 확인합니다. 이 레귤레이터가 슬립 모드에서 여전히 비교적 높은 전력을 소비할 수 있습니다. 저전력 LDO 레귤레이터나 DC-DC 컨버터를 고려해 볼 수 있습니다.</li>\r\n         <li>MCP1700과 같은 초저전력 LDO 레귤레이터를 사용하여 전력 소모를 줄일 수 있습니다.</li>\r\n         </ul>\r\n      </li>\r\n   <li>\r\n      <p><strong>슬립 모드 설정 확인</strong>:</p>\r\n      <ul>\r\n         <li>ESP32의 다양한 슬립 모드 설정을 확인하고 가장 적절한 슬립 모드를 사용합니다. 예를 들어, \r\n            <code>esp_deep_sleep_start()</code>\r\n             대신 \r\n            <code>esp_light_sleep_start()</code>\r\n            를 사용해도 전력 소모를 줄일 수 있습니다.</li>\r\n         <li>슬립 모드 설정을 적절히 튜닝하여 최소 전력 소모를 달성할 수 있도록 합니다.</li>\r\n         </ul>\r\n      </li>\r\n   <li>\r\n      <p><strong>펌웨어 최적화</strong>:</p>\r\n      <ul>\r\n         <li>슬립 모드로 들어가기 전과 슬립 모드 중에 전력 소모를 최소화하는 코드를 작성합니다. 모든 불필요한 기능이나 인터럽트를 비활성화합니다.</li>\r\n         <li>예를 들어, Wi-Fi나 Bluetooth 모듈이 슬립 모드에서 비활성화되는지 확인합니다.</li>\r\n         </ul>\r\n      </li>\r\n   </ol>\r\n<p>다음은 GPIO 핀을 슬립 모드에서 유지하는 간단한 예제 코드입니다:</p>\r\n<pre>\r\n   <div class=\"dark bg-gray-950 rounded-md border-[0.5px] border-token-border-medium\">\r\n      <div class=\"flex items-center relative text-token-text-secondary bg-token-main-surface-secondary px-4 py-2 text-xs font-sans justify-between rounded-t-md\">cpp\r\n         <div class=\"flex items-center\"><span class=\"\" data-state=\"closed\"><button class=\"flex gap-1 items-center\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" fill=\"none\" viewBox=\"0 0 24 24\" class=\"icon-sm\"><path fill=\"currentColor\" fill-rule=\"evenodd\" d=\"M7 5a3 3 0 0 1 3-3h9a3 3 0 0 1 3 3v9a3 3 0 0 1-3 3h-2v2a3 3 0 0 1-3 3H5a3 3 0 0 1-3-3v-9a3 3 0 0 1 3-3h2zm2 2h5a3 3 0 0 1 3 3v5h2a1 1 0 0 0 1-1V5a1 1 0 0 0-1-1h-9a1 1 0 0 0-1 1zM5 9a1 1 0 0 0-1 1v9a1 1 0 0 0 1 1h9a1 1 0 0 0 1-1v-9a1 1 0 0 0-1-1z\" clip-rule=\"evenodd\"></path></svg>코드 복사</button></span></div>\r\n         </div>\r\n      <div class=\"overflow-y-auto p-4\" dir=\"ltr\">\r\n         <code class=\"!whitespace-pre hljs language-cpp\"><span class=\"hljs-comment\">// 슬립 모드에 들어가기 전 GPIO 설정</span><span class=\"hljs-built_in\">gpio_hold_dis</span>(GPIO_NUM_0); <span class=\"hljs-comment\">// GPIO 0을 비활성화</span><span class=\"hljs-built_in\">gpio_hold_en</span>(GPIO_NUM_2);  <span class=\"hljs-comment\">// GPIO 2을 활성화</span><span class=\"hljs-comment\">// 필요한 설정 후 슬립 모드로 진입</span><span class=\"hljs-built_in\">esp_sleep_enable_timer_wakeup</span>(TIME_TO_SLEEP * uS_TO_S_FACTOR);\r\n<span class=\"hljs-built_in\">esp_deep_sleep_start</span>();</code>\r\n         </div>\r\n      </div>\r\n   </pre>','https://chatgpt.com/c/f56ad649-6ae8-4e8b-beeb-b400205cd1c6','',5,0,7,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-07-26 22:57:24',0,'2024-07-26 22:57:24','192.168.219.103','','','','','','','','','','','',''),(640,-637,'',640,0,0,'','','html1','[ETC] XL4005 DC to DC Converter','<h3 class=\"mb10\" style=\"margin-top: 0px; margin-right: 0px; margin-left: 0px; padding: 5px 0px 0px; border: 0px; font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 19px; line-height: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #222222; margin-bottom: 10px !important;\">XL4005E1&nbsp;<span class=\"redicon tooltip\" data-tooltip-text=\"해외재고상품입니다. 주문/결제후 취소가 불가능합니다.\" style=\"margin: 0px; padding: 2px 4px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: 11px; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #ffffff; background-color: #448bcb; border-radius: 2px; vertical-align: middle;\">해외</span>&nbsp;<span class=\"ico ico--nocancel\" style=\"margin: 0px 0px 0px 5px; padding: 0px; border: 0px; font: inherit; display: inline-block; vertical-align: middle; width: 79.5px; height: 17px; background-image: url(&quot;/data/skin/mobile_ver3_default/assets/images/icon/Icon_Status_11_Non_2_Withdraw.svg&quot;); background-position: 50% 50%; background-size: 79.5px 17px; background-repeat: no-repeat; background-attachment: initial; background-origin: initial; background-clip: initial;\"></span>&nbsp;<a style=\"margin: 0px; padding: 0px; border: 0px; font: inherit; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); outline: none; cursor: pointer;\"><span class=\"ico ico--5\" style=\"margin: 0px 0px 0px 5px; padding: 0px; border: 0px; font: inherit; display: inline-block; vertical-align: middle; width: 44.5px; height: 17px; background-image: url(&quot;/data/skin/mobile_ver3_default/assets/images/icon/Icon_Status_08_RoHS.svg&quot;); background-position: 50% 50%; background-size: 44.5px 17px; background-repeat: no-repeat; background-attachment: initial; background-origin: initial; background-clip: initial;\"></span></a></h3>\r\n<p class=\"mb10 smmary pdt5\" style=\"padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border: 0px; font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 13px; line-height: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #828282; margin-bottom: 10px !important; padding-top: 5px !important;\">XLSEMI XL4005E1 / Step-down type 800mV~30V 5A 5V~32V TO-263-5 DC-DC Converters ROHS</p>\r\n<p class=\"mb10 smmary pdt5\" style=\"padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border: 0px; font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates: inherit; font-variant-position: inherit; font-stretch: inherit; font-size: 13px; line-height: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; color: #828282; margin-bottom: 10px !important; padding-top: 5px !important;\">&nbsp;</p>','https://homemadeclub.co.kr/product/b-04-%EA%B0%95%EC%95%95-%EC%BB%A8%EB%B2%84%ED%84%B0-5a-xl4005/1626/category/51/display/1/','https://www.eleparts.co.kr/goods/view?no=6564471',1,1,4,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-08-01 21:58:09',1,'2024-08-01 21:58:09','192.168.219.103','','','','','','','','','','','',''),(641,-638,'',641,0,0,'','','html1','[ESP32] Getting Started with Seeed Studio XIAO ESP32S3 (Sense)','<p>&nbsp;</p>\r\n<div class=\"table-center\" style=\"box-sizing: border-box; display: table; margin: 0px auto; color: #e3e3e3; font-size: 16px; background-color: #1b1b1d;\">\r\n   <table align=\"center\" style=\"overflow: auto; display: block; margin-bottom: var(--ifm-spacing-vertical);\">\r\n      <tbody>\r\n         <tr style=\"box-sizing: border-box; background-color: var(--ifm-table-background); border-top: var(--ifm-table-border-width) solid var(--ifm-table-border-color);\">\r\n            <th style=\"box-sizing: border-box; border: var(--ifm-table-border-width) solid var(--ifm-table-border-color); padding: var(--ifm-table-cell-padding); background-color: var(--ifm-table-head-background); color: var(--ifm-table-head-color); font-weight: var(--ifm-table-head-font-weight);\">Seeed Studio XIAO ESP32S3</th>\r\n            <th style=\"box-sizing: border-box; border: var(--ifm-table-border-width) solid var(--ifm-table-border-color); padding: var(--ifm-table-cell-padding); background-color: var(--ifm-table-head-background); color: var(--ifm-table-head-color); font-weight: var(--ifm-table-head-font-weight);\">Seeed Studio XIAO ESP32S3 Sense</th>\r\n            </tr>\r\n         <tr style=\"box-sizing: border-box; background-color: var(--ifm-table-stripe-background); border-top: var(--ifm-table-border-width) solid var(--ifm-table-border-color);\">\r\n            <td style=\"box-sizing: border-box; border: var(--ifm-table-border-width) solid var(--ifm-table-border-color); padding: var(--ifm-table-cell-padding); color: var(--ifm-table-cell-color);\">\r\n               <div style=\"box-sizing: border-box; text-align: center;\"><img loading=\"lazy\" src=\"https://files.seeedstudio.com/wiki/SeeedStudio-XIAO-ESP32S3/img/xiaoesp32s3.jpg\" class=\"img_ev3q medium-zoom-image\" style=\"box-sizing: border-box; max-width: 100%; height: auto; cursor: zoom-in; width: 250px; transition: transform 0.3s cubic-bezier(0.2, 0, 0.2, 1) !important;\" /></div>\r\n               </td>\r\n            <td style=\"box-sizing: border-box; border: var(--ifm-table-border-width) solid var(--ifm-table-border-color); padding: var(--ifm-table-cell-padding); color: var(--ifm-table-cell-color);\">\r\n               <div style=\"box-sizing: border-box; text-align: center;\"><img loading=\"lazy\" src=\"https://files.seeedstudio.com/wiki/SeeedStudio-XIAO-ESP32S3/img/xiaoesp32s3sense.jpg\" class=\"img_ev3q medium-zoom-image\" style=\"box-sizing: border-box; max-width: 100%; height: auto; cursor: zoom-in; width: 250px; transition: transform 0.3s cubic-bezier(0.2, 0, 0.2, 1) !important;\" /></div>\r\n               </td>\r\n            </tr>\r\n         <tr style=\"box-sizing: border-box; background-color: var(--ifm-table-background); border-top: var(--ifm-table-border-width) solid var(--ifm-table-border-color);\">\r\n            <td style=\"box-sizing: border-box; border: var(--ifm-table-border-width) solid var(--ifm-table-border-color); padding: var(--ifm-table-cell-padding); color: var(--ifm-table-cell-color);\">\r\n               <div class=\"get_one_now_container\" style=\"box-sizing: border-box; display: flex; justify-content: space-around; text-align: center;\"><a href=\"https://www.seeedstudio.com/XIAO-ESP32S3-p-5627.html\" target=\"_blank\" class=\"get_one_now_item\" style=\"box-sizing: initial; transition: color var(--ifm-transition-fast) var(--ifm-transition-timing-default); color: #ffffff; text-decoration-line: none; background: rgb(78, 195, 84); border: 2px solid rgb(255, 255, 255); border-radius: 10px; display: inline-block; height: 28px; margin: 2px; padding: 10px; width: 195px;\"><span style=\"box-sizing: border-box; font-weight: var(--ifm-font-weight-bold);\"><span style=\"box-sizing: border-box;\"><font color=\"FFFFFF\" size=\"4\" style=\"box-sizing: border-box;\">Get One Now ','https://wiki.seeedstudio.com/xiao_esp32s3_getting_started/','',1,0,3,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-08-04 01:31:02',1,'2024-08-04 01:31:02','192.168.219.103','','','','','','','','','','','',''),(642,-639,'',642,0,0,'','','html1','[ETC] OV5640 Camera Board (C)','<p>&nbsp;</p>\r\n<h1 style=\"box-sizing: border-box; font-size: 30px; margin: 16px 0px 20px; font-weight: 500; line-height: 1.1; color: #333333; background-color: #ffffff;\"><span class=\"mw-headline\" id=\"Introduction\" style=\"box-sizing: border-box; text-shadow: none; color: #7eb128;\">Introduction</span></h1>\r\n<p style=\"box-sizing: border-box; margin: 7.5px 16px; overflow-wrap: break-word; line-height: 1.8; color: #333333; font-size: 16px; background-color: #ffffff;\">Digital camera based on OV5640, 5 Megapixel</p>\r\n<table style=\"border-spacing: 0px; background-color: #ffffff; max-width: 100%; height: auto; color: #333333; font-size: 16px;\">\r\n   <tbody style=\"box-sizing: border-box;\">\r\n      <tr style=\"box-sizing: border-box;\">\r\n         <td style=\"box-sizing: border-box; padding: 0px;\"><a target=\"_blank\" rel=\"nofollow noreferrer noopener\" class=\"external text\" href=\"https://www.waveshare.com/ov5640-camera-board-b.htm\" style=\"box-sizing: border-box; background: url(&quot;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAVklEQVR4Xn3PgQkAMQhDUXfqTu7kTtkpd5RA8AInfArtQ2iRXFWT2QedAfttj2FsPIOE1eCOlEuoWWjgzYaB/IkeGOrxXhqB+uA9Bfcm0lAZuh+YIeAD+cAqSz4kCMUAAAAASUVORK5CYII=&quot;) right center no-repeat; color: #337ab7; text-decoration-line: none; line-height: 1.6; padding-right: 13px;\">More</a></td>\r\n         </tr>\r\n      </tbody>\r\n   </table>\r\n<h1 style=\"box-sizing: border-box; font-size: 30px; margin: 16px 0px 20px; font-weight: 500; line-height: 1.1; color: #333333; background-color: #ffffff;\"><span class=\"mw-headline\" id=\"Resources\" style=\"box-sizing: border-box; text-shadow: none; color: #7eb128;\">Resources</span></h1>\r\n<ul style=\"box-sizing: border-box; margin: 1em 0px 1em 1.2em; padding: 0px 0px 0px 1em; color: #333333; font-size: 16px; background-color: #ffffff;\">\r\n   <li style=\"box-sizing: border-box; margin: 0.5em;\"><a target=\"_blank\" rel=\"nofollow noreferrer noopener\" class=\"external text\" href=\"https://files.waveshare.com/upload/5/52/OV5640_Camera_Board_%28C%29_User_Manual_EN.pdf\" style=\"box-sizing: border-box; background: url(&quot;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAVklEQVR4Xn3PgQkAMQhDUXfqTu7kTtkpd5RA8AInfArtQ2iRXFWT2QedAfttj2FsPIOE1eCOlEuoWWjgzYaB/IkeGOrxXhqB+uA9Bfcm0lAZuh+YIeAD+cAqSz4kCMUAAAAASUVORK5CYII=&quot;) right center no-repeat; color: #337ab7; text-decoration-line: none; line-height: 1.6; padding-right: 13px;\">User Manual</a></li>\r\n   <li style=\"box-sizing: border-box; margin: 0.5em;\"><a target=\"_blank\" rel=\"nofollow noreferrer noopener\" class=\"external text\" href=\"https://files.waveshare.com/upload/1/1e/OV5640-Camera-Board-Schematic.pdf\" style=\"box-sizing: border-box; background: url(&quot;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAVklEQVR4Xn3PgQkAMQhDUXfqTu7kTtkpd5RA8AInfArtQ2iRXFWT2QedAfttj2FsPIOE1eCOlEuoWWjgzYaB/IkeGOrxXhqB+uA9Bfcm0lAZuh+YIeAD+cAqSz4kCMUAAAAASUVORK5CYII=&quot;) right center no-repeat; color: #337ab7; text-decoration-line: none; line-height: 1.6; padding-right: 13px;\">Schematic</a></li>\r\n   <li style=\"box-sizing: border-box; margin: 0.5em;\"><a target=\"_blank\" rel=\"nofollow noreferrer noopener\" class=\"external text\" href=\"https://files.waveshare.com/upload/e/ee/OV5640-Camera-Board-%28C%29-Code.7z\" style=\"box-sizing: border-box; background: url(&quot;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAVklEQVR4Xn3PgQkAMQhDUXfqTu7kTtkpd5RA8AInfArtQ2iRXFWT2QedAfttj2FsPIOE1eCOlEuoWWjgzYaB/IkeGOrxXhqB+uA9Bfcm0lAZuh+YIeAD+cAqSz4kCMUAAAAASUVORK5CYII=&quot;) right center no-repeat; color: #337ab7; text-decoration-line: none; line-height: 1.6; padding-right: 13px;\">Code</a></li>\r\n   <li style=\"box-sizing: border-box; margin: 0.5em;\"><a target=\"_blank\" rel=\"nofollow noreferrer noopener\" class=\"external text\" href=\"https://files.waveshare.com/upload/4/41/UartDisplay.7z\" style=\"box-sizing: border-box; background: url(&quot;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAVklEQVR4Xn3PgQkAMQhDUXfqTu7kTtkpd5RA8AInfArtQ2iRXFWT2QedAfttj2FsPIOE1eCOlEuoWWjgzYaB/IkeGOrxXhqB+uA9Bfcm0lAZuh+YIeAD+cAqSz4kCMUAAAAASUVORK5CYII=&quot;) right center no-repeat; color: #337ab7; text-decoration-line: none; line-height: 1.6; padding-right: 13px;\">Software</a></li>\r\n   <li style=\"box-sizing: border-box; margin: 0.5em;\"><a target=\"_blank\" rel=\"nofollow noreferrer noopener\" class=\"external text\" href=\"https://files.waveshare.com/upload/d/da/OV5640_DataSheet.pdf\" style=\"box-sizing: border-box; background: url(&quot;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAVklEQVR4Xn3PgQkAMQhDUXfqTu7kTtkpd5RA8AInfArtQ2iRXFWT2QedAfttj2FsPIOE1eCOlEuoWWjgzYaB/IkeGOrxXhqB+uA9Bfcm0lAZuh+YIeAD+cAqSz4kCMUAAAAASUVORK5CYII=&quot;) right center no-repeat; color: #337ab7; text-decoration-line: none; line-height: 1.6; padding-right: 13px;\">Datasheets</a></li>\r\n   <li style=\"box-sizing: border-box; margin: 0.5em;\"><a target=\"_blank\" rel=\"nofollow noreferrer noopener\" class=\"external text\" href=\"https://files.waveshare.com/upload/d/da/OV5640_DataSheet.pdf\" style=\"box-sizing: border-box; background: url(&quot;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAVklEQVR4Xn3PgQkAMQhDUXfqTu7kTtkpd5RA8AInfArtQ2iRXFWT2QedAfttj2FsPIOE1eCOlEuoWWjgzYaB/IkeGOrxXhqB+uA9Bfcm0lAZuh+YIeAD+cAqSz4kCMUAAAAASUVORK5CYII=&quot;) right center no-repeat; color: #337ab7; text-decoration-line: none; line-height: 1.6; padding-right: 13px;\">Datasheets</a></li>\r\n   <li style=\"box-sizing: border-box; margin: 0.5em;\"><a target=\"_blank\" rel=\"nofollow noreferrer noopener\" class=\"external text\" href=\"https://files.waveshare.com/upload/b/bb/OV5640-A.pdf\" style=\"box-sizing: border-box; background: url(&quot;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAVklEQVR4Xn3PgQkAMQhDUXfqTu7kTtkpd5RA8AInfArtQ2iRXFWT2QedAfttj2FsPIOE1eCOlEuoWWjgzYaB/IkeGOrxXhqB+uA9Bfcm0lAZuh+YIeAD+cAqSz4kCMUAAAAASUVORK5CYII=&quot;) right center no-repeat; color: #337ab7; text-decoration-line: none; line-height: 1.6; padding-right: 13px;\">OV5640 Camera A Specification</a></li>\r\n   <li style=\"box-sizing: border-box; margin: 0.5em;\"><a target=\"_blank\" rel=\"nofollow noreferrer noopener\" class=\"external text\" href=\"https://files.waveshare.com/upload/e/e1/OV5640-B.pdf\" style=\"box-sizing: border-box; background: url(&quot;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAVklEQVR4Xn3PgQkAMQhDUXfqTu7kTtkpd5RA8AInfArtQ2iRXFWT2QedAfttj2FsPIOE1eCOlEuoWWjgzYaB/IkeGOrxXhqB+uA9Bfcm0lAZuh+YIeAD+cAqSz4kCMUAAAAASUVORK5CYII=&quot;) right center no-repeat; color: #337ab7; text-decoration-line: none; line-height: 1.6; padding-right: 13px;\">OV5640 Camera B Specification</a></li>\r\n   <li style=\"box-sizing: border-box; margin: 0.5em;\"><a target=\"_blank\" rel=\"nofollow noreferrer noopener\" class=\"external text\" href=\"https://files.waveshare.com/upload/c/c4/OV5640-C.pdf\" style=\"box-sizing: border-box; background: url(&quot;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAVklEQVR4Xn3PgQkAMQhDUXfqTu7kTtkpd5RA8AInfArtQ2iRXFWT2QedAfttj2FsPIOE1eCOlEuoWWjgzYaB/IkeGOrxXhqB+uA9Bfcm0lAZuh+YIeAD+cAqSz4kCMUAAAAASUVORK5CYII=&quot;) right center no-repeat; color: #337ab7; text-decoration-line: none; line-height: 1.6; padding-right: 13px;\">OV5640 Camera C Specification</a></li>\r\n   <li style=\"box-sizing: border-box; margin: 0.5em;\"><a target=\"_blank\" rel=\"nofollow noreferrer noopener\" class=\"external text\" href=\"https://files.waveshare.com/upload/c/cb/OV5640_camera_module_software_application_notes_1.3_Sonix.pdf\" style=\"box-sizing: border-box; background: url(&quot;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAVklEQVR4Xn3PgQkAMQhDUXfqTu7kTtkpd5RA8AInfArtQ2iRXFWT2QedAfttj2FsPIOE1eCOlEuoWWjgzYaB/IkeGOrxXhqB+uA9Bfcm0lAZuh+YIeAD+cAqSz4kCMUAAAAASUVORK5CYII=&quot;) right center no-repeat; color: #337ab7; text-decoration-line: none; line-height: 1.6; padding-right: 13px;\">Application notes</a></li>\r\n   <li style=\"box-sizing: border-box; margin: 0.5em;\"><a target=\"_blank\" rel=\"nofollow noreferrer noopener\" class=\"external text\" href=\"https://files.waveshare.com/upload/1/14/OmniVision_Technologies_Seril_Camera_Control_Bus%28SCCB%29_Specification.pdf\" style=\"box-sizing: border-box; background: url(&quot;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAVklEQVR4Xn3PgQkAMQhDUXfqTu7kTtkpd5RA8AInfArtQ2iRXFWT2QedAfttj2FsPIOE1eCOlEuoWWjgzYaB/IkeGOrxXhqB+uA9Bfcm0lAZuh+YIeAD+cAqSz4kCMUAAAAASUVORK5CYII=&quot;) right center no-repeat; color: #337ab7; text-decoration-line: none; line-height: 1.6; padding-right: 13px;\">SCCB Specification</a></li>\r\n   </ul>\r\n<h1 style=\"box-sizing: border-box; font-size: 30px; margin: 16px 0px 20px; font-weight: 500; line-height: 1.1; color: #333333; background-color: #ffffff;\"><span class=\"mw-headline\" id=\"FAQ\" style=\"box-sizing: border-box; text-shadow: none; color: #7eb128;\">FAQ</span></h1>\r\n<div class=\"panel-group\" style=\"box-sizing: border-box; margin-bottom: 8px; color: #333333; font-size: 16px; background-color: #ffffff;\">\r\n   <div class=\"panel panel-default\" style=\"box-sizing: border-box; box-shadow: rgb(221, 221, 221) 1px 1px 1px; margin-bottom: 0px; border: 1px solid rgb(221, 221, 221); border-radius: 4px;\">\r\n      <div class=\"panel-heading\" style=\"box-sizing: border-box; padding: 10px 15px; border-bottom: 0px rgb(221, 221, 221); border-top-left-radius: 3px; border-top-right-radius: 3px; background-image: linear-gradient(rgb(245, 245, 245) 0px, rgb(232, 232, 232) 100%); background-repeat: repeat-x; background-color: #f5f5f5; border-top-color: #dddddd; border-right-color: #dddddd; border-left-color: #dddddd;\">\r\n         <h4 class=\"panel-title\" style=\"box-sizing: border-box; font-family: inherit; font-weight: 500; line-height: 19px; color: #7eb128; margin: 15px 10px; font-size: 17px; border-top: none; border-right: none; border-bottom: none; border-image: initial; padding: 2px 8px; background-color: rgba(208, 208, 208, 0); border-left: none !important;\"><a data-toggle=\"collapse\" data-parent=\"#accordion\" href=\"https://www.waveshare.com/wiki/OV5640_Camera_Board_(C)#accordion1\" style=\"box-sizing: border-box; background-color: transparent; text-decoration-line: none; line-height: 1.6;\" target=\"_blank\"><b style=\"box-sizing: border-box;\">Question:</b>How do I connect it to an STM32 microcontroller?</a></h4>\r\n         </div>\r\n      <div id=\"accordion1\" class=\"panel-collapse collapse in\" style=\"box-sizing: border-box;\">\r\n         <div class=\"panel-body\" style=\"box-sizing: border-box; padding: 8px; border-top: 1px solid rgb(221, 221, 221);\">\r\n            <div style=\"box-sizing: border-box;\">&nbsp;<b style=\"box-sizing: border-box;\">Answer:</b></div>\r\n            <div style=\"box-sizing: border-box;\">\r\n               <p style=\"box-sizing: border-box; margin: 7.5px 16px; overflow-wrap: break-word; line-height: 1.8;\">Take STM32H743I for example, the wiring is as follows:<br style=\"box-sizing: border-box;\" /><a href=\"https://www.waveshare.com/wiki/File:OV5680_Camera_c_FAQ.png\" class=\"image\" style=\"box-sizing: border-box; background-color: transparent; color: #337ab7; text-decoration-line: none; line-height: 1.6;\" target=\"_blank\"><img alt=\"OV5680 Camera c FAQ.png\" src=\"https://www.waveshare.com/w/upload/2/24/OV5680_Camera_c_FAQ.png\" decoding=\"async\" loading=\"lazy\" width=\"600\" data-file-width=\"600\" data-file-height=\"243\" style=\"box-sizing: border-box; border: none; vertical-align: middle; max-width: 100%; height: auto;\" /></a></p>\r\n               </div>\r\n            <p style=\"box-sizing: border-box; margin: 7.5px 16px; overflow-wrap: break-word; line-height: 1.8;\">&nbsp;</p>\r\n            </div>\r\n         </div>\r\n      </div>\r\n   </div>\r\n<p style=\"box-sizing: border-box; margin: 7.5px 16px; overflow-wrap: break-word; line-height: 1.8; color: #333333; font-size: 16px; background-color: #ffffff;\"><br style=\"box-sizing: border-box;\" /></p>\r\n<div class=\"panel-group\" style=\"box-sizing: border-box; margin-bottom: 8px; color: #333333; font-size: 16px; background-color: #ffffff;\">\r\n   <div class=\"panel panel-default\" style=\"box-sizing: border-box; box-shadow: rgb(221, 221, 221) 1px 1px 1px; margin-bottom: 0px; border: 1px solid rgb(221, 221, 221); border-radius: 4px;\">\r\n      <div class=\"panel-heading\" style=\"box-sizing: border-box; padding: 10px 15px; border-bottom: 0px rgb(221, 221, 221); border-top-left-radius: 3px; border-top-right-radius: 3px; background-image: linear-gradient(rgb(245, 245, 245) 0px, rgb(232, 232, 232) 100%); background-repeat: repeat-x; background-color: #f5f5f5; border-top-color: #dddddd; border-right-color: #dddddd; border-left-color: #dddddd;\">\r\n         <h4 class=\"panel-title\" style=\"box-sizing: border-box; font-family: inherit; font-weight: 500; line-height: 19px; color: #7eb128; margin: 15px 10px; font-size: 17px; border-top: none; border-right: none; border-bottom: none; border-image: initial; padding: 2px 8px; background-color: rgba(208, 208, 208, 0); border-left: none !important;\"><a data-toggle=\"collapse\" data-parent=\"#accordion\" href=\"https://www.waveshare.com/wiki/OV5640_Camera_Board_(C)#accordion2\" style=\"box-sizing: border-box; background-color: transparent; text-decoration-line: none; line-height: 1.6;\" target=\"_blank\"><b style=\"box-sizing: border-box;\">Question:</b>Should I use a 50 MHz oscillator or a 24 MHz oscillator like in the schematic?</a></h4>\r\n         </div>\r\n      <div id=\"accordion2\" class=\"panel-collapse collapse in\" style=\"box-sizing: border-box;\">\r\n         <div class=\"panel-body\" style=\"box-sizing: border-box; padding: 8px; border-top: 1px solid rgb(221, 221, 221);\">\r\n            <div style=\"box-sizing: border-box;\">&nbsp;<b style=\"box-sizing: border-box;\">Answer:</b></div>\r\n            <div style=\"box-sizing: border-box;\">\r\n               <p style=\"box-sizing: border-box; margin: 7.5px 16px; overflow-wrap: break-word; line-height: 1.8;\">You should use a 24 MHz oscillator.</p>\r\n               </div>\r\n            </div>\r\n         </div>\r\n      </div>\r\n   </div>','https://www.waveshare.com/wiki/OV5640_Camera_Board_(C)','',0,0,2,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-08-07 22:46:31',2,'2024-08-07 22:46:31','192.168.219.103','','','','','','','','','','','',''),(643,-640,'',643,0,0,'','','html1','[ETC] Crowtail- PH Sensor','<h1 style=\"box-sizing: inherit; color: var(--md-default-fg-color--light); line-height: 1.3; margin: 0px 0px 1.25em; font-weight: 300; letter-spacing: -0.01em; background-color: #1e2129;\">Crowtail- PH Sensor</h1>\r\n<h2 id=\"description\" style=\"box-sizing: inherit; font-weight: 300; letter-spacing: -0.01em; font-size: 1.5625em; line-height: 1.4; margin: 1.6em 0px 0.64em; --md-scroll-margin: 3.6rem; --md-scroll-offset: 0.2rem; scroll-margin-top: calc(var(--md-scroll-margin) - var(--md-scroll-offset)); color: rgba(226, 228, 233, 0.82); background-color: #1e2129;\">Description<a class=\"headerlink\" href=\"https://www.elecrow.com/wiki/crowtail--ph-sensor.html?h=crt14016#description\" title=\"Permanent link\" style=\"box-sizing: inherit; -webkit-tap-highlight-color: transparent; text-decoration-line: none; word-break: break-word; transition: color 0.25s, opacity 125ms; display: inline-block; opacity: 1; margin-left: 0.5rem;\" target=\"_blank\">¶</a></h2>\r\n<hr style=\"box-sizing: initial; border-top: 0px; border-right: 0px; border-bottom: .05rem solid var(--md-default-fg-color--lightest); border-left: 0px; border-image: initial; display: flow-root; height: 0.05rem; overflow: visible; padding: 0px; margin: 1.5em 0px; color: rgba(226, 228, 233, 0.82); font-size: 16px; background-color: #1e2129;\" />\r\n<p style=\"box-sizing: inherit; color: rgba(226, 228, 233, 0.82); font-size: 16px; background-color: #1e2129;\">The Crowtail-PH sensor is a module that can measure aqueous solution PH(with combination PH electrode). It can output signal which corresponding to the hydrogen ion concentration that measured by PH electrode. Because it can be directly connected to controller,and then you can observe the PH value at any time.</p>\r\n<p style=\"box-sizing: inherit; color: rgba(226, 228, 233, 0.82); font-size: 16px; background-color: #1e2129;\">Model:&nbsp;<a href=\"https://www.elecrow.com/crowtail-ph-sensor.html\" style=\"box-sizing: inherit; -webkit-tap-highlight-color: transparent; text-decoration-line: none; word-break: break-word; transition: color 125ms;\" target=\"_blank\"><mark data-md-highlight=\"\" style=\"box-sizing: inherit; background-color: blue; -webkit-box-decoration-break: clone; color: #ffffff; word-break: break-word;\">CRT14016</mark>P</a></p>\r\n<p style=\"box-sizing: inherit; color: rgba(226, 228, 233, 0.82); font-size: 16px; background-color: #1e2129;\"><img alt=\"PH Sensor.jpg\" loading=\"lazy\" src=\"https://www.elecrow.com/wiki/image/thumb/3/3f/PH_Sensor.jpg/500px-PH_Sensor.jpg\" style=\"box-sizing: inherit; border-style: none; height: auto; max-width: 100%;\" /></p>\r\n<p style=\"box-sizing: inherit; color: rgba(226, 228, 233, 0.82); font-size: 16px; background-color: #1e2129;\">&nbsp;</p>\r\n<h2 id=\"features\" style=\"box-sizing: inherit; font-weight: 300; letter-spacing: -0.01em; font-size: 1.5625em; line-height: 1.4; margin: 1.6em 0px 0.64em; color: rgba(226, 228, 233, 0.82); background-color: #1e2129;\">Features<a class=\"headerlink\" href=\"https://www.elecrow.com/wiki/crowtail--ph-sensor.html?h=crt14016#features\" title=\"Permanent link\" style=\"box-sizing: inherit; -webkit-tap-highlight-color: transparent; text-decoration-line: none; word-break: break-word; transition: color 0.25s, opacity 125ms; display: inline-block; opacity: 0; margin-left: 0.5rem;\" target=\"_blank\">¶</a></h2>\r\n<hr style=\"box-sizing: initial; border-top: 0px; border-right: 0px; border-bottom: .05rem solid var(--md-default-fg-color--lightest); border-left: 0px; border-image: initial; display: flow-root; height: 0.05rem; overflow: visible; padding: 0px; margin: 1.5em 0px; color: rgba(226, 228, 233, 0.82); font-size: 16px; background-color: #1e2129;\" />\r\n<ul style=\"box-sizing: inherit; margin-bottom: 1em; margin-top: 1em; padding: 0px; margin-left: 0.625em; display: flow-root; color: rgba(226, 228, 233, 0.82); font-size: 16px; background-color: #1e2129;\">\r\n   <li style=\"box-sizing: inherit; margin-bottom: 0.5em; margin-left: 1.25em;\">Range of measurement: (0-14) pH</li>\r\n   <li style=\"box-sizing: inherit; margin-bottom: 0.5em; margin-left: 1.25em;\">Measuring temperature: (0-60) C</li>\r\n   <li style=\"box-sizing: inherit; margin-bottom: 0.5em; margin-left: 1.25em;\">Response time: less than 2min</li>\r\n   <li style=\"box-sizing: inherit; margin-bottom: 0.5em; margin-left: 1.25em;\">The plastic barrier protection of the fragile part of the electrode can not be broken and can be used as a stirring rod when measuring</li>\r\n   <li style=\"box-sizing: inherit; margin-bottom: 0px; margin-left: 1.25em;\">Strong anti-interference performance: the electrode is full screen type to prevent interference of external electric field when measuring</li>\r\n   </ul>\r\n<h2 id=\"specification\" style=\"box-sizing: inherit; font-weight: 300; letter-spacing: -0.01em; font-size: 1.5625em; line-height: 1.4; margin: 1.6em 0px 0.64em; color: rgba(226, 228, 233, 0.82); background-color: #1e2129;\">Specification<a class=\"headerlink\" href=\"https://www.elecrow.com/wiki/crowtail--ph-sensor.html?h=crt14016#specification\" title=\"Permanent link\" style=\"box-sizing: inherit; -webkit-tap-highlight-color: transparent; text-decoration-line: none; word-break: break-word; transition: color 0.25s, opacity 125ms; display: inline-block; opacity: 0; margin-left: 0.5rem;\" target=\"_blank\">¶</a></h2>\r\n<hr style=\"box-sizing: initial; border-top: 0px; border-right: 0px; border-bottom: .05rem solid var(--md-default-fg-color--lightest); border-left: 0px; border-image: initial; display: flow-root; height: 0.05rem; overflow: visible; padding: 0px; margin: 1.5em 0px; color: rgba(226, 228, 233, 0.82); font-size: 16px; background-color: #1e2129;\" />\r\n<p style=\"box-sizing: inherit; color: rgba(226, 228, 233, 0.82); font-size: 16px; background-color: #1e2129;\">Board demensions(mm):58.8(L)x20.0(W)x27.0(H)</p>\r\n<div class=\"md-typeset__scrollwrap\" style=\"box-sizing: inherit; margin: 1em -0.8rem; overflow-x: auto; touch-action: auto; color: rgba(226, 228, 233, 0.82); font-size: 16px; background-color: #1e2129;\">\r\n   <div class=\"md-typeset__table\" style=\"box-sizing: inherit; display: inline-block; margin-bottom: 0.5em; padding: 0px 0.8rem;\">\r\n      <table style=\"box-sizing: inherit; border-collapse: initial; border-spacing: 0px; display: inline-block; margin: 0px; overflow: auto; width: 322.104px; background-color: var(--md-default-bg-color); border: .05rem solid var(--md-typeset-table-color); border-radius: 0.1rem; font-size: 0.64rem; max-width: 100%; touch-action: auto;\">\r\n         <thead style=\"box-sizing: inherit;\">\r\n            <tr style=\"box-sizing: inherit;\">\r\n               <th style=\"box-sizing: inherit; vertical-align: top; min-width: 5rem; padding: 0.9375em 1.25em; text-align: center;\">Item</th>\r\n               <th style=\"box-sizing: inherit; vertical-align: top; min-width: 5rem; padding: 0.9375em 1.25em; text-align: center;\">Description</th>\r\n               </tr>\r\n            </thead>\r\n         <tbody style=\"box-sizing: inherit;\">\r\n            <tr style=\"box-sizing: inherit; transition: background-color 125ms;\">\r\n               <td style=\"box-sizing: inherit; vertical-align: middle; border-top: .05rem solid var(--md-typeset-table-color); padding: 0.9375em 1.25em; text-align: center;\">LED Control Mode</td>\r\n               <td style=\"box-sizing: inherit; vertical-align: middle; border-top: .05rem solid var(--md-typeset-table-color); padding: 0.9375em 1.25em; text-align: center;\">Analog Pin of Arduino</td>\r\n               </tr>\r\n            <tr style=\"box-sizing: inherit; transition: background-color 125ms;\">\r\n               <td style=\"box-sizing: inherit; vertical-align: middle; border-top: .05rem solid var(--md-typeset-table-color); padding: 0.9375em 1.25em; text-align: center;\">Working Voltage</td>\r\n               <td style=\"box-sizing: inherit; vertical-align: middle; border-top: .05rem solid var(--md-typeset-table-color); padding: 0.9375em 1.25em; text-align: center;\">5V</td>\r\n               </tr>\r\n            <tr style=\"box-sizing: inherit; transition: background-color 125ms;\">\r\n               <td style=\"box-sizing: inherit; vertical-align: middle; border-top: .05rem solid var(--md-typeset-table-color); padding: 0.9375em 1.25em; text-align: center;\">Supply Mode</td>\r\n               <td style=\"box-sizing: inherit; vertical-align: middle; border-top: .05rem solid var(--md-typeset-table-color); padding: 0.9375em 1.25em; text-align: center;\">Crowtail Interface</td>\r\n               </tr>\r\n            <tr style=\"box-sizing: inherit; transition: background-color 125ms;\">\r\n               <td style=\"box-sizing: inherit; vertical-align: middle; border-top: .05rem solid var(--md-typeset-table-color); padding: 0.9375em 1.25em; text-align: center;\">Range of measurement</td>\r\n               <td style=\"box-sizing: inherit; vertical-align: middle; border-top: .05rem solid var(--md-typeset-table-color); padding: 0.9375em 1.25em; text-align: center;\">0-14 pH</td>\r\n               </tr>\r\n            <tr style=\"box-sizing: inherit; transition: background-color 125ms;\">\r\n               <td style=\"box-sizing: inherit; vertical-align: middle; border-top: .05rem solid var(--md-typeset-table-color); padding: 0.9375em 1.25em; text-align: center;\">Measuring temperature</td>\r\n               <td style=\"box-sizing: inherit; vertical-align: middle; border-top: .05rem solid var(--md-typeset-table-color); padding: 0.9375em 1.25em; text-align: center;\">0-60 C</td>\r\n               </tr>\r\n            </tbody>\r\n         </table>\r\n      </div>\r\n   </div>','https://www.elecrow.com/wiki/crowtail--ph-sensor.html?h=crt14016#description','',1,0,3,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-08-08 13:13:17',1,'2024-08-08 13:13:17','14.41.12.104','','','','','','','','','','','',''),(644,-641,'',644,0,0,'','','html1','[ESP32] How to do Object Detection using ESP32-CAM and Edge Impulse YOLO Model','<p><iframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/bZIKVaD3dRk?si=AR_rr8brTXJSfQnk\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen=\"\"></iframe></p>','https://www.youtube.com/watch?v=bZIKVaD3dRk','',0,0,1,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-08-13 07:12:28',0,'2024-08-13 07:12:28','14.41.12.104','','','','','','','','','','','',''),(645,-642,'',645,0,0,'','','html1','[Arduino] 12-60V Constant Current LED Driver + PWM Dimmer','<p>&nbsp;12-60V Constant Current LED Driver + PWM Dimmer</p>','https://www.circuitlab.com/editor/#?id=2fh8wz','',1,0,5,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-08-14 15:28:10',1,'2024-08-14 15:28:10','182.210.89.25','','','','','','','','','','','',''),(646,-643,'',646,0,0,'','','html1','[Arduino] MOSFET Module LR7843','<h3 data-v-182c285f=\"\" style=\"background-repeat: no-repeat; box-sizing: inherit; padding: 0px; margin: 0px; color: rgba(0, 0, 0, 0.87); font-family: &quot;SF Pro Display&quot;, -apple-system, BlinkMacSystemFont, Roboto, &quot;Segoe UI&quot;, Helvetica, Arial, sans-serif, &quot;Apple Color Emoji&quot;, &quot;Segoe UI Emoji&quot;, &quot;Segoe UI Symbol&quot;; background-color: #ffffff;\">Description</h3>\r\n<div data-v-182c285f=\"\" style=\"background-repeat: no-repeat; box-sizing: inherit; padding: 0px; margin: 0px; color: rgba(0, 0, 0, 0.87); font-family: &quot;SF Pro Display&quot;, -apple-system, BlinkMacSystemFont, Roboto, &quot;Segoe UI&quot;, Helvetica, Arial, sans-serif, &quot;Apple Color Emoji&quot;, &quot;Segoe UI Emoji&quot;, &quot;Segoe UI Symbol&quot;; font-size: 16px; background-color: #ffffff;\">\r\n   <p style=\"background-repeat: no-repeat; box-sizing: inherit; padding: 0px; margin-bottom: 16px;\">The LR7843 N-Channel logic compatible MOSFET with ultra-low Rds(on) which this&nbsp;&nbsp;MOSFET module is Based on&nbsp;for moderate to higher current low-side switching applications of up to 15A continuous. Excellent as a PWM Motor Driver Unit</p>\r\n   <p style=\"background-repeat: no-repeat; box-sizing: inherit; padding: 0px; margin-bottom: 16px;\"><span style=\"background-repeat: no-repeat; box-sizing: inherit; padding: 0px; margin: 0px; font-weight: bolder;\">Package Includes:</span></p>\r\n   <ul style=\"background-repeat: no-repeat; box-sizing: inherit; padding: 0px 0px 0px 24px; margin: 0px;\">\r\n      <li style=\"background-repeat: no-repeat; box-sizing: inherit; padding: 0px; margin: 0px;\">LR7843 MOSFET Control Module</li>\r\n      <li style=\"background-repeat: no-repeat; box-sizing: inherit; padding: 0px; margin: 0px;\">3-pin Screw Terminal</li>\r\n      <li style=\"background-repeat: no-repeat; box-sizing: inherit; padding: 0px; margin: 0px;\">2-pin Screw Terminal</li>\r\n      <li style=\"background-repeat: no-repeat; box-sizing: inherit; padding: 0px; margin: 0px;\">The small male header strip</li>\r\n      </ul>\r\n   <p style=\"background-repeat: no-repeat; box-sizing: inherit; padding: 0px; margin-bottom: 16px;\"><span style=\"background-repeat: no-repeat; box-sizing: inherit; padding: 0px; margin: 0px; font-weight: bolder;\">Features:</span></p>\r\n   <ul style=\"background-repeat: no-repeat; box-sizing: inherit; padding: 0px 0px 0px 24px; margin: 0px;\">\r\n      <li style=\"background-repeat: no-repeat; box-sizing: inherit; padding: 0px; margin: 0px;\">These modules\' designs include an optocoupler&nbsp;on the input, which biases the input from the output load voltage and is independent of the logic levels used for the drive signal. A 3.3V input, for example, will drive the same amount of current as a 5V input.</li>\r\n      <li style=\"background-repeat: no-repeat; box-sizing: inherit; padding: 0px; margin: 0px;\">\r\n         <p style=\"background-repeat: no-repeat; box-sizing: inherit; padding: 0px; margin-bottom: 16px;\">The modules use the LR7843 N-channel MOSFET, which has a typical Rds(on) resistance of 3.3m.</p>\r\n         </li>\r\n      <li style=\"background-repeat: no-repeat; box-sizing: inherit; padding: 0px; margin: 0px;\">With a load voltage of 12V, these modules can support approximately 15A of continuous current. When driven by PWM, the maximum peak current can reach 30A or higher.</li>\r\n      <li style=\"background-repeat: no-repeat; box-sizing: inherit; padding: 0px; margin: 0px;\">It should be noted that to avoid potential damage when using the module with inductive loads, an external fly-back diode should be used.</li>\r\n      </ul>\r\n   </div>','https://techmaze.romman.store/product/99188336','',3,0,7,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-08-15 16:01:15',1,'2024-08-15 16:01:15','14.41.12.104','','','','','','','','','','','',''),(647,-644,'',647,0,0,'','','html1','[Linux] 오드로이드(M1)에 우분투 설치(Netboot installer) + APM 설치','<p><span style=\"font-size: 18px;\">1. 오드로이드에 랜 + 키보드 연결</span></p>\r\n<p><span style=\"font-size: 18px;\">2. 부팅후 \"Exit to shell\"</span></p>\r\n<p><span style=\"font-size: 18px;\">3. &gt;udhcpc //IP 할당</span></p>\r\n<p><span style=\"font-size: 18px;\">4. &gt;netboot_defalut //입력 후, exit</span></p>\r\n<p><span style=\"font-size: 18px;\">5. 설치할 운영체제 선택 //이후 일반 우분투 설치와 동일</span></p>\r\n<p>--------------------------------------------------------------------------------------------------------------------------------------------------------------</p>\r\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\" style=\"box-sizing: border-box; margin: 40px 0px; padding: 0px 0px 0px 20px; border-color: var(--nv-text-color); border-style: solid; border-width: 0px 0px 0px 4px; overflow-wrap: break-word; color: #272626; font-size: 16px; background-color: #ffffff;\">\r\n   <p class=\"has-medium-font-size\" style=\"box-sizing: border-box; margin-bottom: 10px; padding: 0px; font-size: var(--wp--preset--font-size--medium) !important;\"><strong style=\"box-sizing: border-box;\">웹 호스팅 패널 설치하기</strong></p>\r\n   </blockquote>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">웹 호스팅 패널은 다양한 프로그램이 존재합니다. 유료 프로그램은 대표적으로 cPanel, Plesk가 있고 무료로는 ISPConfig, Webmin, CloudPanel, HestiaCP가 있습니다.</p>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">무료 웹 호스팅 제어판 중에서 기능이 가장 뛰어난 프로그램은 ISPConfig이지만 아쉽게도 ARM을 지원하지 않아 설치 도중 중단되는 문제가 발생합니다. 그리고 추후 ARM을 지원할 계획이 없다고 합니다.</p>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">ARM을 지원하는 웹 호스팅 패널은 CloudPanel, HestiaCP, TinyCP가 있습니다. CloudPanel은 UI가 좋지만 기능이 부족하고, TinyCP는 전반적으로 불안정합니다. HestiaCP는 UI가 좋지 못하지만 기능이 매우 강력하여 이 글은 HestiaCP 설치를 다룹니다.</p>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\"><strong style=\"box-sizing: border-box;\"><mark class=\"has-inline-color\" style=\"box-sizing: border-box; background-image: initial; background-position: 0px center; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; color: #ff0000;\">설치 전 주의사항</mark></strong></p>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">• 우분투 22.04 ARM64(aarch64) 기준으로 작성되었습니다. (x64도 동일한 방법으로 설치할 수 있습니다.)</p>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">• 우분투 20.04 또는 22.04를 설치해 주세요. 데비안 10, 11도 가능합니다. (기존에 리눅스가 설치되어 있는 경우 다른 프로그램과 충돌이 발생할 수 있으니 포맷을 진행해 주세요.)</p>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">• 오드로이드 우분투 22.04 + 그놈 데스크톱이 설치된 환경에 HestiaCP를 설치하면 그놈 데스크톱 잠금 화면에서 무한 로그인이 발생합니다. GUI를 사용하려면 다른 데스크톱 환경을 설치하세요. (Xubuntu 데스크톱 -&gt; 정상 작동)</p>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">• 웹 호스팅 제어판을 관리할 도메인이 필요합니다. 서브 도메인을 만들고 A 레코드 또는 CNAME을 설정해 주세요. (루트 도메인을 사용해도 되지만 가급적이면 서브 도메인 사용을 권장합니다.)</p>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">• 웹 호스팅 제어판을 관리할 도메인에 WAF (클라우드플레어 등)이 적용되어 있으면 정상적으로 작동하지 않습니다.</p>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">• 공유기 포트포워딩에서 21, 80, 443, 8083 포트를 개방해 주세요.</p>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">• 포트포워딩 방법을 모른다면 PC(또는 싱글보드 컴퓨터)를 공유기가 아닌 모뎀에 연결해 주세요.</p>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">• 라즈베리파이, 오드로이드 등의 싱글보드 컴퓨터에 설치하는 경우 운영체제를 SSD나 고성능 USB에 설치하세요. (SD 카드에 운영체제를 설치하면 디스크 I/O 병목현상 때문에 웹 호스팅 제어판이 정상적으로 작동하지 않을 수 있습니다.)</p>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">• HestiaCP는 웹 서버로는 아파치, 프록시 서버로는 Nginx를 사용합니다.</p>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">• HestiaCP 설치 전 공식 문서를 확인하고 싶으면 다음 링크를 참고하세요. (<a href=\"https://www.hestiacp.com/\" target=\"_blank\" rel=\"noopener\" style=\"box-sizing: border-box; --linkdeco: underline; cursor: pointer; text-decoration: var(--linkdeco);\">Hestia Control Panel</a>)</p>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">이제 본격적으로 설치를 진행합니다.</p>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 50px;\">&nbsp;</div>\r\n<div class=\"wp-block-image\" style=\"box-sizing: border-box; margin-bottom: var(--img-m); color: #272626; font-size: 16px; background-color: #ffffff;\">\r\n   <figure class=\"aligncenter size-large\" style=\"margin: 0px auto; box-sizing: border-box; padding: 0px; clear: both; display: table; text-align: center;\"><img decoding=\"async\" width=\"1024\" src=\"https://umirt.com/wp-content/uploads/2023/01/ARM_1-1024x576.png\" alt=\"\" class=\"wp-image-752\" srcset=\"https://umirt.com/wp-content/uploads/2023/01/ARM_1-1024x576.png 1024w, https://umirt.com/wp-content/uploads/2023/01/ARM_1-300x169.png 300w, https://umirt.com/wp-content/uploads/2023/01/ARM_1-768x432.png 768w, https://umirt.com/wp-content/uploads/2023/01/ARM_1-1536x864.png 1536w, https://umirt.com/wp-content/uploads/2023/01/ARM_1.png 1920w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" style=\"box-sizing: border-box; height: auto; max-width: 100%; vertical-align: bottom;\" /></figure>\r\n   </div>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 15px;\">&nbsp;</div>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">SSH로 접속하거나 터미널을 실행한 후&nbsp;<strong style=\"box-sizing: border-box;\"><mark class=\"has-inline-color\" style=\"box-sizing: border-box; background-image: initial; background-position: 0px center; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; color: #ff0000;\">sudo su –</mark></strong>&nbsp;를 입력합니다.</p>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 70px;\">&nbsp;</div>\r\n<div class=\"wp-block-image\" style=\"box-sizing: border-box; margin-bottom: var(--img-m); color: #272626; font-size: 16px; background-color: #ffffff;\">\r\n   <figure class=\"aligncenter size-large\" style=\"margin: 0px auto; box-sizing: border-box; padding: 0px; clear: both; display: table; text-align: center;\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" src=\"https://umirt.com/wp-content/uploads/2023/01/ARM_2-1024x576.png\" alt=\"\" class=\"wp-image-754\" srcset=\"https://umirt.com/wp-content/uploads/2023/01/ARM_2-1024x576.png 1024w, https://umirt.com/wp-content/uploads/2023/01/ARM_2-300x169.png 300w, https://umirt.com/wp-content/uploads/2023/01/ARM_2-768x432.png 768w, https://umirt.com/wp-content/uploads/2023/01/ARM_2-1536x864.png 1536w, https://umirt.com/wp-content/uploads/2023/01/ARM_2.png 1920w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" style=\"box-sizing: border-box; height: auto; max-width: 100%; vertical-align: bottom;\" /></figure>\r\n   </div>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 15px;\">&nbsp;</div>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\"><strong style=\"box-sizing: border-box;\"><mark class=\"has-inline-color\" style=\"box-sizing: border-box; background-image: initial; background-position: 0px center; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; color: #ff0000;\">wget https://raw.githubusercontent.com/hestiacp/hestiacp/release/install/hst-install.sh</mark></strong>를 입력합니다.</p>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 70px;\">&nbsp;</div>\r\n<div class=\"wp-block-image\" style=\"box-sizing: border-box; margin-bottom: var(--img-m); color: #272626; font-size: 16px; background-color: #ffffff;\">\r\n   <figure class=\"aligncenter size-large\" style=\"margin: 0px auto; box-sizing: border-box; padding: 0px; clear: both; display: table; text-align: center;\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" src=\"https://umirt.com/wp-content/uploads/2023/01/ARM_4-1024x576.png\" alt=\"\" class=\"wp-image-755\" srcset=\"https://umirt.com/wp-content/uploads/2023/01/ARM_4-1024x576.png 1024w, https://umirt.com/wp-content/uploads/2023/01/ARM_4-300x169.png 300w, https://umirt.com/wp-content/uploads/2023/01/ARM_4-768x432.png 768w, https://umirt.com/wp-content/uploads/2023/01/ARM_4-1536x864.png 1536w, https://umirt.com/wp-content/uploads/2023/01/ARM_4.png 1920w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" style=\"box-sizing: border-box; height: auto; max-width: 100%; vertical-align: bottom;\" /></figure>\r\n   </div>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 15px;\">&nbsp;</div>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">간편한 설치를 위해 자동 설치로 설치를 진행합니다.</p>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\"><strong style=\"box-sizing: border-box;\"><mark class=\"has-inline-color\" style=\"box-sizing: border-box; background-image: initial; background-position: 0px center; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; color: #ff0000;\">bash hst-install.sh –interactive no –email&nbsp;</mark><mark class=\"has-inline-color has-neve-link-color-color\" style=\"box-sizing: border-box; background-image: initial; background-position: 0px center; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;\">email@domain.tld</mark><mark class=\"has-inline-color\" style=\"box-sizing: border-box; background-image: initial; background-position: 0px center; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; color: #ff0000;\">&nbsp;–password</mark><mark class=\"has-inline-color has-neve-link-color-color\" style=\"box-sizing: border-box; background-image: initial; background-position: 0px center; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;\">&nbsp;p4ssw0rd</mark><mark class=\"has-inline-color\" style=\"box-sizing: border-box; background-image: initial; background-position: 0px center; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; color: #ff0000;\">&nbsp;–hostname&nbsp;</mark><mark class=\"has-inline-color has-neve-link-color-color\" style=\"box-sizing: border-box; background-image: initial; background-position: 0px center; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial;\">hostname.domain.tld</mark><mark class=\"has-inline-color\" style=\"box-sizing: border-box; background-image: initial; background-position: 0px center; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; color: #ff0000;\">&nbsp;-f</mark></strong></p>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">파란색 부분을 본인 이메일, 원하는 패스워드, 웹 호스팅 제어판을 관리할 서브 도메인으로 바꿉니다.</p>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">&nbsp;</p>\r\n<div class=\"wp-block-image\" style=\"box-sizing: border-box; margin-bottom: var(--img-m); color: #272626; font-size: 16px; background-color: #ffffff;\">\r\n   <figure class=\"aligncenter size-large\" style=\"margin: 0px auto; box-sizing: border-box; padding: 0px; clear: both; display: table; text-align: center;\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" src=\"https://umirt.com/wp-content/uploads/2023/01/ARM_5-1024x576.png\" alt=\"\" class=\"wp-image-756\" srcset=\"https://umirt.com/wp-content/uploads/2023/01/ARM_5-1024x576.png 1024w, https://umirt.com/wp-content/uploads/2023/01/ARM_5-300x169.png 300w, https://umirt.com/wp-content/uploads/2023/01/ARM_5-768x432.png 768w, https://umirt.com/wp-content/uploads/2023/01/ARM_5-1536x864.png 1536w, https://umirt.com/wp-content/uploads/2023/01/ARM_5.png 1920w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" style=\"box-sizing: border-box; height: auto; max-width: 100%; vertical-align: bottom;\" /></figure>\r\n   </div>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 15px;\">&nbsp;</div>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">HestiaCP 설치가 진행 중입니다. 설치가 완료되려면 10~15분 정도 소요됩니다. 커피 한 잔의 여유를 즐기면서 기다리세요.</p>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 70px;\">&nbsp;</div>\r\n<div class=\"wp-block-image\" style=\"box-sizing: border-box; margin-bottom: var(--img-m); color: #272626; font-size: 16px; background-color: #ffffff;\">\r\n   <figure class=\"aligncenter size-large\" style=\"margin: 0px auto; box-sizing: border-box; padding: 0px; clear: both; display: table; text-align: center;\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" src=\"https://umirt.com/wp-content/uploads/2023/01/ARM_6-1024x576.png\" alt=\"\" class=\"wp-image-764\" srcset=\"https://umirt.com/wp-content/uploads/2023/01/ARM_6-1024x576.png 1024w, https://umirt.com/wp-content/uploads/2023/01/ARM_6-300x169.png 300w, https://umirt.com/wp-content/uploads/2023/01/ARM_6-768x432.png 768w, https://umirt.com/wp-content/uploads/2023/01/ARM_6-1536x864.png 1536w, https://umirt.com/wp-content/uploads/2023/01/ARM_6.png 1920w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" style=\"box-sizing: border-box; height: auto; max-width: 100%; vertical-align: bottom;\" /></figure>\r\n   </div>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 15px;\">&nbsp;</div>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">설치가 완료되었습니다. 시스템을 재부팅해 줍니다.</p>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 70px;\">&nbsp;</div>\r\n<div class=\"wp-block-image\" style=\"box-sizing: border-box; margin-bottom: var(--img-m); color: #272626; font-size: 16px; background-color: #ffffff;\">\r\n   <figure class=\"aligncenter size-large\" style=\"margin: 0px auto; box-sizing: border-box; padding: 0px; clear: both; display: table; text-align: center;\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" src=\"https://umirt.com/wp-content/uploads/2023/01/ARM_8-1024x576.png\" alt=\"\" class=\"wp-image-773\" srcset=\"https://umirt.com/wp-content/uploads/2023/01/ARM_8-1024x576.png 1024w, https://umirt.com/wp-content/uploads/2023/01/ARM_8-300x169.png 300w, https://umirt.com/wp-content/uploads/2023/01/ARM_8-768x432.png 768w, https://umirt.com/wp-content/uploads/2023/01/ARM_8-1536x864.png 1536w, https://umirt.com/wp-content/uploads/2023/01/ARM_8.png 1920w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" style=\"box-sizing: border-box; height: auto; max-width: 100%; vertical-align: bottom;\" /></figure>\r\n   </div>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 15px;\">&nbsp;</div>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">https://HestiaCP 관리 도메인:<strong style=\"box-sizing: border-box;\"><mark class=\"has-inline-color\" style=\"box-sizing: border-box; background-image: initial; background-position: 0px center; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; color: #ff0000;\">8083</mark></strong>으로 접속합니다. Username는&nbsp;<strong style=\"box-sizing: border-box;\"><mark class=\"has-inline-color\" style=\"box-sizing: border-box; background-image: initial; background-position: 0px center; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; color: #ff0000;\">admin</mark></strong>을 입력하고 비밀번호를 입력합니다.</p>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 70px;\">&nbsp;</div>\r\n<div class=\"wp-block-image\" style=\"box-sizing: border-box; margin-bottom: var(--img-m); color: #272626; font-size: 16px; background-color: #ffffff;\">\r\n   <figure class=\"aligncenter size-large\" style=\"margin: 0px auto; box-sizing: border-box; padding: 0px; clear: both; display: table; text-align: center;\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" src=\"https://umirt.com/wp-content/uploads/2023/01/ARM_9-1024x576.png\" alt=\"\" class=\"wp-image-778\" srcset=\"https://umirt.com/wp-content/uploads/2023/01/ARM_9-1024x576.png 1024w, https://umirt.com/wp-content/uploads/2023/01/ARM_9-300x169.png 300w, https://umirt.com/wp-content/uploads/2023/01/ARM_9-768x432.png 768w, https://umirt.com/wp-content/uploads/2023/01/ARM_9-1536x864.png 1536w, https://umirt.com/wp-content/uploads/2023/01/ARM_9.png 1920w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" style=\"box-sizing: border-box; height: auto; max-width: 100%; vertical-align: bottom;\" /></figure>\r\n   </div>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 15px;\">&nbsp;</div>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">HestiaCP 설치가 완료되었습니다.</p>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">조만간 HestiaCP 사용 방법 포스트로 찾아뵙겠습니다.</p>\r\n<h3 class=\"wp-block-heading\" style=\"box-sizing: border-box; margin: 0px 0px 30px; padding: 0px; font-size: var(--h3fontsize); font-weight: var(--h3fontweight); line-height: var(--h3lineheight); color: #272626; background-color: #ffffff;\">주요 내용</h3>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\"><strong style=\"box-sizing: border-box;\">1. 웹 사이트 추가 방법 (관리자 단독으로 사용하는 경우)</strong></p>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\"><strong style=\"box-sizing: border-box;\">1.1</strong>&nbsp;<strong style=\"box-sizing: border-box;\">웹 사이트 추가 방법 (다른 사람이 사용하는 경우)</strong></p>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">• DB 추가 방법 (포스팅 예정)</p>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">• FTP 계정 사용 방법 (포스팅 예정)</p>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">• 간편하게 워드프레스 설치하기 (워드프레스, 드루팔 등 간편한 CMS 설치) (포스팅 예정)</p>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">• PHP 버전 추가 방법 (포스팅 예정)</p>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">• HestiaCP 업데이트 (보안) (포스팅 예정)</p>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 35px;\">&nbsp;</div>\r\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\" style=\"box-sizing: border-box; margin: 40px 0px; padding: 0px 0px 0px 20px; border-color: var(--nv-text-color); border-style: solid; border-width: 0px 0px 0px 4px; overflow-wrap: break-word; color: #272626; font-size: 16px; background-color: #ffffff;\">\r\n   <p class=\"has-medium-font-size\" style=\"box-sizing: border-box; margin-bottom: 10px; padding: 0px; font-size: var(--wp--preset--font-size--medium) !important;\"><strong style=\"box-sizing: border-box;\">1. 웹 사이트 추가 방법</strong></p>\r\n   <cite style=\"box-sizing: border-box; font-style: normal; display: block; font-size: 0.9em !important;\">관리자 단독으로 사용하는 경우</cite></blockquote>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">HestiaCP의 기본 계정인 admin은 보안을 위해 웹 사이트를 한 개만 생성할 수 있고 DB는 생성할 수 없습니다. 여러 웹 사이트를 추가하고 DB를 생성하려면 다른 계정을 생성해야 합니다.</p>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 15px;\">&nbsp;</div>\r\n<figure class=\"wp-block-image size-large ticss-ad3b23f6\" style=\"margin-top: 0px; margin-right: 0px; margin-bottom: var(--img-m); margin-left: 0px; box-sizing: border-box; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\"><img decoding=\"async\" width=\"1024\" src=\"https://umirt.com/wp-content/uploads/2023/02/HestiaCP_1-2-1024x577.png\" alt=\"\" class=\"wp-image-810\" srcset=\"https://umirt.com/wp-content/uploads/2023/02/HestiaCP_1-2-1024x577.png 1024w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_1-2-300x169.png 300w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_1-2-768x432.png 768w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_1-2-1536x865.png 1536w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_1-2.png 1918w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" style=\"box-sizing: border-box; height: auto; max-width: 100%; vertical-align: bottom; border-radius: 22px;\" /></figure>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 15px;\">&nbsp;</div>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">좌측 상단에 있는 사용자 추가를 클릭합니다.</p>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 70px;\">&nbsp;</div>\r\n<div class=\"wp-block-image ticss-0f1169ec\" style=\"box-sizing: border-box; margin-bottom: var(--img-m); color: #272626; font-size: 16px; background-color: #ffffff;\">\r\n   <figure class=\"aligncenter size-large\" style=\"margin: 0px auto; box-sizing: border-box; padding: 0px; clear: both; display: table; text-align: center;\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" src=\"https://umirt.com/wp-content/uploads/2023/02/HestiaCP_2-1-1024x583.png\" alt=\"\" class=\"wp-image-813\" srcset=\"https://umirt.com/wp-content/uploads/2023/02/HestiaCP_2-1-1024x583.png 1024w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_2-1-300x171.png 300w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_2-1-768x437.png 768w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_2-1-1536x875.png 1536w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_2-1.png 1896w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" style=\"box-sizing: border-box; height: auto; max-width: 100%; vertical-align: bottom; border-radius: 22px;\" /></figure>\r\n   </div>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 15px;\">&nbsp;</div>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">사용자 이름, Name, 이메일, 비밀번호, 언어를 본인이 원하는 것으로 지정합니다. Role, 패키지는 변경하지 말고 그대로 두고 상단 오른쪽의 저장을 클릭하여 사용자를 추가합니다.</p>\r\n<div id=\"aswift_2_host\" style=\"box-sizing: border-box; border: none; height: 280px; width: 712px; margin: 0px; padding: 0px; position: relative; visibility: visible; display: inline-block; overflow: visible;\"><iframe id=\"aswift_2\" name=\"aswift_2\" browsingtopics=\"true\" sandbox=\"allow-forms allow-popups allow-popups-to-escape-sandbox allow-same-origin allow-scripts allow-top-navigation-by-user-activation\" width=\"712\" height=\"280\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" vspace=\"0\" hspace=\"0\" allowtransparency=\"true\" scrolling=\"no\" allow=\"attribution-reporting; run-ad-auction\" src=\"https://googleads.g.doubleclick.net/pagead/ads?gdpr=0&amp;client=ca-pub-1177007519683861&amp;output=html&amp;h=280&amp;slotname=7387348464&amp;adk=3836433587&amp;adf=2178348531&amp;pi=t.ma~as.7387348464&amp;w=712&amp;abgtt=7&amp;fwrn=4&amp;fwrnh=100&amp;lmt=1724281013&amp;rafmt=1&amp;format=712x280&amp;url=https%3A%2F%2Fumirt.com%2F%25ec%259b%25b9-%25ed%2598%25b8%25ec%258a%25a4%25ed%258c%2585-%25ec%25a0%259c%25ec%2596%25b4%25ed%258c%2590-%25ec%2582%25ac%25ec%259a%25a9-%25eb%25b0%25a9%25eb%25b2%2595-1-%25ec%259b%25b9-%25ec%2582%25ac%25ec%259d%25b4%25ed%258a%25b8-%25ec%25b6%2594%25ea%25b0%2580-%25eb%25b0%25a9%25eb%25b2%2595%2F&amp;host=ca-host-pub-2644536267352236&amp;fwr=0&amp;fwrattr=true&amp;rpe=1&amp;resp_fmts=3&amp;wgl=1&amp;uach=WyJXaW5kb3dzIiwiMTUuMC4wIiwieDg2IiwiIiwiMTI3LjAuNjUzMy4xMjIiLG51bGwsMCxudWxsLCI2NCIsW1siTm90KUE7QnJhbmQiLCI5OS4wLjAuMCJdLFsiR29vZ2xlIENocm9tZSIsIjEyNy4wLjY1MzMuMTIyIl0sWyJDaHJvbWl1bSIsIjEyNy4wLjY1MzMuMTIyIl1dLDBd&amp;dt=1724281013305&amp;bpp=1&amp;bdt=90&amp;idt=55&amp;shv=r20240819&amp;mjsv=m202408130101&amp;ptt=9&amp;saldr=aa&amp;abxe=1&amp;cookie=ID%3Dfa08e9e063820465%3AT%3D1724280654%3ART%3D1724280980%3AS%3DALNI_MbGqm754TXZ7S6H4HUSfGZbE_2giQ&amp;eo_id_str=ID%3D56a1ae8d27f9a767%3AT%3D1724280654%3ART%3D1724280980%3AS%3DAA-AfjYErOdrCoDbrjlNzL2-G4YX&amp;prev_fmts=0x0%2C712x280&amp;nras=1&amp;correlator=4538616573124&amp;frm=20&amp;pv=1&amp;u_tz=540&amp;u_his=8&amp;u_h=1440&amp;u_w=2560&amp;u_ah=1392&amp;u_aw=2560&amp;u_cd=24&amp;u_sd=1.5&amp;dmc=8&amp;adx=115&amp;ady=3306&amp;biw=1260&amp;bih=1270&amp;scr_x=0&amp;scr_y=0&amp;eid=44759876%2C44759927%2C44759842%2C44798934%2C95334829%2C95338228%2C31086337%2C31086141%2C95340253%2C95340255&amp;oid=2&amp;pvsid=3508991229828323&amp;tmod=718895951&amp;uas=0&amp;nvt=1&amp;ref=https%3A%2F%2Fumirt.com%2F%25ec%259a%25b0%25eb%25b6%2584%25ed%2588%25ac-arm%25ec%2597%2590-%25ec%259b%25b9%25ec%2584%259c%25eb%25b2%2584-%25eb%258d%25b0%25ec%259d%25b4%25ed%2584%25b0%25eb%25b2%25a0%25ec%259d%25b4%25ec%258a%25a4-%25ec%2584%25a4%25ec%25b9%2598%25ed%2595%2598%25ea%25b8%25b0%2F&amp;fc=1920&amp;brdim=-7%2C0%2C-7%2C0%2C2560%2C0%2C1294%2C1399%2C1278%2C1270&amp;vis=1&amp;rsz=%7C%7CopeEbr%7C&amp;abl=CS&amp;pfx=0&amp;fu=128&amp;bc=31&amp;bz=1.01&amp;td=1&amp;tdf=2&amp;psd=W251bGwsbnVsbCxudWxsLDNd&amp;nt=1&amp;ifi=3&amp;uci=a!3&amp;btvi=1&amp;fsb=1&amp;dtd=265\" data-google-container-id=\"a!3\" tabindex=\"0\" title=\"Advertisement\" aria-label=\"Advertisement\" data-google-query-id=\"CK6mzKqXh4gDFdXIFgUdBysCdw\" data-load-complete=\"true\" style=\"box-sizing: border-box; margin: 0px; padding: 0px; border-width: 0px; border-style: initial; max-width: 100%; left: 0px; position: absolute; top: 0px; width: 712px; height: 280px;\"></iframe></div>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\"><ins class=\"adsbygoogle\" data-ad-client=\"ca-pub-1177007519683861\" data-ad-slot=\"7387348464\" data-ad-format=\"auto\" data-full-width-responsive=\"true\" data-adsbygoogle-status=\"done\" data-ad-status=\"filled\" style=\"box-sizing: border-box; text-decoration-line: none; display: block; height: 280px;\"></ins></p>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 70px;\">&nbsp;</div>\r\n<div class=\"wp-block-image ticss-18eecb6d\" style=\"box-sizing: border-box; margin-bottom: var(--img-m); color: #272626; font-size: 16px; background-color: #ffffff;\">\r\n   <figure class=\"aligncenter size-large\" style=\"margin: 0px auto; box-sizing: border-box; padding: 0px; clear: both; display: table; text-align: center;\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" src=\"https://umirt.com/wp-content/uploads/2023/02/HestiaCP_3-1-1024x576.png\" alt=\"\" class=\"wp-image-858\" srcset=\"https://umirt.com/wp-content/uploads/2023/02/HestiaCP_3-1-1024x576.png 1024w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_3-1-300x169.png 300w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_3-1-768x432.png 768w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_3-1-1536x864.png 1536w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_3-1.png 1920w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" style=\"box-sizing: border-box; height: auto; max-width: 100%; vertical-align: bottom; border-radius: 22px;\" /></figure>\r\n   </div>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 15px;\">&nbsp;</div>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">관리자 계정을 로그아웃하지 않고 새로운 사용자로 로그인할 수 있습니다. 사용자 이름을 클릭하면 해당 사용자로 로그인됩니다.</p>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 70px;\">&nbsp;</div>\r\n<div class=\"wp-block-image ticss-207206e5\" style=\"box-sizing: border-box; margin-bottom: var(--img-m); color: #272626; font-size: 16px; background-color: #ffffff;\">\r\n   <figure class=\"aligncenter size-large\" style=\"margin: 0px auto; box-sizing: border-box; padding: 0px; clear: both; display: table; text-align: center;\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" src=\"https://umirt.com/wp-content/uploads/2023/02/HestiaCP_4-1024x576.png\" alt=\"\" class=\"wp-image-822\" srcset=\"https://umirt.com/wp-content/uploads/2023/02/HestiaCP_4-1024x576.png 1024w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_4-300x169.png 300w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_4-768x432.png 768w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_4-1536x864.png 1536w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_4.png 1920w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" style=\"box-sizing: border-box; height: auto; max-width: 100%; vertical-align: bottom; border-radius: 22px;\" /></figure>\r\n   </div>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 15px;\">&nbsp;</div>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">사이트를 추가하기 위해&nbsp;<strong style=\"box-sizing: border-box;\"><mark class=\"has-inline-color\" style=\"box-sizing: border-box; background-image: initial; background-position: 0px center; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; color: #ff0000;\">웹 도메인 추가</mark></strong>를 클릭합니다.</p>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 70px;\">&nbsp;</div>\r\n<div class=\"wp-block-image ticss-741e8d08\" style=\"box-sizing: border-box; margin-bottom: var(--img-m); color: #272626; font-size: 16px; background-color: #ffffff;\">\r\n   <figure class=\"aligncenter size-large\" style=\"margin: 0px auto; box-sizing: border-box; padding: 0px; clear: both; display: table; text-align: center;\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" src=\"https://umirt.com/wp-content/uploads/2023/02/HestiaCP_5-1024x574.png\" alt=\"\" class=\"wp-image-825\" srcset=\"https://umirt.com/wp-content/uploads/2023/02/HestiaCP_5-1024x574.png 1024w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_5-300x168.png 300w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_5-768x431.png 768w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_5-1536x862.png 1536w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_5.png 1920w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" style=\"box-sizing: border-box; height: auto; max-width: 100%; vertical-align: bottom; border-radius: 22px;\" /></figure>\r\n   </div>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 15px;\">&nbsp;</div>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">도메인을 A 레코드나 CNAME 레코드로 연결하고 도메인 입력창에 도메인을 입력합니다. 저장을 클릭하여 사이트를 생성하고, 생성이 끝나면 좌측 상단의 뒤로 버튼을 클릭합니다.</p>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 70px;\">&nbsp;</div>\r\n<div class=\"wp-block-image ticss-490f9b8b\" style=\"box-sizing: border-box; margin-bottom: var(--img-m); color: #272626; font-size: 16px; background-color: #ffffff;\">\r\n   <figure class=\"aligncenter size-large\" style=\"margin: 0px auto; box-sizing: border-box; padding: 0px; clear: both; display: table; text-align: center;\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" src=\"https://umirt.com/wp-content/uploads/2023/02/HestiaCP_6-1024x576.png\" alt=\"\" class=\"wp-image-827\" srcset=\"https://umirt.com/wp-content/uploads/2023/02/HestiaCP_6-1024x576.png 1024w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_6-300x169.png 300w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_6-768x432.png 768w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_6-1536x864.png 1536w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_6.png 1920w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" style=\"box-sizing: border-box; height: auto; max-width: 100%; vertical-align: bottom; border-radius: 22px;\" /></figure>\r\n   </div>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 15px;\">&nbsp;</div>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">도메인을 클릭하여 도메인 편집 페이지로 들어갑니다.</p>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 70px;\">&nbsp;</div>\r\n<div class=\"wp-block-image ticss-26f0c4fc\" style=\"box-sizing: border-box; margin-bottom: var(--img-m); color: #272626; font-size: 16px; background-color: #ffffff;\">\r\n   <figure class=\"aligncenter size-large\" style=\"margin: 0px auto; box-sizing: border-box; padding: 0px; clear: both; display: table; text-align: center;\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" src=\"https://umirt.com/wp-content/uploads/2023/02/HestiaCP_7-1024x582.png\" alt=\"\" class=\"wp-image-828\" srcset=\"https://umirt.com/wp-content/uploads/2023/02/HestiaCP_7-1024x582.png 1024w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_7-300x170.png 300w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_7-768x436.png 768w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_7-1536x873.png 1536w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_7.png 1901w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" style=\"box-sizing: border-box; height: auto; max-width: 100%; vertical-align: bottom; border-radius: 22px;\" /></figure>\r\n   </div>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 15px;\">&nbsp;</div>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">SSL 지원, Lets Encrypt 지원, Enable automatic HTTP-to-HTTPS redirection, Enable SSL HSTS 체크박스를 체크하고 저장합니다.</p>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 70px;\">&nbsp;</div>\r\n<div class=\"wp-block-image ticss-01e26548\" style=\"box-sizing: border-box; margin-bottom: var(--img-m); color: #272626; font-size: 16px; background-color: #ffffff;\">\r\n   <figure class=\"aligncenter size-large\" style=\"margin: 0px auto; box-sizing: border-box; padding: 0px; clear: both; display: table; text-align: center;\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" src=\"https://umirt.com/wp-content/uploads/2023/02/HestiaCP_8-1024x576.png\" alt=\"\" class=\"wp-image-833\" srcset=\"https://umirt.com/wp-content/uploads/2023/02/HestiaCP_8-1024x576.png 1024w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_8-300x169.png 300w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_8-768x432.png 768w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_8-1536x864.png 1536w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_8.png 1920w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" style=\"box-sizing: border-box; height: auto; max-width: 100%; vertical-align: bottom; border-radius: 22px;\" /></figure>\r\n   </div>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 15px;\">&nbsp;</div>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">생성한 사이트에 접속하고 위 페이지가 나타나면 정상적으로 사이트 생성이 완료되었습니다.</p>\r\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\" style=\"box-sizing: border-box; margin: 40px 0px; padding: 0px 0px 0px 20px; border-color: var(--nv-text-color); border-style: solid; border-width: 0px 0px 0px 4px; overflow-wrap: break-word; color: #272626; font-size: 16px; background-color: #ffffff;\">\r\n   <p class=\"has-medium-font-size\" style=\"box-sizing: border-box; margin-bottom: 10px; padding: 0px; font-size: var(--wp--preset--font-size--medium) !important;\"><strong style=\"box-sizing: border-box;\">1.1 웹 사이트 추가 방법</strong></p>\r\n   <cite style=\"box-sizing: border-box; font-style: normal; display: block; font-size: 0.9em !important;\">다른 사람이 사용하는 경우 – 호스팅 제공 등</cite></blockquote>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">호스팅을 제공하기 위해서 웹 용량 제한, 트래픽 제한을 해야 하는 경우도 있습니다. 이런 경우 별도의 설정을 진행해야 합니다.</p>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 15px;\">&nbsp;</div>\r\n<div class=\"wp-block-image ticss-a522226b\" style=\"box-sizing: border-box; margin-bottom: var(--img-m); color: #272626; font-size: 16px; background-color: #ffffff;\">\r\n   <figure class=\"aligncenter size-large\" style=\"margin: 0px auto; box-sizing: border-box; padding: 0px; clear: both; display: table; text-align: center;\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" src=\"https://umirt.com/wp-content/uploads/2023/02/HestiaCP_10-1024x576.png\" alt=\"\" class=\"wp-image-846\" srcset=\"https://umirt.com/wp-content/uploads/2023/02/HestiaCP_10-1024x576.png 1024w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_10-300x169.png 300w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_10-768x432.png 768w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_10-1536x864.png 1536w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_10.png 1920w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" style=\"box-sizing: border-box; height: auto; max-width: 100%; vertical-align: bottom; border-radius: 22px;\" /></figure>\r\n   </div>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 15px;\">&nbsp;</div>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">관리자 계정으로 로그인하고&nbsp;<strong style=\"box-sizing: border-box;\"><mark class=\"has-inline-color\" style=\"box-sizing: border-box; background-image: initial; background-position: 0px center; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; color: #ff0000;\">패키지</mark></strong>를 클릭합니다.</p>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 70px;\">&nbsp;</div>\r\n<div class=\"wp-block-image ticss-db9fed3a\" style=\"box-sizing: border-box; margin-bottom: var(--img-m); color: #272626; font-size: 16px; background-color: #ffffff;\">\r\n   <figure class=\"aligncenter size-large\" style=\"margin: 0px auto; box-sizing: border-box; padding: 0px; clear: both; display: table; text-align: center;\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" src=\"https://umirt.com/wp-content/uploads/2023/02/HestiaCP_11-1024x576.png\" alt=\"\" class=\"wp-image-848\" srcset=\"https://umirt.com/wp-content/uploads/2023/02/HestiaCP_11-1024x576.png 1024w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_11-300x169.png 300w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_11-768x432.png 768w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_11-1536x864.png 1536w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_11.png 1920w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" style=\"box-sizing: border-box; height: auto; max-width: 100%; vertical-align: bottom; border-radius: 22px;\" /></figure>\r\n   </div>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 15px;\">&nbsp;</div>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\"><strong style=\"box-sizing: border-box;\"><mark class=\"has-inline-color\" style=\"box-sizing: border-box; background-image: initial; background-position: 0px center; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; color: #ff0000;\">패키지 추가</mark></strong>를 클릭합니다.</p>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 70px;\">&nbsp;</div>\r\n<div class=\"wp-block-image ticss-38811e2e\" style=\"box-sizing: border-box; margin-bottom: var(--img-m); color: #272626; font-size: 16px; background-color: #ffffff;\">\r\n   <figure class=\"aligncenter size-large\" style=\"margin: 0px auto; box-sizing: border-box; padding: 0px; clear: both; display: table; text-align: center;\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" src=\"https://umirt.com/wp-content/uploads/2023/02/HestiaCP_12-1-1024x583.png\" alt=\"\" class=\"wp-image-851\" srcset=\"https://umirt.com/wp-content/uploads/2023/02/HestiaCP_12-1-1024x583.png 1024w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_12-1-300x171.png 300w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_12-1-768x437.png 768w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_12-1-1536x874.png 1536w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_12-1.png 1898w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" style=\"box-sizing: border-box; height: auto; max-width: 100%; vertical-align: bottom; border-radius: 22px;\" /></figure>\r\n   </div>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 15px;\">&nbsp;</div>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">패키지 이름을 지정하고 제한 값을 지정하면 됩니다.</p>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 70px;\">&nbsp;</div>\r\n<div class=\"wp-block-image ticss-db31f4db\" style=\"box-sizing: border-box; margin-bottom: var(--img-m); color: #272626; font-size: 16px; background-color: #ffffff;\">\r\n   <figure class=\"aligncenter size-large is-resized\" style=\"margin: 0px auto; box-sizing: border-box; padding: 0px; clear: both; display: table; text-align: center;\"><img loading=\"lazy\" decoding=\"async\" src=\"https://umirt.com/wp-content/uploads/2023/02/HestiaCP_13-1024x583.png\" alt=\"\" class=\"wp-image-853\" width=\"819\" srcset=\"https://umirt.com/wp-content/uploads/2023/02/HestiaCP_13-1024x583.png 1024w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_13-300x171.png 300w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_13-768x437.png 768w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_13-1536x874.png 1536w, https://umirt.com/wp-content/uploads/2023/02/HestiaCP_13.png 1897w\" sizes=\"(max-width: 819px) 100vw, 819px\" style=\"box-sizing: border-box; height: auto; max-width: 100%; vertical-align: bottom; border-radius: 22px;\" /></figure>\r\n   </div>\r\n<div aria-hidden=\"true\" class=\"wp-block-spacer\" style=\"box-sizing: border-box; clear: both; color: #272626; font-size: 16px; background-color: #ffffff; height: 15px;\">&nbsp;</div>\r\n<p style=\"box-sizing: border-box; margin-bottom: 30px; padding: 0px; color: #272626; font-size: 16px; background-color: #ffffff;\">웹 용량 제한, 트래픽 제한 등을 적용하려면 사용자 생성 또는 수정에서 패키지를 default가 아닌 생성한 패키지로 바꾸고 저장하면 됩니다.</p>','https://umirt.com/%EC%98%A4%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9C-%EC%9A%B0%EB%B6%84%ED%88%AC-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0/','',0,0,6,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-08-22 07:56:30',0,'2024-08-22 07:56:30','14.41.12.104','','','','','','','','','','','',''),(648,-645,'',648,0,0,'','','html1','[ETC] Windows ARM software 호환SW 리스트','<div id=\"bighead\" style=\"box-sizing: inherit; color: var(--text-header); font-size: 16px;\">\r\n   <section class=\"first-line\" style=\"box-sizing: inherit; min-height: 100px;\">\r\n      <div class=\"container\" style=\"box-sizing: inherit; flex-grow: 1; margin: 0px auto; position: relative; width: auto; max-width: 1344px; min-height: 80px; padding: 10px 0px;\">\r\n         <div class=\"dashboard-title no-logo\" style=\"box-sizing: inherit; padding: 6px 0px 0px;\">\r\n            <h1 style=\"box-sizing: inherit; margin: -12px 0px 0px; padding: 0px; font-size: 2rem; font-weight: 400; font-family: Lato, sans-serif;\">Windows ARM software</h1>\r\n            </div>\r\n         </div>\r\n      </section>\r\n   <div class=\"container-fluid\" style=\"box-sizing: inherit;\"><nav class=\"navbar\" role=\"navigation\" aria-label=\"main navigation\" style=\"box-sizing: inherit; min-height: 3.25rem; position: relative; z-index: 30; align-items: stretch; display: flex;\">\r\n         <div class=\"container\" style=\"box-sizing: inherit; flex-grow: 1; margin: 0px auto; position: relative; width: 1344px; max-width: 1344px; align-items: stretch; display: flex; min-height: 3.25rem;\">\r\n            <div class=\"navbar-brand\" style=\"box-sizing: inherit; align-items: stretch; display: flex; flex-shrink: 0; min-height: 3.25rem; margin-left: -0.75rem;\">&nbsp;</div>\r\n            <div class=\"navbar-menu\" style=\"box-sizing: inherit; display: flex; align-items: stretch; flex-grow: 1; flex-shrink: 0; margin-right: -0.75rem;\">\r\n               <div class=\"navbar-start\" style=\"box-sizing: inherit; align-items: stretch; display: flex; justify-content: flex-start; margin-right: auto;\"><a class=\"navbar-item\" rel=\"noreferrer\" href=\"https://armrepo.ver.lt/\" style=\"box-sizing: inherit; cursor: pointer; text-decoration-line: none; display: flex; line-height: 1.5; padding: 8px 12px; position: relative; flex-grow: 0; flex-shrink: 0; align-items: center;\" target=\"_blank\"><span class=\"fa-fw fa-sharp fa-solid fa-house mr-2\" style=\"box-sizing: inherit; -webkit-font-smoothing: antialiased; display: var(--fa-display, inline-block); font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-variant-position: normal; line-height: 1; text-rendering: auto; font-family: &quot;Font Awesome 6 Free&quot;; text-align: center; width: 1.25em; font-weight: 900; margin-right: 0.5rem !important;\"></span>Home</a><a class=\"navbar-item\" rel=\"noreferrer\" href=\"https://armrepo.ver.lt/#faq\" style=\"box-sizing: inherit; cursor: pointer; text-decoration-line: none; display: flex; line-height: 1.5; padding: 8px 12px; position: relative; flex-grow: 0; flex-shrink: 0; align-items: center;\" target=\"_blank\"><span class=\"fa-fw fa fa-question mr-2\" style=\"box-sizing: inherit; font-family: var(--fa-style-family, &quot;Font Awesome 6 Free&quot;); font-weight: var(--fa-style, 900); -webkit-font-smoothing: antialiased; display: var(--fa-display, inline-block); font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-variant-position: normal; line-height: 1; text-rendering: auto; text-align: center; width: 1.25em; margin-right: 0.5rem !important;\"></span>FAQ</a><a class=\"navbar-item\" rel=\"noreferrer\" href=\"https://github.com/arminask/windows-arm-apps\" target=\"_blank\" style=\"box-sizing: inherit; cursor: pointer; text-decoration-line: none; display: flex; line-height: 1.5; padding: 8px 12px; position: relative; flex-grow: 0; flex-shrink: 0; align-items: center;\"><span class=\"fa-fw fab fa-github mr-2\" style=\"box-sizing: inherit; -webkit-font-smoothing: antialiased; display: var(--fa-display, inline-block); font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-variant-position: normal; line-height: 1; text-rendering: auto; font-family: &quot;Font Awesome 6 Brands&quot;; text-align: center; width: 1.25em; margin-right: 0.5rem !important;\"></span>Contribute</a><a class=\"navbar-item\" rel=\"noreferrer\" href=\"https://armrepo.ver.lt/#resources\" style=\"box-sizing: inherit; cursor: pointer; text-decoration-line: none; display: flex; line-height: 1.5; padding: 8px 12px; position: relative; flex-grow: 0; flex-shrink: 0; align-items: center;\" target=\"_blank\"><span class=\"fa-fw fa-solid fa-folder mr-2\" style=\"box-sizing: inherit; -webkit-font-smoothing: antialiased; display: var(--fa-display, inline-block); font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-variant-position: normal; line-height: 1; text-rendering: auto; font-family: &quot;Font Awesome 6 Free&quot;; text-align: center; width: 1.25em; font-weight: 900; margin-right: 0.5rem !important;\"></span>Resources</a></div>\r\n               <div class=\"navbar-end\" style=\"box-sizing: inherit; align-items: stretch; display: flex; justify-content: flex-end; margin-left: auto; text-align: right;\"><a aria-label=\"Toggle dark mode\" class=\"navbar-item is-inline-block-mobile\" style=\"box-sizing: inherit; color: var(--text-header); cursor: pointer; display: flex; line-height: 1.5; padding: 8px 12px; position: relative; flex-grow: 0; flex-shrink: 0; align-items: center;\"><span class=\"fas fa-adjust fa-fw\" title=\"Auto-switch\" style=\"box-sizing: inherit; -webkit-font-smoothing: antialiased; display: var(--fa-display, inline-block); font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-variant-position: normal; line-height: 1; text-rendering: auto; font-family: &quot;Font Awesome 6 Free&quot;; text-align: center; width: 1.25em; font-weight: 900;\"></span></a><a class=\"navbar-item is-inline-block-mobile\" style=\"box-sizing: inherit; color: var(--text-header); cursor: pointer; display: flex; line-height: 1.5; padding: 8px 12px; position: relative; flex-grow: 0; flex-shrink: 0; align-items: center;\"><span style=\"box-sizing: inherit; font-style: inherit; font-weight: inherit;\"><span class=\"fas fa-fw fa-list\" style=\"box-sizing: inherit; -webkit-font-smoothing: antialiased; display: var(--fa-display, inline-block); font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-variant-position: normal; line-height: 1; text-rendering: auto; font-family: &quot;Font Awesome 6 Free&quot;; text-align: center; width: 1.25em; font-weight: 900;\"></span></span></a>\r\n                  <div class=\"search-bar navbar-item is-inline-block-mobile\" style=\"box-sizing: inherit; color: #4a4a4a; display: inline-block; line-height: 1.5; padding: 0.5rem 0.75rem; position: relative; flex-grow: 0; flex-shrink: 0; align-items: center;\"><label for=\"search\" class=\"search-label\" style=\"box-sizing: inherit;\"></label><input type=\"text\" style=\"box-sizing: inherit; margin: 2px 0px 0px; font-family: BlinkMacSystemFont, -apple-system, &quot;Segoe UI&quot;, Roboto, Oxygen, Ubuntu, Cantarell, &quot;Fira Sans&quot;, &quot;Droid Sans&quot;, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif; border-width: initial; border-style: none; border-color: initial; border-radius: 5px; padding: 2px 12px 2px 30px; transition: 0.1s linear; color: #ffffff; height: 30px; width: 100px;\" /></div>\r\n                  </div>\r\n               </div>\r\n            </div>\r\n         </nav></div>\r\n   </div>\r\n<section id=\"main-section\" class=\"section\" style=\"box-sizing: inherit; padding: 0px 0px 2.5rem; color: #eaeaea; font-size: 16px;\">\r\n   <div class=\"container\" style=\"box-sizing: inherit; flex-grow: 1; margin: 0px auto; position: relative; width: auto; max-width: 1344px; padding: 1.2rem 0.75rem;\">\r\n      <div style=\"box-sizing: inherit;\">\r\n         <article class=\"message is-dark\" style=\"box-sizing: inherit; border-radius: 4px; font-size: 1rem; margin-bottom: 1.5rem; margin-top: 45px; box-shadow: rgba(0, 0, 0, 0.1) 0px 2px 15px;\">\r\n            <div class=\"message-header\" style=\"box-sizing: inherit; align-items: center; background-color: #363636; border-radius: 4px 4px 0px 0px; color: #ffffff; display: flex; font-weight: 700; justify-content: space-between; line-height: 1.25; padding: 0.75em 1em; position: relative;\">\r\n               <p style=\"box-sizing: inherit; padding: 0px;\"><span class=\"fa-fw fa fa-house\" style=\"box-sizing: inherit; font-family: var(--fa-style-family, &quot;Font Awesome 6 Free&quot;); font-weight: var(--fa-style, 900); -webkit-font-smoothing: antialiased; display: var(--fa-display, inline-block); font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-variant-position: normal; line-height: 1; text-rendering: auto; text-align: center; width: 1.25em;\"></span>&nbsp;Note</p>\r\n               </div>\r\n            <div class=\"message-body\" style=\"box-sizing: inherit; border: none; border-radius: 0px 0px 4px 4px; color: var(--text); padding: 1.25em 1.5em;\">Collection of native software for Windows on ARM architecture.<br style=\"box-sizing: inherit;\" />Explore our curated list of applications and contribute to its growth by adding more software on our GitHub page.</div>\r\n            </article>\r\n         </div>\r\n      </div>\r\n   </section>','https://armrepo.ver.lt/','',2,0,4,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-08-29 07:57:09',0,'2024-08-29 07:57:09','14.41.12.104','','','','','','','','','','','',''),(649,-646,'',649,0,0,'','','html1','[ETC] Develop ESP32 With PlatformIO IDE','<pre data-ke-type=\"codeblock\">\r\n   <p data-ke-size=\"size16\">다음과 같은 순서로 Platform IO를 설치합니다.</p>\r\n   <p data-ke-size=\"size16\">&nbsp;</p>\r\n   <p data-ke-size=\"size16\">1. VSCode(<a href=\"https://code.visualstudio.com/download\" target=\"_blank\">https://code.visualstudio.com/download</a>)를 먼저 설치해야 합니다.</p>\r\n   <p data-ke-size=\"size16\">Platform IO는 VSCode에서 extension으로 설치할 수 있기 때문입니다.</p>\r\n   <p data-ke-size=\"size16\">&nbsp;</p>\r\n   <p data-ke-size=\"size16\">2. VSCode를 실행하고, Extension을 선택합니다.</p>\r\n   <p>&nbsp;</p>\r\n   <figure class=\"imageblock alignCenter\" data-origin-width=\"1028\" data-origin-height=\"807\" data-ke-mobilestyle=\"widthOrigin\"><span data-url=\"https://blog.kakaocdn.net/dn/qerQ8/btreJDrdTZg/4E0kAK557s88cOnG9gqJK0/img.png\" data-phocus=\"https://blog.kakaocdn.net/dn/qerQ8/btreJDrdTZg/4E0kAK557s88cOnG9gqJK0/img.png\"><img src=\"https://blog.kakaocdn.net/dn/qerQ8/btreJDrdTZg/4E0kAK557s88cOnG9gqJK0/img.png\" srcset=\"https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FqerQ8%2FbtreJDrdTZg%2F4E0kAK557s88cOnG9gqJK0%2Fimg.png\" data-origin-width=\"1028\" data-origin-height=\"807\" data-ke-mobilestyle=\"widthOrigin\" data-phocus-index=\"0\" /></span></figure>\r\n   <p>&nbsp;</p>\r\n   <p data-ke-size=\"size16\">3. Extension 중 Platform IO를 설치합니다.</p>\r\n   <p>&nbsp;</p>\r\n   <figure class=\"imageblock alignCenter\" data-origin-width=\"1028\" data-origin-height=\"809\" data-ke-mobilestyle=\"widthOrigin\"><span data-url=\"https://blog.kakaocdn.net/dn/cK9XDM/btreJEjovFQ/8qxkm7aLr1zQxk6WkNCle1/img.png\" data-phocus=\"https://blog.kakaocdn.net/dn/cK9XDM/btreJEjovFQ/8qxkm7aLr1zQxk6WkNCle1/img.png\"><img src=\"https://blog.kakaocdn.net/dn/cK9XDM/btreJEjovFQ/8qxkm7aLr1zQxk6WkNCle1/img.png\" srcset=\"https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcK9XDM%2FbtreJEjovFQ%2F8qxkm7aLr1zQxk6WkNCle1%2Fimg.png\" data-origin-width=\"1028\" data-origin-height=\"809\" data-ke-mobilestyle=\"widthOrigin\" data-phocus-index=\"1\" /></span></figure>\r\n   <p>&nbsp;</p>\r\n   <p data-ke-size=\"size16\">&nbsp;</p>\r\n   <p data-ke-size=\"size16\">4. Platform IO가 정상적으로 설치되면, extension 밑에 Platform IO 아이콘이 나타납니다. 이를 눌러서 Platform IO를 실행합니다.</p>\r\n   <p>&nbsp;</p>\r\n   <figure class=\"imageblock alignCenter\" data-origin-width=\"1028\" data-origin-height=\"809\" data-ke-mobilestyle=\"widthOrigin\"><span data-url=\"https://blog.kakaocdn.net/dn/WAs8i/btreTIxoq3c/hr7e7tckTKjmalTSkUGjHk/img.png\" data-phocus=\"https://blog.kakaocdn.net/dn/WAs8i/btreTIxoq3c/hr7e7tckTKjmalTSkUGjHk/img.png\"><img src=\"https://blog.kakaocdn.net/dn/WAs8i/btreTIxoq3c/hr7e7tckTKjmalTSkUGjHk/img.png\" srcset=\"https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FWAs8i%2FbtreTIxoq3c%2Fhr7e7tckTKjmalTSkUGjHk%2Fimg.png\" data-origin-width=\"1028\" data-origin-height=\"809\" data-ke-mobilestyle=\"widthOrigin\" data-phocus-index=\"2\" /></span></figure>\r\n   <p>&nbsp;</p>\r\n   <p data-ke-size=\"size16\">&nbsp;</p>\r\n   <p data-ke-size=\"size16\">5. PIO 홈에서 Open을 클릭합니다.</p>\r\n   <p>&nbsp;</p>\r\n   <figure class=\"imageblock alignCenter\" data-origin-width=\"1028\" data-origin-height=\"809\" data-ke-mobilestyle=\"widthOrigin\"><span data-url=\"https://blog.kakaocdn.net/dn/x2io2/btreKlqGOXC/jPskgvRKFnbeJK9ATm6kF1/img.png\" data-phocus=\"https://blog.kakaocdn.net/dn/x2io2/btreKlqGOXC/jPskgvRKFnbeJK9ATm6kF1/img.png\"><img src=\"https://blog.kakaocdn.net/dn/x2io2/btreKlqGOXC/jPskgvRKFnbeJK9ATm6kF1/img.png\" srcset=\"https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fx2io2%2FbtreKlqGOXC%2FjPskgvRKFnbeJK9ATm6kF1%2Fimg.png\" data-origin-width=\"1028\" data-origin-height=\"809\" data-ke-mobilestyle=\"widthOrigin\" data-phocus-index=\"3\" /></span></figure>\r\n   <p>&nbsp;</p>\r\n   <p data-ke-size=\"size16\">&nbsp;</p>\r\n   <p data-ke-size=\"size16\">6. PIO Home에서 Platform -&gt; Embedded -&gt; Espressif을 선택합니다.</p>\r\n   <p data-ke-size=\"size16\">&nbsp;&nbsp; 하위 항목에 다양한 Espressif Platform이 나타납니다.</p>\r\n   <p>&nbsp;</p>\r\n   <figure class=\"imageblock alignCenter\" data-origin-width=\"1143\" data-origin-height=\"939\" data-ke-mobilestyle=\"widthOrigin\"><span data-url=\"https://blog.kakaocdn.net/dn/MTXjO/btreQ8XkNtl/Azf9uQ8BY2qFhbK5yOE9E1/img.png\" data-phocus=\"https://blog.kakaocdn.net/dn/MTXjO/btreQ8XkNtl/Azf9uQ8BY2qFhbK5yOE9E1/img.png\"><img src=\"https://blog.kakaocdn.net/dn/MTXjO/btreQ8XkNtl/Azf9uQ8BY2qFhbK5yOE9E1/img.png\" srcset=\"https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FMTXjO%2FbtreQ8XkNtl%2FAzf9uQ8BY2qFhbK5yOE9E1%2Fimg.png\" data-origin-width=\"1143\" data-origin-height=\"939\" data-ke-mobilestyle=\"widthOrigin\" data-phocus-index=\"4\" /></span></figure>\r\n   <p>&nbsp;</p>\r\n   <p data-ke-size=\"size16\">&nbsp;</p>\r\n   <p data-ke-size=\"size16\">7. 이중에서, Espressif 32를 Install합니다. 지금까지 기본적인 설정은 완료되었습니다.</p>\r\n   <p>&nbsp;</p>\r\n   <figure class=\"imageblock alignCenter\" data-origin-width=\"1143\" data-origin-height=\"939\" data-ke-mobilestyle=\"widthOrigin\"><span data-url=\"https://blog.kakaocdn.net/dn/eBz6Hp/btreKmC6aNp/dH9sDHKrBqkKVlOrLQjqmk/img.png\" data-phocus=\"https://blog.kakaocdn.net/dn/eBz6Hp/btreKmC6aNp/dH9sDHKrBqkKVlOrLQjqmk/img.png\"><img src=\"https://blog.kakaocdn.net/dn/eBz6Hp/btreKmC6aNp/dH9sDHKrBqkKVlOrLQjqmk/img.png\" srcset=\"https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FeBz6Hp%2FbtreKmC6aNp%2FdH9sDHKrBqkKVlOrLQjqmk%2Fimg.png\" data-origin-width=\"1143\" data-origin-height=\"939\" data-ke-mobilestyle=\"widthOrigin\" data-phocus-index=\"5\" /></span></figure>\r\n   <p>&nbsp;</p>\r\n   <p data-ke-size=\"size16\">8. 새로운 프로젝트를 시작하기 위해서, PlatformIO Home으로 이동해서 \"New project\"를 클릭합니다.</p>\r\n   <p>&nbsp;</p>\r\n   <figure class=\"imageblock alignCenter\" data-origin-width=\"1143\" data-origin-height=\"939\" data-ke-mobilestyle=\"widthOrigin\"><span data-url=\"https://blog.kakaocdn.net/dn/bf8yZh/btrePWpncYw/t5mCCbdXWltbOyIH0aYXzk/img.png\" data-phocus=\"https://blog.kakaocdn.net/dn/bf8yZh/btrePWpncYw/t5mCCbdXWltbOyIH0aYXzk/img.png\"><img src=\"https://blog.kakaocdn.net/dn/bf8yZh/btrePWpncYw/t5mCCbdXWltbOyIH0aYXzk/img.png\" srcset=\"https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbf8yZh%2FbtrePWpncYw%2Ft5mCCbdXWltbOyIH0aYXzk%2Fimg.png\" data-origin-width=\"1143\" data-origin-height=\"939\" data-ke-mobilestyle=\"widthOrigin\" data-phocus-index=\"6\" /></span></figure>\r\n   <p>&nbsp;</p>\r\n   <p data-ke-size=\"size16\">&nbsp;</p>\r\n   <p data-ke-size=\"size16\">9. Project wizard에서 적절한 항목들을 선택합니다.</p>\r\n   <p data-ke-size=\"size16\">&nbsp;&nbsp; ESP32 CAM 동작을 위해서 아래와 같은 항목들을 선택해서 Project를 시작했습니다.</p>\r\n   <p>&nbsp;</p>\r\n   <figure class=\"imageblock alignCenter\" data-origin-width=\"1143\" data-origin-height=\"939\" data-ke-mobilestyle=\"widthOrigin\"><span data-url=\"https://blog.kakaocdn.net/dn/dhXbBk/btreLLPHCL7/qNBykZ4tWtUVzJWmAKQkS1/img.png\" data-phocus=\"https://blog.kakaocdn.net/dn/dhXbBk/btreLLPHCL7/qNBykZ4tWtUVzJWmAKQkS1/img.png\"><img src=\"https://blog.kakaocdn.net/dn/dhXbBk/btreLLPHCL7/qNBykZ4tWtUVzJWmAKQkS1/img.png\" srcset=\"https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdhXbBk%2FbtreLLPHCL7%2FqNBykZ4tWtUVzJWmAKQkS1%2Fimg.png\" data-origin-width=\"1143\" data-origin-height=\"939\" data-ke-mobilestyle=\"widthOrigin\" data-phocus-index=\"7\" /></span></figure>\r\n   <p>&nbsp;</p>\r\n   <p data-ke-size=\"size16\">&nbsp;</p>\r\n   <p data-ke-size=\"size16\">10. 위 그림에서 Finish를 클릭하면, Platform IO가 프로젝트에 필요한 환경을 자동으로 설정합니다. (시간이 조금 걸릴 수 있습니다.)</p>\r\n   <p data-ke-size=\"size16\">&nbsp;</p>\r\n   <p data-ke-size=\"size16\">11. 코드를 작성합니다.</p>\r\n   <p>&nbsp;</p>\r\n   <figure class=\"imageblock alignCenter\" data-origin-width=\"1142\" data-origin-height=\"939\" data-ke-mobilestyle=\"widthOrigin\"><span data-url=\"https://blog.kakaocdn.net/dn/ckhFMf/btreTIYq5uP/7DJhrmwd1B8e6bmvkxAU7K/img.png\" data-phocus=\"https://blog.kakaocdn.net/dn/ckhFMf/btreTIYq5uP/7DJhrmwd1B8e6bmvkxAU7K/img.png\"><img src=\"https://blog.kakaocdn.net/dn/ckhFMf/btreTIYq5uP/7DJhrmwd1B8e6bmvkxAU7K/img.png\" srcset=\"https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FckhFMf%2FbtreTIYq5uP%2F7DJhrmwd1B8e6bmvkxAU7K%2Fimg.png\" data-origin-width=\"1142\" data-origin-height=\"939\" data-ke-mobilestyle=\"widthOrigin\" data-phocus-index=\"8\" /></span></figure>\r\n   <p>&nbsp;</p>\r\n   <p data-ke-size=\"size16\">&nbsp;</p>\r\n   <p data-ke-size=\"size16\">12. 코드 작성 후 필요한 컴파일, 업로드, 모니터등은 메뉴에서 선택해도 되지만, 맨 아래 아이콘을 직접 클릭해도 됩니다.</p>\r\n   <p>&nbsp;</p>\r\n   <figure class=\"imageblock alignCenter\" data-origin-width=\"1280\" data-origin-height=\"891\" data-ke-mobilestyle=\"widthOrigin\"><span data-url=\"https://blog.kakaocdn.net/dn/ZnDIO/btreMCEXdGB/zk6g5T9COnK89ZNJNIlXRK/img.png\" data-phocus=\"https://blog.kakaocdn.net/dn/ZnDIO/btreMCEXdGB/zk6g5T9COnK89ZNJNIlXRK/img.png\"><img src=\"https://blog.kakaocdn.net/dn/ZnDIO/btreMCEXdGB/zk6g5T9COnK89ZNJNIlXRK/img.png\" srcset=\"https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FZnDIO%2FbtreMCEXdGB%2Fzk6g5T9COnK89ZNJNIlXRK%2Fimg.png\" data-origin-width=\"1280\" data-origin-height=\"891\" data-ke-mobilestyle=\"widthOrigin\" data-phocus-index=\"9\" /></span></figure>\r\n   <p>&nbsp;</p>\r\n   <p data-ke-size=\"size16\">코드의 기본적인 구조는 Arduino와 같다고 보시면 됩니다.</p>\r\n   </pre>\r\n<p>출처: <a href=\"https://steadyandslow.tistory.com/150\" target=\"_blank\">https://steadyandslow.tistory.com/150</a> [더디지만... 꾸준히...:티스토리]</p>','https://steadyandslow.tistory.com/150','https://www.instructables.com/Develop-ESP32-With-PlatformIO-IDE/',0,0,7,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-09-07 11:31:16',0,'2024-09-07 11:31:16','192.168.219.103','','','','','','','','','','','',''),(650,-647,'',650,0,0,'','','html1','[ESP32] ESP32 Deep sleep mode with DS3231 RTC wakeup','<h1 class=\"sectionedit1\" id=\"esp32_deep_sleep_mode\" style=\"padding: 0px; line-height: 1.2; clear: left; margin: 0px 0px 0.444em; color: #333333;\">ESP32 Deep Sleep Mode</h1>\r\n<div class=\"level1\" style=\"margin: 0px; padding: 0px; color: #333333; font-size: 14px;\">&nbsp;</div>\r\n<h2 class=\"sectionedit2\" id=\"about_esp32_deep_sleep\" style=\"padding: 0px; line-height: 1.2; clear: left; margin: 0px 0px 0.666em; color: #333333;\">1. About ESP32 Deep Sleep</h2>\r\n<div class=\"level2\" style=\"margin: 0px; padding: 0px; color: #333333; font-size: 14px;\">\r\n   <p style=\"margin-bottom: 1.4em; padding: 0px;\">In this project the ESP32 is idle for more than 95% of the time because it is supposed to take measurements only once an hour, transmit the data and wait again. However, the ESP32 has the possibility to be run in different power modes. Besides the active mode where all peripherals are powered, there are also the modem-sleep mode, light-sleep mode, deep-sleep mode, hibernation mode and power-off mode.</p>\r\n   <p style=\"margin-bottom: 1.4em; padding: 0px;\">As explained in the&nbsp;<a href=\"https://wiki.eolab.de/doku.php?id=amc2020:group_n:ds3231rtc\" class=\"wikilink1\" title=\"amc2020:group_n:ds3231rtc\" data-wiki-id=\"amc2020:group_n:ds3231rtc\" style=\"outline: none; text-decoration-line: none; color: #008800;\" target=\"_blank\">DS3231</a>&nbsp;page, the ESP32 can be put to sleep to save a lot of energy from the battery and only wake up once an hour by an interrupt signal from the DS3231 RTC module. For the ESP32 to wake up from an external interrupt, the real time clock (RTC) peripherals (RTC timer + RTC memory) must remain powered on. The power mode with the lowest energy consumption and RTC peripherals still powered on is the deep sleep mode with only RTC timer and RTC memory powered. In this mode, the module draws only 10&nbsp;<span class=\"MathJax_Preview\" style=\"color: inherit; display: contents;\"></span><span id=\"MathJax-Element-1-Frame\" class=\"mjx-chtml MathJax_CHTML\" tabindex=\"0\" data-mathml=\"<math xmlns=&quot;http://www.w3.org/1998/Math/MathML&quot;><mi>&amp;#x03BC;</mi><mi>A</mi></math>\" role=\"presentation\" style=\"display: inline-block; line-height: 0; font-size: 16.66px; font-size-adjust: none; overflow-wrap: normal; word-spacing: normal; text-wrap: nowrap; float: none; direction: ltr; max-width: none; max-height: none; min-width: 0px; min-height: 0px; border: 0px; margin: 0px; padding: 1px 0px; position: relative;\"><span id=\"MJXc-Node-1\" class=\"mjx-math\" aria-hidden=\"true\" style=\"display: inline-block; border-collapse: separate; border-spacing: 0px;\"><span id=\"MJXc-Node-2\" class=\"mjx-mrow\" style=\"display: inline-block; box-sizing: content-box !important;\"><span id=\"MJXc-Node-3\" class=\"mjx-mi\" style=\"display: inline-block; box-sizing: content-box !important;\"><span class=\"mjx-char MJXc-TeX-math-I\" style=\"display: block; white-space-collapse: preserve; font-family: MJXc-TeX-math-I, MJXc-TeX-math-Ix, MJXc-TeX-math-Iw; padding-top: 0.243em; padding-bottom: 0.483em; box-sizing: content-box !important;\">μ</span></span><span id=\"MJXc-Node-4\" class=\"mjx-mi\" style=\"display: inline-block; box-sizing: content-box !important;\"><span class=\"mjx-char MJXc-TeX-math-I\" style=\"display: block; white-space-collapse: preserve; font-family: MJXc-TeX-math-I, MJXc-TeX-math-Ix, MJXc-TeX-math-Iw; padding-top: 0.483em; padding-bottom: 0.303em; box-sizing: content-box !important;\">A</span></span></span></span><span class=\"MJX_Assistive_MathML\" role=\"presentation\" style=\"top: 0px; left: 0px; clip: rect(1px, 1px, 1px, 1px); user-select: none; position: absolute !important; padding: 1px 0px 0px !important; border: 0px !important; height: 1px !important; width: 1px !important; overflow: hidden !important; display: block !important;\"><math xmlns=\"http://www.w3.org/1998/Math/MathML\"><mi>μ</mi><mi>A</mi></math></span></span>&nbsp;of current, which is a several thousand times less than in the active mode (see the&nbsp;<a href=\"https://wiki.eolab.de/lib/exe/fetch.php?tok=ade601&amp;media=https%3A%2F%2Fwww.espressif.com%2Fsites%2Fdefault%2Ffiles%2Fdocumentation%2Fesp32_datasheet_en.pdf\" class=\"media mediafile mf_pdf\" target=\"_blank\" title=\"https://www.espressif.com/sites/default/files/documentation/esp32_datasheet_en.pdf\" rel=\"noopener\" style=\"outline: none; background-image: url(&quot;/lib/images/fileicons/svg/pdf.svg&quot;); background-position: 0px center; background-size: 1.2em; background-repeat: no-repeat; background-attachment: initial; background-origin: initial; background-clip: initial; padding: 0px 0px 0px 1.4em; text-decoration-line: none; color: #2b73b7;\">ESP32 datasheet</a>&nbsp;pp 23 -24). However, like this it is only possible to use the RTC_GPIO pins (figure 1), not the other GPIOs to read the interrupt signal.</p>\r\n   <div class=\"table sectionedit3\" style=\"margin: 0px 0px 1.4em; padding: 0px; overflow-x: auto; min-width: 50%;\">\r\n      <table class=\"inline\" style=\"margin: 0px; padding: 0px; empty-cells: show; border-spacing: 0px; border-style: solid; min-width: 50%;\">\r\n         <thead>\r\n            <tr class=\"row0\">\r\n               <th class=\"col0\" style=\"padding: 0.3em 0.5em; margin: 0px; vertical-align: top; border-style: solid; background-color: #eeeeee; text-align: left;\"><a href=\"https://wiki.eolab.de/lib/exe/fetch.php?media=amc2020:group_n:esp_32_devkitc-vb_pinout_wroom_.jpg\" class=\"media\" target=\"_blank\" title=\"amc2020:group_n:esp_32_devkitc-vb_pinout_wroom_.jpg\" rel=\"noopener\" style=\"outline: none; text-decoration-line: none; color: #2b73b7;\"><img src=\"https://wiki.eolab.de/lib/exe/fetch.php?w=800&amp;tok=0a45a9&amp;media=amc2020:group_n:esp_32_devkitc-vb_pinout_wroom_.jpg\" class=\"media\" loading=\"lazy\" title=\"Figure 1\" alt=\"Figure 1\" width=\"800\" style=\"border-width: 0px; vertical-align: middle; color: #666666; background-color: transparent; font-style: italic; object-fit: cover; max-width: 50vw; margin: 0.2em 0px;\" /></a></th>\r\n               </tr>\r\n            </thead>\r\n         <tbody>\r\n            <tr class=\"row1\">\r\n               <td class=\"col0\" style=\"padding: 0.3em 0.5em; margin: 0px; vertical-align: top; border-style: solid;\"><strong><em>Figure 1</em></strong>&nbsp;ESP32 DevKit Pinout (Source:&nbsp;<a href=\"https://live.staticflickr.com/4764/40089095211_ec1fee0087_b.jpg\" class=\"urlextern\" target=\"_blank\" title=\"https://live.staticflickr.com/4764/40089095211_ec1fee0087_b.jpg\" rel=\"ugc nofollow noopener\" style=\"outline: none; text-decoration-line: none; color: #2b73b7; background-size: 1.2em; background-repeat: no-repeat; background-position: 0px center; padding: 0px 0px 0px 1.4em; background-image: url(&quot;/lib/tpl/dokuwiki/../../images/external-link.svg&quot;);\">ESP32 DevKit 38 Pins</a>)</td>\r\n               </tr>\r\n            </tbody>\r\n         </table>\r\n      </div>\r\n   </div>\r\n<h2 class=\"sectionedit4\" id=\"setup_of_the_ds3231_with_the_esp32\" style=\"padding: 0px; line-height: 1.2; clear: left; margin: 0px 0px 0.666em; color: #333333;\">2. Setup of the DS3231 with the ESP32</h2>\r\n<div class=\"level2\" style=\"margin: 0px; padding: 0px; color: #333333; font-size: 14px;\">\r\n   <p style=\"margin-bottom: 1.4em; padding: 0px;\">As the DS3231 is an open drain device, the SQW pin connected to one of the RTC_GPIO pins needs to be pulled to high voltage using a pullup resistor. In the case of the Arduino UNO sketch, the Arduino\'s internal pullup resistor was used. The ESP32 also has internal pullup resistors, but their value strongly fluctuates from module to module and pin to pin and generally lies between 30 - 80 kΩ. Furthermore, it is somewhat complicated to control the pins during deep sleep mode to activate the pullups. Therefore, a 100kΩ external pullup resistor was used to connect the interrupt pin to 3.3V which also results in a lower current being drawn when the interrupt is triggered.</p>\r\n   <p style=\"margin-bottom: 1.4em; padding: 0px;\">The DS3231 was connected the following way:</p>\r\n   <ul style=\"margin: 0px 0px 1.4em; padding: 0px 0px 0px 1.5em; list-style: outside square;\">\r\n      <li class=\"level1\" style=\"padding: 0px; margin: 0px 0px 0px 1.5em; color: #999999;\">\r\n         <div class=\"li\" style=\"margin: 0px; padding: 0px; color: #333333;\">VCC to 3.3 V</div>\r\n         </li>\r\n      <li class=\"level1\" style=\"padding: 0px; margin: 0px 0px 0px 1.5em; color: #999999;\">\r\n         <div class=\"li\" style=\"margin: 0px; padding: 0px; color: #333333;\">GND to GND</div>\r\n         </li>\r\n      <li class=\"level1\" style=\"padding: 0px; margin: 0px 0px 0px 1.5em; color: #999999;\">\r\n         <div class=\"li\" style=\"margin: 0px; padding: 0px; color: #333333;\">SDA to GPIO 21</div>\r\n         </li>\r\n      <li class=\"level1\" style=\"padding: 0px; margin: 0px 0px 0px 1.5em; color: #999999;\">\r\n         <div class=\"li\" style=\"margin: 0px; padding: 0px; color: #333333;\">SCL to GPIO 22</div>\r\n         </li>\r\n      <li class=\"level1\" style=\"padding: 0px; margin: 0px 0px 0px 1.5em; color: #999999;\">\r\n         <div class=\"li\" style=\"margin: 0px; padding: 0px; color: #333333;\">SQW to GPIO 13 (RTC_GPIO14) (and 3.3V through the pullup resistor).</div>\r\n         </li>\r\n      </ul>\r\n   <p style=\"margin-bottom: 1.4em; padding: 0px;\">The connections can also be seen in the diagram in figure 2.</p>\r\n   <div class=\"table sectionedit5\" style=\"margin: 0px 0px 1.4em; padding: 0px; overflow-x: auto; min-width: 50%;\">\r\n      <table class=\"inline\" style=\"margin: 0px; padding: 0px; empty-cells: show; border-spacing: 0px; border-style: solid; min-width: 50%;\">\r\n         <thead>\r\n            <tr class=\"row0\">\r\n               <th class=\"col0\" style=\"padding: 0.3em 0.5em; margin: 0px; vertical-align: top; border-style: solid; background-color: #eeeeee; text-align: left;\"><a href=\"https://wiki.eolab.de/lib/exe/fetch.php?media=amc2020:group_n:esp32_ds3231.png\" class=\"media\" target=\"_blank\" title=\"amc2020:group_n:esp32_ds3231.png\" rel=\"noopener\" style=\"outline: none; text-decoration-line: none; color: #2b73b7;\"><img src=\"https://wiki.eolab.de/lib/exe/fetch.php?w=800&amp;tok=f891e3&amp;media=amc2020:group_n:esp32_ds3231.png\" class=\"media\" loading=\"lazy\" title=\"Figure 2\" alt=\"Figure 2\" width=\"800\" style=\"border-width: 0px; vertical-align: middle; color: #666666; background-color: transparent; font-style: italic; object-fit: cover; max-width: 50vw; margin: 0.2em 0px;\" /></a></th>\r\n               </tr>\r\n            </thead>\r\n         <tbody>\r\n            <tr class=\"row1\">\r\n               <td class=\"col0\" style=\"padding: 0.3em 0.5em; margin: 0px; vertical-align: top; border-style: solid;\"><strong><em>Figure 2</em></strong>&nbsp;Setup of DS3231 and ESP32.</td>\r\n               </tr>\r\n            </tbody>\r\n         </table>\r\n      </div>\r\n   </div>\r\n<h2 class=\"sectionedit6\" id=\"programming\" style=\"padding: 0px; line-height: 1.2; clear: left; margin: 0px 0px 0.666em; color: #333333;\">3. Programming</h2>\r\n<div class=\"level2\" style=\"margin: 0px; padding: 0px; color: #333333; font-size: 14px;\">\r\n   <p style=\"margin-bottom: 1.4em; padding: 0px;\">After setting up the module with the ESP32, the programming for the deep sleep is very simple. For the following test, the DS3231 was programmed to trigger an interrupt once a minute, i.e. the setting was changed to&nbsp;<b><font face=\"Courier New\">ALARM_SECONDS_MATCH</font></b>. How to do that is explained in the&nbsp;<a href=\"https://wiki.eolab.de/doku.php?id=amc2020:group_n:ds3231rtc\" class=\"wikilink1\" title=\"amc2020:group_n:ds3231rtc\" data-wiki-id=\"amc2020:group_n:ds3231rtc\" style=\"outline: none; text-decoration-line: none; color: #008800;\" target=\"_blank\">DS3231</a>&nbsp;page.</p>\r\n   </div>\r\n<h3 class=\"sectionedit7\" id=\"code\" style=\"padding: 0px; line-height: 1.2; clear: left; font-size: 1.125em; margin: 0px 0px 0.888em; color: #333333;\">3.1 Code</h3>\r\n<div class=\"level3\" style=\"margin: 0px; padding: 0px; color: #333333; font-size: 14px;\">\r\n   <dl class=\"file\" style=\"margin: 0px 0px 1.4em; padding: 0px;\"><dt style=\"font-weight: bold; margin: 0px 0px -1px; padding: 0.3em 0.6em 0.1em; background-image: linear-gradient(rgb(238, 238, 238) 0px, rgb(251, 250, 249) 100%); background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; color: inherit; border-width: 1px; border-style: dashed dashed solid; border-color: #cccccc rgb(204, 204, 204) rgb(251, 250, 249); border-image: initial; border-top-left-radius: 0.3em; border-top-right-radius: 0.3em; float: left;\"><a href=\"https://wiki.eolab.de/doku.php?do=export_code&amp;id=amc2020:group_n:deepsleep&amp;codeblock=0\" title=\"Download Snippet\" class=\"mediafile mf_ino\" style=\"outline: none; background-image: url(&quot;/lib/images/fileicons/svg/file.svg&quot;); background-position: 0px center; background-size: 1.2em; background-repeat: no-repeat; background-attachment: initial; background-origin: initial; background-clip: initial; padding: 0px 0px 0px 1.4em; text-decoration-line: none; color: #2b73b7; font-size: 0.875em; font-weight: normal; display: block; min-height: 16px;\" target=\"_blank\">ESP32_DS3231_Deep_Sleep_test.ino</a></dt>\r\n      <dd style=\"padding: 0px; margin: 0px; clear: left;\">\r\n         <div class=\"cp2clipcont desktop\" style=\"margin: 0px 0px 19.6px; padding: 0px; position: relative; border: none; overflow: auto;\">\r\n            <pre class=\"code file c\" style=\"margin-top: 0px; margin-bottom: 0px; padding: 0.7em 1em; font-family: Consolas, &quot;Andale Mono WT&quot;, &quot;Andale Mono&quot;, &quot;Bitstream Vera Sans Mono&quot;, &quot;Nimbus Mono L&quot;, Monaco, &quot;Courier New&quot;, monospace; font-size: 1em; direction: ltr; background-color: #fbfaf9; box-shadow: rgb(204, 204, 204) -4px -4px 0.5em -0.3em inset; border-radius: 2px; overflow: auto; overflow-wrap: normal; border: 1px dashed rgb(204, 204, 204);\"><span class=\"co1\" style=\"color: #808080; font-style: italic;\">//ESP32 DS3231 Deep Sleep Test</span>\r\n&nbsp;\r\n<span class=\"co2\" style=\"color: #339933;\">#include &lt;Wire.h&gt;</span><span class=\"co2\" style=\"color: #339933;\">#define DS3231RTC_I2C_ADDRESS 0x68</span><span class=\"co2\" style=\"color: #339933;\">#define I2C_SDA 21                                  //1</span><span class=\"co2\" style=\"color: #339933;\">#define I2C_SCL 22</span>\r\n&nbsp;\r\n<span class=\"kw4\" style=\"color: #993333;\">void</span> clearAlarm1<span class=\"br0\" style=\"color: #66cc66;\">(</span><span class=\"br0\" style=\"color: #66cc66;\">)</span><span class=\"br0\" style=\"color: #66cc66;\">{</span><span class=\"co1\" style=\"color: #808080; font-style: italic;\">//2    </span>\r\n  Wire.<span class=\"me1\" style=\"color: #006600;\">beginTransmission</span><span class=\"br0\" style=\"color: #66cc66;\">(</span>DS3231RTC_I2C_ADDRESS<span class=\"br0\" style=\"color: #66cc66;\">)</span><span class=\"sy0\" style=\"color: #66cc66;\">;</span>\r\n  Wire.<span class=\"me1\" style=\"color: #006600;\">write</span><span class=\"br0\" style=\"color: #66cc66;\">(</span><span class=\"nu12\">0x0F</span><span class=\"br0\" style=\"color: #66cc66;\">)</span><span class=\"sy0\" style=\"color: #66cc66;\">;</span>                               \r\n  Wire.<span class=\"me1\" style=\"color: #006600;\">write</span><span class=\"br0\" style=\"color: #66cc66;\">(</span>B00000000<span class=\"br0\" style=\"color: #66cc66;\">)</span><span class=\"sy0\" style=\"color: #66cc66;\">;</span>                          \r\n  Wire.<span class=\"me1\" style=\"color: #006600;\">endTransmission</span><span class=\"br0\" style=\"color: #66cc66;\">(</span><span class=\"br0\" style=\"color: #66cc66;\">)</span><span class=\"sy0\" style=\"color: #66cc66;\">;</span><span class=\"br0\" style=\"color: #66cc66;\">}</span>\r\n&nbsp;\r\n<span class=\"kw4\" style=\"color: #993333;\">void</span> setup<span class=\"br0\" style=\"color: #66cc66;\">(</span><span class=\"br0\" style=\"color: #66cc66;\">)</span><span class=\"br0\" style=\"color: #66cc66;\">{</span>\r\n  Wire.<span class=\"me1\" style=\"color: #006600;\">begin</span><span class=\"br0\" style=\"color: #66cc66;\">(</span>I2C_SDA<span class=\"sy0\" style=\"color: #66cc66;\">,</span> I2C_SCL<span class=\"br0\" style=\"color: #66cc66;\">)</span><span class=\"sy0\" style=\"color: #66cc66;\">;</span><span class=\"co1\" style=\"color: #808080; font-style: italic;\">//3</span>\r\n  clearAlarm1<span class=\"br0\" style=\"color: #66cc66;\">(</span><span class=\"br0\" style=\"color: #66cc66;\">)</span><span class=\"sy0\" style=\"color: #66cc66;\">;</span><span class=\"co1\" style=\"color: #808080; font-style: italic;\">//4</span>\r\n  Serial.<span class=\"me1\" style=\"color: #006600;\">begin</span><span class=\"br0\" style=\"color: #66cc66;\">(</span><span class=\"nu0\" style=\"color: #cc66cc;\">115200</span><span class=\"br0\" style=\"color: #66cc66;\">)</span><span class=\"sy0\" style=\"color: #66cc66;\">;</span><span class=\"co1\" style=\"color: #808080; font-style: italic;\">//5</span>\r\n  delay<span class=\"br0\" style=\"color: #66cc66;\">(</span><span class=\"nu0\" style=\"color: #cc66cc;\">1000</span><span class=\"br0\" style=\"color: #66cc66;\">)</span><span class=\"sy0\" style=\"color: #66cc66;\">;</span>\r\n  Serial.<span class=\"me1\" style=\"color: #006600;\">println</span><span class=\"br0\" style=\"color: #66cc66;\">(</span><span class=\"st0\" style=\"color: #ff0000;\">\"ESP32 woke up from deep sleep.\"</span><span class=\"br0\" style=\"color: #66cc66;\">)</span><span class=\"sy0\" style=\"color: #66cc66;\">;</span><span class=\"kw1\" style=\"color: #b1b100;\">for</span><span class=\"br0\" style=\"color: #66cc66;\">(</span><span class=\"kw4\" style=\"color: #993333;\">int</span> i<span class=\"sy0\" style=\"color: #66cc66;\">=</span><span class=\"nu0\" style=\"color: #cc66cc;\">3</span><span class=\"sy0\" style=\"color: #66cc66;\">;</span>i<span class=\"sy0\" style=\"color: #66cc66;\">&gt;=</span><span class=\"nu0\" style=\"color: #cc66cc;\">0</span><span class=\"sy0\" style=\"color: #66cc66;\">;</span>i<span class=\"sy0\" style=\"color: #66cc66;\">--</span><span class=\"br0\" style=\"color: #66cc66;\">)</span><span class=\"br0\" style=\"color: #66cc66;\">{</span>\r\n    Serial.<span class=\"me1\" style=\"color: #006600;\">print</span><span class=\"br0\" style=\"color: #66cc66;\">(</span><span class=\"st0\" style=\"color: #ff0000;\">\"Going back to sleep in \"</span><span class=\"br0\" style=\"color: #66cc66;\">)</span><span class=\"sy0\" style=\"color: #66cc66;\">;</span>\r\n    Serial.<span class=\"me1\" style=\"color: #006600;\">println</span><span class=\"br0\" style=\"color: #66cc66;\">(</span>i<span class=\"br0\" style=\"color: #66cc66;\">)</span><span class=\"sy0\" style=\"color: #66cc66;\">;</span>\r\n    delay<span class=\"br0\" style=\"color: #66cc66;\">(</span><span class=\"nu0\" style=\"color: #cc66cc;\">1000</span><span class=\"br0\" style=\"color: #66cc66;\">)</span><span class=\"sy0\" style=\"color: #66cc66;\">;</span><span class=\"br0\" style=\"color: #66cc66;\">}</span>\r\n  esp_sleep_enable_ext0_wakeup<span class=\"br0\" style=\"color: #66cc66;\">(</span>GPIO_NUM_13<span class=\"sy0\" style=\"color: #66cc66;\">,</span><span class=\"nu0\" style=\"color: #cc66cc;\">0</span><span class=\"br0\" style=\"color: #66cc66;\">)</span><span class=\"sy0\" style=\"color: #66cc66;\">;</span><span class=\"co1\" style=\"color: #808080; font-style: italic;\">//6</span>\r\n  esp_deep_sleep_start<span class=\"br0\" style=\"color: #66cc66;\">(</span><span class=\"br0\" style=\"color: #66cc66;\">)</span><span class=\"sy0\" style=\"color: #66cc66;\">;</span><span class=\"co1\" style=\"color: #808080; font-style: italic;\">//7</span>\r\n  Serial.<span class=\"me1\" style=\"color: #006600;\">println</span><span class=\"br0\" style=\"color: #66cc66;\">(</span><span class=\"st0\" style=\"color: #ff0000;\">\"This will never be printed.\"</span><span class=\"br0\" style=\"color: #66cc66;\">)</span><span class=\"sy0\" style=\"color: #66cc66;\">;</span><span class=\"co1\" style=\"color: #808080; font-style: italic;\">//8</span><span class=\"br0\" style=\"color: #66cc66;\">}</span>\r\n&nbsp;\r\n<span class=\"kw4\" style=\"color: #993333;\">void</span> loop<span class=\"br0\" style=\"color: #66cc66;\">(</span><span class=\"br0\" style=\"color: #66cc66;\">)</span><span class=\"br0\" style=\"color: #66cc66;\">{</span><span class=\"co1\" style=\"color: #808080; font-style: italic;\">//This is not going to be called.</span><span class=\"br0\" style=\"color: #66cc66;\">}</span></pre>\r\n            <button title=\"Copy to clipboard\" style=\"font-style: inherit; font-variant: inherit; font-stretch: inherit; font-size: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-weight: normal; color: #333333; background: url(&quot;/lib/plugins/copy2clipboard/clipmini.svg&quot;) 0px 0px / 12px no-repeat rgb(187, 187, 187); margin: 0px; vertical-align: middle; border-width: 1px; border-style: solid; border-color: #cccccc; border-radius: 2px; padding: 0.1em 0.5em; cursor: pointer; position: absolute; top: 0px; right: 0px; width: 13px; height: 18px; visibility: hidden;\"></button></div>\r\n         </dd>\r\n      </dl>\r\n   </div>\r\n<h3 class=\"sectionedit8\" id=\"the_code_explained\" style=\"padding: 0px; line-height: 1.2; clear: left; font-size: 1.125em; margin: 0px 0px 0.888em; color: #333333;\">3.2 The Code Explained</h3>\r\n<div class=\"level3\" style=\"margin: 0px; padding: 0px; color: #333333; font-size: 14px;\">\r\n   <p style=\"margin-bottom: 1.4em; padding: 0px;\">&nbsp;</p>\r\n   <ol style=\"margin: 0px 0px 1.4em; padding: 0px 0px 0px 1.5em; list-style-position: outside; list-style-image: initial;\">\r\n      <li style=\"padding: 0px; margin: 0px 0px 0px 1.5em; color: #666666;\">After including the&nbsp;<b><font face=\"Courier New\"><font style=\"color: #cd5307;\">Wire</font>.h</font>&nbsp;</b>library for I2C communication and defining the DS3231 I2C address as&nbsp;<b><font face=\"Courier New\">0x68</font></b>, the I2C pins of the ESP32 need to be defined. By default SCL is GPIO 22 and SDA is GPIO 21, but it is possible to use almost all pins for I2C communication if done correctly. Here just the default pins are used.</li>\r\n      <li style=\"padding: 0px; margin: 0px 0px 0px 1.5em; color: #666666;\">The function&nbsp;<b><font face=\"Courier New\">clearAlarm1()</font></b>&nbsp;is the only one, that must be copied into the new sketch.</li>\r\n      <br />\r\n      <li style=\"padding: 0px; margin: 0px 0px 0px 1.5em; color: #666666;\">When using the&nbsp;<b><font face=\"Courier New\"><font style=\"color: #cd5307;\">Wire</font>.<font style=\"color: #cd5307;\">begin</font>()</font></b>&nbsp;method to start the I2C bus, the I2C pins previously defined need to be given as argument.</li>\r\n      <li style=\"padding: 0px; margin: 0px 0px 0px 1.5em; color: #666666;\">After waking up, the alarm flag 1 of the DS3231\'s status register needs to be reset, otherwise the interrupt is fired continuously and the ESP32 would immediately wake up again after going into sleep mode. Therefore,&nbsp;<b><font face=\"Courier New\">clearAlarm1()</font></b>&nbsp;is used to reset the alarm in the beginning.</li>\r\n      <li style=\"padding: 0px; margin: 0px 0px 0px 1.5em; color: #666666;\">The serial connection is started to test whether the sketch is working. After waking up, the ESP32 prints some data to the monitor. Then a counter is counting down from 3 to 0 and the ESP32 goes back into deep sleep.</li>\r\n      <li style=\"padding: 0px; margin: 0px 0px 0px 1.5em; color: #666666;\">The function&nbsp;<b><font face=\"Courier New\">esp_sleep_enable_ext0_wakeup()</font></b>&nbsp;defines the method for waking the ESP32 up from deep sleep. The&nbsp;<b><font face=\"Courier New\">ext0</font></b>&nbsp;means that the the wake up source is external and can only be triggered by a single pin. The number of the pin is given in the argument as&nbsp;<b><font face=\"Courier New\">GPIO_NUM_X</font></b>&nbsp;where X represents the GPIO number of that pin. The second argument (level) defines which state the pin needs to be in to wake the ESP32 up. A&nbsp;<b><font face=\"Courier New\">1</font></b>&nbsp;means that it will wake up, when the voltage is 3.3V. A&nbsp;<b><font face=\"Courier New\">0</font></b>&nbsp;means it wakes up when it is 0V. As the DS3231 pulls the pin to GND when the alarm is activated, the level needs to be&nbsp;<b><font face=\"Courier New\">0</font></b>.</li>\r\n      <li style=\"padding: 0px; margin: 0px 0px 0px 1.5em; color: #666666;\">The function&nbsp;<b><font face=\"Courier New\">esp_deep_sleep_start()</font></b>&nbsp;changes the power mode of the ESP32 to deep sleep.</li>\r\n      <li style=\"padding: 0px; margin: 0px 0px 0px 1.5em; color: #666666;\">When the deep sleep is activated, the rest of the program code is just not executed. After resetting, the ESP32 starts again with the&nbsp;<b><font face=\"Courier New\"><font style=\"color: #5a6b0f;\">setup</font>()</font></b>. Therefore, this line should never be printed to the serial monitor; otherwise there is an error. The program also never reaches the main&nbsp;<b><font face=\"Courier New\"><font style=\"color: #5a6b0f;\">loop</font>()</font></b>.</li>\r\n      </ol>\r\n   <p style=\"margin-bottom: 1.4em; padding: 0px;\">&nbsp;</p>\r\n   </div>\r\n<h3 class=\"sectionedit9\" id=\"results\" style=\"padding: 0px; line-height: 1.2; clear: left; font-size: 1.125em; margin: 0px 0px 0.888em; color: #333333;\">3.3 Results</h3>\r\n<div class=\"level3\" style=\"margin: 0px; padding: 0px; color: #333333; font-size: 14px;\">\r\n   <p style=\"margin-bottom: 1.4em; padding: 0px;\">Apart from the timestamps on the left, the result in the serial monitor should look like this. In the data that the ESP32 prints by itself, it can be seen that the reset occured due to waking up from deep sleep (1). Furthermore, the last serial print command was not executed because deep sleep was activated before that could happen.</p>\r\n   <p style=\"margin-bottom: 1.4em; padding: 0px;\">When comparing the time stamps (1, 3 and 4) it becomes visible that the wake up from deep sleep occurred always 1 minute after the last wake up. However, the milliseconds are always varying a little bit. This might be due to the temperature compensation of the DS3231 through which the capacitance and therefore the frequency of the oscillator are changed. So, there might be very small inaccuracies, but they are constantly compensated for by the module, such that the total drift stays very low.</p>\r\n   </div>','https://wiki.eolab.de/doku.php?id=amc2020:group_n:deepsleep','',3,0,5,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-09-11 11:38:50',0,'2024-09-11 11:38:50','14.41.12.104','','','','','','','','','','','',''),(655,-652,'',655,0,0,'','','html1','[Linux] Apache 에러 로그 확인','<h3><span style=\"font-size: 16px;\">3. Apache 에러 로그 확인</span></h3>\r\n<p><strong><span style=\"font-size: 16px;\">에러의 원인 파악</span></strong></p>\r\n<ul>\r\n   <li>\r\n      <p><span style=\"font-size: 16px;\">Apache 에러 로그를 확인하여 구체적인 오류 메시지를 확인합니다.</span></p>\r\n      <pre class=\"!overflow-visible\">\r\n         <div class=\"dark bg-gray-950 contain-inline-size rounded-md border-[0.5px] border-token-border-medium relative\">\r\n            <div class=\"flex items-center text-token-text-secondary bg-token-main-surface-secondary px-4 py-2 text-xs font-sans justify-between rounded-t-md h-9\"><b><span style=\"font-family: &quot;pretendard jp&quot;; font-size: 20px;\">sudo </span><span class=\"hljs-built_in\" style=\"font-family: &quot;pretendard jp&quot;; font-size: 20px;\">tail</span><span style=\"font-family: &quot;pretendard jp&quot;; font-size: 20px;\"> -f /var/log/apache2/error.log</span></b></div>\r\n            </div>\r\n         </pre>\r\n      </li>\r\n   <li>\r\n      <p><span style=\"font-size: 16px;\">PHP 파일에 접속할 때 에러 로그에 어떤 메시지가 출력되는지 확인합니다.</span></p>\r\n      </li>\r\n   </ul>','','',0,0,9,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-10-01 14:24:26',0,'2024-10-01 14:24:26','14.41.12.104','','','','','','','','','','','',''),(656,-653,'',656,0,0,'','','html1','[PlatformIO] VScode PlatformIO에서 BIN 생성하기','<p>1. extra_script.py&nbsp;</p>\r\n<p>-------------------------------------------------------------------------</p>\r\n<p>from os.path import join, isfile</p>\r\n<p>from SCons.Script import DefaultEnvironment</p>\r\n<p><br /></p>\r\n<p>env = DefaultEnvironment()</p>\r\n<p><br /></p>\r\n<p># HEX 파일 생성</p>\r\n<p>env.AddPostAction(</p>\r\n<p>&nbsp; &nbsp; \"$BUILD_DIR/${PROGNAME}.elf\",</p>\r\n<p>&nbsp; &nbsp; env.VerboseAction(\" \".join([</p>\r\n<p>&nbsp; &nbsp; &nbsp; &nbsp; \"$OBJCOPY\",</p>\r\n<p>&nbsp; &nbsp; &nbsp; &nbsp; \"-O\",</p>\r\n<p>&nbsp; &nbsp; &nbsp; &nbsp; \"ihex\",</p>\r\n<p>&nbsp; &nbsp; &nbsp; &nbsp; \"$BUILD_DIR/${PROGNAME}.elf\",</p>\r\n<p>&nbsp; &nbsp; &nbsp; &nbsp; \"$BUILD_DIR/${PROGNAME}.hex\"</p>\r\n<p>&nbsp; &nbsp; ]), \"Building HEX\")</p>\r\n<p>)</p>\r\n<p><br /></p>\r\n<p># BIN 파일 생성</p>\r\n<p>env.AddPostAction(</p>\r\n<p>&nbsp; &nbsp; \"$BUILD_DIR/${PROGNAME}.elf\",</p>\r\n<p>&nbsp; &nbsp; env.VerboseAction(\" \".join([</p>\r\n<p>&nbsp; &nbsp; &nbsp; &nbsp; \"$OBJCOPY\",</p>\r\n<p>&nbsp; &nbsp; &nbsp; &nbsp; \"-O\",</p>\r\n<p>&nbsp; &nbsp; &nbsp; &nbsp; \"binary\",</p>\r\n<p>&nbsp; &nbsp; &nbsp; &nbsp; \"$BUILD_DIR/${PROGNAME}.elf\",</p>\r\n<p>&nbsp; &nbsp; &nbsp; &nbsp; \"$BUILD_DIR/${PROGNAME}.bin\"</p>\r\n<p>&nbsp; &nbsp; ]), \"Building BIN\")</p>\r\n<p>)</p>\r\n<p>-------------------------------------------------------------------------</p>\r\n<p>&nbsp;</p>\r\n<p>2. platformio.ini 설정</p>\r\n<p>; BIN생성시, 해당 소스코드 디렉토리 아래 : .pio\\build\\esp32dev 에 firmware.bin 생성됨</p>\r\n<p><br /></p>\r\n<p>[env:esp32dev]</p>\r\n<p>platform = espressif32</p>\r\n<p>board = esp32dev</p>\r\n<p>framework = arduino</p>\r\n<p>monitor_speed = 115200</p>\r\n<p>build_flags = -I include</p>\r\n<p>extra_scripts = post:extra_script.py</p>\r\n<p>lib_deps = D:\\1st_My_JOB\\Arduino_DIR\\libraries\\ArduinoJson</p>\r\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; D:\\1st_My_JOB\\Arduino_DIR\\libraries\\RTClib</p>\r\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; D:\\1st_My_JOB\\Arduino_DIR\\libraries\\AsyncTCP-master&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</p>\r\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; D:\\1st_My_JOB\\Arduino_DIR\\libraries\\ESPAsyncWebSrv</p>','https://chatgpt.com/share/674527f4-1380-8001-a512-b34f8904803c','',1,0,5,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-11-26 10:46:52',0,'2024-11-26 10:46:52','14.41.12.104','','','','','','','','','','','',''),(651,-648,'',651,0,0,'','','html1','[Arduino] Solar Radiation Measurement using Pyranometer Sensor & Arduino | Solar Irradiance Meter','<p><iframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/ek3uY3_LfbA?si=O1QBU4hTmPlrwvg6\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen=\"\"></iframe></p>','https://www.youtube.com/watch?v=ek3uY3_LfbA','',0,0,2,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-09-13 07:22:01',0,'2024-09-13 07:22:01','14.41.12.104','','','','','','','','','','','',''),(652,-649,'',652,0,0,'','','html1','[ETC] AC Dimmer','<p><iframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/jS9ANqJf-ZY?si=JySNaxp0seok0JOL\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen=\"\"></iframe></p>','https://electronoobs.com/eng_circuitos_tut80.php','',0,0,5,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-09-29 14:02:49',2,'2024-09-29 14:02:49','14.41.12.104','','','','','','','','','','','',''),(653,-650,'',653,0,0,'','','html1','[ETC] AC Light Dimmer Using TRIAC & ESP32.','<header class=\"entry-header\" style=\"box-sizing: border-box; padding: 0px; color: #302b2b; font-size: 15px; background-color: #ffffff;\">\r\n   <h1 class=\"entry-title\" style=\"box-sizing: border-box; border: 0px; font-family: &quot;Be Vietnam Pro&quot;, Helvetica, Arial, sans-serif; font-size: 30px; font-style: inherit; margin: 0px 0px 8px; outline: 0px; padding: 0px; vertical-align: baseline; clear: both; line-height: 1.5; color: #353535; display: var(--page-title-display); text-transform: capitalize;\">AC Light Dimmer Using TRIAC &amp; ESP32.</h1>\r\n   </header>\r\n<div class=\"entry-meta\" style=\"box-sizing: border-box; border: 0px; font-size: 15px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; color: #302b2b; background-color: #ffffff;\"><span class=\"posted-on\" style=\"box-sizing: border-box; border: 0px; font-family: Roboto, sans-serif; font-size: 14px; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; display: inline;\"><a href=\"https://www.technolabcreation.com/ac-light-dimmer-using-triac-esp32/\" rel=\"bookmark\" style=\"box-sizing: border-box; border: 0px; font-family: &quot;Be Vietnam Pro&quot;, Helvetica, Arial, sans-serif; font-size: 15px; font-style: inherit; margin: 0px 10px 10px 0px; outline: 0px; padding: 0px; vertical-align: baseline; color: #302b2b; text-decoration-line: none; transition: 0.3s ease-in-out;\" target=\"_blank\"><time class=\"entry-date published\" datetime=\"2022-07-05T10:40:42+05:30\" style=\"box-sizing: border-box;\">July 5, 2022</time></a></span><span class=\"byline\" style=\"box-sizing: border-box; border: 0px; font-family: Roboto, sans-serif; font-size: 14px; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; display: inline;\">&nbsp;by&nbsp;<span class=\"author vcard\" style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;\"><a class=\"url fn n\" href=\"https://www.technolabcreation.com/author/technolab16/\" style=\"box-sizing: border-box; border: 0px; font-family: &quot;Be Vietnam Pro&quot;, Helvetica, Arial, sans-serif; font-size: 15px; font-style: inherit; margin: 0px 10px 10px 0px; outline: 0px; padding: 0px; vertical-align: baseline; color: #302b2b; text-decoration-line: none; transition: 0.3s ease-in-out;\" target=\"_blank\">technolabcreation</a></span></span><span class=\"comments-link\" style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;\"><a href=\"https://www.technolabcreation.com/ac-light-dimmer-using-triac-esp32/#respond\" style=\"box-sizing: border-box; border: 0px; font-family: &quot;Be Vietnam Pro&quot;, Helvetica, Arial, sans-serif; font-style: inherit; margin: 0px 10px 10px 0px; outline: 0px; padding: 0px; vertical-align: baseline; color: #302b2b; text-decoration-line: none; transition: 0.3s ease-in-out;\" target=\"_blank\">Leave a Comment<span class=\"screen-reader-text\" style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: -1px; outline: 0px; padding: 0px; vertical-align: baseline; top: -10000em; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); position: absolute !important;\">on AC Light Dimmer Using TRIAC &amp; ESP32.</span></a></span></div>\r\n<div class=\"entry-content\" style=\"box-sizing: border-box; border: 0px; font-size: 15px; margin: 10px 0px; outline: 0px; padding: 10px 0px; vertical-align: baseline; line-height: 2; text-align: justify; color: #303030; background-color: #ffffff;\">\r\n   <div data-elementor-type=\"wp-post\" data-elementor-id=\"1735\" class=\"elementor elementor-1735\" style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;\">\r\n      <section class=\"elementor-section elementor-top-section elementor-element elementor-element-3c16b4d elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"3c16b4d\" data-element_type=\"section\" style=\"box-sizing: border-box; --flex-direction: initial; --flex-wrap: initial; --justify-content: initial; --align-items: initial; --align-content: initial; --gap: initial; --flex-basis: initial; --flex-grow: initial; --flex-shrink: initial; --order: initial; --align-self: initial; flex-basis: var(--flex-basis); flex-grow: var(--flex-grow); flex-shrink: var(--flex-shrink); order: var(--order); align-self: var(--align-self); position: relative; --swiper-theme-color: #000; --swiper-navigation-size: 44px; --swiper-pagination-bullet-size: 6px; --swiper-pagination-bullet-horizontal-gap: 6px;\">\r\n         <div class=\"elementor-container elementor-column-gap-default\" style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px auto; outline: 0px; padding: 0px; vertical-align: baseline; display: flex; position: relative; max-width: 1140px;\">\r\n            <div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-1fe1ffd\" data-id=\"1fe1ffd\" data-element_type=\"column\" style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; --flex-direction: initial; --flex-wrap: initial; --justify-content: initial; --align-items: initial; --align-content: initial; --gap: initial; --flex-basis: initial; --flex-grow: initial; --flex-shrink: initial; --order: initial; --align-self: initial; flex-basis: var(--flex-basis); flex-grow: var(--flex-grow); flex-shrink: var(--flex-shrink); order: var(--order); align-self: var(--align-self); position: relative; min-height: 1px; display: flex; --swiper-theme-color: #000; --swiper-navigation-size: 44px; --swiper-pagination-bullet-size: 6px; --swiper-pagination-bullet-horizontal-gap: 6px; width: 800px;\">\r\n               <div class=\"elementor-widget-wrap elementor-element-populated\" style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 10px; vertical-align: baseline; position: relative; width: 800px; flex-wrap: wrap; align-content: flex-start; display: flex;\">\r\n                  <div class=\"elementor-element elementor-element-c9b977d elementor-widget elementor-widget-text-editor\" data-id=\"c9b977d\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\" style=\"box-sizing: border-box; border: 0px; font-family: var( --e-global-typography-text-font-family ), Sans-serif; font-style: inherit; font-weight: var( --e-global-typography-text-font-weight ); margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; --flex-direction: initial; --flex-wrap: initial; --justify-content: initial; --align-items: initial; --align-content: initial; --gap: initial; --flex-basis: initial; --flex-grow: initial; --flex-shrink: initial; --order: initial; --align-self: initial; flex-basis: var(--flex-basis); flex-grow: var(--flex-grow); flex-shrink: var(--flex-shrink); order: var(--order); align-self: var(--align-self); flex-direction: var(--flex-direction); flex-wrap: var(--flex-wrap); justify-content: var(--justify-content); align-items: var(--align-items); align-content: var(--align-content); gap: var(--gap); position: relative; --swiper-theme-color: #000; --swiper-navigation-size: 44px; --swiper-pagination-bullet-size: 6px; --swiper-pagination-bullet-horizontal-gap: 6px; color: var( --e-global-color-text ); width: 780px;\">\r\n                     <div class=\"elementor-widget-container\" style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; transition: background .3s,border .3s,border-radius .3s,box-shadow .3s,transform var(--e-transform-transition-duration,.4s);\">\r\n                        <p style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin-bottom: 20px; outline: 0px; padding: 0px; vertical-align: baseline;\">Hello friends, welcome to another article. In this tutorial we will learn about AC dimmer circuit and will make one using TRIAC.</p>\r\n                        <p style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin-bottom: 20px; outline: 0px; padding: 0px; vertical-align: baseline;\">If we want to turn ON/OFF our home-appliances like TV, BULB, FAN etc. we can directly do this digitally using Relay with any microcontroller like Arduino. Here turning ON/OFF is great way of making home-automation setup. but in some cases we don’t need only digitally ON/OFF we also want, like controlling the speed of fan, brightness of bulb. these mechanism we can not achieve using relay. Here we need AC dimmer circuit to control the brightness of bulb or speed of fan.</p>\r\n                        <p style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin-bottom: 20px; outline: 0px; padding: 0px; vertical-align: baseline;\">In DC circuit we achieve this mechanism using PWM pins of microcontroller we don’t need separate circuit for it.</p>\r\n                        <p style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin-bottom: 20px; outline: 0px; padding: 0px; vertical-align: baseline;\">There are lots of ways to make AC dimmer circuit, In this article&nbsp; we will&nbsp; use phase control technique and static switches like TRIAC to control the phase of AC supply voltage.</p>\r\n                        <p style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin-bottom: 20px; outline: 0px; padding: 0px; vertical-align: baseline;\">Here a TRIAC is used to switch the AC lamp, as this is a Power electronic fast switching device which is the best suited for these applications.</p>\r\n                        </div>\r\n                     </div>\r\n                  </div>\r\n               </div>\r\n            </div>\r\n         </section>\r\n      <section class=\"elementor-section elementor-top-section elementor-element elementor-element-a5e47c0 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"a5e47c0\" data-element_type=\"section\" style=\"box-sizing: border-box; --flex-direction: initial; --flex-wrap: initial; --justify-content: initial; --align-items: initial; --align-content: initial; --gap: initial; --flex-basis: initial; --flex-grow: initial; --flex-shrink: initial; --order: initial; --align-self: initial; flex-basis: var(--flex-basis); flex-grow: var(--flex-grow); flex-shrink: var(--flex-shrink); order: var(--order); align-self: var(--align-self); position: relative; --swiper-theme-color: #000; --swiper-navigation-size: 44px; --swiper-pagination-bullet-size: 6px; --swiper-pagination-bullet-horizontal-gap: 6px;\">\r\n         <div class=\"elementor-container elementor-column-gap-default\" style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px auto; outline: 0px; padding: 0px; vertical-align: baseline; display: flex; position: relative; max-width: 1140px;\">\r\n            <div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-dc50baa\" data-id=\"dc50baa\" data-element_type=\"column\" style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; --flex-direction: initial; --flex-wrap: initial; --justify-content: initial; --align-items: initial; --align-content: initial; --gap: initial; --flex-basis: initial; --flex-grow: initial; --flex-shrink: initial; --order: initial; --align-self: initial; flex-basis: var(--flex-basis); flex-grow: var(--flex-grow); flex-shrink: var(--flex-shrink); order: var(--order); align-self: var(--align-self); position: relative; min-height: 1px; display: flex; --swiper-theme-color: #000; --swiper-navigation-size: 44px; --swiper-pagination-bullet-size: 6px; --swiper-pagination-bullet-horizontal-gap: 6px; width: 800px;\">\r\n               <div class=\"elementor-widget-wrap elementor-element-populated\" style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 10px; vertical-align: baseline; position: relative; width: 800px; flex-wrap: wrap; align-content: flex-start; display: flex;\">\r\n                  <div class=\"elementor-element elementor-element-96b03bd elementor-widget elementor-widget-heading\" data-id=\"96b03bd\" data-element_type=\"widget\" data-widget_type=\"heading.default\" style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; --flex-direction: initial; --flex-wrap: initial; --justify-content: initial; --align-items: initial; --align-content: initial; --gap: initial; --flex-basis: initial; --flex-grow: initial; --flex-shrink: initial; --order: initial; --align-self: initial; flex-basis: var(--flex-basis); flex-grow: var(--flex-grow); flex-shrink: var(--flex-shrink); order: var(--order); align-self: var(--align-self); flex-direction: var(--flex-direction); flex-wrap: var(--flex-wrap); justify-content: var(--justify-content); align-items: var(--align-items); align-content: var(--align-content); gap: var(--gap); position: relative; --swiper-theme-color: #000; --swiper-navigation-size: 44px; --swiper-pagination-bullet-size: 6px; --swiper-pagination-bullet-horizontal-gap: 6px; width: 780px;\">\r\n                     <div class=\"elementor-widget-container\" style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; transition: background .3s,border .3s,border-radius .3s,box-shadow .3s,transform var(--e-transform-transition-duration,.4s);\">\r\n                        <h2 class=\"elementor-heading-title elementor-size-default\" style=\"box-sizing: border-box; border: 0px; font-family: var( --e-global-typography-primary-font-family ), Sans-serif; font-size: 30px; font-style: inherit; font-weight: var( --e-global-typography-primary-font-weight ); margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; clear: both; line-height: 1; color: var( --e-global-color-primary );\">Components Required.</h2>\r\n                        </div>\r\n                     </div>\r\n                  </div>\r\n               </div>\r\n            </div>\r\n         </section>\r\n      <section class=\"elementor-section elementor-top-section elementor-element elementor-element-75eb5f7 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"75eb5f7\" data-element_type=\"section\" style=\"box-sizing: border-box; --flex-direction: initial; --flex-wrap: initial; --justify-content: initial; --align-items: initial; --align-content: initial; --gap: initial; --flex-basis: initial; --flex-grow: initial; --flex-shrink: initial; --order: initial; --align-self: initial; flex-basis: var(--flex-basis); flex-grow: var(--flex-grow); flex-shrink: var(--flex-shrink); order: var(--order); align-self: var(--align-self); position: relative; --swiper-theme-color: #000; --swiper-navigation-size: 44px; --swiper-pagination-bullet-size: 6px; --swiper-pagination-bullet-horizontal-gap: 6px;\">\r\n         <div class=\"elementor-container elementor-column-gap-default\" style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px auto; outline: 0px; padding: 0px; vertical-align: baseline; display: flex; position: relative; max-width: 1140px;\">\r\n            <div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-cfd6a21\" data-id=\"cfd6a21\" data-element_type=\"column\" style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; --flex-direction: initial; --flex-wrap: initial; --justify-content: initial; --align-items: initial; --align-content: initial; --gap: initial; --flex-basis: initial; --flex-grow: initial; --flex-shrink: initial; --order: initial; --align-self: initial; flex-basis: var(--flex-basis); flex-grow: var(--flex-grow); flex-shrink: var(--flex-shrink); order: var(--order); align-self: var(--align-self); position: relative; min-height: 1px; display: flex; --swiper-theme-color: #000; --swiper-navigation-size: 44px; --swiper-pagination-bullet-size: 6px; --swiper-pagination-bullet-horizontal-gap: 6px; width: 800px;\">\r\n               <div class=\"elementor-widget-wrap elementor-element-populated\" style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 10px; vertical-align: baseline; position: relative; width: 800px; flex-wrap: wrap; align-content: flex-start; display: flex;\">\r\n                  <div class=\"elementor-element elementor-element-61502fb elementor-widget elementor-widget-text-editor\" data-id=\"61502fb\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\" style=\"box-sizing: border-box; border: 0px; font-family: var( --e-global-typography-text-font-family ), Sans-serif; font-style: inherit; font-weight: var( --e-global-typography-text-font-weight ); margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; --flex-direction: initial; --flex-wrap: initial; --justify-content: initial; --align-items: initial; --align-content: initial; --gap: initial; --flex-basis: initial; --flex-grow: initial; --flex-shrink: initial; --order: initial; --align-self: initial; flex-basis: var(--flex-basis); flex-grow: var(--flex-grow); flex-shrink: var(--flex-shrink); order: var(--order); align-self: var(--align-self); flex-direction: var(--flex-direction); flex-wrap: var(--flex-wrap); justify-content: var(--justify-content); align-items: var(--align-items); align-content: var(--align-content); gap: var(--gap); position: relative; --swiper-theme-color: #000; --swiper-navigation-size: 44px; --swiper-pagination-bullet-size: 6px; --swiper-pagination-bullet-horizontal-gap: 6px; color: var( --e-global-color-text ); width: 780px;\">\r\n                     <div class=\"elementor-widget-container\" style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; transition: background .3s,border .3s,border-radius .3s,box-shadow .3s,transform var(--e-transform-transition-duration,.4s);\">\r\n                        <p style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin-bottom: 20px; outline: 0px; padding: 0px; vertical-align: baseline;\">&nbsp;</p>\r\n                        <ul style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px 0px 15px 20px; outline: 0px; padding: 0px; vertical-align: baseline; list-style-position: initial; list-style-image: initial;\">\r\n                           <li style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;\">BT136 TRIAC.&nbsp;</li>\r\n                           <li style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;\"><span style=\"box-sizing: border-box; border: 0px; font-family: var( --e-global-typography-text-font-family ), Sans-serif; font-size: 1rem; font-style: inherit; font-weight: var( --e-global-typography-text-font-weight ); margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; color: var( --e-global-color-text );\">MOC3021 IC.</span></li>\r\n                           <li style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;\"><span style=\"box-sizing: border-box; border: 0px; font-family: var( --e-global-typography-text-font-family ), Sans-serif; font-size: 1rem; font-style: inherit; font-weight: var( --e-global-typography-text-font-weight ); margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; color: var( --e-global-color-text );\">MCT2e IC.&nbsp;</span></li>\r\n                           <li style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;\"><span style=\"box-sizing: border-box; border: 0px; font-family: var( --e-global-typography-text-font-family ), Sans-serif; font-size: 1rem; font-style: inherit; font-weight: var( --e-global-typography-text-font-weight ); margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; color: var( --e-global-color-text );\">Bridge Rectifier.&nbsp;</span></li>\r\n                           <li style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;\"><span style=\"box-sizing: border-box; border: 0px; font-family: var( --e-global-typography-text-font-family ), Sans-serif; font-size: 1rem; font-style: inherit; font-weight: var( --e-global-typography-text-font-weight ); margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; color: var( --e-global-color-text );\">47k 1W Resistor.&nbsp;</span></li>\r\n                           <li style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;\"><span style=\"box-sizing: border-box; border: 0px; font-family: var( --e-global-typography-text-font-family ), Sans-serif; font-size: 1rem; font-style: inherit; font-weight: var( --e-global-typography-text-font-weight ); margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; color: var( --e-global-color-text );\">330e Resistor.&nbsp;</span></li>\r\n                           <li style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;\"><span style=\"box-sizing: border-box; border: 0px; font-family: var( --e-global-typography-text-font-family ), Sans-serif; font-size: 1rem; font-style: inherit; font-weight: var( --e-global-typography-text-font-weight ); margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; color: var( --e-global-color-text );\">1k Resistor.&nbsp;</span></li>\r\n                           <li style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;\"><span style=\"box-sizing: border-box; border: 0px; font-family: var( --e-global-typography-text-font-family ), Sans-serif; font-size: 1rem; font-style: inherit; font-weight: var( --e-global-typography-text-font-weight ); margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; color: var( --e-global-color-text );\">10k Resistor.&nbsp;</span></li>\r\n                           <li style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;\"><span style=\"box-sizing: border-box; border: 0px; font-family: var( --e-global-typography-text-font-family ), Sans-serif; font-size: 1rem; font-style: inherit; font-weight: var( --e-global-typography-text-font-weight ); margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; color: var( --e-global-color-text );\">2 pin Terminal Connector.&nbsp;</span></li>\r\n                           <li style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;\"><span style=\"box-sizing: border-box; border: 0px; font-family: var( --e-global-typography-text-font-family ), Sans-serif; font-size: 1rem; font-style: inherit; font-weight: var( --e-global-typography-text-font-weight ); margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; color: var( --e-global-color-text );\">ESP32(as a microcontroller)</span></li>\r\n                           </ul>\r\n                        <p style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin-bottom: 20px; outline: 0px; padding: 0px; vertical-align: baseline;\">&nbsp;</p>\r\n                        </div>\r\n                     </div>\r\n                  </div>\r\n               </div>\r\n            </div>\r\n         </section>\r\n      <section class=\"elementor-section elementor-top-section elementor-element elementor-element-b8b4ebf elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"b8b4ebf\" data-element_type=\"section\" style=\"box-sizing: border-box; --flex-direction: initial; --flex-wrap: initial; --justify-content: initial; --align-items: initial; --align-content: initial; --gap: initial; --flex-basis: initial; --flex-grow: initial; --flex-shrink: initial; --order: initial; --align-self: initial; flex-basis: var(--flex-basis); flex-grow: var(--flex-grow); flex-shrink: var(--flex-shrink); order: var(--order); align-self: var(--align-self); position: relative; --swiper-theme-color: #000; --swiper-navigation-size: 44px; --swiper-pagination-bullet-size: 6px; --swiper-pagination-bullet-horizontal-gap: 6px;\">\r\n         <div class=\"elementor-container elementor-column-gap-default\" style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px auto; outline: 0px; padding: 0px; vertical-align: baseline; display: flex; position: relative; max-width: 1140px;\">\r\n            <div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-ba361fd\" data-id=\"ba361fd\" data-element_type=\"column\" style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; --flex-direction: initial; --flex-wrap: initial; --justify-content: initial; --align-items: initial; --align-content: initial; --gap: initial; --flex-basis: initial; --flex-grow: initial; --flex-shrink: initial; --order: initial; --align-self: initial; flex-basis: var(--flex-basis); flex-grow: var(--flex-grow); flex-shrink: var(--flex-shrink); order: var(--order); align-self: var(--align-self); position: relative; min-height: 1px; display: flex; --swiper-theme-color: #000; --swiper-navigation-size: 44px; --swiper-pagination-bullet-size: 6px; --swiper-pagination-bullet-horizontal-gap: 6px; width: 800px;\">\r\n               <div class=\"elementor-widget-wrap elementor-element-populated\" style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 10px; vertical-align: baseline; position: relative; width: 800px; flex-wrap: wrap; align-content: flex-start; display: flex;\">\r\n                  <div class=\"elementor-element elementor-element-2b3e0c5 elementor-widget elementor-widget-heading\" data-id=\"2b3e0c5\" data-element_type=\"widget\" data-widget_type=\"heading.default\" style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; --flex-direction: initial; --flex-wrap: initial; --justify-content: initial; --align-items: initial; --align-content: initial; --gap: initial; --flex-basis: initial; --flex-grow: initial; --flex-shrink: initial; --order: initial; --align-self: initial; flex-basis: var(--flex-basis); flex-grow: var(--flex-grow); flex-shrink: var(--flex-shrink); order: var(--order); align-self: var(--align-self); flex-direction: var(--flex-direction); flex-wrap: var(--flex-wrap); justify-content: var(--justify-content); align-items: var(--align-items); align-content: var(--align-content); gap: var(--gap); position: relative; --swiper-theme-color: #000; --swiper-navigation-size: 44px; --swiper-pagination-bullet-size: 6px; --swiper-pagination-bullet-horizontal-gap: 6px; width: 780px;\">\r\n                     <div class=\"elementor-widget-container\" style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; transition: background .3s,border .3s,border-radius .3s,box-shadow .3s,transform var(--e-transform-transition-duration,.4s);\">\r\n                        <h2 class=\"elementor-heading-title elementor-size-default\" style=\"box-sizing: border-box; border: 0px; font-family: var( --e-global-typography-primary-font-family ), Sans-serif; font-size: 30px; font-style: inherit; font-weight: var( --e-global-typography-primary-font-weight ); margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; clear: both; line-height: 1; color: var( --e-global-color-primary );\">Zero crossing detector.</h2>\r\n                        </div>\r\n                     </div>\r\n                  </div>\r\n               </div>\r\n            </div>\r\n         </section>\r\n      <section class=\"elementor-section elementor-top-section elementor-element elementor-element-8b33bae elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"8b33bae\" data-element_type=\"section\" style=\"box-sizing: border-box; --flex-direction: initial; --flex-wrap: initial; --justify-content: initial; --align-items: initial; --align-content: initial; --gap: initial; --flex-basis: initial; --flex-grow: initial; --flex-shrink: initial; --order: initial; --align-self: initial; flex-basis: var(--flex-basis); flex-grow: var(--flex-grow); flex-shrink: var(--flex-shrink); order: var(--order); align-self: var(--align-self); position: relative; --swiper-theme-color: #000; --swiper-navigation-size: 44px; --swiper-pagination-bullet-size: 6px; --swiper-pagination-bullet-horizontal-gap: 6px;\">\r\n         <div class=\"elementor-container elementor-column-gap-default\" style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px auto; outline: 0px; padding: 0px; vertical-align: baseline; display: flex; position: relative; max-width: 1140px;\">\r\n            <div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-5b3ef76\" data-id=\"5b3ef76\" data-element_type=\"column\" style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; --flex-direction: initial; --flex-wrap: initial; --justify-content: initial; --align-items: initial; --align-content: initial; --gap: initial; --flex-basis: initial; --flex-grow: initial; --flex-shrink: initial; --order: initial; --align-self: initial; flex-basis: var(--flex-basis); flex-grow: var(--flex-grow); flex-shrink: var(--flex-shrink); order: var(--order); align-self: var(--align-self); position: relative; min-height: 1px; display: flex; --swiper-theme-color: #000; --swiper-navigation-size: 44px; --swiper-pagination-bullet-size: 6px; --swiper-pagination-bullet-horizontal-gap: 6px; width: 800px;\">\r\n               <div class=\"elementor-widget-wrap elementor-element-populated\" style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 10px; vertical-align: baseline; position: relative; width: 800px; flex-wrap: wrap; align-content: flex-start; display: flex;\">\r\n                  <div class=\"elementor-element elementor-element-385735d elementor-widget elementor-widget-text-editor\" data-id=\"385735d\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\" style=\"box-sizing: border-box; border: 0px; font-family: var( --e-global-typography-text-font-family ), Sans-serif; font-style: inherit; font-weight: var( --e-global-typography-text-font-weight ); margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; --flex-direction: initial; --flex-wrap: initial; --justify-content: initial; --align-items: initial; --align-content: initial; --gap: initial; --flex-basis: initial; --flex-grow: initial; --flex-shrink: initial; --order: initial; --align-self: initial; flex-basis: var(--flex-basis); flex-grow: var(--flex-grow); flex-shrink: var(--flex-shrink); order: var(--order); align-self: var(--align-self); flex-direction: var(--flex-direction); flex-wrap: var(--flex-wrap); justify-content: var(--justify-content); align-items: var(--align-items); align-content: var(--align-content); gap: var(--gap); position: relative; --swiper-theme-color: #000; --swiper-navigation-size: 44px; --swiper-pagination-bullet-size: 6px; --swiper-pagination-bullet-horizontal-gap: 6px; color: var( --e-global-color-text ); width: 780px;\">\r\n                     <div class=\"elementor-widget-container\" style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; transition: background .3s,border .3s,border-radius .3s,box-shadow .3s,transform var(--e-transform-transition-duration,.4s);\">\r\n                        <p style=\"box-sizing: border-box; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; margin-bottom: 20px; outline: 0px; padding: 0px; vertical-align: baseline;\">To control the AC voltage, the first thing we have to do is, to detect the zero crossing of the AC signal. In my country( India), the frequency of AC signal is 50 Hz and as it is alternating in nature. Hence, every time the signal comes to Zero point, we have to detect that point and after that trigger the TRIAC as per the power requirement. In the circuit we have one zero cross detector which gives signal to the ESP32 board whenever the signal crosses the zero value. Zero cross detector is used as a reference to change the phase of the signal.&nbsp;<span style=\"box-sizing: border-box; border: 0px; font-family: var( --e-global-typography-text-font-family ), Sans-serif; font-size: 1rem; font-style: inherit; font-weight: var( --e-global-typography-text-font-weight ); margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; color: var( --e-global-color-text );\">By delivering the power for less then 100% , we cut down the amount of power delivered to the appliances.&nbsp;</span><span style=\"box-sizing: border-box; border: 0px; font-family: var( --e-global-typography-text-font-family ), Sans-serif; font-size: 1rem; font-style: inherit; font-weight: var( --e-global-typography-text-font-weight ); margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline; color: var( --e-global-color-text );\">The Zero crossing point of an AC signal is shown below:</span></p>\r\n                        </div>\r\n                     </div>\r\n                  </div>\r\n               </div>\r\n            </div>\r\n         </section>\r\n      </div>\r\n   </div>','https://www.technolabcreation.com/ac-light-dimmer-using-triac-esp32/','',6,0,9,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-09-29 20:57:25',2,'2024-09-29 20:57:25','192.168.219.103','','','','','','','','','','','',''),(654,-651,'',654,0,0,'','','html1','[ETC] MQTT 설치 및 설정, PHP에서 연동확인','<h1 id=\"우분투-mqtt-적용\" style=\"box-sizing: inherit; font-size: 2.5rem; line-height: 1.5; margin-bottom: 1rem; color: #ececec; letter-spacing: -0.072px; background-color: #121212;\">우분투 mqtt 적용</h1>\r\n<h2 id=\"1-mosquitto-설치-및-환경설정\" style=\"box-sizing: inherit; font-size: 2rem; line-height: 1.5; margin-bottom: 1rem; color: #ececec; letter-spacing: -0.072px; background-color: #121212;\">1. mosquitto 설치 및 환경설정</h2>\r\n<h3 id=\"1-1-mosquitto-설치\" style=\"box-sizing: inherit; font-size: 1.5rem; line-height: 1.5; margin-bottom: 1rem; color: #ececec; letter-spacing: -0.072px; background-color: #121212;\">1-1. mosquitto 설치</h3>\r\n<ul style=\"box-sizing: inherit; color: #ececec; font-size: 18px; letter-spacing: -0.072px; background-color: #121212;\">\r\n   <li style=\"box-sizing: inherit;\">\r\n      <code style=\"box-sizing: inherit; font-family: &quot;Fira Mono&quot;, source-code-pro, Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; background: var(--bg-inline-code); padding: 0.2em 0.4em; font-size: 15.3px; border-radius: 3px;\">sudo apt-get update</code>\r\n      <br style=\"box-sizing: inherit;\" />: apt 업데이트</li>\r\n   <li style=\"box-sizing: inherit;\">\r\n      <code style=\"box-sizing: inherit; font-family: &quot;Fira Mono&quot;, source-code-pro, Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; background: var(--bg-inline-code); padding: 0.2em 0.4em; font-size: 15.3px; border-radius: 3px;\">sudo apt-get install mosquitto mosquitto-clients</code>\r\n      <br style=\"box-sizing: inherit;\" />: mosquitto 및 mosquitto클라이언트 설치</li>\r\n   </ul>\r\n<h3 id=\"1-2-mosquitto-환경설정\" style=\"box-sizing: inherit; font-size: 1.5rem; line-height: 1.5; margin-bottom: 1rem; color: #ececec; letter-spacing: -0.072px; background-color: #121212;\">1-2. mosquitto 환경설정</h3>\r\n<blockquote style=\"box-sizing: inherit; margin: 2rem 0px; border-left: 4px solid var(--primary2); border-top-right-radius: 4px; border-bottom-right-radius: 4px; background-image: ; background-position-x: ; background-position-y: ; background-size: ; background-repeat: ; background-attachment: ; background-origin: ; background-clip: ; padding: 1rem 1rem 1rem 2rem; color: #ececec; font-size: 18px; letter-spacing: -0.072px;\">\r\n   <ul style=\"box-sizing: inherit; padding-left: 1rem; margin-top: 0px; margin-bottom: 0px;\">\r\n      <li style=\"box-sizing: inherit; margin-top: 0px; margin-bottom: 0px;\">\r\n         <code style=\"box-sizing: inherit; font-family: &quot;Fira Mono&quot;, source-code-pro, Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; background-image: ; background-position-x: ; background-position-y: ; background-size: ; background-repeat: ; background-attachment: ; background-origin: ; background-clip: ; padding: 0.2em 0.4em; font-size: 15.3px; border-radius: 3px; margin-top: 0px;\">sudo vim /etc/mosquitto/mosquitto.conf</code>\r\n         &nbsp;또는&nbsp;\r\n         <code style=\"box-sizing: inherit; font-family: &quot;Fira Mono&quot;, source-code-pro, Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; background-image: ; background-position-x: ; background-position-y: ; background-size: ; background-repeat: ; background-attachment: ; background-origin: ; background-clip: ; padding: 0.2em 0.4em; font-size: 15.3px; border-radius: 3px;\">sudo vim /etc/mosquitto/conf.d/[임의의설정파일명].conf</code>\r\n         <br style=\"box-sizing: inherit;\" />: 임의의 설정파일을 만들어서 기본적인 설정을 할수 있다.<br style=\"box-sizing: inherit; margin-bottom: 0px;\" />: mosquitto가 실행될때 먼저 읽는다.</li>\r\n      </ul>\r\n   </blockquote>\r\n<h4 id=\"1-mosquitto-사용자-설정\" style=\"box-sizing: inherit; font-size: 18px; line-height: 1.5; margin-bottom: 1rem; color: #ececec; letter-spacing: -0.072px; background-color: #121212;\">1) mosquitto 사용자 설정</h4>\r\n<ul style=\"box-sizing: inherit; color: #ececec; font-size: 18px; letter-spacing: -0.072px; background-color: #121212;\">\r\n   <li style=\"box-sizing: inherit;\">\r\n      <code style=\"box-sizing: inherit; font-family: &quot;Fira Mono&quot;, source-code-pro, Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; background: var(--bg-inline-code); padding: 0.2em 0.4em; font-size: 15.3px; border-radius: 3px;\">sudo mosquitto_passwd -c /etc/mosquitto/passwd [username]</code>\r\n      <br style=\"box-sizing: inherit;\" />: mosquitto 사용자 추가 -&gt; 명령어 실행 이후 password 두번 입력해야함</li>\r\n   <li style=\"box-sizing: inherit;\">환경설정 파일에 아래의 코드를 추가한다.<br style=\"box-sizing: inherit;\" />\r\n      <code style=\"box-sizing: inherit; font-family: &quot;Fira Mono&quot;, source-code-pro, Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; background: var(--bg-inline-code); padding: 0.2em 0.4em; font-size: 15.3px; border-radius: 3px;\">allow_anonymous false</code>\r\n      &nbsp;: 익명의 사용자 거부.<br style=\"box-sizing: inherit;\" />\r\n      <code style=\"box-sizing: inherit; font-family: &quot;Fira Mono&quot;, source-code-pro, Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; background: var(--bg-inline-code); padding: 0.2em 0.4em; font-size: 15.3px; border-radius: 3px;\">password_file /etc/mosquitto/passwd</code>\r\n      &nbsp;: 추가한 사용자 정보를 사용하도록 설정.</li>\r\n   </ul>\r\n<h4 id=\"2-mosquitto-포트-설정\" style=\"box-sizing: inherit; font-size: 18px; line-height: 1.5; margin-bottom: 1rem; color: #ececec; letter-spacing: -0.072px; background-color: #121212;\">2) mosquitto 포트 설정</h4>\r\n<ul style=\"box-sizing: inherit; color: #ececec; font-size: 18px; letter-spacing: -0.072px; background-color: #121212;\">\r\n   <li style=\"box-sizing: inherit;\">기본적으로 mosquitto는 localhost:1883 포트를 사용한다.</li>\r\n   <li style=\"box-sizing: inherit;\">외부의 접속을 허용하기 위해서는 설정에 아래의 코드를 추가한다.<br style=\"box-sizing: inherit;\" />\r\n      <code style=\"box-sizing: inherit; font-family: &quot;Fira Mono&quot;, source-code-pro, Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; background: var(--bg-inline-code); padding: 0.2em 0.4em; font-size: 15.3px; border-radius: 3px;\">listener 1883</code>\r\n      &nbsp;: 외부의 1883(브로커) 포트 접근을 허용한다.<br style=\"box-sizing: inherit;\" />\r\n      <code style=\"box-sizing: inherit; font-family: &quot;Fira Mono&quot;, source-code-pro, Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; background: var(--bg-inline-code); padding: 0.2em 0.4em; font-size: 15.3px; border-radius: 3px;\">listener 11884</code>\r\n      &nbsp;: 외부의 11884(웹소켓) 포트 접근을 허용한다.<br style=\"box-sizing: inherit;\" />\r\n      <code style=\"box-sizing: inherit; font-family: &quot;Fira Mono&quot;, source-code-pro, Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; background: var(--bg-inline-code); padding: 0.2em 0.4em; font-size: 15.3px; border-radius: 3px;\">protocol websockets</code>\r\n      &nbsp;: 웹소켓 프로토콜을 사용한다.</li>\r\n   </ul>\r\n<h2 id=\"2-실행\" style=\"box-sizing: inherit; font-size: 2rem; line-height: 1.5; margin-bottom: 1rem; color: #ececec; letter-spacing: -0.072px; background-color: #121212;\">2. 실행</h2>\r\n<ul style=\"box-sizing: inherit; color: #ececec; font-size: 18px; letter-spacing: -0.072px; background-color: #121212;\">\r\n   <li style=\"box-sizing: inherit;\">\r\n      <code style=\"box-sizing: inherit; font-family: &quot;Fira Mono&quot;, source-code-pro, Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; background: var(--bg-inline-code); padding: 0.2em 0.4em; font-size: 15.3px; border-radius: 3px;\">sudo systemctl start mosquitto</code>\r\n      <br style=\"box-sizing: inherit;\" />: mosquitto 서비스 시작.</li>\r\n   <li style=\"box-sizing: inherit;\">\r\n      <code style=\"box-sizing: inherit; font-family: &quot;Fira Mono&quot;, source-code-pro, Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; background: var(--bg-inline-code); padding: 0.2em 0.4em; font-size: 15.3px; border-radius: 3px;\">sudo systemctl enable mosquitto</code>\r\n      <br style=\"box-sizing: inherit;\" />: mosquitto가 시스템 부팅 시 자동으로 시작되도록 설정.</li>\r\n   <li style=\"box-sizing: inherit;\">\r\n      <code style=\"box-sizing: inherit; font-family: &quot;Fira Mono&quot;, source-code-pro, Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; background: var(--bg-inline-code); padding: 0.2em 0.4em; font-size: 15.3px; border-radius: 3px;\">sudo systemctl status mosquitto</code>\r\n      <br style=\"box-sizing: inherit;\" />: mosquitto 상태 조회 -&gt; active (running) 이라고 나와야함.</li>\r\n   </ul>\r\n<h2 id=\"3-테스트\" style=\"box-sizing: inherit; font-size: 2rem; line-height: 1.5; margin-bottom: 1rem; color: #ececec; letter-spacing: -0.072px; background-color: #121212;\">3. 테스트</h2>\r\n<h3 id=\"3-1-우분투-터미널-테스트\" style=\"box-sizing: inherit; font-size: 1.5rem; line-height: 1.5; margin-bottom: 1rem; color: #ececec; letter-spacing: -0.072px; background-color: #121212;\">3-1. 우분투 터미널 테스트</h3>\r\n<ul style=\"box-sizing: inherit; color: #ececec; font-size: 18px; letter-spacing: -0.072px; background-color: #121212;\">\r\n   <li style=\"box-sizing: inherit;\">터미널창을 2개 연다.</li>\r\n   <li style=\"box-sizing: inherit;\">1번 터미널창에 아래와같이 입력한다.<br style=\"box-sizing: inherit;\" />\r\n      <code style=\"box-sizing: inherit; font-family: &quot;Fira Mono&quot;, source-code-pro, Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; background: var(--bg-inline-code); padding: 0.2em 0.4em; font-size: 15.3px; border-radius: 3px;\">mosquitto_sub -h localhost -t \"test/topic\" -u \"username\" -P \"password\"</code>\r\n      <br style=\"box-sizing: inherit;\" />: username과 userpassword는 사용자 설정에서 추가한 사용자의 아이디, 패스워드<br style=\"box-sizing: inherit;\" />: 실행하면 메세지를 받을 준비를 한다.</li>\r\n   <li style=\"box-sizing: inherit;\">2번 터미널 창에 아래와같이 입력한다.<br style=\"box-sizing: inherit;\" />\r\n      <code style=\"box-sizing: inherit; font-family: &quot;Fira Mono&quot;, source-code-pro, Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; background: var(--bg-inline-code); padding: 0.2em 0.4em; font-size: 15.3px; border-radius: 3px;\">mosquitto_pub -h localhost -t \"test/topic\" -m \"Hello World\" -u \"username\" -P \"password\"</code>\r\n      <br style=\"box-sizing: inherit;\" />: username과 userpassword는 사용자 설정에서 추가한 사용자의 아이디, 패스워드<br style=\"box-sizing: inherit;\" />: 실행하면 1번 터미널창에 Hello World가 출력된다.</li>\r\n   </ul>\r\n<h3 id=\"3-2-php-테스트\" style=\"box-sizing: inherit; font-size: 1.5rem; line-height: 1.5; margin-bottom: 1rem; color: #ececec; letter-spacing: -0.072px; background-color: #121212;\">3-2. php 테스트</h3>\r\n<blockquote style=\"box-sizing: inherit; margin: 2rem 0px; border-left: 4px solid var(--primary2); border-top-right-radius: 4px; border-bottom-right-radius: 4px; background-image: ; background-position-x: ; background-position-y: ; background-size: ; background-repeat: ; background-attachment: ; background-origin: ; background-clip: ; padding: 1rem 1rem 1rem 2rem; color: #ececec; font-size: 18px; letter-spacing: -0.072px;\">\r\n   <ul style=\"box-sizing: inherit; padding-left: 1rem; margin-top: 0px; margin-bottom: 0px;\">\r\n      <li style=\"box-sizing: inherit; margin-top: 0px;\">mosquitto와 php 소스는 같은 서버일 필요가 없다.</li>\r\n      <li style=\"box-sizing: inherit;\">mosquitto는 브로커의 역할만 하기때문.</li>\r\n      <li style=\"box-sizing: inherit; margin-bottom: 0px;\">테스트를 위한 php 파일은 총 세개를 준비한다.<br style=\"box-sizing: inherit; margin-top: 0px; margin-bottom: 0px;\" />: publisher, client, mqttlibrary</li>\r\n      </ul>\r\n   </blockquote>\r\n<h4 id=\"1-publisher\" style=\"box-sizing: inherit; font-size: 18px; line-height: 1.5; margin-bottom: 1rem; color: #ececec; letter-spacing: -0.072px; background-color: #121212;\">1) publisher</h4>\r\n<pre class=\" language-null\" style=\"box-sizing: inherit; font-family: &quot;Fira Mono&quot;, source-code-pro, Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; font-size: 0.875rem; padding: 1em; border-radius: 4px; line-height: 1.5; overflow: auto; letter-spacing: 0px; background-image: ; background-position-x: ; background-position-y: ; background-size: ; background-repeat: ; background-attachment: ; background-origin: ; background-clip: ; color: var(--prism-default-text); word-break: normal; overflow-wrap: normal; tab-size: 4; hyphens: none; margin-top: 0.5em; margin-bottom: 0.5em;\">\r\n   <code class=\" language-null\" style=\"box-sizing: inherit; font-family: &quot;Fira Mono&quot;, source-code-pro, Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; color: var(--prism-default-text); background-image: none; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; word-spacing: normal; word-break: normal; overflow-wrap: normal; tab-size: 4; hyphens: none;\">&lt;?php\r\nrequire_once(\"phpMQTT.php\");\r\nif ($_SERVER[\'REQUEST_METHOD\'] === \'POST\' &amp;&amp; !empty($_POST[\'message\'])) {\r\n    $server   = \'8.8.8.12\';   		// MQTT 브로커 주소\r\n    $port     = 1883;         		// MQTT 포트 번호\r\n    $username = \'[사용자이름]\';       // MQTT 사용자 이름\r\n    $password = \'[사용자비밀번호]\';   // MQTT 비밀번호\r\n    $client_id = uniqid();    		// 클라이언트 ID\r\n    // MQTT 클라이언트 인스턴스 생성\r\n    $mqtt = new Bluerhinos\\phpMQTT($server, $port, $client_id);\r\n    // MQTT 서버에 연결\r\n    if ($mqtt-&gt;connect(true, NULL, $username, $password)) {\r\n        $topic = \"test/topic\";\r\n        $message = strip_tags($_POST[\'message\']);\r\n        // 메시지 발행\r\n        $mqtt-&gt;publish($topic, $message, 0);\r\n        $mqtt-&gt;close();\r\n        $feedback = \"Message published to {$topic}\";\r\n    } else {\r\n        $feedback = \"Could not connect to the MQTT server.\";\r\n    }\r\n} else {\r\n    $feedback = \"\";\r\n}\r\n?&gt;\r\n&lt;!DOCTYPE html&gt;\r\n&lt;html lang=\"en\"&gt;\r\n&lt;head&gt;\r\n    &lt;meta charset=\"UTF-8\"&gt;\r\n    &lt;title&gt;MQTT Message Publisher&lt;/title&gt;\r\n&lt;/head&gt;\r\n&lt;body&gt;\r\n&lt;h1&gt;MQTT Message Publisher&lt;/h1&gt;\r\n&lt;form action=\"index.php\" method=\"post\"&gt;\r\n    &lt;label for=\"message\"&gt;Message:&lt;/label&gt;&lt;br&gt;\r\n    &lt;input type=\"text\" id=\"message\" name=\"message\" required&gt;&lt;br&gt;&lt;br&gt;\r\n    &lt;input type=\"submit\" value=\"Publish\"&gt;\r\n    &lt;a href=\"client.php\"&gt;client&lt;/a&gt;\r\n&lt;/form&gt;\r\n&lt;p&gt;&lt;?php echo $feedback; ?&gt;&lt;/p&gt;\r\n&lt;script&gt;\r\n    document.getElementById(\"message\").focus();\r\n&lt;/script&gt;\r\n&lt;/body&gt;\r\n&lt;/html&gt;</code>\r\n   </pre>\r\n<ul style=\"box-sizing: inherit; color: #ececec; font-size: 18px; letter-spacing: -0.072px; background-color: #121212;\">\r\n   <li style=\"box-sizing: inherit;\">\r\n      <code style=\"box-sizing: inherit; font-family: &quot;Fira Mono&quot;, source-code-pro, Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; background: var(--bg-inline-code); padding: 0.2em 0.4em; font-size: 15.3px; border-radius: 3px;\">$server = \'8.8.8.12\'</code>\r\n      <br style=\"box-sizing: inherit;\" />: mosquitto(브로커)가 설치 된 서버 아이피</li>\r\n   <li style=\"box-sizing: inherit;\">\r\n      <code style=\"box-sizing: inherit; font-family: &quot;Fira Mono&quot;, source-code-pro, Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; background: var(--bg-inline-code); padding: 0.2em 0.4em; font-size: 15.3px; border-radius: 3px;\">$port = 1883</code>\r\n      <br style=\"box-sizing: inherit;\" />: mosquitto(브로커) 포트</li>\r\n   <li style=\"box-sizing: inherit;\">\r\n      <code style=\"box-sizing: inherit; font-family: &quot;Fira Mono&quot;, source-code-pro, Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; background: var(--bg-inline-code); padding: 0.2em 0.4em; font-size: 15.3px; border-radius: 3px;\">$topic = \"test/topic\"</code>\r\n      <br style=\"box-sizing: inherit;\" />: 구독 할 topic</li>\r\n   </ul>\r\n<h4 id=\"2-client\" style=\"box-sizing: inherit; font-size: 18px; line-height: 1.5; margin-bottom: 1rem; color: #ececec; letter-spacing: -0.072px; background-color: #121212;\">2) client</h4>\r\n<pre class=\" language-null\" style=\"box-sizing: inherit; font-family: &quot;Fira Mono&quot;, source-code-pro, Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; font-size: 0.875rem; padding: 1em; border-radius: 4px; line-height: 1.5; overflow: auto; letter-spacing: 0px; background-image: ; background-position-x: ; background-position-y: ; background-size: ; background-repeat: ; background-attachment: ; background-origin: ; background-clip: ; color: var(--prism-default-text); word-break: normal; overflow-wrap: normal; tab-size: 4; hyphens: none; margin-top: 0.5em; margin-bottom: 0.5em;\">\r\n   <code class=\" language-null\" style=\"box-sizing: inherit; font-family: &quot;Fira Mono&quot;, source-code-pro, Menlo, Monaco, Consolas, &quot;Courier New&quot;, monospace; color: var(--prism-default-text); background-image: none; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; word-spacing: normal; word-break: normal; overflow-wrap: normal; tab-size: 4; hyphens: none;\">&lt;!DOCTYPE html&gt;\r\n&lt;html&gt;\r\n&lt;head&gt;\r\n    &lt;title&gt;MQTT WebSocket Example with PHP&lt;/title&gt;\r\n    &lt;script src=\"https://cdnjs.cloudflare.com/ajax/libs/paho-mqtt/1.1.0/paho-mqtt.min.js\"&gt;&lt;/script&gt;\r\n    &lt;script&gt;\r\n        function MQTTconnect() {\r\n            const client = new Paho.Client(\"ws://mqtt.themomos.co.kr:11884/\", \"clientId\" + new Date().getTime());\r\n            client.onConnectionLost = function (responseObject) {\r\n                console.log(\"Connection Lost: \"+responseObject.errorMessage);\r\n            };\r\n            client.onMessageArrived = function (message) {\r\n                console.log(\"Message Arrived: \"+message.payloadString);\r\n                document.getElementById(\"messages\").innerHTML += \'&lt;p&gt;\' + message.payloadString + \'&lt;/p&gt;\';\r\n            };\r\n            client.connect({\r\n                onSuccess:function(){\r\n                    console.log(\"Connected\");\r\n                    client.subscribe(\"test/topic\");\r\n                },\r\n                userName: \"[사용자이름]\",\r\n                password: \"[사용자비밀번호]\"\r\n            });\r\n        }\r\n    &lt;/script&gt;\r\n&lt;/head&gt;\r\n&lt;body onload=\"MQTTconnect();\"&gt;\r\n&lt;h2&gt;MQTT over WebSockets Example&lt;/h2&gt;\r\n&lt;div id=\"messages\"&gt;&lt;/div&gt;\r\n&lt;/body&gt;\r\n&lt;/html&gt;</code>\r\n   </pre>\r\n<h4 id=\"3-library\" style=\"box-sizing: inherit; font-size: 18px; line-height: 1.5; margin-bottom: 1rem; color: #ececec; letter-spacing: -0.072px; background-color: #121212;\">3) library</h4>\r\n<p style=\"box-sizing: inherit; color: #ececec; font-size: 18px; letter-spacing: -0.072px; background-color: #121212;\"><a href=\"https://github.com/bluerhinos/phpMQTT\" style=\"box-sizing: inherit; text-decoration-line: none;\" target=\"_blank\">https://github.com/bluerhinos/phpMQTT</a><br style=\"box-sizing: inherit;\" />: phpMQTT.php 파일을 다운받아서 사용한다.</p>','https://velog.io/@aro9515/MQTT-%EC%A0%81%EC%9A%A9','',1,0,5,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-10-01 10:17:08',0,'2024-10-01 10:17:08','14.41.12.104','','','','','','','','','','','',''),(657,-654,'',657,0,0,'','','html1','[ETC] Serial.printf() 사용방법','<p>&nbsp;</p>\r\n<p><b>unsigned int LED_OUT1_Value = 0;</b></p>\r\n<p>&nbsp;</p>\r\n<p><b>Serial.print(\"&gt;LED_OUT1_Value: \" + (String)LED_OUT1_Value + \"\\n\");</b></p>\r\n<p><b>---&gt;</b></p>\r\n<p><b>unsigned int LED_OUT1_Value = 0;</b></p>\r\n<p><b>Serial.printf(\"&gt;LED_OUT1_Value: %u\\n\", LED_OUT1_Value);</b></p>\r\n<p><br /></p>\r\n<p><strong>포맷 문자열 사용</strong>:</p>\r\n<ul>\r\n   <li>\r\n      <code>Serial.printf()</code>\r\n      &nbsp;는 C 언어의&nbsp;\r\n      <code>printf</code>\r\n      &nbsp;와 유사하게 동작합니다. 포맷 문자열 내에서&nbsp;\r\n      <code>%</code>\r\n      &nbsp;기호를 사용하여 변수의 위치를 지정합니다.</li>\r\n   <li>\r\n      <code>%u</code>\r\n      &nbsp;는&nbsp;\r\n      <code>unsigned int</code>\r\n      &nbsp;타입의 변수를 출력할 때 사용됩니다. 변수의 타입에 따라 적절한 포맷 지정자를 선택해야 합니다.\r\n      <ul>\r\n         <li>예를 들어,&nbsp;\r\n            <code>int</code>\r\n            &nbsp;는&nbsp;\r\n            <code>%d</code>\r\n            &nbsp;,&nbsp;\r\n            <code>float</code>\r\n            &nbsp;는&nbsp;\r\n            <code>%f</code>\r\n            &nbsp;,&nbsp;\r\n            <code>long</code>\r\n            &nbsp;은&nbsp;\r\n            <code>%ld</code>\r\n            &nbsp;등을 사용합니다.</li>\r\n         <li>Boolean 값을 정수(&nbsp;\r\n            <code>0</code>\r\n            &nbsp;또는&nbsp;\r\n            <code>1</code>\r\n            &nbsp;)로 출력하려면&nbsp;\r\n            <code>%d</code>\r\n            &nbsp;(signed integer) 또는&nbsp;\r\n            <code>%u</code>\r\n            &nbsp;(unsigned integer) 형식 지정자를 사용할 수 있습니다.<br /></li>\r\n         </ul>\r\n      </li>\r\n   </ul>\r\n<p><strong>&nbsp;</strong></p>\r\n<p><strong>포맷 지정자 확인</strong>: 변수의 데이터 타입에 맞는 포맷 지정자를 사용해야 합니다. 예를 들어:</p>\r\n<ul>\r\n   <li>\r\n      <code>unsigned int</code>\r\n       → \r\n      <code>%u</code>\r\n      </li>\r\n   <li>\r\n      <code>int</code>\r\n       → \r\n      <code>%d</code>\r\n      </li>\r\n   <li>\r\n      <code>float</code>\r\n       → \r\n      <code>%f</code>\r\n      </li>\r\n   <li>\r\n      <code>long</code>\r\n       → \r\n      <code>%ld</code>\r\n      </li>\r\n   <li>\r\n      <code>unsigned long</code>\r\n       → \r\n      <code>%lu</code>\r\n      </li>\r\n   </ul>','','',0,0,2,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-12-10 13:29:26',0,'2024-12-10 13:29:26','14.41.12.104','','','','','','','','','','','',''),(658,-655,'',658,0,0,'','','html1','[ETC] 구글 검색기록 크롬 브라우저 삭제하기','<p><span style=\"color: #1f1f1f; font-family: &quot;Google Sans Text&quot;, Roboto, Arial, sans-serif; font-size: 16px; letter-spacing: 0.1px; background-color: #ffffff;\">크롬에서 구글 검색 기록이 안사라지는 이유는&nbsp;&nbsp;</span><b style=\"color: #1f1f1f; font-family: &quot;Google Sans Text&quot;, Roboto, Arial, sans-serif; font-size: 16px; letter-spacing: 0.1px; background-color: #ffffff;\">History 파일에&nbsp;</b><span style=\"color: #1f1f1f; font-family: &quot;Google Sans Text&quot;, Roboto, Arial, sans-serif; font-size: 16px; letter-spacing: 0.1px; background-color: #ffffff;\">기록 되기 때문입니다,</span></p>\r\n<div style=\"outline: none; color: #1f1f1f; font-family: &quot;Google Sans Text&quot;, Roboto, Arial, sans-serif; font-size: 16px; letter-spacing: 0.1px; background-color: #ffffff;\">&nbsp;</div>\r\n<div style=\"outline: none; color: #1f1f1f; font-family: &quot;Google Sans Text&quot;, Roboto, Arial, sans-serif; font-size: 16px; letter-spacing: 0.1px; background-color: #ffffff;\">주소입력란에&nbsp;검색기록이 저장되고 자동완성으로 안나오게 하려면 History&nbsp; 파일을 읽기 전용으로 변경하면됩니다,</div>\r\n<div style=\"outline: none; color: #1f1f1f; font-family: &quot;Google Sans Text&quot;, Roboto, Arial, sans-serif; font-size: 16px; letter-spacing: 0.1px; background-color: #ffffff;\"><br /></div>\r\n<div style=\"outline: none; color: #1f1f1f; font-family: &quot;Google Sans Text&quot;, Roboto, Arial, sans-serif; font-size: 16px; letter-spacing: 0.1px; background-color: #ffffff;\">\r\n   <div style=\"outline: none;\">나중에 필요할때 읽기 전용 해제 하면 되니깐요!</div>\r\n   <div style=\"outline: none;\">&nbsp;</div>\r\n   <div style=\"outline: none;\">\r\n      <div style=\"outline: none;\">먼저 chrome://settings/clearBrowserData 를 주소 입력줄에 복사해서 붙여 넣기 후</div>\r\n      <div style=\"outline: none;\">인토넷 사용 기록 삭제 -&gt; 기간 전체 -&gt;<b>&nbsp;체크 된것 모두 해지</b>&nbsp;-&gt;&nbsp;<b>인터넷 사용기록</b>&nbsp;-&gt; 인터넷 사용기록 삭제합니다</div>\r\n      </div>\r\n   </div>\r\n<div style=\"outline: none; color: #1f1f1f; font-family: &quot;Google Sans Text&quot;, Roboto, Arial, sans-serif; font-size: 16px; letter-spacing: 0.1px; background-color: #ffffff;\"><br /></div>\r\n<div style=\"outline: none; color: #1f1f1f; font-family: &quot;Google Sans Text&quot;, Roboto, Arial, sans-serif; font-size: 16px; letter-spacing: 0.1px; background-color: #ffffff;\"><img src=\"https://storage.googleapis.com/support-forums-api/attachment/message-207101801-5817992206758673296.png\" style=\"max-width: 100%; vertical-align: middle;\" /><br /></div>\r\n<div style=\"outline: none; color: #1f1f1f; font-family: &quot;Google Sans Text&quot;, Roboto, Arial, sans-serif; font-size: 16px; letter-spacing: 0.1px; background-color: #ffffff;\"><br /></div>\r\n<div style=\"outline: none; color: #1f1f1f; font-family: &quot;Google Sans Text&quot;, Roboto, Arial, sans-serif; font-size: 16px; letter-spacing: 0.1px; background-color: #ffffff;\"><br /></div>\r\n<div style=\"outline: none; color: #1f1f1f; font-family: &quot;Google Sans Text&quot;, Roboto, Arial, sans-serif; font-size: 16px; letter-spacing: 0.1px; background-color: #ffffff;\">\r\n   <div style=\"outline: none;\">기록을 삭제하셨으면, 크롬 완전히 종료합니다</div>\r\n   <div style=\"outline: none;\">&nbsp;</div>\r\n   <div style=\"outline: none;\">윈도우+r 키 -&gt; 실행 -&gt; AppData\\Local\\Google\\Chrome\\User Data\\Default -&gt; 확인<br />History &nbsp;파일 찾은 후</div>\r\n   <div style=\"outline: none;\">&nbsp;</div>\r\n   <div style=\"outline: none;\">History -&gt; 속성 -&gt; 일반 -&gt; 읽기 전용체크 -&gt; 적용 -&gt; 확인</div>\r\n   </div>\r\n<div style=\"outline: none; color: #1f1f1f; font-family: &quot;Google Sans Text&quot;, Roboto, Arial, sans-serif; font-size: 16px; letter-spacing: 0.1px; background-color: #ffffff;\"><br /></div>\r\n<div style=\"outline: none; color: #1f1f1f; font-family: &quot;Google Sans Text&quot;, Roboto, Arial, sans-serif; font-size: 16px; letter-spacing: 0.1px; background-color: #ffffff;\"><img src=\"https://storage.googleapis.com/support-forums-api/attachment/message-207101801-5817992206758670996.png\" style=\"max-width: 100%; vertical-align: middle;\" /><br /></div>\r\n<div style=\"outline: none; color: #1f1f1f; font-family: &quot;Google Sans Text&quot;, Roboto, Arial, sans-serif; font-size: 16px; letter-spacing: 0.1px; background-color: #ffffff;\"><br /></div>\r\n<div style=\"outline: none; color: #1f1f1f; font-family: &quot;Google Sans Text&quot;, Roboto, Arial, sans-serif; font-size: 16px; letter-spacing: 0.1px; background-color: #ffffff;\">History 읽기 전용으로 바뀌었기 때문에, History 파일에 쓰기 불가능하기 때문에&nbsp;검색기록이 남아 있지 않습니다,<br /></div>\r\n<div style=\"outline: none; color: #1f1f1f; font-family: &quot;Google Sans Text&quot;, Roboto, Arial, sans-serif; font-size: 16px; letter-spacing: 0.1px; background-color: #ffffff;\"><br /></div>\r\n<div style=\"outline: none; color: #1f1f1f; font-family: &quot;Google Sans Text&quot;, Roboto, Arial, sans-serif; font-size: 16px; letter-spacing: 0.1px; background-color: #ffffff;\">History 읽기 전용 변경하는 것이 불편하고, 크롬에 기능을 요청하고싶으시다면<br /></div>\r\n<div style=\"outline: none; color: #1f1f1f; font-family: &quot;Google Sans Text&quot;, Roboto, Arial, sans-serif; font-size: 16px; letter-spacing: 0.1px; background-color: #ffffff;\">아래 주소에 있는 내용을 읽어 본 후 의견을 보내보세요, 의견을 보내실때는 정확한 내용으로 보내셔야합니다, 의견을 보낸다고해서 바로 적용은 되지 않을것이며, 많은 분들이 의견을 보내주는것이 좋은 방법이지 않을까 생각합니다</div>','https://support.google.com/chrome/thread/206406736/%EA%B5%AC%EA%B8%80-%EA%B2%80%EC%83%89-%EA%B8%B0%EB%A1%9D%EC%9D%B4-%EC%95%88%EC%82%AC%EB%9D%BC%EC%A0%B8%EC%9A%94-%ED%81%AC%EB%A1%AC-%EC%9E%90%EB%8F%99%EC%A0%80%EC%9E%A5-%EB%81%84%EA%B8%B0?hl=ko','',0,0,3,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2024-12-19 16:31:48',0,'2024-12-19 16:31:48','14.41.12.104','','','','','','','','','','','',''),(659,-656,'',659,0,0,'','','html1','[Linux] sysbench 예제','<span style=\"font-size: 18px;\">#!/bin/bash</span>\r\n<p><span style=\"font-size: 18px;\">sysbench cpu --cpu-max-prime=20000 --threads=8 --time=0 --events=10000 run</span></p>','','',0,0,3,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2025-03-09 11:27:34',0,'2025-03-09 11:27:34','14.41.12.104','','','','','','','','','','','',''),(660,-657,'',660,0,0,'','','html1','[ETC] HLK-LD2412 레이더 센서 모듈정','<p>제조사 링크</p>\r\n<p><a href=\"https://www.hlktech.net/index.php?id=1076\" target=\"_blank\">https://www.hlktech.net/index.php?id=1076</a></p>\r\n<p>&nbsp;</p>\r\n<p>라이브러리&nbsp;</p>\r\n<p><a href=\"https://github.com/ginkel/LD2412\" target=\"_blank\">https://github.com/ginkel/LD2412&nbsp;</a></p>','','',0,0,2,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2025-04-09 19:10:37',1,'2025-04-09 19:10:37','192.168.219.103','','','','','','','','','','','',''),(661,-658,'',661,0,0,'','','html1','[ETC] HMMD mmWave Radar Sensor','<h1 id=\"firstHeading\" class=\"firstHeading page-header\" lang=\"en\" style=\"box-sizing: border-box; font-size: 2.5em; margin: 10px 0px 15px; font-weight: 450; line-height: 1.2em; color: #333333; padding-bottom: 15px; border-bottom: 1px solid rgb(238, 238, 238); letter-spacing: -0.01em; background-color: #ffffff;\"><span dir=\"auto\" style=\"box-sizing: border-box;\">HMMD mmWave Sensor</span></h1>\r\n<div id=\"bodyContent\" style=\"box-sizing: border-box; color: #333333; font-size: 16px; background-color: #ffffff;\">\r\n   <div id=\"contentSub\" style=\"box-sizing: border-box; font-size: 13.44px; line-height: 1.2em; margin: 0px 0px 1.4em 1em; color: #545454; width: auto;\">&nbsp;</div>\r\n   <div id=\"mw-content-text\" lang=\"en\" dir=\"ltr\" class=\"mw-content-ltr\" style=\"box-sizing: border-box; direction: ltr;\">\r\n      <div class=\"mw-parser-output\" style=\"box-sizing: border-box;\">\r\n         <div class=\"wiki-pages jet-green-color\" style=\"box-sizing: border-box;\">\r\n            <table class=\"a-r at-c roundy bgd-green bl-white\" style=\"border-spacing: 0px; max-width: 320px; height: auto; text-align: center; float: right; border-style: solid; border-color: #d8d8d8; margin-left: 5px; margin-bottom: 5px; width: 266.396px; background-color: #336633 !important;\">\r\n               <tbody style=\"box-sizing: border-box;\">\r\n                  <tr style=\"box-sizing: border-box;\">\r\n                     <td style=\"box-sizing: border-box; padding: 0px;\">\r\n                        <table class=\"at-c roundy\" style=\"border-spacing: 0px; background: transparent; max-width: 100%; height: auto; text-align: center; width: 265.062px;\">\r\n                           <tbody style=\"box-sizing: border-box;\">\r\n                              <tr style=\"box-sizing: border-box;\">\r\n                                 <td class=\"at-c textwhite\" style=\"box-sizing: border-box; padding: 0px; color: #ffffff !important;\"><b style=\"box-sizing: border-box; font-weight: bold;\">HMMD mmWave Sensor</b></td>\r\n                                 </tr>\r\n                              <tr style=\"box-sizing: border-box;\">\r\n                                 <td class=\"at-c bgwhite\" style=\"box-sizing: border-box; padding: 0px; background: rgb(255, 255, 255); margin: 5px;\"><a href=\"https://www.waveshare.com/hmmd-mmwave-sensor.htm\" target=\"_blank\" rel=\"nofollow noreferrer noopener\" style=\"box-sizing: border-box; background-color: transparent; color: #337ab7; text-decoration-line: none; line-height: 1.6;\"><img alt=\"HMMD mmWave Sensor.jpg\" src=\"https://www.waveshare.com/w/upload/thumb/a/ac/HMMD_mmWave_Sensor.jpg/300px-HMMD_mmWave_Sensor.jpg\" decoding=\"async\" loading=\"lazy\" width=\"300\" srcset=\"/w/upload/thumb/a/ac/HMMD_mmWave_Sensor.jpg/450px-HMMD_mmWave_Sensor.jpg 1.5x, /w/upload/thumb/a/ac/HMMD_mmWave_Sensor.jpg/600px-HMMD_mmWave_Sensor.jpg 2x\" style=\"box-sizing: border-box; border: none; vertical-align: middle; max-width: 100%; height: auto;\" /></a><br style=\"box-sizing: border-box;\" /><br style=\"box-sizing: border-box;\" /><small style=\"box-sizing: border-box; font-size: 12.8px;\">HMMD mmWave Sensor<br style=\"box-sizing: border-box;\" />GPIO, UART</small></td>\r\n                                 </tr>\r\n                              </tbody>\r\n                           </table>\r\n                        </td>\r\n                     </tr>\r\n                  <tr style=\"box-sizing: border-box;\">\r\n                     <td style=\"box-sizing: border-box; padding: 0px;\"></td>\r\n                     </tr>\r\n                  <tr style=\"box-sizing: border-box;\">\r\n                     <td style=\"box-sizing: border-box; padding: 0px;\"></td>\r\n                     </tr>\r\n                  </tbody>\r\n               </table>\r\n            <h2 style=\"box-sizing: border-box; font-family: inherit; font-weight: 500; line-height: 45px; color: inherit; margin: 5px; font-size: 22px; padding: 0px 10px; background-color: rgba(247, 247, 247, 0.4); text-shadow: none;\"><span class=\"mw-headline\" id=\"Introduction\" style=\"box-sizing: border-box; text-shadow: none; color: #7eb128; margin-left: -10px; padding: 8px 12px; border-left: 10px solid rgb(126, 177, 40) !important;\">Introduction</span></h2>\r\n            <p style=\"box-sizing: border-box; margin: 7.5px 16px; overflow-wrap: break-word; line-height: 1.8;\">HMMD mmWave Sensor is a human micro-motion sensor that can detect and recognize moving, standing, and stationary human body. It is widely used in various AIoT scenarios, covering smart homes, smart security, smart businesses, and smart lighting, etc.</p>\r\n            <h2 style=\"box-sizing: border-box; font-family: inherit; font-weight: 500; line-height: 45px; color: inherit; margin: 5px; font-size: 22px; padding: 0px 10px; background-color: rgba(247, 247, 247, 0.4); text-shadow: none;\"><span class=\"mw-headline\" id=\"Features\" style=\"box-sizing: border-box; text-shadow: none; color: #7eb128; margin-left: -10px; padding: 8px 12px; border-left: 10px solid rgb(126, 177, 40) !important;\">Features</span></h2>\r\n            <ul style=\"box-sizing: border-box; margin: 0.3em 0px 0px 1.6em; padding: 0px;\">\r\n               <li style=\"box-sizing: border-box;\">Comes with the Silicon Micro AIoT Millimeter-Wave Sensor SoC S3KM1110.</li>\r\n               <li style=\"box-sizing: border-box;\">Onboard high-performance 24GHz one-transmit-one-receive antenna and peripheral circuits.</li>\r\n               <li style=\"box-sizing: border-box;\">Mini module size: 20mm x 20mm.</li>\r\n               <li style=\"box-sizing: border-box;\">Pre-loaded with default human body sensing configuration, plug-and-play.</li>\r\n               <li style=\"box-sizing: border-box;\">Longest detection distance for motion human body sensing: 8.5m.</li>\r\n               <li style=\"box-sizing: border-box;\">Driven by the PY32F003F17U6TR microcontroller, with UART pins exposed for easy integration with Arduino/ESP32/JetsonNano and other main control boards.</li>\r\n               <li style=\"box-sizing: border-box;\">Utilizes human micro-motion sensing algorithms, millimeter-wave radar distance measurement technology, and advanced proprietary signal processing technology of the S3KM1110 chip.</li>\r\n               <li style=\"box-sizing: border-box;\">Provide online comprehensive supporting documentation (Raspberry/JetsonNano/Arduino/ESP32/sample demos).</li>\r\n               <li style=\"box-sizing: border-box;\">Accurate perception of motion, micro-movement, and stationary human bodies achieved.</li>\r\n               </ul>\r\n            <h2 style=\"box-sizing: border-box; font-family: inherit; font-weight: 500; line-height: 45px; color: inherit; margin: 5px; font-size: 22px; padding: 0px 10px; background-color: rgba(247, 247, 247, 0.4); text-shadow: none;\"><span class=\"mw-headline\" id=\"Specification\" style=\"box-sizing: border-box; text-shadow: none; color: #7eb128; margin-left: -10px; padding: 8px 12px; border-left: 10px solid rgb(126, 177, 40) !important;\">Specification</span></h2>\r\n            <ul style=\"box-sizing: border-box; margin: 0.3em 0px 0px 1.6em; padding: 0px;\">\r\n               <li style=\"box-sizing: border-box;\">Hardware\r\n                  <ul style=\"box-sizing: border-box; margin: 0.3em 0px 0px 1.6em; padding: 0px;\">\r\n                     <li style=\"box-sizing: border-box;\">Frequency Band: 24~24.25Ghz</li>\r\n                     <li style=\"box-sizing: border-box;\">Maximum Scanning Bandwidth: 0.25GHz</li>\r\n                     <li style=\"box-sizing: border-box;\">Maximum Equivalent Isotropic Radiated Power: 11dBm</li>\r\n                     <li style=\"box-sizing: border-box;\">Supply Voltage: 3.3V (3.0~3.6V Wide-range Voltage)</li>\r\n                     <li style=\"box-sizing: border-box;\">Dimensions: 20x20mm²</li>\r\n                     <li style=\"box-sizing: border-box;\">Environment Temperature: -40~85℃</li>\r\n                     </ul>\r\n                  </li>\r\n               <li style=\"box-sizing: border-box;\">System:\r\n                  <ul style=\"box-sizing: border-box; margin: 0.3em 0px 0px 1.6em; padding: 0px;\">\r\n                     <li style=\"box-sizing: border-box;\">Detection Range (wall-mount): Motion human body target 10m; Micro-motion human body target 6m</li>\r\n                     <li style=\"box-sizing: border-box;\">Detection Range (ceiling-mount): Motion human body target 5m; Micro-motion human body target 4m</li>\r\n                     <li style=\"box-sizing: border-box;\">Detection Accuracy: 0.15m (for moving targets within 10m straight-line distance from the radar)</li>\r\n                     <li style=\"box-sizing: border-box;\">Average Operation Current: 50mA</li>\r\n                     <li style=\"box-sizing: border-box;\">Data Refresh Period: 100ms</li>\r\n                     </ul>\r\n                  </li>\r\n               </ul>\r\n            <h2 style=\"box-sizing: border-box; font-family: inherit; font-weight: 500; line-height: 45px; color: inherit; margin: 5px; font-size: 22px; padding: 0px 10px; background-color: rgba(247, 247, 247, 0.4); text-shadow: none;\"><span class=\"mw-headline\" id=\"Hardware_Description\" style=\"box-sizing: border-box; text-shadow: none; color: #7eb128; margin-left: -10px; padding: 8px 12px; border-left: 10px solid rgb(126, 177, 40) !important;\">Hardware Description</span></h2>\r\n            <p style=\"box-sizing: border-box; margin: 7.5px 16px; overflow-wrap: break-word; line-height: 1.8;\"><a href=\"https://www.waveshare.com/wiki/File:HMMD_mmWave_Sensor02.jpg\" class=\"image fancybox\" style=\"box-sizing: border-box; background-color: transparent; color: #337ab7; text-decoration-line: none; line-height: 1.6;\" target=\"_blank\"><img alt=\"HMMD mmWave Sensor02.jpg\" src=\"https://www.waveshare.com/w/upload/5/5b/HMMD_mmWave_Sensor02.jpg\" decoding=\"async\" loading=\"lazy\" width=\"600\" style=\"box-sizing: border-box; border: none; vertical-align: middle; max-width: 100%; height: auto;\" /></a></p>\r\n            <table class=\"list table table-striped table-bordered\" style=\"border-spacing: 0px; background-color: transparent; max-width: 100%; height: auto; width: 888px; margin-bottom: 20px; border-style: solid; border-color: #dddddd;\">\r\n               <tbody style=\"box-sizing: border-box;\">\r\n                  <tr style=\"box-sizing: border-box; background-color: #f9f9f9;\">\r\n                     <th style=\"box-sizing: border-box; padding: 8px; text-align: left; line-height: 1.42857; vertical-align: top; border-style: solid; border-color: #dddddd;\">J2 Pin</th>\r\n                     <th style=\"box-sizing: border-box; padding: 8px; text-align: left; line-height: 1.42857; vertical-align: top; border-style: solid; border-color: #dddddd;\">Label</th>\r\n                     <th style=\"box-sizing: border-box; padding: 8px; text-align: left; line-height: 1.42857; vertical-align: top; border-style: solid; border-color: #dddddd;\">Function</th>\r\n                     <th style=\"box-sizing: border-box; padding: 8px; text-align: left; line-height: 1.42857; vertical-align: top; border-style: solid; border-color: #dddddd;\">Description</th>\r\n                     </tr>\r\n                  <tr style=\"box-sizing: border-box;\">\r\n                     <td style=\"box-sizing: border-box; padding: 8px; line-height: 1.42857; vertical-align: top; border-style: solid; border-color: #dddddd;\">J2Pin1</td>\r\n                     <td style=\"box-sizing: border-box; padding: 8px; line-height: 1.42857; vertical-align: top; border-style: solid; border-color: #dddddd;\">3V3</td>\r\n                     <td style=\"box-sizing: border-box; padding: 8px; line-height: 1.42857; vertical-align: top; border-style: solid; border-color: #dddddd;\">Power Input</td>\r\n                     <td style=\"box-sizing: border-box; padding: 8px; line-height: 1.42857; vertical-align: top; border-style: solid; border-color: #dddddd;\">Power supply positive, 3.0~3.6V，Typ.3.3V</td>\r\n                     </tr>\r\n                  <tr style=\"box-sizing: border-box; background-color: #f9f9f9;\">\r\n                     <td style=\"box-sizing: border-box; padding: 8px; line-height: 1.42857; vertical-align: top; border-style: solid; border-color: #dddddd;\">J2Pin2</td>\r\n                     <td style=\"box-sizing: border-box; padding: 8px; line-height: 1.42857; vertical-align: top; border-style: solid; border-color: #dddddd;\">GND</td>\r\n                     <td style=\"box-sizing: border-box; padding: 8px; line-height: 1.42857; vertical-align: top; border-style: solid; border-color: #dddddd;\">Ground</td>\r\n                     <td style=\"box-sizing: border-box; padding: 8px; line-height: 1.42857; vertical-align: top; border-style: solid; border-color: #dddddd;\">Connect to the Ground</td>\r\n                     </tr>\r\n                  <tr style=\"box-sizing: border-box;\">\r\n                     <td style=\"box-sizing: border-box; padding: 8px; line-height: 1.42857; vertical-align: top; border-style: solid; border-color: #dddddd;\">J2Pin3</td>\r\n                     <td style=\"box-sizing: border-box; padding: 8px; line-height: 1.42857; vertical-align: top; border-style: solid; border-color: #dddddd;\">TX</td>\r\n                     <td style=\"box-sizing: border-box; padding: 8px; line-height: 1.42857; vertical-align: top; border-style: solid; border-color: #dddddd;\">UART_TX</td>\r\n                     <td style=\"box-sizing: border-box; padding: 8px; line-height: 1.42857; vertical-align: top; border-style: solid; border-color: #dddddd;\">0~3.3V</td>\r\n                     </tr>\r\n                  <tr style=\"box-sizing: border-box; background-color: #f9f9f9;\">\r\n                     <td style=\"box-sizing: border-box; padding: 8px; line-height: 1.42857; vertical-align: top; border-style: solid; border-color: #dddddd;\">J2Pin4</td>\r\n                     <td style=\"box-sizing: border-box; padding: 8px; line-height: 1.42857; vertical-align: top; border-style: solid; border-color: #dddddd;\">RX</td>\r\n                     <td style=\"box-sizing: border-box; padding: 8px; line-height: 1.42857; vertical-align: top; border-style: solid; border-color: #dddddd;\">UART_RX</td>\r\n                     <td style=\"box-sizing: border-box; padding: 8px; line-height: 1.42857; vertical-align: top; border-style: solid; border-color: #dddddd;\">0~3.3V</td>\r\n                     </tr>\r\n                  <tr style=\"box-sizing: border-box;\">\r\n                     <td style=\"box-sizing: border-box; padding: 8px; line-height: 1.42857; vertical-align: top; border-style: solid; border-color: #dddddd;\">J2Pin5</td>\r\n                     <td style=\"box-sizing: border-box; padding: 8px; line-height: 1.42857; vertical-align: top; border-style: solid; border-color: #dddddd;\">OT2</td>\r\n                     <td style=\"box-sizing: border-box; padding: 8px; line-height: 1.42857; vertical-align: top; border-style: solid; border-color: #dddddd;\">IO, Used for reporting detection status: High output level for presence, low output level for absence.</td>\r\n                     <td style=\"box-sizing: border-box; padding: 8px; line-height: 1.42857; vertical-align: top; border-style: solid; border-color: #dddddd;\">0~3.3V<br /><br /></td>\r\n                     </tr>\r\n                  </tbody>\r\n               </table>\r\n            </div>\r\n         </div>\r\n      </div>\r\n   </div>','https://www.waveshare.com/wiki/HMMD_mmWave_Sensor','',0,0,2,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2025-04-12 09:18:17',1,'2025-04-12 09:18:17','14.41.12.104','','','','','','','','','','','',''),(662,-659,'',662,0,0,'','','html1','[Eagle] Eagle 에서 PCB 에디터 라인관련 설정(나중에 KiCad에서 참고용)','<p>Eagle 에서 PCB 에디터 라인관련 설정(나중에 KiCad에서 참고용)</p>','','',0,0,6,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2025-04-19 21:31:06',1,'2025-04-19 21:31:06','14.41.12.104','','','','','','','','','','','',''),(663,-660,'',663,0,0,'','','html1','[KiCad] 대학생때 알았더라면 무조건 씁니다. AI만 있으면 PCB 하드웨어 개발 그냥 합니다.','<p><iframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/TvWiVdHu0b8?si=TomZwoMGQ-0TfVPt\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen=\"\"></iframe></p>','https://www.youtube.com/watch?v=TvWiVdHu0b8','',0,0,5,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2025-04-29 08:27:04',0,'2025-04-29 08:27:04','14.41.12.104','','','','','','','','','','','',''),(664,-661,'',664,0,0,'','','html1','[Arduino] 1초간격 millis() 함수로 구동시키','<p>(1)</p>\r\n<p>unsigned long prevMs = 0;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; // millis()는 unsigned long 권장</p>\r\n<p>const unsigned long SAMPLE_MS = 1000;</p>\r\n<p>unsigned int sampleCnt = 0;</p>\r\n<p>const unsigned int SAMPLE_N&nbsp; = 30;</p>\r\n<p><br /></p>\r\n<p>void loop() {</p>\r\n<p>&nbsp; const unsigned long now = millis();</p>\r\n<p><br /></p>\r\n<p>&nbsp; // 1 초마다 실행 ― 지터 최소화를 위해 \'&gt;=\' 사용</p>\r\n<p>&nbsp; if (now - prevMs &gt;= SAMPLE_MS) {</p>\r\n<p>&nbsp; &nbsp; prevMs += SAMPLE_MS;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// 오차 누적 방지</p>\r\n<p>&nbsp; &nbsp; speed_sum += readWind();</p>\r\n<p>&nbsp; &nbsp; sampleCnt++;</p>\r\n<p><br /></p>\r\n<p>&nbsp; &nbsp; if (sampleCnt &gt;= SAMPLE_N) {</p>\r\n<p>&nbsp; &nbsp; &nbsp; speed = speed_sum / SAMPLE_N;</p>\r\n<p>&nbsp; &nbsp; &nbsp; Serial.printf(\"&gt;30 s avg : %.2f m/s\\n\", speed);</p>\r\n<p><br /></p>\r\n<p>&nbsp; &nbsp; &nbsp; // ★ 리셋해 다음 30 초 주기 준비</p>\r\n<p>&nbsp; &nbsp; &nbsp; speed_sum&nbsp; = 0.0;</p>\r\n<p>&nbsp; &nbsp; &nbsp; sampleCnt&nbsp; = 0;</p>\r\n<p>&nbsp; &nbsp; }</p>\r\n<p>&nbsp; }</p>\r\n<p>}<br /><br /></p>\r\n<li data-start=\"1319\" data-end=\"1398\">\r\n   <p data-start=\"1322\" data-end=\"1398\"><strong data-start=\"1322\" data-end=\"1331\">반복 가능</strong><br data-start=\"1331\" data-end=\"1334\" />\r\n평균을 낸 뒤 \r\n      <code data-start=\"1345\" data-end=\"1356\">speed_sum</code>\r\n      과 \r\n      <code data-start=\"1358\" data-end=\"1369\">sampleCnt</code>\r\n      를 0으로 초기화해 30 초 주기를 계속 반복합니다.</p>\r\n   </li>\r\n<li data-start=\"1400\" data-end=\"1515\">\r\n   <p data-start=\"1403\" data-end=\"1515\"><strong data-start=\"1403\" data-end=\"1424\">millis() 오버플로우 안전</strong><br data-start=\"1424\" data-end=\"1427\" />\r\n      <code data-start=\"1430\" data-end=\"1445\">unsigned long</code>\r\n      과 차등 누적(\r\n      <code data-start=\"1453\" data-end=\"1474\">prevMs += SAMPLE_MS</code>\r\n      )을 쓰면 약 49.7 일 뒤 overflow가 일어나도 정상 동작합니다.</p>\r\n   </li>\r\n<p>&nbsp;</p>\r\n<li data-start=\"1517\" data-end=\"1594\">\r\n   <p data-start=\"1520\" data-end=\"1594\"><strong data-start=\"1520\" data-end=\"1537\">정확한 1 초 간격 유지</strong><br data-start=\"1537\" data-end=\"1540\" />\r\n      <code data-start=\"1543\" data-end=\"1547\">&gt;=</code>\r\n       비교와 “누적형” 갱신으로 루프 실행 시간이 길어져도 간격이 드리프트되지 않습니다.</p>\r\n   </li>\r\n<li data-start=\"1517\" data-end=\"1594\">\r\n   <p data-start=\"1520\" data-end=\"1594\">===============================================================================<br />(2)<br /></p>\r\n   <h1 data-start=\"471\" data-end=\"501\">안전한 millis() 패턴 (롤오버/백로그 대응)</h1>\r\n   <p data-start=\"1520\" data-end=\"1594\"></p>\r\n   <p data-start=\"502\" data-end=\"624\">아래처럼 <strong data-start=\"507\" data-end=\"519\">부호 없는 비교</strong>와 <strong data-start=\"521\" data-end=\"530\">누적 증가</strong>를 쓰면 롤오버/지연 모두에 탄탄해집니다. 또한 <strong data-start=\"557\" data-end=\"585\">놓친 틱을 따라잡는(while/for 루프)</strong> 패턴이라, loop가 잠시 바빠도 “1Hz 호출 횟수”가 유지됩니다.<br /></p>\r\n   <p data-start=\"1520\" data-end=\"1594\">// 전역 또는 static</p>\r\n   <p data-start=\"1520\" data-end=\"1594\">static uint32_t last1s = 0;</p>\r\n   <p data-start=\"1520\" data-end=\"1594\">constexpr uint32_t PERIOD_1S = 1000;</p>\r\n   <p data-start=\"1520\" data-end=\"1594\"><br /></p>\r\n   <p data-start=\"1520\" data-end=\"1594\">void loop() {</p>\r\n   <p data-start=\"1520\" data-end=\"1594\">&nbsp; uint32_t now = millis();&nbsp; // 한 번만 읽기</p>\r\n   <p data-start=\"1520\" data-end=\"1594\"><br /></p>\r\n   <p data-start=\"1520\" data-end=\"1594\">&nbsp; // 한 번에 여러 틱을 처리해 밀림 보정(권장)</p>\r\n   <p data-start=\"1520\" data-end=\"1594\">&nbsp; while ((uint32_t)(now - last1s) &gt;= PERIOD_1S) {</p>\r\n   <p data-start=\"1520\" data-end=\"1594\">&nbsp; &nbsp; last1s += PERIOD_1S;&nbsp; &nbsp;// 절대시간 기준으로 누적증가</p>\r\n   <p data-start=\"1520\" data-end=\"1594\"><br /></p>\r\n   <p data-start=\"1520\" data-end=\"1594\">&nbsp; &nbsp; // === 1초 주기 작업 ===</p>\r\n   <p data-start=\"1520\" data-end=\"1594\">&nbsp; &nbsp; watchDogRefresh();</p>\r\n   <p data-start=\"1520\" data-end=\"1594\">&nbsp; &nbsp; RTC_Func();</p>\r\n   <p data-start=\"1520\" data-end=\"1594\">&nbsp; &nbsp; now_time = (hour * 60) + minu;</p>\r\n   <p data-start=\"1520\" data-end=\"1594\">&nbsp; &nbsp; // =====================</p>\r\n   <p data-start=\"1520\" data-end=\"1594\"><br /></p>\r\n   <p data-start=\"1520\" data-end=\"1594\">&nbsp; &nbsp; // 필요 시 yield();</p>\r\n   <p data-start=\"1520\" data-end=\"1594\">&nbsp; }</p>\r\n   <p data-start=\"1520\" data-end=\"1594\"><br /></p>\r\n   <p data-start=\"1520\" data-end=\"1594\">&nbsp; // 나머지 비주기 작업...</p>\r\n   <p data-start=\"1520\" data-end=\"1594\">}</p>\r\n   </li>','https://chatgpt.com/c/6896f470-6638-832c-b5cd-452efe472e2a','',0,0,6,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2025-07-17 14:40:05',0,'2025-07-17 14:40:05','121.158.147.142','','','','','','','','','','','',''),(665,-662,'',665,0,0,'','','html1','[ETC] 릴레이 relay HJR4102-L-5VCD-Z 연결','<ul class=\"goods_title\" style=\"margin: 0px; padding: 0px; font-family: &quot;Nanum Gothic&quot;, &quot;Malgun Gothic&quot;, Dotum, Gulim, &quot;Helvetica Neue&quot;, Helvetica, AppleGothic, Verdana, Arial, sans-serif; vertical-align: middle; list-style: none; width: 980px; color: #666666; background-color: #ffffff;\">\r\n   <li class=\"goods_name\" style=\"margin: 0px; padding: 0px; vertical-align: middle; list-style: none; float: none; color: #333333; letter-spacing: -1px; line-height: 1.4; text-align: left;\">\r\n      <h3 style=\"margin: 15px 0px 0px; padding: 0px 0px 9px; font-family: &quot;Nanum Gothic&quot;; font-size: 23px; line-height: 26px;\">[TIANBO RELAY] HJR4102-L-5VCD-Z</h3>\r\n      </li>\r\n   <li style=\"margin: 0px; padding: 0px; vertical-align: middle; list-style: none; float: none; text-align: left;\"></li>\r\n   <li class=\"short_desc\" style=\"margin: 0px 0px 10px; padding: 0px; vertical-align: middle; list-style: none; float: none; font-size: 14px; letter-spacing: -1px; line-height: 1.4; text-align: left;\">일반 릴레이 / 접촉형식 : SPDT-NO, NC (1 Form C) / 코일 전압 : 5VDC / 스위칭 전압(AC) : 120VAC / 스위칭 전류(AC) : 2A / 스위칭 전압(DC) : 24VDC / 스위칭 전류(DC) : 3A / 전력 소비 : 200mW</li>\r\n   </ul>','https://www.devicemart.co.kr/goods/view?no=1128486','',0,0,2,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2025-08-21 10:50:16',1,'2025-08-21 10:50:16','121.158.147.142','','','','','','','','','','','',''),(666,-663,'',666,0,0,'','','html1','[Arduino] NTP 서버 접속 코드','<p>*** Common_setup.h ***</p>\r\n<p>/* -------------------------------------------------------------------- */</p>\r\n<p>#include &lt;Arduino.h&gt;</p>\r\n<p>#include &lt;ArduinoJson.h&gt;</p>\r\n<p>#include &lt;WiFi.h&gt;</p>\r\n<p>#include &lt;WiFiManager.h&gt;</p>\r\n<p><br /></p>\r\n<p>#include \"PinMap.h\"</p>\r\n<p>#include \"time.h\"</p>\r\n<p>/* -------------------------------------------------------------------- */</p>\r\n<p>/* @@ NTP/시간 Setup @@ */</p>\r\n<p>static constexpr char ntp_server[]&nbsp; &nbsp;= \"pool.ntp.org\";</p>\r\n<p>static constexpr long gmt_offset_sec = 3600;</p>\r\n<p><br /></p>\r\n<p>extern uint8_t timeZone;&nbsp; &nbsp; // Korea 9</p>\r\n<p>extern uint8_t summerTime;</p>\r\n<p><br /></p>\r\n<p>extern int day, month, year, sec, minu, hour, week;</p>\r\n<p>/* -------------------------------------------------------------------- */</p>\r\n<p>/* @@ WiFi Setup @@ */</p>\r\n<p>// 전역 객체/버퍼는 extern 선언만</p>\r\n<p>extern WiFiClient httpClient;&nbsp; &nbsp; // 일반 TCP/HTTP 용</p>\r\n<p>extern IPAddress ip;</p>\r\n<p>extern char myipaddress[24];</p>\r\n<p>extern boolean wifi_connect;</p>\r\n<p><br /></p>\r\n<p><br /></p>\r\n<p>*** Common_setup.cpp ***</p>\r\n<p>/* @@ NTP/시간 Setup @@ */</p>\r\n<p>uint8_t timeZone&nbsp; &nbsp;= 9;&nbsp; // Korea 9, Vietnam 7</p>\r\n<p>uint8_t summerTime = 0;</p>\r\n<p><br /></p>\r\n<p>int day = 0, month = 0, year = 0, sec = 0, minu = 0, hour = 0, week = 0;</p>\r\n<p>unsigned int now_time = 0;</p>\r\n<p>/* -------------------------------------------------------------------- */</p>\r\n<p>/* @@ WiFi Setup @@ */</p>\r\n<p>WiFiClient httpClient;&nbsp; &nbsp; // 실제 객체 정의</p>\r\n<p>IPAddress ip;</p>\r\n<p>char myipaddress[24] = {0};</p>\r\n<p>boolean wifi_connect = false;</p>\r\n<p><br /></p>\r\n<p><br /></p>\r\n<p>*** main.cpp ***</p>\r\n<p>void setup() {&nbsp;</p>\r\n<p>&nbsp; ...</p>\r\n<p>&nbsp; WiFiManager wifiManager;&nbsp;&nbsp;</p>\r\n<p>&nbsp; wifiManager.autoConnect(dev_name);</p>\r\n<p>&nbsp; wifi_state();</p>\r\n<p>&nbsp;&nbsp;</p>\r\n<p>&nbsp; if(wifi_connect = true) {</p>\r\n<p>&nbsp; &nbsp; ntp_init();</p>\r\n<p>&nbsp; }</p>\r\n<p>&nbsp; ...</p>\r\n<p>}</p>\r\n<p><br /></p>\r\n<p>void loop() {</p>\r\n<p>&nbsp; ...</p>\r\n<p>&nbsp; ntp_read(1);</p>\r\n<p>&nbsp; ...</p>\r\n<p>}</p>\r\n<p><br /></p>\r\n<p>// ---- NTP 초기화: WiFi 연결 직후 한 번 호출 ----</p>\r\n<p>void ntp_init() {</p>\r\n<p>&nbsp; // TZ 방식 권장 (한국: UTC+9, DST 없음)</p>\r\n<p>&nbsp; configTzTime(\"KST-9\", ntp_server);&nbsp; &nbsp;// 또는 configTime(9*3600, 0, ntp_server);</p>\r\n<p><br /></p>\r\n<p>&nbsp; // 동기화 대기 (최대 ~10초)</p>\r\n<p>&nbsp; for(int i = 0; i &lt; 100; ++i) {</p>\r\n<p>&nbsp; &nbsp; time_t now = time(nullptr);</p>\r\n<p>&nbsp; &nbsp; if(now &gt; 1700000000) break;&nbsp; // 2023-11-14 00:00:00 UTC 이후면 \'동기화됨\'으로 간주</p>\r\n<p>&nbsp; &nbsp; delay(100);</p>\r\n<p>&nbsp; }</p>\r\n<p>}</p>\r\n<p><br /></p>\r\n<p>// ---- 시간 읽기 ----</p>\r\n<p>bool ntp_read(int mode) {</p>\r\n<p>&nbsp; struct tm timeinfo{};&nbsp; // 반드시 0으로 초기화</p>\r\n<p><br /></p>\r\n<p>&nbsp; // ✅ 성공 시 true. 실패 시 false → 실패 처리 조건을 \'!\'로.</p>\r\n<p>&nbsp; if(!getLocalTime(&amp;timeinfo, 1000)) {&nbsp; &nbsp;// 1초 타임아웃</p>\r\n<p>&nbsp; &nbsp; Serial.println(\"*** Failed to obtain time ***\");</p>\r\n<p>&nbsp; &nbsp; return false;</p>\r\n<p>&nbsp; }</p>\r\n<p><br /></p>\r\n<p>&nbsp; day&nbsp; &nbsp;= timeinfo.tm_mday;</p>\r\n<p>&nbsp; month = timeinfo.tm_mon + 1;</p>\r\n<p>&nbsp; year&nbsp; = timeinfo.tm_year + 1900;</p>\r\n<p>&nbsp; sec&nbsp; &nbsp;= timeinfo.tm_sec;</p>\r\n<p>&nbsp; minu&nbsp; = timeinfo.tm_min;</p>\r\n<p>&nbsp; hour&nbsp; = timeinfo.tm_hour;</p>\r\n<p>&nbsp; week&nbsp; = timeinfo.tm_wday;&nbsp; &nbsp;// 0=일, 1=월, ...</p>\r\n<p><br /></p>\r\n<p>&nbsp; if(mode == 1) print_time();</p>\r\n<p>&nbsp; return true;</p>\r\n<p>}</p>\r\n<p><br /></p>\r\n<p>void print_time() {&nbsp;&nbsp;</p>\r\n<p>&nbsp; char buf[40];</p>\r\n<p>&nbsp; snprintf(buf, sizeof(buf), \"[%04d-%02d-%02d, %02d:%02d:%02d]\",</p>\r\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;year, month, day, hour, minu, sec);</p>\r\n<p>&nbsp; Serial.println(buf);</p>\r\n<p>}</p>\r\n<p></p>\r\n<p></p>','','',0,0,1,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2025-09-21 21:39:48',0,'2025-09-21 21:39:48','192.168.219.103','','','','','','','','','','','',''),(667,-664,'',667,0,0,'','','html1','[Linux] 웹 페이지로 mqtt 접속하기','<p>우분투 리눅스에 아파치 + mosquitt 설치된 상태에서 paho mqtt js 라이브러리를 이용한 웹 연결 구현 코드</p>','https://chatgpt.com/c/68f47e53-164c-8322-818b-3ef24c3dd08b','',0,0,2,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2025-10-19 15:35:06',2,'2025-10-19 15:35:06','121.158.147.142','','','','','','','','','','','',''),(668,-665,'',668,0,0,'','','html1','[Kicad] KiCad 9: Design & assemble an ESP32 IoT 4-layer PCB loaded with goodies **A Complete Guide**','<p><iframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/LO9AO0XTX3M?si=0Cf6y9HdylngX6q1\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen=\"\"></iframe></p>','https://www.youtube.com/watch?v=LO9AO0XTX3M','https://techexplorations.com/kicad/kicad-9-designing-a-4-layer-iot-development-board/',0,0,2,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2025-11-13 07:48:20',0,'2025-11-13 07:48:20','121.158.147.142','','','','','','','','','','','',''),(669,-666,'',669,0,0,'','','html1','[Linux] 리눅스 서버 https 인증서 이용한 ssl 설정하기','<p data-start=\"220\" data-end=\"243\">ZIP 안에는 다음 파일이 들어 있습니다.</p>\r\n<p></p>\r\n<ul data-start=\"245\" data-end=\"497\">\r\n   <li data-start=\"245\" data-end=\"497\">\r\n      <p data-start=\"247\" data-end=\"285\"><strong data-start=\"247\" data-end=\"285\">\r\n            <code data-start=\"249\" data-end=\"283\">bk94005_https_setup_summary.docx</code>\r\n            </strong></p>\r\n      <ul data-start=\"288\" data-end=\"497\">\r\n         <li data-start=\"288\" data-end=\"314\">\r\n            <p data-start=\"290\" data-end=\"314\">Ubuntu 18.04 + Apache 환경</p>\r\n            </li>\r\n         <li data-start=\"317\" data-end=\"331\">\r\n            <p data-start=\"319\" data-end=\"331\">공유기 포트포워딩 구조</p>\r\n            </li>\r\n         <li data-start=\"334\" data-end=\"362\">\r\n            <p data-start=\"336\" data-end=\"362\">Certbot 설치 이슈(i386)와 해결 방법</p>\r\n            </li>\r\n         <li data-start=\"365\" data-end=\"382\">\r\n            <p data-start=\"367\" data-end=\"382\">HTTPS 인증서 발급 과정</p>\r\n            </li>\r\n         <li data-start=\"385\" data-end=\"418\">\r\n            <p data-start=\"387\" data-end=\"418\">HTTP → HTTPS 리다이렉트 수동 설정 이유와 방법</p>\r\n            </li>\r\n         <li data-start=\"421\" data-end=\"437\">\r\n            <p data-start=\"423\" data-end=\"437\">외부/내부 접속 검증 결과</p>\r\n            </li>\r\n         <li data-start=\"440\" data-end=\"472\">\r\n            <p data-start=\"442\" data-end=\"472\">systemd 기반 인증서 <strong data-start=\"457\" data-end=\"472\">자동 갱신 검증 방법</strong></p>\r\n            </li>\r\n         <li data-start=\"475\" data-end=\"497\">\r\n            <p data-start=\"477\" data-end=\"497\">실제 운영 기준에서의 최종 구성 요약</p>\r\n            </li>\r\n         </ul>\r\n      </li>\r\n   </ul>','https://chatgpt.com/c/688eceea-3d6c-832a-ba64-2f3715e35913','',2,0,5,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2026-01-05 15:15:36',1,'2026-01-05 15:15:36','121.158.147.142','','','','','','','','','','','',''),(670,-667,'',670,0,0,'','','html1','[AI] LLAMA + Qwen2.5-3B 설치 및 사용방법','<h2 data-start=\"139\" data-end=\"160\">✅ 전체 전략 요약 (추천 루트)</h2>\r\n<h2 data-start=\"139\" data-end=\"160\">\r\n   <ul data-start=\"161\" data-end=\"290\">\r\n      <li data-start=\"161\" data-end=\"212\">\r\n         <p data-start=\"163\" data-end=\"212\"><strong data-start=\"163\" data-end=\"180\">GPU 없이 CPU 추론</strong> (WSL2 + Windows GPU 연동 안 해도 충분)</p>\r\n         </li>\r\n      <li data-start=\"213\" data-end=\"251\">\r\n         <p data-start=\"215\" data-end=\"251\"><strong data-start=\"215\" data-end=\"239\">llama.cpp 기반 gguf 모델</strong> 사용 → 가볍고 빠름</p>\r\n         </li>\r\n      <li data-start=\"252\" data-end=\"290\">\r\n         <p data-start=\"254\" data-end=\"290\">Python / transformers보다 <strong data-start=\"278\" data-end=\"290\">실험 효율 최고</strong></p>\r\n         </li>\r\n      </ul>\r\n   <p>1️⃣ WSL2 Ubuntu 기본 준비</p>\r\n   <p>sudo apt update &amp;&amp; sudo apt upgrade -y</p>\r\n   <p>sudo apt install -y git build-essential cmake python3 python3-pip</p>\r\n   <p>&nbsp;</p>\r\n   <p>2️⃣ llama.cpp 설치 (핵심)</p>\r\n   <p>cd ~</p>\r\n   <p>git clone https://github.com/ggerganov/llama.cpp.git</p>\r\n   <p>cd llama.cpp</p>\r\n   <p>mkdir build</p>\r\n   <p>cd build</p>\r\n   <p>cmake ..</p>\r\n   <p>cmake --build . --config Release -j$(nproc)</p>\r\n   <p>ls ./bin</p>\r\n   <p># llama-cli, llama-server 등이 보이면 성공</p>\r\n   <p>&nbsp;</p>\r\n   <p>3️⃣ Qwen2.5-3B gguf 모델 다운로드</p>\r\n   <p data-start=\"780\" data-end=\"849\">&nbsp;</p>\r\n   </h2>','','',0,0,3,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2026-02-04 08:18:13',1,'2026-02-04 08:18:13','121.158.147.142','','','','','','','','','','','',''),(672,-669,'',672,0,0,'','','html1','[GPT] ChatGPT 에서 platformio 질의 프롬프트 팁','<div>[역할(Role)]</div>\r\n<div>너는 PlatformIO + Arduino + ESP32 환경을 완벽히 이해하는</div>\r\n<div>시니어 임베디드 엔지니어다.</div>\r\n<div><br /></div>\r\n<div>나는 전체 프로젝트 ZIP 파일을 첨부한다.</div>\r\n<div>이 ZIP을 기준으로 아래 요구사항을 100% 반영한</div>\r\n<div><br /></div>\r\n<div>\"누락 없는 전체 완성본 프로젝트 ZIP 파일 1개\"</div>\r\n<div><br /></div>\r\n<div>만 산출하라.</div>\r\n<div><br /></div>\r\n<div>----------------------------------</div>\r\n<div>[절대 조건 – 위반 금지]</div>\r\n<div><br /></div>\r\n<div>1) 기존 폴더 구조 유지</div>\r\n<div>2) platformio.ini 유지</div>\r\n<div>3) 기존 라이브러리 설정 유지</div>\r\n<div>4) 기존 핀맵 변경 금지 (요청한 경우 제외)</div>\r\n<div>5) 부분 코드 출력 금지</div>\r\n<div>6) 설명 금지</div>\r\n<div>7) 수정 완료된 전체 프로젝트 ZIP 파일 1개만 출력</div>\r\n<div><br /></div>\r\n<div>----------------------------------</div>\r\n<div>[요구사항]</div>\r\n<div><br /></div>\r\n<div>(여기에 원하는 기능을 정확히 작성)</div>\r\n<div><br /></div>\r\n<div>----------------------------------</div>\r\n<div><br /></div>\r\n<div>[자체 검증 체크리스트]</div>\r\n<div><br /></div>\r\n<div>- 컴파일 에러 0 보장</div>\r\n<div>- 라이브러리 누락 없음</div>\r\n<div>- include 누락 없음</div>\r\n<div>- 함수 중복 없음</div>\r\n<div>- 선언/정의 불일치 없음</div>\r\n<div>- 헤더 충돌 없음</div>\r\n<div>- ISR 사용시 IRAM_ATTR 확인</div>\r\n<div>- ESP32 메모리 초과 없음</div>\r\n<div>- PlatformIO 환경에서 빌드 가능</div>\r\n<div><br /></div>\r\n<div>----------------------------------</div>\r\n<div><br /></div>\r\n<div>결과물은 반드시</div>\r\n<div>\"완성된 전체 프로젝트 ZIP 파일 1개\"</div>\r\n<div>로만 출력하라.</div>\r\n<div>설명 금지.</div>\r\n<h2 data-start=\"366\" data-end=\"383\"></h2>','','',0,0,1,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2026-03-02 10:31:44',0,'2026-03-02 10:31:44','121.158.147.142','','','','','','','','','','','',''),(673,-670,'',673,0,0,'','','html1','[GPT] NextGreen GPT 시스템 프롬프트 (추천)','<p>[프로젝트 시스템 정보]</p>\r\n<p><br /></p>\r\n<p>Project : NextGreen AI Monitoring Platform</p>\r\n<p><br /></p>\r\n<p>System Architecture</p>\r\n<p><br /></p>\r\n<p>nextgreen</p>\r\n<p>&nbsp;├ dashboard</p>\r\n<p>&nbsp;│&nbsp; &nbsp;├ index.html</p>\r\n<p>&nbsp;│&nbsp; &nbsp;├ device.html</p>\r\n<p>&nbsp;│&nbsp; &nbsp;├ device_mobile.html</p>\r\n<p>&nbsp;│&nbsp; &nbsp;├ inc/</p>\r\n<p>&nbsp;│&nbsp; &nbsp;├ api/</p>\r\n<p>&nbsp;│&nbsp; &nbsp;└ js/</p>\r\n<p>&nbsp;│</p>\r\n<p>&nbsp;├ ns20_1_ai</p>\r\n<p>&nbsp;│&nbsp; &nbsp;├ reports/YYYY/MM/DD/</p>\r\n<p>&nbsp;│&nbsp; &nbsp;└ ai_analyze scripts</p>\r\n<p>&nbsp;│</p>\r\n<p>&nbsp;├ ns40_1_ai</p>\r\n<p>&nbsp;│&nbsp; &nbsp;├ reports/YYYY/MM/DD/</p>\r\n<p>&nbsp;│&nbsp; &nbsp;└ ai_analyze scripts</p>\r\n<p>&nbsp;│</p>\r\n<p>&nbsp;├ device_firmware</p>\r\n<p>&nbsp;│&nbsp; &nbsp;└ ESP32 PlatformIO project</p>\r\n<p>&nbsp;│</p>\r\n<p>&nbsp;└ api</p>\r\n<p>&nbsp; &nbsp; &nbsp;└ JSON upload / data storage</p>\r\n<p><br /></p>\r\n<p>Server Environment</p>\r\n<p><br /></p>\r\n<p>OS : Ubuntu</p>\r\n<p>Web : Apache</p>\r\n<p>Language : PHP + JavaScript</p>\r\n<p>Database : MySQL</p>\r\n<p><br /></p>\r\n<p>Device</p>\r\n<p><br /></p>\r\n<p>ESP32-S3-WROOM</p>\r\n<p>Sensors</p>\r\n<p>- SHT30</p>\r\n<p>- PMS5003</p>\r\n<p>- SGP30</p>\r\n<p>- H2S</p>\r\n<p>- NH3</p>\r\n<p><br /></p>\r\n<p>AI</p>\r\n<p><br /></p>\r\n<p>OpenAI API</p>\r\n<p>Future : Local LLM (Qwen / Llama)</p>\r\n<p><br /></p>\r\n<p>Rules</p>\r\n<p><br /></p>\r\n<p>1. 기존 시스템 구조 절대 변경 금지</p>\r\n<p>2. 기존 DB 구조 변경 금지 (요청 시 제외)</p>\r\n<p>3. 기존 API 경로 변경 금지</p>\r\n<p>4. 기존 JS 함수명 변경 금지</p>\r\n<p>5. 항상 실제 운영 가능한 코드 기준으로 답변</p>\r\n<p>6. 가능한 경우 전체 수정 코드 제공</p>\r\n<p>7. 대규모 수정은 ZIP 구조 기준 설명</p>\r\n<p><br /></p>\r\n<p>당신의 역할은</p>\r\n<p>NextGreen 시스템을 유지하면서 개선하는</p>\r\n<p>시니어 시스템 아키텍트 + 풀스택 엔지니어이다.</p>\r\n<p>&nbsp;</p>\r\n<p>---------------------------------------------</p>\r\n<p>[프로젝트 시스템 정보]</p>\r\n<p>================================</p>\r\n<p>Project : 농업 AI 개발 플랫폼</p>\r\n<p>================================</p>\r\n<p>System Architecture</p>\r\n<p><br /></p>\r\n<p>nextgreen</p>\r\n<p>&nbsp;├ dashboard</p>\r\n<p>&nbsp;│&nbsp; &nbsp;├ index.html</p>\r\n<p>&nbsp;│&nbsp; &nbsp;├ device.html</p>\r\n<p>&nbsp;│&nbsp; &nbsp;├ device_mobile.html</p>\r\n<p>&nbsp;│&nbsp; &nbsp;├ inc/</p>\r\n<p>&nbsp;│&nbsp; &nbsp;├ api/</p>\r\n<p>&nbsp;│&nbsp; &nbsp;└ js/</p>\r\n<p>&nbsp;│</p>\r\n<p>&nbsp;├ ns20_1_ai</p>\r\n<p>&nbsp;│&nbsp; &nbsp;├ reports/YYYY/MM/DD/</p>\r\n<p>&nbsp;│&nbsp; &nbsp;└ ai_analyze scripts</p>\r\n<p>================================</p>\r\n<p>Server Environment</p>\r\n<p><br /></p>\r\n<p>OS : Ubuntu</p>\r\n<p>Web : Apache</p>\r\n<p>Language : PHP + JavaScript</p>\r\n<p>Database : MySQL</p>\r\n<p>================================</p>\r\n<p>AI</p>\r\n<p><br /></p>\r\n<p>OpenAI API</p>\r\n<p>================================</p>\r\n<p>Rules</p>\r\n<p>당신의 역할은</p>\r\n<p>NextGreen 시스템을 유지하면서 개선하는</p>\r\n<p>시니어 시스템 아키텍트 + 풀스택 엔지니어이다.</p>','','',0,0,2,0,0,'admin','*B9FF5DF52BD3C5F13EA3D506E09A21D17ECF6557','최고관리자','bk94005@naver.com','','2026-03-09 14:51:11',0,'2026-03-09 14:51:11','121.158.147.142','','','','','','','','','','','','');

--
-- Table structure for table `sms5_book`
--

CREATE TABLE `sms5_book` (
  `bk_no` int(11) NOT NULL AUTO_INCREMENT,
  `bg_no` int(11) NOT NULL DEFAULT '0',
  `mb_no` int(11) NOT NULL DEFAULT '0',
  `mb_id` varchar(20) NOT NULL DEFAULT '',
  `bk_name` varchar(255) NOT NULL DEFAULT '',
  `bk_hp` varchar(255) NOT NULL DEFAULT '',
  `bk_receipt` tinyint(4) NOT NULL DEFAULT '0',
  `bk_datetime` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
  `bk_memo` text NOT NULL,
  PRIMARY KEY (`bk_no`),
  KEY `bk_name` (`bk_name`),
  KEY `bk_hp` (`bk_hp`),
  KEY `mb_no` (`mb_no`),
  KEY `bg_no` (`bg_no`,`bk_no`),
  KEY `mb_id` (`mb_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `sms5_book`
--


--
-- Table structure for table `sms5_book_group`
--

CREATE TABLE `sms5_book_group` (
  `bg_no` int(11) NOT NULL AUTO_INCREMENT,
  `bg_name` varchar(255) NOT NULL DEFAULT '',
  `bg_count` int(11) NOT NULL DEFAULT '0',
  `bg_member` int(11) NOT NULL DEFAULT '0',
  `bg_nomember` int(11) NOT NULL DEFAULT '0',
  `bg_receipt` int(11) NOT NULL DEFAULT '0',
  `bg_reject` int(11) NOT NULL DEFAULT '0',
  PRIMARY KEY (`bg_no`),
  KEY `bg_name` (`bg_name`)
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;

--
-- Dumping data for table `sms5_book_group`
--

INSERT INTO `sms5_book_group` VALUES (1,'미분류',0,0,0,0,0);

--
-- Table structure for table `sms5_config`
--

CREATE TABLE `sms5_config` (
  `cf_phone` varchar(255) NOT NULL DEFAULT '',
  `cf_datetime` datetime NOT NULL DEFAULT '0000-00-00 00:00:00'
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `sms5_config`
--


--
-- Table structure for table `sms5_form`
--

CREATE TABLE `sms5_form` (
  `fo_no` int(11) NOT NULL AUTO_INCREMENT,
  `fg_no` tinyint(4) NOT NULL DEFAULT '0',
  `fg_member` char(1) NOT NULL DEFAULT '0',
  `fo_name` varchar(255) NOT NULL DEFAULT '',
  `fo_content` text NOT NULL,
  `fo_datetime` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
  PRIMARY KEY (`fo_no`),
  KEY `fg_no` (`fg_no`,`fo_no`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `sms5_form`
--


--
-- Table structure for table `sms5_form_group`
--

CREATE TABLE `sms5_form_group` (
  `fg_no` int(11) NOT NULL AUTO_INCREMENT,
  `fg_name` varchar(255) NOT NULL DEFAULT '',
  `fg_count` int(11) NOT NULL DEFAULT '0',
  `fg_member` tinyint(4) NOT NULL,
  PRIMARY KEY (`fg_no`),
  KEY `fg_name` (`fg_name`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `sms5_form_group`
--


--
-- Table structure for table `sms5_history`
--

CREATE TABLE `sms5_history` (
  `hs_no` int(11) NOT NULL AUTO_INCREMENT,
  `wr_no` int(11) NOT NULL DEFAULT '0',
  `wr_renum` int(11) NOT NULL DEFAULT '0',
  `bg_no` int(11) NOT NULL DEFAULT '0',
  `mb_no` int(11) NOT NULL DEFAULT '0',
  `mb_id` varchar(20) NOT NULL DEFAULT '',
  `bk_no` int(11) NOT NULL DEFAULT '0',
  `hs_name` varchar(30) NOT NULL DEFAULT '',
  `hs_hp` varchar(255) NOT NULL DEFAULT '',
  `hs_datetime` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
  `hs_flag` tinyint(4) NOT NULL DEFAULT '0',
  `hs_code` varchar(255) NOT NULL DEFAULT '',
  `hs_memo` varchar(255) NOT NULL DEFAULT '',
  `hs_log` varchar(255) NOT NULL DEFAULT '',
  PRIMARY KEY (`hs_no`),
  KEY `wr_no` (`wr_no`),
  KEY `mb_no` (`mb_no`),
  KEY `bk_no` (`bk_no`),
  KEY `hs_hp` (`hs_hp`),
  KEY `hs_code` (`hs_code`),
  KEY `bg_no` (`bg_no`),
  KEY `mb_id` (`mb_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `sms5_history`
--


--
-- Table structure for table `sms5_write`
--

CREATE TABLE `sms5_write` (
  `wr_no` int(11) NOT NULL DEFAULT '1',
  `wr_renum` int(11) NOT NULL DEFAULT '0',
  `wr_reply` varchar(255) NOT NULL DEFAULT '',
  `wr_message` varchar(255) NOT NULL DEFAULT '',
  `wr_booking` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
  `wr_total` int(11) NOT NULL DEFAULT '0',
  `wr_re_total` int(11) NOT NULL DEFAULT '0',
  `wr_success` int(11) NOT NULL DEFAULT '0',
  `wr_failure` int(11) NOT NULL DEFAULT '0',
  `wr_datetime` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
  `wr_memo` text NOT NULL,
  KEY `wr_no` (`wr_no`,`wr_renum`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `sms5_write`
--


--
-- Dumping events for database 'geoworld'
--

--
-- Dumping routines for database 'geoworld'
--


