[{"data":1,"prerenderedAt":988},["ShallowReactive",2],{"manifest":3,"hreflang-alternates":954,"blog-en-zero-crossing-switching-io-and-relay-modules":957},{"site":4,"branding":6,"contact":8,"organization_schema":10,"languages":54,"website":62,"docs":187,"blog":900},{"title":5},"Voldeno",{"logo":7,"company_name":5},"\u002Fimages\u002Flogo\u002Flogo_310.png",{"email":9},"contact@voldeno.com",{"schema_name":5,"legal_name":11,"founding_date":12,"tax_id":13,"identifiers":14,"address":21,"primary_email":9,"knows_about":26,"contact_points":39,"contact_point_available_languages":51},"Voldeno sp. z o.o.","2024","PL7252346262",[15,18],{"name":16,"value":17},"KRS","0001123648",{"name":19,"value":20},"REGON","52946949200000",{"street_address":22,"address_locality":23,"postal_code":24,"address_country":25},"Ogrodowa 8, Lobby B, 3p.","Łódź","91-062","PL",{"en":27,"pl":34},[28,29,30,31,32,33],"Smart Home","Smart Home Systems","Smart Home Automation","Building Automation","IoT","Home Automation System",[35,28,36,37,32,38],"Inteligentny dom","System Smart Home","Automatyka budynkowa","System automatyki domowej",[40,43,46,49],{"email":41,"contact_type":42},"support@voldeno.com","technical support",{"email":44,"contact_type":45},"sales@voldeno.com","sales",{"email":47,"contact_type":48},"partners@voldeno.com","partnerships",{"email":9,"contact_type":50},"customer service",[52,53],"Polish","English",[55,59],{"code":56,"name":57,"default":58},"pl","Polski",true,{"code":60,"name":53,"default":61},"en",false,{"enabled":58,"navigation":63,"path_keys":158,"section_index_slugs":180},{"en":64,"pl":117},[65,71,77,82,91,96,101,112],{"title":66,"slug":67,"path":68,"order":69,"template":70},"Voldeno: Smart Home, Building Automation","index","en\u002Findex",0,"home",{"title":72,"slug":73,"path":74,"order":75,"template":76},"Your Home","your-home","en\u002Fyour-home",1,"homeowners",{"title":78,"slug":79,"path":80,"order":81,"template":79},"For Professionals","professionals","en\u002Fprofessionals",2,{"title":83,"slug":84,"path":85,"order":86,"children":87},"Products","products","en\u002Fproducts",3,[88],{"title":89,"slug":67,"path":90,"order":75,"template":84},"Smart Home Products​ from Voldeno","en\u002Fproducts\u002Findex",{"title":92,"slug":93,"path":94,"order":95,"template":93},"Contact","contact","en\u002Fcontact",4,{"title":97,"slug":98,"path":99,"order":100,"template":98},"About Us","about","en\u002Fabout",5,{"title":102,"slug":103,"path":104,"order":105,"children":106},"Legal","legal","en\u002Flegal",6,[107],{"title":108,"slug":109,"path":110,"order":75,"template":111},"Privacy Policy","privacy-policy","en\u002Flegal\u002Fprivacy-policy","page",{"title":113,"slug":114,"path":115,"order":116},"Projects","projects","en\u002Fprojects",999,[118,121,125,129,137,141,145,154],{"title":119,"slug":67,"path":120,"order":69,"template":70},"Smart Home, Automatyka budynkowa - Voldeno","pl\u002Findex",{"title":122,"slug":123,"path":124,"order":75,"template":76},"Twój Dom","twoj-dom","pl\u002Ftwoj-dom",{"title":126,"slug":127,"path":128,"order":81,"template":79},"Dla Profesjonalistów","dla-profesjonalistow","pl\u002Fdla-profesjonalistow",{"title":130,"slug":131,"path":132,"order":86,"children":133},"Produkty","produkty","pl\u002Fprodukty",[134],{"title":135,"slug":67,"path":136,"order":75,"template":84},"Inteligentne produkty​ Smart Home Voldeno","pl\u002Fprodukty\u002Findex",{"title":138,"slug":139,"path":140,"order":95,"template":93},"Kontakt","kontakt","pl\u002Fkontakt",{"title":142,"slug":143,"path":144,"order":100,"template":98},"O nas","o-nas","pl\u002Fo-nas",{"title":146,"slug":147,"path":148,"order":105,"children":149},"Prawne","prawne","pl\u002Fprawne",[150],{"title":151,"slug":152,"path":153,"order":75,"template":111},"Polityka prywatności","polityka-prywatnosci","pl\u002Fprawne\u002Fpolityka-prywatnosci",{"title":155,"slug":156,"path":157,"order":116},"Realizacje","realizacje","pl\u002Frealizacje",{"module_io":159,"module_hub":162,"module_relay":165,"module_1wire":168,"module_analog_input":171,"privacy":174,"downloads":177},{"pl":160,"en":161},"produkty\u002Fio","products\u002Fio",{"en":163,"pl":164},"products\u002Fhub","produkty\u002Fhub",{"pl":166,"en":167},"produkty\u002Frelay","products\u002Frelay",{"pl":169,"en":170},"produkty\u002F1wire","products\u002F1wire",{"pl":172,"en":173},"produkty\u002Fanalog-input","products\u002Fanalog-input",{"pl":175,"en":176},"prawne\u002Fpolityka-prywatnosci","legal\u002Fprivacy-policy",{"pl":178,"en":179},"pobieranie","downloads",{"en":181,"pl":184},{"products":182,"projects":183},"products\u002Findex","projects\u002Findex",{"produkty":185,"realizacje":186},"produkty\u002Findex","realizacje\u002Findex",{"enabled":58,"navigation":188,"section_redirects":875},{"en":189,"pl":626},[190,207,232,245,562,576,589,611,621],{"title":191,"slug":192,"path":193,"order":75,"children":194},"Getting Started","getting-started","en\u002Fdocs\u002Fgetting-started",[195,199,203],{"title":196,"slug":197,"path":198,"order":75},"Core Concepts and Terminology","concepts","en\u002Fdocs\u002Fgetting-started\u002Fconcepts",{"title":200,"slug":201,"path":202,"order":81},"System Overview for Installers","system-overview","en\u002Fdocs\u002Fgetting-started\u002Fsystem-overview",{"title":204,"slug":205,"path":206,"order":86},"Volang and VolangVM: why a smart home needs its own automation language","volang-and-volangvm","en\u002Fdocs\u002Fgetting-started\u002Fvolang-and-volangvm",{"title":208,"slug":209,"path":210,"order":81,"children":211},"Modules & Peripherals","modules","en\u002Fdocs\u002Fmodules",[212,216,220,224,228],{"title":213,"slug":214,"path":215,"order":75},"Hub Module Wiring","hub-wiring","en\u002Fdocs\u002Fmodules\u002Fhub-wiring",{"title":217,"slug":218,"path":219,"order":81},"I\u002FO Module Wiring","io-wiring","en\u002Fdocs\u002Fmodules\u002Fio-wiring",{"title":221,"slug":222,"path":223,"order":86},"Relay Module Wiring","relay-wiring","en\u002Fdocs\u002Fmodules\u002Frelay-wiring",{"title":225,"slug":226,"path":227,"order":95},"1-Wire Module Wiring","1wire-wiring","en\u002Fdocs\u002Fmodules\u002F1wire-wiring",{"title":229,"slug":230,"path":231,"order":100},"Analog Input Module Wiring","analog-input-wiring","en\u002Fdocs\u002Fmodules\u002Fanalog-input-wiring",{"title":233,"slug":234,"path":235,"order":86,"children":236},"Wiring Guidelines","wiring","en\u002Fdocs\u002Fwiring",[237,241],{"title":238,"slug":239,"path":240,"order":75},"Bus Topology & Wiring","bus-topology","en\u002Fdocs\u002Fwiring\u002Fbus-topology",{"title":242,"slug":243,"path":244,"order":81},"Power Supply Sizing and Distribution","power-supply","en\u002Fdocs\u002Fwiring\u002Fpower-supply",{"title":246,"slug":247,"path":248,"order":95,"children":249},"Logic Blocks","logic-blocks","en\u002Fdocs\u002Flogic-blocks",[250,256,307,547],{"title":251,"slug":252,"path":253,"order":69,"template":254,"translation_key":255},"Overview","overview","en\u002Fdocs\u002Flogic-blocks\u002Foverview","logic-block-index","logic-blocks-overview",{"title":257,"slug":258,"path":259,"order":75,"children":260},"Input","input","en\u002Fdocs\u002Flogic-blocks\u002Finput",[261,267,272,277,282,287,292,297,302],{"title":262,"slug":263,"path":264,"order":69,"template":265,"translation_key":266},"Binary input","binary_input","en\u002Fdocs\u002Flogic-blocks\u002Finput\u002Fbinary_input","logic-block","logic-block-binary_input",{"title":268,"slug":269,"path":270,"order":69,"template":265,"translation_key":271},"Boolean constant","boolean_constant","en\u002Fdocs\u002Flogic-blocks\u002Finput\u002Fboolean_constant","logic-block-boolean_constant",{"title":273,"slug":274,"path":275,"order":69,"template":265,"translation_key":276},"Numeric constant","numeric_constant","en\u002Fdocs\u002Flogic-blocks\u002Finput\u002Fnumeric_constant","logic-block-numeric_constant",{"title":278,"slug":279,"path":280,"order":69,"template":265,"translation_key":281},"Numeric input","numeric_input","en\u002Fdocs\u002Flogic-blocks\u002Finput\u002Fnumeric_input","logic-block-numeric_input",{"title":283,"slug":284,"path":285,"order":69,"template":265,"translation_key":286},"Mode monitor","operation_mode_monitor","en\u002Fdocs\u002Flogic-blocks\u002Finput\u002Foperation_mode_monitor","logic-block-operation_mode_monitor",{"title":288,"slug":289,"path":290,"order":69,"template":265,"translation_key":291},"PulseAt","pulse_at","en\u002Fdocs\u002Flogic-blocks\u002Finput\u002Fpulse_at","logic-block-pulse_at",{"title":293,"slug":294,"path":295,"order":69,"template":265,"translation_key":296},"Schedule","schedule","en\u002Fdocs\u002Flogic-blocks\u002Finput\u002Fschedule","logic-block-schedule",{"title":298,"slug":299,"path":300,"order":69,"template":265,"translation_key":301},"String constant","string_constant","en\u002Fdocs\u002Flogic-blocks\u002Finput\u002Fstring_constant","logic-block-string_constant",{"title":303,"slug":304,"path":305,"order":69,"template":265,"translation_key":306},"Switch","switch","en\u002Fdocs\u002Flogic-blocks\u002Finput\u002Fswitch","logic-block-switch",{"title":308,"slug":309,"path":310,"order":81,"children":311},"Process","process","en\u002Fdocs\u002Flogic-blocks\u002Fprocess",[312,317,322,327,332,337,342,347,352,357,362,367,372,377,382,387,392,397,402,407,412,417,422,427,432,437,442,447,452,457,462,467,472,477,482,487,492,497,502,507,512,517,522,527,532,537,542],{"title":313,"slug":314,"path":315,"order":69,"template":265,"translation_key":316},"Binary limiter","binary_limiter","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fbinary_limiter","logic-block-binary_limiter",{"title":318,"slug":319,"path":320,"order":69,"template":265,"translation_key":321},"Boolean to string","boolean_to_string","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fboolean_to_string","logic-block-boolean_to_string",{"title":323,"slug":324,"path":325,"order":69,"template":265,"translation_key":326},"Climate regulator","climate_regulator","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fclimate_regulator","logic-block-climate_regulator",{"title":328,"slug":329,"path":330,"order":69,"template":265,"translation_key":331},"Climate regulator hub","climate_regulator_hub","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fclimate_regulator_hub","logic-block-climate_regulator_hub",{"title":333,"slug":334,"path":335,"order":69,"template":265,"translation_key":336},"Delay","delay","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fdelay","logic-block-delay",{"title":338,"slug":339,"path":340,"order":69,"template":265,"translation_key":341},"Delayed Pulse","delayed_pulse","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fdelayed_pulse","logic-block-delayed_pulse",{"title":343,"slug":344,"path":345,"order":69,"template":265,"translation_key":346},"Door, window","door_window_monitor","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fdoor_window_monitor","logic-block-door_window_monitor",{"title":348,"slug":349,"path":350,"order":69,"template":265,"translation_key":351},"Edge detector","edge_detector","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fedge_detector","logic-block-edge_detector",{"title":353,"slug":354,"path":355,"order":69,"template":265,"translation_key":356},"HTTP Request","http_request","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fhttp_request","logic-block-http_request",{"title":358,"slug":359,"path":360,"order":69,"template":265,"translation_key":361},"Hysteresis","hysteresis","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fhysteresis","logic-block-hysteresis",{"title":363,"slug":364,"path":365,"order":69,"template":265,"translation_key":366},"Irrigation","irrigation","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Firrigation","logic-block-irrigation",{"title":368,"slug":369,"path":370,"order":69,"template":265,"translation_key":371},"JSON Get Boolean","json_get_boolean","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fjson_get_boolean","logic-block-json_get_boolean",{"title":373,"slug":374,"path":375,"order":69,"template":265,"translation_key":376},"JSON Get Number","json_get_number","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fjson_get_number","logic-block-json_get_number",{"title":378,"slug":379,"path":380,"order":69,"template":265,"translation_key":381},"JSON Get String","json_get_string","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fjson_get_string","logic-block-json_get_string",{"title":383,"slug":384,"path":385,"order":69,"template":265,"translation_key":386},"Level to pulse","level_to_pulse","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Flevel_to_pulse","logic-block-level_to_pulse",{"title":388,"slug":389,"path":390,"order":69,"template":265,"translation_key":391},"Logic::And","logic_and","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Flogic_and","logic-block-logic_and",{"title":393,"slug":394,"path":395,"order":69,"template":265,"translation_key":396},"Logic::Not","logic_not","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Flogic_not","logic-block-logic_not",{"title":398,"slug":399,"path":400,"order":69,"template":265,"translation_key":401},"Logic::Or","logic_or","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Flogic_or","logic-block-logic_or",{"title":403,"slug":404,"path":405,"order":69,"template":265,"translation_key":406},"Math::Abs","math_abs","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fmath_abs","logic-block-math_abs",{"title":408,"slug":409,"path":410,"order":69,"template":265,"translation_key":411},"Math::Add","math_add","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fmath_add","logic-block-math_add",{"title":413,"slug":414,"path":415,"order":69,"template":265,"translation_key":416},"Math::Average","math_average","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fmath_average","logic-block-math_average",{"title":418,"slug":419,"path":420,"order":69,"template":265,"translation_key":421},"Math::Ceil","math_ceil","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fmath_ceil","logic-block-math_ceil",{"title":423,"slug":424,"path":425,"order":69,"template":265,"translation_key":426},"Math::Divide","math_divide","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fmath_divide","logic-block-math_divide",{"title":428,"slug":429,"path":430,"order":69,"template":265,"translation_key":431},"Math::Floor","math_floor","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fmath_floor","logic-block-math_floor",{"title":433,"slug":434,"path":435,"order":69,"template":265,"translation_key":436},"Math::Max","math_max","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fmath_max","logic-block-math_max",{"title":438,"slug":439,"path":440,"order":69,"template":265,"translation_key":441},"Math::Min","math_min","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fmath_min","logic-block-math_min",{"title":443,"slug":444,"path":445,"order":69,"template":265,"translation_key":446},"Math::Modulo","math_modulo","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fmath_modulo","logic-block-math_modulo",{"title":448,"slug":449,"path":450,"order":69,"template":265,"translation_key":451},"Math::Multiply","math_multiply","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fmath_multiply","logic-block-math_multiply",{"title":453,"slug":454,"path":455,"order":69,"template":265,"translation_key":456},"Math::Random","math_random","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fmath_random","logic-block-math_random",{"title":458,"slug":459,"path":460,"order":69,"template":265,"translation_key":461},"Math::Round","math_round","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fmath_round","logic-block-math_round",{"title":463,"slug":464,"path":465,"order":69,"template":265,"translation_key":466},"Math::Subtract","math_subtract","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fmath_subtract","logic-block-math_subtract",{"title":468,"slug":469,"path":470,"order":69,"template":265,"translation_key":471},"Motor axis","motor_axis","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fmotor_axis","logic-block-motor_axis",{"title":473,"slug":474,"path":475,"order":69,"template":265,"translation_key":476},"Moving average","moving_average","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fmoving_average","logic-block-moving_average",{"title":478,"slug":479,"path":480,"order":69,"template":265,"translation_key":481},"Number to string","number_to_string","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fnumber_to_string","logic-block-number_to_string",{"title":483,"slug":484,"path":485,"order":69,"template":265,"translation_key":486},"Numeric latch","numeric_latch","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fnumeric_latch","logic-block-numeric_latch",{"title":488,"slug":489,"path":490,"order":69,"template":265,"translation_key":491},"Numeric predicate","numeric_predicate","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fnumeric_predicate","logic-block-numeric_predicate",{"title":493,"slug":494,"path":495,"order":69,"template":265,"translation_key":496},"Numeric throttle","numeric_throttle","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fnumeric_throttle","logic-block-numeric_throttle",{"title":498,"slug":499,"path":500,"order":69,"template":265,"translation_key":501},"PubSub::Publish","pubsub","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fpubsub","logic-block-pubsub",{"title":503,"slug":504,"path":505,"order":69,"template":265,"translation_key":506},"Pulse counter","pulse_counter","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fpulse_counter","logic-block-pulse_counter",{"title":508,"slug":509,"path":510,"order":69,"template":265,"translation_key":511},"Pulse gate","pulse_gate","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fpulse_gate","logic-block-pulse_gate",{"title":513,"slug":514,"path":515,"order":69,"template":265,"translation_key":516},"Pulse throttle","pulse_throttle","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fpulse_throttle","logic-block-pulse_throttle",{"title":518,"slug":519,"path":520,"order":69,"template":265,"translation_key":521},"Sequencer","sequencer","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fsequencer","logic-block-sequencer",{"title":523,"slug":524,"path":525,"order":69,"template":265,"translation_key":526},"Shading","shading","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fshading","logic-block-shading",{"title":528,"slug":529,"path":530,"order":69,"template":265,"translation_key":531},"String format","string_format","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fstring_format","logic-block-string_format",{"title":533,"slug":534,"path":535,"order":69,"template":265,"translation_key":536},"String latch","string_latch","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fstring_latch","logic-block-string_latch",{"title":538,"slug":539,"path":540,"order":69,"template":265,"translation_key":541},"Toggle","toggle","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Ftoggle","logic-block-toggle",{"title":543,"slug":544,"path":545,"order":69,"template":265,"translation_key":546},"Variable Delayed Pulse","variable_delayed_pulse","en\u002Fdocs\u002Flogic-blocks\u002Fprocess\u002Fvariable_delayed_pulse","logic-block-variable_delayed_pulse",{"title":548,"slug":549,"path":550,"order":86,"children":551},"Output","output","en\u002Fdocs\u002Flogic-blocks\u002Foutput",[552,557],{"title":553,"slug":554,"path":555,"order":69,"template":265,"translation_key":556},"Mode controller","operation_mode_controller","en\u002Fdocs\u002Flogic-blocks\u002Foutput\u002Foperation_mode_controller","logic-block-operation_mode_controller",{"title":558,"slug":559,"path":560,"order":69,"template":265,"translation_key":561},"Relay","relay","en\u002Fdocs\u002Flogic-blocks\u002Foutput\u002Frelay","logic-block-relay",{"title":563,"slug":564,"path":565,"order":100,"children":566},"Volang Programming Language","volang","en\u002Fdocs\u002Fvolang",[567,571],{"title":568,"slug":569,"path":570,"order":75},"The Volang Language","language","en\u002Fdocs\u002Fvolang\u002Flanguage",{"title":572,"slug":573,"path":574,"order":81,"template":575},"Standard Library","stdlib","en\u002Fdocs\u002Fvolang\u002Fstdlib","api-reference",{"title":577,"slug":578,"path":579,"order":105,"children":580},"Software & Tools","software","en\u002Fdocs\u002Fsoftware",[581,585],{"title":582,"slug":583,"path":584,"order":75},"Voldeno Studio - Installation and Walkthrough","studio","en\u002Fdocs\u002Fsoftware\u002Fstudio",{"title":586,"slug":587,"path":588,"order":81},"Voldeno Studio - Schedules","schedules","en\u002Fdocs\u002Fsoftware\u002Fschedules",{"title":590,"slug":591,"path":592,"order":593,"children":594},"How-to Guides & Recipes","how-to","en\u002Fdocs\u002Fhow-to",7,[595,599,603,607],{"title":596,"slug":597,"path":598,"order":75},"What is a smart home and how does it work?","what-is-a-smart-home","en\u002Fdocs\u002Fhow-to\u002Fwhat-is-a-smart-home",{"title":600,"slug":601,"path":602,"order":81},"How to choose a smart home system: a practical guide","how-to-choose-a-smart-home-system","en\u002Fdocs\u002Fhow-to\u002Fhow-to-choose-a-smart-home-system",{"title":604,"slug":605,"path":606,"order":86},"How much does a smart home cost? Three Voldeno installation variants with modules and prices","how-much-does-a-smart-home-cost","en\u002Fdocs\u002Fhow-to\u002Fhow-much-does-a-smart-home-cost",{"title":608,"slug":609,"path":610,"order":95},"7 most common smart home design mistakes","smart-home-design-mistakes","en\u002Fdocs\u002Fhow-to\u002Fsmart-home-design-mistakes",{"title":612,"slug":613,"path":614,"order":615,"children":616},"Troubleshooting & Diagnostics","troubleshooting","en\u002Fdocs\u002Ftroubleshooting",8,[617],{"title":618,"slug":619,"path":620,"order":75},"Bus Communication Troubleshooting","bus-communication","en\u002Fdocs\u002Ftroubleshooting\u002Fbus-communication",{"title":622,"slug":623,"path":624,"order":625},"Frequently Asked Questions","faq","en\u002Fdocs\u002Ffaq",9,[627,644,669,682,819,831,842,863,872],{"title":628,"slug":629,"path":630,"order":75,"children":631},"Pierwsze kroki","pierwsze-kroki","pl\u002Fdocs\u002Fpierwsze-kroki",[632,636,640],{"title":633,"slug":634,"path":635,"order":75},"Podstawowe pojęcia i terminologia","pojecia","pl\u002Fdocs\u002Fpierwsze-kroki\u002Fpojecia",{"title":637,"slug":638,"path":639,"order":81},"Przegląd systemu dla instalatorów","przeglad-systemu","pl\u002Fdocs\u002Fpierwsze-kroki\u002Fprzeglad-systemu",{"title":641,"slug":642,"path":643,"order":86},"Volang i VolangVM: po co inteligentny dom potrzebuje własnego języka automatyki","volang-i-volangvm","pl\u002Fdocs\u002Fpierwsze-kroki\u002Fvolang-i-volangvm",{"title":645,"slug":646,"path":647,"order":81,"children":648},"Moduły i peryferia","moduly","pl\u002Fdocs\u002Fmoduly",[649,653,657,661,665],{"title":650,"slug":651,"path":652,"order":75},"Okablowanie modułu HUB","okablowanie-hub","pl\u002Fdocs\u002Fmoduly\u002Fokablowanie-hub",{"title":654,"slug":655,"path":656,"order":81},"Okablowanie modułu I\u002FO","okablowanie-io","pl\u002Fdocs\u002Fmoduly\u002Fokablowanie-io",{"title":658,"slug":659,"path":660,"order":86},"Okablowanie modułu RELAY","okablowanie-relay","pl\u002Fdocs\u002Fmoduly\u002Fokablowanie-relay",{"title":662,"slug":663,"path":664,"order":95},"Okablowanie modułu 1-Wire","okablowanie-1wire","pl\u002Fdocs\u002Fmoduly\u002Fokablowanie-1wire",{"title":666,"slug":667,"path":668,"order":100},"Okablowanie modułu Analog Input","okablowanie-analog-input","pl\u002Fdocs\u002Fmoduly\u002Fokablowanie-analog-input",{"title":670,"slug":671,"path":672,"order":86,"children":673},"Wytyczne okablowania","okablowanie","pl\u002Fdocs\u002Fokablowanie",[674,678],{"title":675,"slug":676,"path":677,"order":75},"Topologia i okablowanie magistrali","topologia-magistrali","pl\u002Fdocs\u002Fokablowanie\u002Ftopologia-magistrali",{"title":679,"slug":680,"path":681,"order":81},"Dobór i dystrybucja zasilania","zasilanie","pl\u002Fdocs\u002Fokablowanie\u002Fzasilanie",{"title":683,"slug":684,"path":685,"order":95,"children":686},"Bloki logiczne","bloki-logiczne","pl\u002Fdocs\u002Fbloki-logiczne",[687,691,713,811],{"title":688,"slug":689,"path":690,"order":69,"template":254,"translation_key":255},"Przegląd","przeglad","pl\u002Fdocs\u002Fbloki-logiczne\u002Fprzeglad",{"title":692,"slug":258,"path":693,"order":75,"children":694},"Wejścia","pl\u002Fdocs\u002Fbloki-logiczne\u002Finput",[695,697,699,701,703,705,707,709,711],{"title":262,"slug":263,"path":696,"order":69,"template":265,"translation_key":266},"pl\u002Fdocs\u002Fbloki-logiczne\u002Finput\u002Fbinary_input",{"title":268,"slug":269,"path":698,"order":69,"template":265,"translation_key":271},"pl\u002Fdocs\u002Fbloki-logiczne\u002Finput\u002Fboolean_constant",{"title":273,"slug":274,"path":700,"order":69,"template":265,"translation_key":276},"pl\u002Fdocs\u002Fbloki-logiczne\u002Finput\u002Fnumeric_constant",{"title":278,"slug":279,"path":702,"order":69,"template":265,"translation_key":281},"pl\u002Fdocs\u002Fbloki-logiczne\u002Finput\u002Fnumeric_input",{"title":283,"slug":284,"path":704,"order":69,"template":265,"translation_key":286},"pl\u002Fdocs\u002Fbloki-logiczne\u002Finput\u002Foperation_mode_monitor",{"title":288,"slug":289,"path":706,"order":69,"template":265,"translation_key":291},"pl\u002Fdocs\u002Fbloki-logiczne\u002Finput\u002Fpulse_at",{"title":293,"slug":294,"path":708,"order":69,"template":265,"translation_key":296},"pl\u002Fdocs\u002Fbloki-logiczne\u002Finput\u002Fschedule",{"title":298,"slug":299,"path":710,"order":69,"template":265,"translation_key":301},"pl\u002Fdocs\u002Fbloki-logiczne\u002Finput\u002Fstring_constant",{"title":303,"slug":304,"path":712,"order":69,"template":265,"translation_key":306},"pl\u002Fdocs\u002Fbloki-logiczne\u002Finput\u002Fswitch",{"title":714,"slug":309,"path":715,"order":81,"children":716},"Przetwarzanie","pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess",[717,719,721,723,725,727,729,731,733,735,737,739,741,743,745,747,749,751,753,755,757,759,761,763,765,767,769,771,773,775,777,779,781,783,785,787,789,791,793,795,797,799,801,803,805,807,809],{"title":313,"slug":314,"path":718,"order":69,"template":265,"translation_key":316},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fbinary_limiter",{"title":318,"slug":319,"path":720,"order":69,"template":265,"translation_key":321},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fboolean_to_string",{"title":323,"slug":324,"path":722,"order":69,"template":265,"translation_key":326},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fclimate_regulator",{"title":328,"slug":329,"path":724,"order":69,"template":265,"translation_key":331},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fclimate_regulator_hub",{"title":333,"slug":334,"path":726,"order":69,"template":265,"translation_key":336},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fdelay",{"title":338,"slug":339,"path":728,"order":69,"template":265,"translation_key":341},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fdelayed_pulse",{"title":343,"slug":344,"path":730,"order":69,"template":265,"translation_key":346},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fdoor_window_monitor",{"title":348,"slug":349,"path":732,"order":69,"template":265,"translation_key":351},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fedge_detector",{"title":353,"slug":354,"path":734,"order":69,"template":265,"translation_key":356},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fhttp_request",{"title":358,"slug":359,"path":736,"order":69,"template":265,"translation_key":361},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fhysteresis",{"title":363,"slug":364,"path":738,"order":69,"template":265,"translation_key":366},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Firrigation",{"title":368,"slug":369,"path":740,"order":69,"template":265,"translation_key":371},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fjson_get_boolean",{"title":373,"slug":374,"path":742,"order":69,"template":265,"translation_key":376},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fjson_get_number",{"title":378,"slug":379,"path":744,"order":69,"template":265,"translation_key":381},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fjson_get_string",{"title":383,"slug":384,"path":746,"order":69,"template":265,"translation_key":386},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Flevel_to_pulse",{"title":388,"slug":389,"path":748,"order":69,"template":265,"translation_key":391},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Flogic_and",{"title":393,"slug":394,"path":750,"order":69,"template":265,"translation_key":396},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Flogic_not",{"title":398,"slug":399,"path":752,"order":69,"template":265,"translation_key":401},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Flogic_or",{"title":403,"slug":404,"path":754,"order":69,"template":265,"translation_key":406},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fmath_abs",{"title":408,"slug":409,"path":756,"order":69,"template":265,"translation_key":411},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fmath_add",{"title":413,"slug":414,"path":758,"order":69,"template":265,"translation_key":416},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fmath_average",{"title":418,"slug":419,"path":760,"order":69,"template":265,"translation_key":421},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fmath_ceil",{"title":423,"slug":424,"path":762,"order":69,"template":265,"translation_key":426},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fmath_divide",{"title":428,"slug":429,"path":764,"order":69,"template":265,"translation_key":431},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fmath_floor",{"title":433,"slug":434,"path":766,"order":69,"template":265,"translation_key":436},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fmath_max",{"title":438,"slug":439,"path":768,"order":69,"template":265,"translation_key":441},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fmath_min",{"title":443,"slug":444,"path":770,"order":69,"template":265,"translation_key":446},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fmath_modulo",{"title":448,"slug":449,"path":772,"order":69,"template":265,"translation_key":451},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fmath_multiply",{"title":453,"slug":454,"path":774,"order":69,"template":265,"translation_key":456},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fmath_random",{"title":458,"slug":459,"path":776,"order":69,"template":265,"translation_key":461},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fmath_round",{"title":463,"slug":464,"path":778,"order":69,"template":265,"translation_key":466},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fmath_subtract",{"title":468,"slug":469,"path":780,"order":69,"template":265,"translation_key":471},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fmotor_axis",{"title":473,"slug":474,"path":782,"order":69,"template":265,"translation_key":476},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fmoving_average",{"title":478,"slug":479,"path":784,"order":69,"template":265,"translation_key":481},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fnumber_to_string",{"title":483,"slug":484,"path":786,"order":69,"template":265,"translation_key":486},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fnumeric_latch",{"title":488,"slug":489,"path":788,"order":69,"template":265,"translation_key":491},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fnumeric_predicate",{"title":493,"slug":494,"path":790,"order":69,"template":265,"translation_key":496},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fnumeric_throttle",{"title":498,"slug":499,"path":792,"order":69,"template":265,"translation_key":501},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fpubsub",{"title":503,"slug":504,"path":794,"order":69,"template":265,"translation_key":506},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fpulse_counter",{"title":508,"slug":509,"path":796,"order":69,"template":265,"translation_key":511},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fpulse_gate",{"title":513,"slug":514,"path":798,"order":69,"template":265,"translation_key":516},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fpulse_throttle",{"title":518,"slug":519,"path":800,"order":69,"template":265,"translation_key":521},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fsequencer",{"title":523,"slug":524,"path":802,"order":69,"template":265,"translation_key":526},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fshading",{"title":528,"slug":529,"path":804,"order":69,"template":265,"translation_key":531},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fstring_format",{"title":533,"slug":534,"path":806,"order":69,"template":265,"translation_key":536},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fstring_latch",{"title":538,"slug":539,"path":808,"order":69,"template":265,"translation_key":541},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Ftoggle",{"title":543,"slug":544,"path":810,"order":69,"template":265,"translation_key":546},"pl\u002Fdocs\u002Fbloki-logiczne\u002Fprocess\u002Fvariable_delayed_pulse",{"title":812,"slug":549,"path":813,"order":86,"children":814},"Wyjścia","pl\u002Fdocs\u002Fbloki-logiczne\u002Foutput",[815,817],{"title":553,"slug":554,"path":816,"order":69,"template":265,"translation_key":556},"pl\u002Fdocs\u002Fbloki-logiczne\u002Foutput\u002Foperation_mode_controller",{"title":558,"slug":559,"path":818,"order":69,"template":265,"translation_key":561},"pl\u002Fdocs\u002Fbloki-logiczne\u002Foutput\u002Frelay",{"title":820,"slug":564,"path":821,"order":100,"children":822},"Język programowania Volang","pl\u002Fdocs\u002Fvolang",[823,827],{"title":824,"slug":825,"path":826,"order":75},"Język Volang","jezyk","pl\u002Fdocs\u002Fvolang\u002Fjezyk",{"title":828,"slug":829,"path":830,"order":81,"template":575},"Biblioteka standardowa","biblioteka-standardowa","pl\u002Fdocs\u002Fvolang\u002Fbiblioteka-standardowa",{"title":832,"slug":833,"path":834,"order":105,"children":835},"Oprogramowanie","oprogramowanie","pl\u002Fdocs\u002Foprogramowanie",[836,839],{"title":837,"slug":583,"path":838,"order":75},"Voldeno Studio - Instalacja i przewodnik","pl\u002Fdocs\u002Foprogramowanie\u002Fstudio",{"title":840,"slug":587,"path":841,"order":81},"Voldeno Studio - Harmonogramy","pl\u002Fdocs\u002Foprogramowanie\u002Fschedules",{"title":843,"slug":844,"path":845,"order":593,"children":846},"Poradniki","poradniki","pl\u002Fdocs\u002Fporadniki",[847,851,855,859],{"title":848,"slug":849,"path":850,"order":75},"Czym jest smart home i jak działa?","czym-jest-smart-home","pl\u002Fdocs\u002Fporadniki\u002Fczym-jest-smart-home",{"title":852,"slug":853,"path":854,"order":81},"Jaki system smart home wybrać? Praktyczny przewodnik","jaki-system-smart-home-wybrac","pl\u002Fdocs\u002Fporadniki\u002Fjaki-system-smart-home-wybrac",{"title":856,"slug":857,"path":858,"order":86},"Ile kosztuje inteligentny dom? Trzy warianty instalacji Voldeno z modułami i cenami","ile-kosztuje-inteligentny-dom","pl\u002Fdocs\u002Fporadniki\u002File-kosztuje-inteligentny-dom",{"title":860,"slug":861,"path":862,"order":95},"7 najczęstszych błędów przy projektowaniu instalacji smart home","bledy-przy-projektowaniu-smart-home","pl\u002Fdocs\u002Fporadniki\u002Fbledy-przy-projektowaniu-smart-home",{"title":864,"slug":865,"path":866,"order":615,"children":867},"Diagnostyka i rozwiązywanie problemów","diagnostyka","pl\u002Fdocs\u002Fdiagnostyka",[868],{"title":869,"slug":870,"path":871,"order":75},"Rozwiązywanie problemów z komunikacją magistrali","komunikacja-magistrali","pl\u002Fdocs\u002Fdiagnostyka\u002Fkomunikacja-magistrali",{"title":873,"slug":623,"path":874,"order":625},"Często zadawane pytania","pl\u002Fdocs\u002Ffaq",{"en":876,"pl":888},{"software":877,"how-to":878,"wiring":879,"logic-blocks":880,"modules":881,"getting-started":882,"logic-blocks\u002Finput":883,"logic-blocks\u002Foutput":884,"volang":885,"troubleshooting":886,"logic-blocks\u002Fprocess":887},"software\u002Fstudio","how-to\u002Fwhat-is-a-smart-home","wiring\u002Fbus-topology","logic-blocks\u002Foverview","modules\u002Fhub-wiring","getting-started\u002Fconcepts","logic-blocks\u002Finput\u002Fbinary_input","logic-blocks\u002Foutput\u002Foperation_mode_controller","volang\u002Flanguage","troubleshooting\u002Fbus-communication","logic-blocks\u002Fprocess\u002Fbinary_limiter",{"bloki-logiczne\u002Finput":889,"volang":890,"moduly":891,"bloki-logiczne\u002Foutput":892,"poradniki":893,"pierwsze-kroki":894,"okablowanie":895,"oprogramowanie":896,"bloki-logiczne\u002Fprocess":897,"bloki-logiczne":898,"diagnostyka":899},"bloki-logiczne\u002Finput\u002Fbinary_input","volang\u002Fjezyk","moduly\u002Fokablowanie-hub","bloki-logiczne\u002Foutput\u002Foperation_mode_controller","poradniki\u002Fczym-jest-smart-home","pierwsze-kroki\u002Fpojecia","okablowanie\u002Ftopologia-magistrali","oprogramowanie\u002Fstudio","bloki-logiczne\u002Fprocess\u002Fbinary_limiter","bloki-logiczne\u002Fprzeglad","diagnostyka\u002Fkomunikacja-magistrali",{"enabled":58,"navigation":901},{"en":902,"pl":933},[903,909,915,921,927],{"title":904,"slug":905,"path":906,"order":69,"date":907,"translation_key":908},"Zero-crossing switching: how the I\u002FO and RELAY modules extend relay contact life","zero-crossing-switching-io-and-relay-modules","en\u002Fblog\u002Fzero-crossing-switching-io-and-relay-modules","2026-06-11","2026_06_11_zero_crossing_switching",{"title":910,"slug":911,"path":912,"order":69,"date":913,"translation_key":914},"Voldeno powered the Fischertechnik factory demo at Google Cloud Next '26","voldeno-at-google-cloud-next-26","en\u002Fblog\u002Fvoldeno-at-google-cloud-next-26","2026-04-28","2026_04_28_voldeno_at_google_cloud_next_26",{"title":916,"slug":917,"path":918,"order":69,"date":919,"translation_key":920},"We are ready! Hundreds of Voldeno modules prepared for smart home deployment.","we-are-ready","en\u002Fblog\u002Fwe-are-ready","2025-08-17","2025_08_17_we_are_ready",{"title":922,"slug":923,"path":924,"order":69,"date":925,"translation_key":926},"New Voldeno 1-Wire Temperature Sensor - Compact, Reliable, and Built for Large-Scale Installations","new-voldeno-1-wire-temperature-sensor-compact-reliable-and-built-for-large-scale-installations","en\u002Fblog\u002Fnew-voldeno-1-wire-temperature-sensor-compact-reliable-and-built-for-large-scale-installations","2025-04-25","2025_04_25_new_voldeno_1wire_temperature_sensor",{"title":928,"slug":929,"path":930,"order":69,"date":931,"translation_key":932},"Discover the Future of Smart Homes with Voldeno","future_of_smart_homes","en\u002Fblog\u002Ffuture_of_smart_homes","2024-10-18","2024_10_18_future_of_smart_homes",[934,939,942,946,950],{"title":935,"slug":936,"path":937,"order":69,"date":907,"translation_key":938},"Przełączanie w zerze napięcia: jak moduły I\u002FO i RELAY wydłużają życie styków przekaźników","przelaczanie-w-zerze-napiecia-moduly-io-i-relay","pl\u002Fblog\u002Fprzelaczanie-w-zerze-napiecia-moduly-io-i-relay","2026_06_11_przelaczanie_w_zerze_napiecia",{"title":940,"slug":911,"path":941,"order":69,"date":913,"translation_key":914},"System Voldeno napędził demo fabryki Fischertechnik na Google Cloud Next '26","pl\u002Fblog\u002Fvoldeno-at-google-cloud-next-26",{"title":943,"slug":944,"path":945,"order":69,"date":919,"translation_key":920},"Jesteśmy gotowi! Setki modułów Voldeno przygotowanych do wdrożenia w inteligentnych domach.","jestesmy-gotowi-setki-modulow-voldeno-przygotowanych-do-wdrozenia-w-inteligentnych-domach","pl\u002Fblog\u002Fjestesmy-gotowi-setki-modulow-voldeno-przygotowanych-do-wdrozenia-w-inteligentnych-domach",{"title":947,"slug":948,"path":949,"order":69,"date":925,"translation_key":926},"Nowy czujnik temperatury Voldeno 1-Wire - kompaktowy, niezawodny i stworzony do dużych instalacji","nowy-czujnik-temperatury-1-wire-voldeno-kompaktowy-niezawodny-i-zaprojektowany-do-instalacji-na-duza-skale","pl\u002Fblog\u002Fnowy-czujnik-temperatury-1-wire-voldeno-kompaktowy-niezawodny-i-zaprojektowany-do-instalacji-na-duza-skale",{"title":951,"slug":952,"path":953,"order":69,"date":931,"translation_key":932},"Odkryj przyszłość inteligentnych domów z Voldeno","odkryj-przyszlosc-inteligentnych-domow-z-voldeno","pl\u002Fblog\u002Fodkryj-przyszlosc-inteligentnych-domow-z-voldeno",{"pl":955,"en":956,"xDefault":955},"https:\u002F\u002Fvoldeno.com\u002Fpl\u002Fblog\u002Fprzelaczanie-w-zerze-napiecia-moduly-io-i-relay","https:\u002F\u002Fvoldeno.com\u002Fen\u002Fblog\u002Fzero-crossing-switching-io-and-relay-modules",{"slug":905,"title":904,"description":958,"tags":959,"content_html":963,"headings":964,"extra":985,"date":907,"author":986,"cover_image":987,"reading_time":593},"Every AC output in the Voldeno I\u002FO and RELAY modules switches at the voltage zero crossing. A dedicated ADC circuit tracks the mains sine wave and the module firmware computes the exact switching moment. Less arcing, smaller current surges, longer contact life.",[960,961,962],"news","voldeno","home automation","\u003Ch1 id=\"zero-crossing-switching-how-the-i-o-and-relay-modules-extend-relay-contact-life\">\u003Ca href=\"#zero-crossing-switching-how-the-i-o-and-relay-modules-extend-relay-contact-life\" class=\"anchor\">#\u003C\u002Fa> Zero-crossing switching: how the I\u002FO and RELAY modules extend relay contact life\u003C\u002Fh1>\u003Cimg src=\"\u002Fimages\u002Fblog\u002Fzero_crossing\u002Fcover.webp\" alt=\"Mains voltage sine wave with a highlighted zero crossing next to a Voldeno DIN rail module\" class=\"img-large\" \u002F>\n\u003Cp>Every relay channel in the \u003Ca href=\"\u002Fen\u002Fproducts\u002Fio\">I\u002FO\u003C\u002Fa> and \u003Ca href=\"\u002Fen\u002Fproducts\u002Frelay\">RELAY\u003C\u002Fa> modules has its own tracking circuit on the switched line. A dedicated ADC monitors the shape of the mains sine wave, and the module firmware detects zero crossings and uses them to compute the exact moment the relay should operate. The result: for AC loads, the contacts close and open at a voltage near 0 V instead of at a random point of the sine wave. This is zero-crossing switching, known from industrial SSR relays, implemented in software on standard electromagnetic relays.\u003C\u002Fp>\n\u003Cp>The feature is invisible on a product photo, yet it largely determines the service life of an output driving a heater or an LED lighting section: whether the relay runs reliably for years or ends up with welded contacts after a year or two.\u003C\u002Fp>\n\u003Ch2 id=\"what-destroys-relay-contacts\">\u003Ca href=\"#what-destroys-relay-contacts\" class=\"anchor\">#\u003C\u002Fa> What destroys relay contacts\u003C\u002Fh2>\n\u003Cp>In building installations, mechanical wear is rarely what limits relay life. The dominant degradation mechanisms are two commutation phenomena.\u003C\u002Fp>\n\u003Cp>The first is inrush current at turn-on. A cold heating element, an incandescent lamp, or an LED driver with capacitors at its input can draw a current many times the rated value during the first milliseconds. If the contacts close near the peak of the sine wave (325 V on a 230 V AC line), the full surge hits them at once.\u003C\u002Fp>\n\u003Cp>The second is the electric arc at turn-off. Breaking a circuit at full voltage causes arcing between the separating contacts. Each arc melts a small amount of the contact surface. Over time the contact resistance rises, the contact heats up further, and eventually it welds shut or stops conducting.\u003C\u002Fp>\n\u003Cimg src=\"\u002Fimages\u002Fblog\u002Fzero_crossing\u002Frandom_vs_zero_crossing_en.webp\" alt=\"Comparison of switching at a random phase of the sine wave with switching at the voltage zero crossing\" class=\"img-large\" \u002F>\n\u003Cp>A conventional relay driven from a binary output knows nothing about the mains phase. The moment the contacts close relative to the sine wave is random, so statistically a share of all switching events always lands near the voltage peak.\u003C\u002Fp>\n\u003Ch2 id=\"what-zero-crossing-switching-is\">\u003Ca href=\"#what-zero-crossing-switching-is\" class=\"anchor\">#\u003C\u002Fa> What zero-crossing switching is\u003C\u002Fh2>\n\u003Cp>Zero-crossing switching is a technique in which the relay contacts close or open exactly when the voltage sine wave passes through 0 V. The voltage across the load then rises gradually from zero instead of appearing at full value in a single step, and at turn-off there are no conditions for drawing an arc.\u003C\u002Fp>\n\u003Cp>The benefits are well documented in industrial automation: contacts protected from inrush currents, no arc at disconnection, lower EMC emissions, and a clearly higher permissible load power for the physically identical relay.\u003C\u002Fp>\n\u003Cp>This function is usually implemented as dedicated hardware: a special relay with a synchronization circuit, or a solid-state relay with zero-cross detection. At Voldeno we took a different route.\u003C\u002Fp>\n\u003Ch2 id=\"how-voldeno-implements-it-in-software\">\u003Ca href=\"#how-voldeno-implements-it-in-software\" class=\"anchor\">#\u003C\u002Fa> How Voldeno implements it in software\u003C\u002Fh2>\n\u003Cp>In the I\u002FO and RELAY modules, zero-crossing switching runs in software, on standard electromagnetic relays. Three elements make it work:\u003C\u002Fp>\n\u003Col>\n\u003Cli>\u003Cstrong>Voltage tracking circuit.\u003C\u002Fstrong> A dedicated measurement path with an ADC monitors the voltage waveform of the switched line and feeds its shape to the module's processor.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Zero-crossing detection.\u003C\u002Fstrong> The firmware detects every zero crossing in the sampled waveform and continuously measures the mains period.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Prediction and lead time.\u003C\u002Fstrong> When the installation logic requests a channel to switch on or off, the module computes when the next suitable zero crossing will occur and drives the relay coil early, by exactly the contact operate time. The contacts close right at the zero.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cimg src=\"\u002Fimages\u002Fblog\u002Fzero_crossing\u002Fsoftware_zero_crossing_timing_en.webp\" alt=\"Timing of software zero-crossing switching: ADC samples, detected zero, computed next zero, and the coil pulse with lead time\" class=\"img-large\" \u002F>\n\u003Cp>The lead time is the critical part. An electromagnetic relay does not act instantly: several milliseconds pass between the coil pulse and the physical closing of the contacts. The module accounts for this delay, so the coil receives its signal early and the contacts reach the closed position exactly as the voltage passes through zero.\u003C\u002Fp>\n\u003Cimg src=\"\u002Fimages\u002Fblog\u002Fzero_crossing\u002Ftracking_circuit_block_diagram_en.webp\" alt=\"Block diagram: mains voltage, ADC tracking circuit, zero-crossing detection, prediction, and relay contacts closed at zero\" class=\"img-large\" \u002F>\n\u003Cp>The whole process runs locally in the module, independently for each channel, with no extra wiring and with no involvement of the Hub in the switching timing itself.\u003C\u002Fp>\n\u003Cdiv class=\"callout callout-note\">\n\u003Cdiv class=\"callout-title\">\u003Cspan class=\"callout-icon\">\u003Csvg xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\u003Cpath d=\"M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z\"\u002F>\u003Cpolyline points=\"14 2 14 8 20 8\"\u002F>\u003Cline x1=\"16\" y1=\"13\" x2=\"8\" y2=\"13\"\u002F>\u003Cline x1=\"16\" y1=\"17\" x2=\"8\" y2=\"17\"\u002F>\u003Cline x1=\"10\" y1=\"9\" x2=\"8\" y2=\"9\"\u002F>\u003C\u002Fsvg>\u003C\u002Fspan>\u003Cspan>Note\u003C\u002Fspan>\u003C\u002Fdiv>\n\u003Cdiv class=\"callout-content\">\n\u003Cp>Zero-crossing switching applies to AC loads only. With 24 V DC loads the outputs behave as conventional relays. For strongly inductive loads, the load categories and current limits from the module datasheets still apply, because the current there is phase-shifted relative to the voltage.\u003C\u002Fp>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003Ch2 id=\"what-contact-degradation-looks-like-photos-from-our-tests\">\u003Ca href=\"#what-contact-degradation-looks-like-photos-from-our-tests\" class=\"anchor\">#\u003C\u002Fa> What contact degradation looks like: photos from our tests\u003C\u002Fh2>\n\u003Cp>Before selecting relays for the I\u002FO and RELAY modules, we ran a series of inrush current endurance tests. Candidate relays switched loads with high inrush currents, and after the test cycles we cut their housings open and inspected the contact surfaces under a microscope.\u003C\u002Fp>\n\u003Cdiv class=\"image-grid\">\n  \u003Cimg src=\"\u002Fimages\u002Fblog\u002Fzero_crossing\u002Frelay_cross_section.webp\" alt=\"Cross-section of a test relay with the contact assembly visible\" \u002F>\n  \u003Cimg src=\"\u002Fimages\u002Fblog\u002Fzero_crossing\u002Frelay_cross_section_worn.webp\" alt=\"Cross-section of a relay after test cycles with a discolored contact assembly\" \u002F>\n\u003C\u002Fdiv>\n\u003Cp>The differences between units were clear. Contacts poorly matched to the load characteristics, or switched at a random phase of the sine wave, showed severe surface degradation: melted spots, craters, and deposits left by arc discharges.\u003C\u002Fp>\n\u003Cimg src=\"\u002Fimages\u002Fblog\u002Fzero_crossing\u002Fcontacts_degraded.webp\" alt=\"Severely degraded relay contact surfaces after inrush current tests\" class=\"img-large\" \u002F>\n\u003Cp>The comparison below shows the difference directly: on the left, a contact with a surface destroyed by arcing; on the right, a contact with a smooth, even surface after a comparable number of cycles under gentler commutation conditions.\u003C\u002Fp>\n\u003Cimg src=\"\u002Fimages\u002Fblog\u002Fzero_crossing\u002Fcontacts_comparison.webp\" alt=\"Comparison of a degraded and a healthy relay contact surface\" class=\"img-large\" \u002F>\n\u003Cp>The test conclusions fed directly into the module design. First, we selected relays with contacts rated for high inrush currents (up to 80 A for 20 ms per contact in the RELAY module). Second, every AC channel switches at the voltage zero. The combination keeps contact erosion to a minimum and significantly extends contact life.\u003C\u002Fp>\n\u003Ch2 id=\"what-the-user-gains\">\u003Ca href=\"#what-the-user-gains\" class=\"anchor\">#\u003C\u002Fa> What the user gains\u003C\u002Fh2>\n\u003Cp>In short: the same relay survives far more cycles with demanding loads. In practice this translates into a few concrete outcomes.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Longer installation life.\u003C\u002Fstrong> Electric heating controlled by a thermostat performs hundreds, and in intensive scenarios up to a few thousand, switching cycles per year, all under full load. Switching at the zero crossing removes the surge from every one of those cycles, so the contacts degrade many times slower. The RELAY module switches circuits up to 16 A (category AC1) and is intended precisely for heaters, heating mats, and socket circuits.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Safe control of LED lighting.\u003C\u002Fstrong> LED drivers have a capacitive input and high inrush currents. They are the most common cause of welded contacts in conventional installations. Switching at the zero limits the capacitor charging current to a gradual rise along the sine wave.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Less interference on the line.\u003C\u002Fstrong> Commutation at zero voltage produces no steep di\u002Fdt edges, so the installation receives no impulses that could disturb electronics in other circuits.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Fewer service visits.\u003C\u002Fstrong> A welded relay in a distribution board means calling the installer and replacing the module. Removing the main wear mechanism reduces the number of such interventions. In addition, both modules measure output current (RELAY per channel, I\u002FO per group of four relays), so unusual consumption is visible in Voldeno Mobile before a failure occurs.\u003C\u002Fp>\n\u003Cp>From the installer's perspective, nothing changes in how a project is designed: the same DIN rail modules, the same configuration in Voldeno Studio, the same \u003Ca href=\"\u002Fen\u002Fdocs\u002Fwiring\u002Fbus-topology\">Voldeno Bus\u003C\u002Fa>. Zero-crossing switching simply works in the background, on every cycle of every AC output.\u003C\u002Fp>\n\u003Ch2 id=\"further-reading\">\u003Ca href=\"#further-reading\" class=\"anchor\">#\u003C\u002Fa> Further reading\u003C\u002Fh2>\n\u003Cul>\n\u003Cli>Modules with zero-crossing switching: \u003Ca href=\"\u002Fen\u002Fproducts\u002Frelay\">RELAY\u003C\u002Fa>, \u003Ca href=\"\u002Fen\u002Fproducts\u002Fio\">I\u002FO\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"\u002Fen\u002Fdocs\u002Fwiring\u002Fbus-topology\">Bus topology and wiring\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"\u002Fen\u002Fdocs\u002Fgetting-started\u002Fsystem-overview\">Voldeno system overview\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"\u002Fen\u002Fdocs\u002Fmodules\u002Frelay-wiring\">RELAY module wiring documentation\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n",[965,967,970,973,976,979,982],{"level":75,"text":904,"id":966},"zero-crossing-switching-how-the-i-o-and-relay-modules-extend-relay-contact-life",{"level":81,"text":968,"id":969},"What destroys relay contacts","what-destroys-relay-contacts",{"level":81,"text":971,"id":972},"What zero-crossing switching is","what-zero-crossing-switching-is",{"level":81,"text":974,"id":975},"How Voldeno implements it in software","how-voldeno-implements-it-in-software",{"level":81,"text":977,"id":978},"What contact degradation looks like: photos from our tests","what-contact-degradation-looks-like-photos-from-our-tests",{"level":81,"text":980,"id":981},"What the user gains","what-the-user-gains",{"level":81,"text":983,"id":984},"Further reading","further-reading",{},"Voldeno Team","\u002Fimages\u002Fblog\u002Fzero_crossing\u002Fcover.webp",1781247833023]