<< return to Vizycam.com

User Tools

Site Tools


wiki:test

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
wiki:test [2021/02/13 13:36]
vizycam
wiki:test [2021/10/16 18:30] (current)
vizycam
Line 1: Line 1:
-====== Module vizypowerboard ======+[[wiki:​running_utilities|utilities]]
  
-This module is used with the Vizy Power Board, which is a printed circuit board that plugs into the Raspberry Pi I/O connector and is included with the Vizy camera. More information about Vizy can be found [[https://​vizycamcam.com|here]].+[[wiki:pinoouts|pinouts]]
  
-===== Variables =====+[[wiki:​ssh|ssh]]
  
-  * **''​%%CHANNEL_5V%%''​** Used with ''​%%VizyPowerBoard.measure()%%''​. +[[wiki:birdfeeder_app|birdfeeder]]
-  * **''​%%CHANNEL_VIN%%''​** Used with ''​%%VizyPowerBoard.measure()%%''​. +
-  * **''​%%DIPSWITCH_EXT_BUTTON%%''​** Used with ''​%%VizyPowerBoard.dip_switches()%%''​. +
-  * **''​%%DIPSWITCH_MUTE_BUZZER%%''​** Used with ''​%%VizyPowerBoard.dip_switches()%%''​. +
-  * **''​%%DIPSWITCH_NO_BG_LED%%''​** Used with ''​%%VizyPowerBoard.dip_switches()%%''​. +
-  * **''​%%DIPSWITCH_POWER_DEFAULT_OFF%%''​** Used with ''​%%VizyPowerBoard.dip_switches()%%''​. +
-  * **''​%%DIPSWITCH_POWER_DEFAULT_ON%%''​** Used with ''​%%VizyPowerBoard.dip_switches()%%''​. +
-  * **''​%%DIPSWITCH_POWER_PLUG%%''​** Used with ''​%%VizyPowerBoard.dip_switches()%%''​. +
-  * **''​%%DIPSWITCH_POWER_SWITCH%%''​** Used with ''​%%VizyPowerBoard.dip_switches()%%''​. +
-  * **''​%%IO_MODE_HIGH_CURRENT%%''​** Used with ''​%%VizyPowerBoard.io_set_mode()%%''​. +
-  * **''​%%IO_MODE_INPUT%%''​** Used with ''​%%VizyPowerBoard.io_set_mode()%%''​. +
-  * **''​%%IO_MODE_OUTPUT%%''​** Used with ''​%%VizyPowerBoard.io_set_mode()%%''​. +
-  * **''​%%POWER_ON_SOURCE_12V%%''​** Used with ''​%%VizyPowerBoard.power_on_source()%%''​. +
-  * **''​%%POWER_ON_SOURCE_5V%%''​** Used with ''​%%VizyPowerBoard.power_on_source()%%''​. +
-  * **''​%%POWER_ON_SOURCE_ALARM%%''​** Used with ''​%%VizyPowerBoard.power_on_source()%%''​. +
-  * **''​%%POWER_ON_SOURCE_POWER_BUTTON%%''​** Used with ''​%%VizyPowerBoard.power_on_source()%%''​. +
- +
-===== Classes ===== +
- +
-<​HTML><​dl></​HTML>​ +
-<​HTML><​dt></​HTML>''​%%VizyPowerBoard(addr=20,​ bus=1)%%''<​HTML></​dt></​HTML>​ +
-<​HTML><​dd></​HTML><​HTML><​p></​HTML>​This class may be instantiated by more than one process. The vizy-powerd service instantiates this class and uses it to monitor and control things such as power-off requests, CPU temperature,​ fan speed, etc.\\ +
-User programs can also instantiate this class and use its methods simultaneously.<​HTML></​p></​HTML>​ +
-<​HTML><​p></​HTML>​Argsaddr (integer, optional, default=0x14):​ I2C address of the board bus (integer, optional, default=1): the I2C bus number<​HTML></​p></​HTML>​ +
-==== Methods ==== +
- +
-<​HTML><​dl></​HTML>​ +
-<​HTML><​dt></​HTML>''​%%button(self)%%''<​HTML></​dt></​HTML>​ +
-<​HTML><​dd></​HTML>​Returns ''​%%True%%''​ if the button is being pressed currently, ''​%%False%%''​ otherwise.<​HTML></​dd></​HTML>​ +
-<​HTML><​dt></​HTML>''​%%button_pressed(self)%%''<​HTML></​dt></​HTML>​ +
-<​HTML><​dd></​HTML>​Returns ''​%%True%%''​ if the button was pressed within the last 5 seconds, ''​%%False%%''​ otherwise. This is useful if the polling is intermittant or slow, as button presses are not missed (as long as you check at least every 5 seconds!)<​HTML></​dd></​HTML>​ +
-<​HTML><​dt></​HTML>''​%%buzzer(self,​ freq, on=250, off=250, count=1, shift=0)%%''<​HTML></​dt></​HTML>​ +
-<​HTML><​dd></​HTML><​HTML><​p></​HTML>​Emit tones through the buzzer. The ''​%%freq%%''​ argument sets the frequency of the tone in Hz and the ''​%%on%%''​ argument sets the length of the tone in milliseconds.<​HTML></​p></​HTML>​ +
-<​HTML><​p></​HTML>​If you wish to emit more than 1 tone, you can set the ''​%%count%%''​ argument to the desired number.<​HTML></​p></​HTML>​ +
-<​HTML><​p></​HTML>​The ''​%%off%%''​ argument sets the pause between tones in milliseconds. The ''​%%shift%%''​ argument is a value ranging between -128 and 127 that causes the tone’s frequency to raise if ''​%%shift%%''​ is greater than 0, or descend if ''​%%shift%%''​ is less than 0.<​HTML></​p></​HTML>​ +
-<​code>​ +
-buzzer(2000,​ 500) # emit a 2000Hz tone for 500ms +
-buzzer(1000,​ count=3) # emit a 1000Hz tone 3 times    +
-buzzer(1000,​ 500, 100, 3) # emit a longer 1000Hz tone 3 times +
-buzzer(500, 250, 0, 10, 50) # emit 10 warbling tones like a siren +
-</​code><​HTML></​dd></​HTML>​ +
-<​HTML><​dt></​HTML>''​%%dip_switches(self,​ val=None)%%''<​HTML></​dt></​HTML>​ +
-<​HTML><​dd></​HTML><​HTML><​p></​HTML>​Set or get the (virtual) DIP switch state. The DIP switches are a set of “switches” that allow you to control Vizy’s power-on or power-off behavior. Once they are set, they will retain the setting even if power is removed. The switches are a set of values that can be ORed together:<​HTML></​p></​HTML>​ +
-<​HTML><​ul></​HTML>​ +
-<​HTML><​li></​HTML>​DIPSWITCH_EXT_BUTTON,​ used to set external/​remote power button, e.g. with outdoor enclosure. Default disabled.<​HTML></​li></​HTML>​ +
-<​HTML><​li></​HTML>​DIPSWITCH_MUTE_BUZZER,​ used to mute the buzzer. Default disabled.<​HTML></​li></​HTML>​ +
-<​HTML><​li></​HTML>​DIPSWITCH_NO_BG_LED,​ used to disable the background LED, which is normally set to yellow upon power up. Default disabled.<​HTML></​li></​HTML>​ +
-<​HTML><​li></​HTML>​DIPSWITCH_POWER_DEFAULT_OFF,​ if this power mode is set and you plug in power via the 12V power input, Vizy will remain off by default until you press the button to power Vizy on. And if power is interrupted while Vizy is on, //Vizy will turn off//. If power is interrupted while Vizy is off, Vizy will remain off. This is the default power mode.<​HTML></​li></​HTML>​ +
-<​HTML><​li></​HTML>​DIPSWITCH_POWER_DEFAULT_ON,​ if this power mode is set and you plug in power via the 12V power input, Vizy will turn on by default without pressing the button. And if power is interrupted while Vizy is on, Vizy will reset, but remain on. If power is interrupted while Vizy is off, //Vizy will turn on//. Default disabled.<​HTML></​li></​HTML>​ +
-<​HTML><​li></​HTML>​DIPSWITCH_POWER_SWITCH,​ if this power mode is set and you plug in power via the 12V power input, Vizy will remain off (as in DIPSWITCH_POWER_DEFAULT_OFF mode), unless power was removed while Vizy was on. In this case Vizy will turn on when you (re)apply power. If power is interrupted while Vizy is off, Vizy will remain off. This behavior is similar to the behavior of a real power switch in that it retains the power “state” (on or off) and acts accordingly. Default disabled.<​HTML></​li></​HTML>​ +
-<​HTML><​li></​HTML>​DIPSWITCH_POWER_PLUG,​ if this power mode is set Vizy will remain powered on as long as it receives power through the 12V power plug, and you will not be able to turn off Vizy via button or software as long as it’s plugged in and receiving power. Default disabled.<​HTML></​li></​HTML><​HTML></​ul></​HTML>​+
  
 +[[wiki:​stage|stage]]
  
 +hello
 <​HTML>​ <​HTML>​
 <​!doctype html> <​!doctype html>
Line 72: Line 24:
 <link rel="​preload stylesheet"​ as="​style"​ href="​https://​cdnjs.cloudflare.com/​ajax/​libs/​10up-sanitize.css/​11.0.1/​typography.min.css"​ integrity="​sha256-7l/​o7C8jubJiy74VsKTidCy1yBkRtiUGbVkYBylBqUg="​ crossorigin>​ <link rel="​preload stylesheet"​ as="​style"​ href="​https://​cdnjs.cloudflare.com/​ajax/​libs/​10up-sanitize.css/​11.0.1/​typography.min.css"​ integrity="​sha256-7l/​o7C8jubJiy74VsKTidCy1yBkRtiUGbVkYBylBqUg="​ crossorigin>​
 <link rel="​stylesheet preload"​ as="​style"​ href="​https://​cdnjs.cloudflare.com/​ajax/​libs/​highlight.js/​10.1.1/​styles/​github.min.css"​ crossorigin>​ <link rel="​stylesheet preload"​ as="​style"​ href="​https://​cdnjs.cloudflare.com/​ajax/​libs/​highlight.js/​10.1.1/​styles/​github.min.css"​ crossorigin>​
-<​style>:​root{--highlight-color:#​fe9}.flex{display:​flex !important}body{line-height:​1.5em}#​content{padding:​20px}#​sidebar{padding:​30px;​overflow:​hidden}#​sidebar > *:​last-child{margin-bottom:​2cm}.http-server-breadcrumbs{font-size:​130%;​margin:​0 0 15px 0}#​footer{font-size:​.75em;​padding:​5px 30px;​border-top:​1px solid #​ddd;​text-align:​right}#​footer p{margin:0 0 0 1em;​display:​inline-block}#​footer p:​last-child{margin-right:​30px}h1,​h2,​h3,​h4,​h5{font-weight:​300}h1{font-size:​2.5em;​line-height:​1.1em}h2{font-size:​1.75em;​margin:​1em 0 .50em 0}h3{font-size:​1.4em;​margin:​25px 0 10px 0}h4{margin:​0;​font-size:​105%}h1:​target,​h2:​target,​h3:​target,​h4:​target,​h5:​target,​h6:​target{background:​var(--highlight-color);​padding:​.2em 0}a{color:#​058;​text-decoration:​none;​transition:​color .3s ease-in-out}a:​hover{color:#​e82}.title code{font-weight:​bold}h2[id^="​header-"​]{margin-top:​2em}.ident{color:#​900}pre code{background:#​f8f8f8;​font-size:​.8em;​line-height:​1.4em}code{background:#​f2f2f1;​padding:​1px 4px;​overflow-wrap:​break-word}h1 code{background:​transparent}pre{background:#​f8f8f8;​border:​0;​border-top:​1px solid #​ccc;​border-bottom:​1px solid #​ccc;​margin:​1em 0;​padding:​1ex}#​http-server-module-list{display:​flex;​flex-flow:​column}#​http-server-module-list div{display:​flex}#​http-server-module-list dt{min-width:​10%}#​http-server-module-list p{margin-top:​0}.toc ul,#​index{list-style-type:​none;​margin:​0;​padding:​0}#​index code{background:​transparent}#​index h3{border-bottom:​1px solid #ddd}#index ul{padding:​0}#​index h4{margin-top:​.6em;​font-weight:​bold}@media (min-width:​200ex){#​index .two-column{column-count:​2}}@media (min-width:​300ex){#​index .two-column{column-count:​3}}dl{margin-bottom:​2em}dl dl:​last-child{margin-bottom:​4em}dd{margin:​0 0 1em 3em}#​header-classes + dl > dd{margin-bottom:​3em}dd dd{margin-left:​2em}dd p{margin:​10px 0}.name{background:#​eee;​font-weight:​bold;​font-size:​.85em;​padding:​5px 10px;​display:​inline-block;​min-width:​40%}.name:​hover{background:#​e0e0e0}dt:​target .name{background:​var(--highlight-color)}.name > span:​first-child{white-space:​nowrap}.name.class > span:​nth-child(2){margin-left:​.4em}.inherited{color:#​999;​border-left:​5px solid #​eee;​padding-left:​1em}.inheritance em{font-style:​normal;​font-weight:​bold}.desc h2{font-weight:​400;​font-size:​1.25em}.desc h3{font-size:​1em}.desc dt code{background:​inherit}.source summary,​.git-link-div{color:#​666;​text-align:​right;​font-weight:​400;​font-size:​.8em;​text-transform:​uppercase}.source summary > *{white-space:​nowrap;​cursor:​pointer}.git-link{color:​inherit;​margin-left:​1em}.source pre{max-height:​500px;​overflow:​auto;​margin:​0}.source pre code{font-size:​12px;​overflow:​visible}.hlist{list-style:​none}.hlist li{display:​inline}.hlist li:​after{content:',​\2002'​}.hlist li:​last-child:​after{content:​none}.hlist .hlist{display:​inline;​padding-left:​1em}img{max-width:​100%}td{padding:​0 .5em}.admonition{padding:​.1em .5em;​margin-bottom:​1em}.admonition-title{font-weight:​bold}.admonition.note,​.admonition.info,​.admonition.important{background:#​aef}.admonition.todo,​.admonition.versionadded,​.admonition.tip,​.admonition.hint{background:#​dfd}.admonition.warning,​.admonition.versionchanged,​.admonition.deprecated{background:#​fd4}.admonition.error,​.admonition.danger,​.admonition.caution{background:​lightpink}</​style>​ +<​style>:​root{--highlight-color:#​fe9}.flex{display:​flex !important}body{line-height:​1.5em}#​content{padding:​10px}#​sidebar{padding:​15px;​overflow:​hidden}#​sidebar > *:​last-child{margin-bottom:​2cm}.http-server-breadcrumbs{font-size:​130%;​margin:​0 0 15px 0}#​footer{font-size:​.75em;​padding:​5px 30px;​border-top:​1px solid #​ddd;​text-align:​right}#​footer p{margin:0 0 0 1em;​display:​inline-block}#​footer p:​last-child{margin-right:​30px}h1,​h2,​h3,​h4,​h5{font-weight:​300}h1{font-size:​2.5em;​line-height:​1.1em}h2{font-size:​1.75em;​margin:​1em 0 .50em 0}h3{font-size:​1.4em;​margin:​25px 0 10px 0}h4{margin:​0;​font-size:​105%}h1:​target,​h2:​target,​h3:​target,​h4:​target,​h5:​target,​h6:​target{background:​var(--highlight-color);​padding:​.2em 0}a{color:#​058;​text-decoration:​none;​transition:​color .3s ease-in-out}a:​hover{color:#​e82}.title code{font-weight:​bold}h2[id^="​header-"​]{margin-top:​2em}.ident{color:#​900}pre code{background:#​f8f8f8;​font-size:​.8em;​line-height:​1.4em}code{background:#​f2f2f1;​padding:​1px 4px;​overflow-wrap:​break-word}h1 code{background:​transparent}pre{background:#​f8f8f8;​border:​0;​border-top:​1px solid #​ccc;​border-bottom:​1px solid #​ccc;​margin:​1em 0;​padding:​1ex}#​http-server-module-list{display:​flex;​flex-flow:​column}#​http-server-module-list div{display:​flex}#​http-server-module-list dt{min-width:​10%}#​http-server-module-list p{margin-top:​0}.toc ul,#​index{list-style-type:​none;​margin:​0;​padding:​0}#​index code{background:​transparent}#​index h3{border-bottom:​1px solid #ddd}#index ul{padding:​0}#​index h4{margin-top:​.6em;​font-weight:​bold}@media (min-width:​200ex){#​index .two-column{column-count:​2}}@media (min-width:​300ex){#​index .two-column{column-count:​3}}dl{margin-bottom:​2em}dl dl:​last-child{margin-bottom:​4em}dd{margin:​0 0 1em 3em}#​header-classes + dl > dd{margin-bottom:​3em}dd dd{margin-left:​2em}dd p{margin:​10px 0}.name{background:#​eee;​font-weight:​bold;​font-size:​.85em;​padding:​5px 10px;​display:​inline-block;​min-width:​40%}.name:​hover{background:#​e0e0e0}dt:​target .name{background:​var(--highlight-color)}.name > span:​first-child{white-space:​nowrap}.name.class > span:​nth-child(2){margin-left:​.4em}.inherited{color:#​999;​border-left:​5px solid #​eee;​padding-left:​1em}.inheritance em{font-style:​normal;​font-weight:​bold}.desc h2{font-weight:​400;​font-size:​1.25em}.desc h3{font-size:​1em}.desc dt code{background:​inherit}.source summary,​.git-link-div{color:#​666;​text-align:​right;​font-weight:​400;​font-size:​.8em;​text-transform:​uppercase}.source summary > *{white-space:​nowrap;​cursor:​pointer}.git-link{color:​inherit;​margin-left:​1em}.source pre{max-height:​500px;​overflow:​auto;​margin:​0}.source pre code{font-size:​12px;​overflow:​visible}.hlist{list-style:​none}.hlist li{display:​inline}.hlist li:​after{content:',​\2002'​}.hlist li:​last-child:​after{content:​none}.hlist .hlist{display:​inline;​padding-left:​1em}img{max-width:​100%}td{padding:​0 .5em}.admonition{padding:​.1em .5em;​margin-bottom:​1em}.admonition-title{font-weight:​bold}.admonition.note,​.admonition.info,​.admonition.important{background:#​aef}.admonition.todo,​.admonition.versionadded,​.admonition.tip,​.admonition.hint{background:#​dfd}.admonition.warning,​.admonition.versionchanged,​.admonition.deprecated{background:#​fd4}.admonition.error,​.admonition.danger,​.admonition.caution{background:​lightpink}</​style>​ 
-<style media="​screen and (min-width: 700px)">​@media screen and (min-width:​700px){#​sidebar{width:​30%;​height:​100vh;​overflow:​auto;​position:​sticky;​top:​0}#​content{width:​70%;​max-width:​100ch;​padding:​3em 4em;​border-left:​1px solid #ddd}pre code{font-size:​1em}.item .name{font-size:​1em}main{display:​flex;​flex-direction:​row-reverse;​justify-content:​flex-end}.toc ul ul,#index ul{padding-left:​1.5em}.toc > ul > li{margin-top:​.5em}}</​style>​+<style media="​screen and (min-width: 700px)">​@media screen and (min-width:​700px){#​sidebar{width:​35%;​position:​sticky;​top:​0}#​content{width:​70%;​max-width:​100ch;​padding:​3em 4em;​border-left:​1px solid #ddd}pre code{font-size:​1em}.item .name{font-size:​1em}main{display:​flex;​flex-direction:​row-reverse;​justify-content:​flex-end}.toc ul ul,#index ul{padding-left:​1.5em}.toc > ul > li{margin-top:​.5em}}</​style>​
 <style media="​print">​@media print{#​sidebar h1{page-break-before:​always}.source{display:​none}}@media print{*{background:​transparent !important;​color:#​000 !important;​box-shadow:​none !important;​text-shadow:​none !important}a[href]:​after{content:"​ (" attr(href) "​)";​font-size:​90%}a[href][title]:​after{content:​none}abbr[title]:​after{content:"​ (" attr(title) "​)"​}.ir a:​after,​a[href^="​javascript:"​]:​after,​a[href^="#"​]:​after{content:""​}pre,​blockquote{border:​1px solid #​999;​page-break-inside:​avoid}thead{display:​table-header-group}tr,​img{page-break-inside:​avoid}img{max-width:​100% !important}@page{margin:​0.5cm}p,​h2,​h3{orphans:​3;​widows:​3}h1,​h2,​h3,​h4,​h5,​h6{page-break-after:​avoid}}</​style>​ <style media="​print">​@media print{#​sidebar h1{page-break-before:​always}.source{display:​none}}@media print{*{background:​transparent !important;​color:#​000 !important;​box-shadow:​none !important;​text-shadow:​none !important}a[href]:​after{content:"​ (" attr(href) "​)";​font-size:​90%}a[href][title]:​after{content:​none}abbr[title]:​after{content:"​ (" attr(title) "​)"​}.ir a:​after,​a[href^="​javascript:"​]:​after,​a[href^="#"​]:​after{content:""​}pre,​blockquote{border:​1px solid #​999;​page-break-inside:​avoid}thead{display:​table-header-group}tr,​img{page-break-inside:​avoid}img{max-width:​100% !important}@page{margin:​0.5cm}p,​h2,​h3{orphans:​3;​widows:​3}h1,​h2,​h3,​h4,​h5,​h6{page-break-after:​avoid}}</​style>​
 <script defer src="​https://​cdnjs.cloudflare.com/​ajax/​libs/​highlight.js/​10.1.1/​highlight.min.js"​ integrity="​sha256-Uv3H6lx7dJmRfRvH8TH6kJD1TSK1aFcwgx+mdg3epi8="​ crossorigin></​script>​ <script defer src="​https://​cdnjs.cloudflare.com/​ajax/​libs/​highlight.js/​10.1.1/​highlight.min.js"​ integrity="​sha256-Uv3H6lx7dJmRfRvH8TH6kJD1TSK1aFcwgx+mdg3epi8="​ crossorigin></​script>​
Line 2679: Line 2631:
 </​html>​ </​html>​
 </​HTML>​ </​HTML>​
 +
wiki/test.1613244975.txt.gz · Last modified: 2021/02/13 13:36 by vizycam