Files
Meshtastic-Android/main/fi-rFI/user/settings-module-admin.html
T

2 lines
62 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html> <html lang="en-US"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=Edge"> <link rel="stylesheet" href="/Meshtastic-Android/main/assets/css/just-the-docs-default.css"> <link rel="stylesheet" href="/Meshtastic-Android/main/assets/css/just-the-docs-head-nav.css" id="jtd-head-nav-stylesheet"> <style id="jtd-nav-activation"> .site-nav ul li a { background-image: none; } </style> <script src="/Meshtastic-Android/main/assets/js/vendor/lunr.min.js"></script> <script src="/Meshtastic-Android/main/assets/js/just-the-docs.js"></script> <meta name="viewport" content="width=device-width, initial-scale=1"> <!-- Begin Jekyll SEO tag v2.9.0 --> <title>Asetukset — Moduulit ja ylläpito | Meshtastic Android</title> <meta name="generator" content="Jekyll v4.4.1" /> <meta property="og:title" content="Asetukset — Moduulit ja ylläpito" /> <meta property="og:locale" content="fi_rFI" /> <meta name="description" content="Määritä valinnaiset ominaisuusmoduulit (MQTT, telemetria, valmiit viestit, TAK ja muut) sekä suorita laitteen ylläpitotoimia." /> <meta name="twitter:description" property="og:description" content="Määritä valinnaiset ominaisuusmoduulit (MQTT, telemetria, valmiit viestit, TAK ja muut) sekä suorita laitteen ylläpitotoimia." /> <link rel="canonical" href="/Meshtastic-Android/main/fi-rFI/user/settings-module-admin.html" /> <meta property="og:url" content="/Meshtastic-Android/main/fi-rFI/user/settings-module-admin.html" /> <meta property="og:site_name" content="Meshtastic Android" /> <meta property="og:type" content="website" /> <meta name="twitter:card" content="summary" /> <meta name="twitter:title" content="Asetukset — Moduulit ja ylläpito" /> <script type="application/ld+json"> {"@context":"https://schema.org","@type":"WebPage","description":"Määritä valinnaiset ominaisuusmoduulit (MQTT, telemetria, valmiit viestit, TAK ja muut) sekä suorita laitteen ylläpitotoimia.","headline":"Asetukset — Moduulit ja ylläpito","url":"/Meshtastic-Android/main/fi-rFI/user/settings-module-admin.html"}</script> <!-- End Jekyll SEO tag --> <!-- Inter font from Google Fonts --> <link rel="preconnect" href="https://fonts.googleapis.com"> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap" rel="stylesheet"> <style> /* M3-inspired typography */ :root { --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif; --font-mono: 'JetBrains Mono', 'Fira Code', 'Cascadia Code', ui-monospace, monospace; } body, .site-title, .search-input { font-family: var(--font-sans) !important; } code, pre, .highlight { font-family: var(--font-mono) !important; font-size: 0.875em; } /* M3 surface elevation & rounding */ .main-content table { border-radius: 12px; overflow: hidden; } .main-content blockquote { border-radius: 12px; padding: 1rem 1.25rem; border-left-width: 4px; } .main-content pre { border-radius: 12px; } .main-content code { border-radius: 6px; padding: 0.15em 0.4em; } /* Smooth transitions for theme switching */ body, .side-bar, .main, .main-content, .site-header, .search-input, .search-results, a { transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease; } /* Theme toggle button styling */ .theme-toggle { background: none; border: 1px solid var(--border-color, #D5D6E0); border-radius: 20px; padding: 6px 12px; cursor: pointer; font-family: var(--font-sans); font-size: 0.75rem; font-weight: 500; display: inline-flex; align-items: center; gap: 6px; color: inherit; margin: 0 auto; transition: background-color 0.2s ease, border-color 0.2s ease; } .theme-toggle:hover { background-color: rgba(128, 128, 128, 0.1); } .theme-toggle-wrap { text-align: center; padding: 12px 0 4px; } /* Heading weight refinement */ h1, h2, h3, h4, h5, h6 { font-weight: 600; letter-spacing: -0.01em; } h1 { font-weight: 700; letter-spacing: -0.02em; } /* Smooth anchor scroll */ html { scroll-behavior: smooth; } /* Language switcher */ .language-switcher { display: inline-block; position: relative; margin-left: 8px; } .language-switcher-btn { cursor: pointer; font-size: 0.8rem; font-weight: 500; font-family: var(--font-sans); list-style: none; padding: 4px 10px; border: 1px solid var(--border-color, #D5D6E0); border-radius: 16px; display: inline-flex; align-items: center; gap: 4px; transition: background-color 0.2s ease; } .language-switcher-btn:hover { background-color: rgba(128, 128, 128, 0.1); } .language-switcher[open] .language-switcher-list { display: block; } .language-switcher-list { position: absolute; top: 100%; right: 0; left: auto; z-index: 100; list-style: none; padding: 8px 0; margin: 4px 0 0; min-width: 140px; background: var(--body-background-color, #fff); border: 1px solid var(--border-color, #D5D6E0); border-radius: 12px; box-shadow: 0 4px 12px rgba(0,0,0,0.1); } .language-switcher-list li { padding: 0; } .language-switcher-list a { display: block; padding: 6px 16px; text-decoration: none; font-size: 0.85rem; color: inherit; } .language-switcher-list a:hover { background-color: rgba(103, 234, 148, 0.15); } /* Version switcher (shares the language-switcher dropdown styling) */ .version-switcher { margin-left: 8px; } .version-switcher[hidden] { display: none; } /* Link out to the upstream meshtastic.org docs */ .upstream-docs-link { display: inline-flex; align-items: center; margin-left: 8px; padding: 4px 10px; border: 1px solid var(--border-color, #D5D6E0); border-radius: 16px; font-size: 0.8rem; font-weight: 500; font-family: var(--font-sans); text-decoration: none; color: inherit; transition: background-color 0.2s ease; } .upstream-docs-link:hover { background-color: rgba(128, 128, 128, 0.1); } </style> <script> // Respect OS preference on first visit, then remember user choice (function() { var stored = localStorage.getItem('jtd-theme'); if (stored) return; // will be applied by jtd.setTheme below if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) { localStorage.setItem('jtd-theme', 'meshtastic-dark'); } })(); </script> </head> <body> <a class="skip-to-main" href="#main-content">Skip to main content</a> <svg xmlns="http://www.w3.org/2000/svg" class="d-none"> <symbol id="svg-link" viewBox="0 0 24 24"> <title>Link</title> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link"> <path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path> </svg> </symbol> <symbol id="svg-menu" viewBox="0 0 24 24"> <title>Menu</title> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-menu"> <line x1="3" y1="12" x2="21" y2="12"></line><line x1="3" y1="6" x2="21" y2="6"></line><line x1="3" y1="18" x2="21" y2="18"></line> </svg> </symbol> <symbol id="svg-arrow-right" viewBox="0 0 24 24"> <title>Expand</title> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-chevron-right"> <polyline points="9 18 15 12 9 6"></polyline> </svg> </symbol> <!-- Feather. MIT License: https://github.com/feathericons/feather/blob/master/LICENSE --> <symbol id="svg-external-link" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-external-link"> <title id="svg-external-link-title">(external link)</title> <path d="M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"></path><polyline points="15 3 21 3 21 9"></polyline><line x1="10" y1="14" x2="21" y2="3"></line> </symbol> <symbol id="svg-doc" viewBox="0 0 24 24"> <title>Document</title> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-file"> <path d="M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"></path><polyline points="13 2 13 9 20 9"></polyline> </svg> </symbol> <symbol id="svg-search" viewBox="0 0 24 24"> <title>Search</title> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-search"> <circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line> </svg> </symbol> <!-- Bootstrap Icons. MIT License: https://github.com/twbs/icons/blob/main/LICENSE.md --> <symbol id="svg-copy" viewBox="0 0 16 16"> <title>Copy</title> <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-clipboard" viewBox="0 0 16 16"> <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z"/> <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z"/> </svg> </symbol> <symbol id="svg-copied" viewBox="0 0 16 16"> <title>Copied</title> <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-clipboard-check-fill" viewBox="0 0 16 16"> <path d="M6.5 0A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3Zm3 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3Z"/> <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1A2.5 2.5 0 0 1 9.5 5h-3A2.5 2.5 0 0 1 4 2.5v-1Zm6.854 7.354-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 0 1 .708-.708L7.5 10.793l2.646-2.647a.5.5 0 0 1 .708.708Z"/> </svg> </symbol> </svg> <header class="side-bar"> <div class="site-header"> <a href="/Meshtastic-Android/main/" class="site-title lh-tight"> Meshtastic Android </a> <button id="menu-button" class="site-button btn-reset" aria-label="Menu" aria-expanded="false"> <svg viewBox="0 0 24 24" class="icon" aria-hidden="true"><use xlink:href="#svg-menu"></use></svg> </button> </div> <nav aria-label="Main" id="site-nav" class="site-nav"> <ul class="nav-list"><li class="nav-list-item"><a href="/Meshtastic-Android/main/fr-rCA/" class="nav-list-link">Home</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/" class="nav-list-link">Home</a></li><li class="nav-list-item"><button class="nav-list-expander btn-reset" aria-label="User Guide submenu" aria-expanded="false"> <svg viewBox="0 0 24 24" aria-hidden="true"><use xlink:href="#svg-arrow-right"></use></svg> </button><a href="/Meshtastic-Android/main/en/user.html" class="nav-list-link">User Guide</a><ul class="nav-list"><li class="nav-list-item"><a href="/Meshtastic-Android/main/fr-rCA/user/onboarding.html" class="nav-list-link">Getting Started</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/user/onboarding.html" class="nav-list-link">Getting Started</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/fr-rCA/user/connections.html" class="nav-list-link">Connexions</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/user/connections.html" class="nav-list-link">Connections</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/fr-rCA/user/messages-and-channels.html" class="nav-list-link">Messages & Channels</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/user/messages-and-channels.html" class="nav-list-link">Messages & Channels</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/fr-rCA/user/nodes.html" class="nav-list-link">Nœuds</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/user/nodes.html" class="nav-list-link">Nodes</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/fr-rCA/user/node-metrics.html" class="nav-list-link">Node Metrics</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/user/node-metrics.html" class="nav-list-link">Node Metrics</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/fr-rCA/user/map-and-waypoints.html" class="nav-list-link">Map & Waypoints</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/user/map-and-waypoints.html" class="nav-list-link">Map & Waypoints</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/fr-rCA/user/settings-radio-user.html" class="nav-list-link">Settings — Radio & User</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/user/settings-radio-user.html" class="nav-list-link">Settings — Radio & User</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/fr-rCA/user/settings-module-admin.html" class="nav-list-link">Settings — Modules & Admin</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/user/settings-module-admin.html" class="nav-list-link">Settings — Modules & Admin</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/fr-rCA/user/tak.html" class="nav-list-link">TAK Integration</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/user/tak.html" class="nav-list-link">TAK Integration</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/fr-rCA/user/mqtt.html" class="nav-list-link">MQTT</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/user/mqtt.html" class="nav-list-link">MQTT</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/fr-rCA/user/discovery.html" class="nav-list-link">Découverte de maille locale</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/user/discovery.html" class="nav-list-link">Local Mesh Discovery</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/fr-rCA/user/firmware.html" class="nav-list-link">Firmware Updates</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/user/firmware.html" class="nav-list-link">Firmware Updates</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/fr-rCA/user/desktop.html" class="nav-list-link">Desktop App</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/user/desktop.html" class="nav-list-link">Desktop App</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/fr-rCA/user/signal-meter.html" class="nav-list-link">How the Meshtastic Signal Meter Works</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/user/signal-meter.html" class="nav-list-link">How the Meshtastic Signal Meter Works</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/fr-rCA/user/units-and-locale.html" class="nav-list-link">Units, Measurement & Locale</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/user/units-and-locale.html" class="nav-list-link">Units, Measurement & Locale</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/fr-rCA/user/translate.html" class="nav-list-link">Translate the App</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/user/translate.html" class="nav-list-link">Translate the App</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/user/app-functions.html" class="nav-list-link">App Functions</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/user/widget.html" class="nav-list-link">Home Screen Widget</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/user/help-and-docs.html" class="nav-list-link">Help & In-App Docs</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/user/debug-logs.html" class="nav-list-link">Debug Logs</a></li></ul></li><li class="nav-list-item"><button class="nav-list-expander btn-reset" aria-label="Developer Guide submenu" aria-expanded="false"> <svg viewBox="0 0 24 24" aria-hidden="true"><use xlink:href="#svg-arrow-right"></use></svg> </button><a href="/Meshtastic-Android/main/en/developer.html" class="nav-list-link">Developer Guide</a><ul class="nav-list"><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/developer/architecture.html" class="nav-list-link">Architecture</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/developer/codebase.html" class="nav-list-link">Codebase</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/developer/adding-a-feature-module.html" class="nav-list-link">Adding a Feature Module</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/developer/navigation-and-deep-links.html" class="nav-list-link">Navigation & Deep Links</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/developer/transport.html" class="nav-list-link">Transport</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/developer/persistence.html" class="nav-list-link">Persistence</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/developer/testing.html" class="nav-list-link">Testing</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/developer/contributing.html" class="nav-list-link">Contributing</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/developer/measurement.html" class="nav-list-link">Measurement & Formatting</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/developer/test-builds.html" class="nav-list-link">Test Builds & Obtainium</a></li><li class="nav-list-item"><a href="/Meshtastic-Android/main/en/developer/documentation-style.html" class="nav-list-link">Documentation Style</a></li></ul></li></ul> </nav> <div class="d-md-block d-sm-none"> <div class="site-footer"> This site uses <a href="https://github.com/just-the-docs/just-the-docs">Just the Docs</a>, a documentation theme for Jekyll. </div> </div> </header> <div class="main" id="top"> <div id="main-header" class="main-header"> <div class="search" role="search"> <div class="search-input-wrap"> <input type="text" id="search-input" class="search-input" tabindex="0" placeholder="Search Meshtastic Android" autocomplete="off"> <label for="search-input" class="search-label"> <span class="sr-only">Search Meshtastic Android</span> <svg viewBox="0 0 24 24" class="search-icon" aria-hidden="true"><use xlink:href="#svg-search"></use></svg> </label> </div> <div id="search-results" class="search-results"></div> </div> <div class="theme-toggle-wrap"> <button class="theme-toggle" id="theme-toggle" aria-label="Toggle dark mode" title="Toggle light/dark theme" onclick="toggleMeshtasticTheme()"> <span id="theme-icon">🌙</span> <span id="theme-label">Dark</span> </button> <details class="language-switcher version-switcher" id="version-switcher" aria-label="Documentation version" hidden> <summary class="language-switcher-btn" title="Switch documentation version"> 🏷️ <span id="version-current"></span> </summary> <ul class="language-switcher-list" id="version-switcher-list"></ul> </details> <script> (function() { var baseurl = '/Meshtastic-Android/main'; var root = baseurl; var channel = 'latest'; // /main/, /vX.Y.Z/ or a prerelease snapshot like /v2.8.0-open.1/. var match = baseurl.match(/^(.*)\/(main|v\d+\.\d+\.\d+(?:-(?:open|closed)\.\d+)?)$/); if (match) { root = match[1]; channel = match[2]; } fetch(root + '/versions.json') .then(function(res) { return res.ok ? res.json() : Promise.reject(); }) .then(function(data) { var switcher = document.getElementById('version-switcher'); var list = document.getElementById('version-switcher-list'); var current = document.getElementById('version-current'); if (!switcher || !list || !current) return; // Keep the reader on the same page when switching channels; a page // that doesn't exist in the target version lands on the 404 page. var relativePath = location.pathname.slice(baseurl.length) + location.hash; var entries = []; if (data.latest) { entries.push({ id: 'latest', label: 'latest (v' + data.latest + ')', base: root }); } // Prereleases are documented ahead of general availability, so the track // is always spelled out — a reader must not mistake a closed-testing // snapshot for a shipped release. (data.prereleases || []).forEach(function(p) { entries.push({ id: p.dir, label: p.dir.replace(/^v/, 'v') + ' — ' + p.track + ' testing', base: root + '/' + p.dir }); }); if (data.hasMain) { entries.push({ id: 'main', label: 'main (unreleased snapshot)', base: root + '/main' }); } (data.versions || []).forEach(function(v) { entries.push({ id: 'v' + v, label: 'v' + v, base: root + '/v' + v }); }); var currentEntry = entries.filter(function(e) { return e.id === channel; })[0]; current.textContent = currentEntry ? currentEntry.label : channel; var others = entries.filter(function(e) { return e.id !== channel; }); if (others.length === 0) return; others.forEach(function(e) { var li = document.createElement('li'); var a = document.createElement('a'); a.href = e.base + relativePath; a.textContent = e.label; li.appendChild(a); list.appendChild(li); }); switcher.hidden = false; }) .catch(function() { /* no manifest (local build) — leave switcher hidden */ }); })(); </script> <details class="language-switcher" aria-label="Language options"> <summary class="language-switcher-btn" title="View in another language"> 🌐 <span class="lang-current">Suomi</span> </summary> <ul class="language-switcher-list"> <li><a href="/Meshtastic-Android/main/en/user/settings-module-admin" lang="en">English</a></li> <li><a href="/Meshtastic-Android/main/ar-rSA/user/settings-module-admin" lang="ar-rSA" dir="rtl">العربية</a></li> <li><a href="/Meshtastic-Android/main/be-rBY/user/settings-module-admin" lang="be-rBY" >Беларуская</a></li> <li><a href="/Meshtastic-Android/main/bg-rBG/user/settings-module-admin" lang="bg-rBG" >Български</a></li> <li><a href="/Meshtastic-Android/main/ca-rES/user/settings-module-admin" lang="ca-rES" >Català</a></li> <li><a href="/Meshtastic-Android/main/cs-rCZ/user/settings-module-admin" lang="cs-rCZ" >Čeština</a></li> <li><a href="/Meshtastic-Android/main/de-rDE/user/settings-module-admin" lang="de-rDE" >Deutsch</a></li> <li><a href="/Meshtastic-Android/main/el-rGR/user/settings-module-admin" lang="el-rGR" >Ελληνικά</a></li> <li><a href="/Meshtastic-Android/main/es-rES/user/settings-module-admin" lang="es-rES" >Español</a></li> <li><a href="/Meshtastic-Android/main/et-rEE/user/settings-module-admin" lang="et-rEE" >Eesti</a></li> <li><a href="/Meshtastic-Android/main/fr-rFR/user/settings-module-admin" lang="fr-rFR" >Français</a></li> <li><a href="/Meshtastic-Android/main/ga-rIE/user/settings-module-admin" lang="ga-rIE" >Gaeilge</a></li> <li><a href="/Meshtastic-Android/main/gl-rES/user/settings-module-admin" lang="gl-rES" >Galego</a></li> <li><a href="/Meshtastic-Android/main/iw-rIL/user/settings-module-admin" lang="iw-rIL" dir="rtl">עברית</a></li> <li><a href="/Meshtastic-Android/main/hr-rHR/user/settings-module-admin" lang="hr-rHR" >Hrvatski</a></li> <li><a href="/Meshtastic-Android/main/ht-rHT/user/settings-module-admin" lang="ht-rHT" >Kreyòl Ayisyen</a></li> <li><a href="/Meshtastic-Android/main/hu-rHU/user/settings-module-admin" lang="hu-rHU" >Magyar</a></li> <li><a href="/Meshtastic-Android/main/is-rIS/user/settings-module-admin" lang="is-rIS" >Íslenska</a></li> <li><a href="/Meshtastic-Android/main/it-rIT/user/settings-module-admin" lang="it-rIT" >Italiano</a></li> <li><a href="/Meshtastic-Android/main/ja-rJP/user/settings-module-admin" lang="ja-rJP" >日本語</a></li> <li><a href="/Meshtastic-Android/main/ko-rKR/user/settings-module-admin" lang="ko-rKR" >한국어</a></li> <li><a href="/Meshtastic-Android/main/lt-rLT/user/settings-module-admin" lang="lt-rLT" >Lietuvių</a></li> <li><a href="/Meshtastic-Android/main/nl-rNL/user/settings-module-admin" lang="nl-rNL" >Nederlands</a></li> <li><a href="/Meshtastic-Android/main/no-rNO/user/settings-module-admin" lang="no-rNO" >Norsk</a></li> <li><a href="/Meshtastic-Android/main/pl-rPL/user/settings-module-admin" lang="pl-rPL" >Polski</a></li> <li><a href="/Meshtastic-Android/main/pt-rBR/user/settings-module-admin" lang="pt-rBR" >Português (Brasil)</a></li> <li><a href="/Meshtastic-Android/main/pt-rPT/user/settings-module-admin" lang="pt-rPT" >Português</a></li> <li><a href="/Meshtastic-Android/main/ro-rRO/user/settings-module-admin" lang="ro-rRO" >Română</a></li> <li><a href="/Meshtastic-Android/main/ru-rRU/user/settings-module-admin" lang="ru-rRU" >Русский</a></li> <li><a href="/Meshtastic-Android/main/sk-rSK/user/settings-module-admin" lang="sk-rSK" >Slovenčina</a></li> <li><a href="/Meshtastic-Android/main/sl-rSI/user/settings-module-admin" lang="sl-rSI" >Slovenščina</a></li> <li><a href="/Meshtastic-Android/main/sq-rAL/user/settings-module-admin" lang="sq-rAL" >Shqip</a></li> <li><a href="/Meshtastic-Android/main/sr-rLatn/user/settings-module-admin" lang="sr-rLatn" >Српски (Latinica)</a></li> <li><a href="/Meshtastic-Android/main/srp/user/settings-module-admin" lang="srp" >Српски (Ћирилица)</a></li> <li><a href="/Meshtastic-Android/main/sv-rSE/user/settings-module-admin" lang="sv-rSE" >Svenska</a></li> <li><a href="/Meshtastic-Android/main/tr-rTR/user/settings-module-admin" lang="tr-rTR" >Türkçe</a></li> <li><a href="/Meshtastic-Android/main/uk-rUA/user/settings-module-admin" lang="uk-rUA" >Українська</a></li> <li><a href="/Meshtastic-Android/main/zh-rCN/user/settings-module-admin" lang="zh-rCN" >中文 (简体)</a></li> <li><a href="/Meshtastic-Android/main/zh-rTW/user/settings-module-admin" lang="zh-rTW" >中文 (繁體)</a></li> </ul> </details> <a class="upstream-docs-link" href="https://meshtastic.org/docs/" title="Official Meshtastic documentation (meshtastic.org)">Meshtastic Docs ↗</a> </div> <script> function toggleMeshtasticTheme() { var current = localStorage.getItem('jtd-theme') || 'meshtastic'; var next = (current === 'meshtastic-dark') ? 'meshtastic' : 'meshtastic-dark'; if (typeof jtd !== 'undefined' && typeof jtd.setTheme === 'function') { jtd.setTheme(next); } localStorage.setItem('jtd-theme', next); var icon = document.getElementById('theme-icon'); var label = document.getElementById('theme-label'); if (icon && label) { icon.textContent = (next === 'meshtastic-dark') ? '☀️' : '🌙'; label.textContent = (next === 'meshtastic-dark') ? 'Light' : 'Dark'; } } // Apply stored/OS theme on page load (function() { var theme = localStorage.getItem('jtd-theme') || 'meshtastic'; // Sync toggle label immediately var icon = document.getElementById('theme-icon'); var label = document.getElementById('theme-label'); if (icon && label) { icon.textContent = (theme === 'meshtastic-dark') ? '☀️' : '🌙'; label.textContent = (theme === 'meshtastic-dark') ? 'Light' : 'Dark'; } // Apply theme once jtd is ready function tryApply() { if (typeof jtd !== 'undefined' && typeof jtd.setTheme === 'function') { jtd.setTheme(theme); } else { setTimeout(tryApply, 50); } } tryApply(); })(); </script> </div> <div class="main-content-wrap"> <nav aria-label="Breadcrumb" class="breadcrumb-nav"> <ol class="breadcrumb-nav-list"> <li class="breadcrumb-nav-list-item"><span>Asetukset — Moduulit ja ylläpito</span></li> </ol> </nav> <div id="main-content" class="main-content"> <main> <div class="locale-page-banner" > <p class="locale-notice"> 🌐 <strong>Suomi</strong> — Community translation <a href="/Meshtastic-Android/main/en/user/settings-module-admin">View in English</a> </p> </div> <div lang="fi-rFI"> <h1 id="asetukset--moduulit-ja-ylläpito"> <a href="#asetukset--moduulit-ja-ylläpito" class="anchor-heading" aria-labelledby="asetukset--moduulit-ja-ylläpito"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Asetukset — Moduulit ja ylläpito </h1> <p>Määritä valinnaiset ominaisuusmoduulit ja suorita laitteen ylläpitotoimia. Moduulit laajentavat Meshtasticia erikoisominaisuuksilla — jokainen voidaan ottaa käyttöön tai poistaa käytöstä erikseen.</p> <blockquote> <p>💡 <strong>Vinkki:</strong> Ota käyttöön vain ne moduulit, joita todella käytät. Käyttämättömien moduulien poistaminen käytöstä vähentää lähetyksen käyttöastetta, säästää akkua ja yksinkertaistaa määrityksiä. A module you expect can be missing for three reasons: your node’s role doesn’t enable it, your firmware is older than the release that added it, or the firmware build excludes it for this hardware.</p> </blockquote> <p>Moduuliasetukset käyttävät korttipohjaista asettelua, jossa on kytkimiä, pudotusvalikoita, tekstikenttiä ja liukusäätimiä:</p> <p><img src="../../assets/screenshots/settings_switch.png" alt="Kytkinasetus käytössä-asennossa" /></p> <p><img src="../../assets/screenshots/settings_dropdown.png" alt="Pudotusvalikkoasetus avattuna näyttämään vaihtoehtoluettelonsa" /></p> <p><img src="../../assets/screenshots/settings_text_field.png" alt="A text field setting with a value entered" /></p> <p><img src="../../assets/screenshots/settings_titled_card.png" alt="A module settings card with its title and grouped controls" /></p> <h2 id="moduulin-asetukset"> <a href="#moduulin-asetukset" class="anchor-heading" aria-labelledby="moduulin-asetukset"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Moduulin asetukset </h2> <p>Every module lives under <strong>Settings → Module configuration</strong>.</p> <blockquote> <p>⚠️ <strong>Important:</strong> Saving a module screen restarts the node — the button reads <strong>Save &amp; restart</strong>, and the node is unreachable for a few seconds afterwards. External Notification and Mesh Beacon are the exceptions: their button reads <strong>Save</strong>, and the node may still restart for some changes.</p> </blockquote> <h3 id="mqtt-module"> <a href="#mqtt-module" class="anchor-heading" aria-labelledby="mqtt-module"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> MQTT module </h3> <p>Yhdistää verkon viestejä MQTT-välityspalvelimeen ja sieltä takaisin internet-yhteyksiä varten. This is how you extend your mesh beyond LoRa range or integrate with home automation systems.</p> <div class="table-wrapper"><table> <thead> <tr> <th>Asetus</th> <th>Kuvaus</th> </tr> </thead> <tbody> <tr> <td>MQTT käytössä</td> <td>Ota MQTT-välityspalvelin käyttöön</td> </tr> <tr> <td>Osoite</td> <td>MQTT-välityspalvelimen osoite</td> </tr> <tr> <td>Käyttäjänimi</td> <td>Todennuksen käyttäjätunnus</td> </tr> <tr> <td>Salasana</td> <td>Todennuksen salasana</td> </tr> <tr> <td>Salaus käytössä</td> <td>Salaa MQTT-viestisisällöt</td> </tr> <tr> <td>JSON ulostulo käytössä</td> <td>Julkaise ja vastaanota MQTT-viestejä JSON-muodossa. Merkitty protobuf-rakenteessa vanhentuneeksi, mutta tämä on edelleen ainoa asetus tähän toimintaan, ja laiteohjelmisto käyttää sitä yhä</td> </tr> <tr> <td>TLS käytössä</td> <td>Käytä suojattua yhteyttä</td> </tr> <tr> <td>Palvelimen osoite (root topic)</td> <td>MQTT:n perusaihepolku</td> </tr> <tr> <td>Välityspalvelin käytössä</td> <td>Anna yhdistetyn puhelimen välittää radion MQTT-liikenne sen sijaan, että radio muodostaisi itse yhteyden välityspalvelimeen</td> </tr> <tr> <td>MQTT-välityspalvelin tällä puhelimella</td> <td>Yllä olevan <strong>Välitys asiakkaalle käytössä</strong> -asetuksen puhelinpään osuus: käyttääkö tämä puhelin kyseistä välitystä. Katso <a href="mqtt">MQTT</a></td> </tr> <tr> <td>Karttaraportointi</td> <td>Publish position to the public map — see the Map reporting group that follows</td> </tr> </tbody> </table></div> <p>Turning <strong>Map reporting</strong> on reveals a consent card headed <em>Consent to Share Unencrypted Node Data via MQTT</em>, with an <strong>I agree.</strong> switch under it. The rest of the card doesn’t exist on screen until you agree:</p> <div class="table-wrapper"><table> <thead> <tr> <th>Asetus</th> <th>Kuvaus</th> </tr> </thead> <tbody> <tr> <td>Hyväksyn.</td> <td>Explicit consent to transmit your node data, including an approximate position, unencrypted. Map reporting doesn’t start without it</td> </tr> <tr> <td>Precision slider</td> <td>The slider has no label of its own. It sets how coarsely your position is published, from 12 to 15; the line beneath reads <em>±</em> the resulting distance, in your own units</td> </tr> <tr> <td>Karttaraportoinnin aikaväli (sekuntia)</td> <td>Kuinka usein sijainti julkaistaan. A dropdown of fixed intervals from 1 hour to 72 hours — nothing shorter is offered</td> </tr> </tbody> </table></div> <p>Katso <a href="mqtt">MQTT</a> saadaksesi yksityiskohtaisen käyttöoppaan, joka sisältää salauksen, tietosuojan ja välityspalvelimen määrityksen.</p> <h3 id="serial-module"> <a href="#serial-module" class="anchor-heading" aria-labelledby="serial-module"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Serial module </h3> <p>Mahdollistaa sarjaporttiviestinnän ulkoisten laiteintegraatioiden kanssa (GPS-moduulit, anturit tai mukautettu laitteisto). Kun tämä on käytössä, radion sarjaportti voi lähettää ja vastaanottaa protobuf- tai tekstimuotoista dataa, jolloin ulkoiset mikrokontrollerit tai tietokoneet voivat olla vuorovaikutuksessa verkon kanssa.</p> <div class="table-wrapper"><table> <thead> <tr> <th>Asetus</th> <th>Kuvaus</th> </tr> </thead> <tbody> <tr> <td>Sarjaportti käytössä</td> <td>Ota sarjaporttiviestintä käyttöön</td> </tr> <tr> <td>Palautus päällä</td> <td>Toista vastaanotettu sarjaporttidata takaisin</td> </tr> <tr> <td>Sarjaportin tila</td> <td>Portin käyttämä protokolla – Default, Simple, Proto, Text message, NMEA, CalTopo, WS85 weather station, YE.Direct, MeshSolar config, Log tai Log (vain teksti)</td> </tr> <tr> <td>Vastaanotto / lähetys</td> <td>Sarjayhteyden GPIO-nastat</td> </tr> <tr> <td>Sarjaportin nopeus</td> <td>Portin nopeus</td> </tr> <tr> <td>Aikakatkaisu</td> <td>Kuinka kauan odotetaan ennen kuin saapuva viesti katsotaan kokonaiseksi</td> </tr> <tr> <td>Korvaa konsolin sarjaportti</td> <td>Ota käyttöön portti, jota virheenkorjauskonsoli normaalisti käyttää</td> </tr> </tbody> </table></div> <h3 id="external-notification-module"> <a href="#external-notification-module" class="anchor-heading" aria-labelledby="external-notification-module"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> External Notification module </h3> <p>Controls buzzer, LED, or vibration alerts on your node hardware. Hyödyllinen laitteille, joiden täytyy ilmoittaa fyysisesti viestin saapumisesta — erityisen hyödyllinen valvomattomissa tai ulkokäyttöön asennetuissa laitteissa.</p> <p>Käynnistimiä on kaksi – saapuva <strong>viesti</strong> ja vastaanotettu <strong>BEL</strong>-ohjausmerkki – ja kumpikin voi ohjata LED-valoa, summeria ja värinämoottoria erikseen, joten käytettävissä on kuusi kytkintä.</p> <div class="table-wrapper"><table> <thead> <tr> <th>Asetus</th> <th>Kuvaus</th> </tr> </thead> <tbody> <tr> <td>Ulkoiset ilmoitukset käytössä</td> <td>Moduulin pääkytkin</td> </tr> <tr> <td>Hälytysviesti: LED / summeri / värinä</td> <td>Mitkä lähdöt aktivoituvat saapuvasta viestistä</td> </tr> <tr> <td>Hälytysmerkki: LED / summeri / värinä</td> <td>Mitkä lähdöt aktivoituvat vastaanotetusta BEL-ohjausmerkistä</td> </tr> <tr> <td>Ulostulon LED (GPIO)</td> <td>LED on kytketty nastaan</td> </tr> <tr> <td>Ulostulon LED aktiivinen</td> <td>Onko LED-nasta aktiivinen korkealla vai matalalla tasolla</td> </tr> <tr> <td>Ulostulon äänimerkki (GPIO)</td> <td>Summeri on kytketty nastaan</td> </tr> <tr> <td>Ulostulon värinä (GPIO)</td> <td>Värinämoottori on kytketty nastaan</td> </tr> <tr> <td>Käytä PWM-äänimerkkiä</td> <td>Ohjaa summeria PWM:llä, jolloin voidaan toistaa ääniä yhden kiinteän taajuuden sijaan</td> </tr> <tr> <td>Käytä I2S protokollaa äänimerkille</td> <td>Lähetä hälytys sen sijaan I2S-äänilähdön kautta</td> </tr> <tr> <td>Ulostulon kesto (millisekuntia)</td> <td>Kuinka kauan yksittäinen hälytys kestää</td> </tr> <tr> <td>Hälytysaikakatkaisu (sekuntia)</td> <td>Toista hälytystä tämän ajan, kunnes se kuitataan. 0 poistaa toistuvan muistutuksen käytöstä</td> </tr> <tr> <td>Soittoääni</td> <td>PWM-summerilla toistettava RTTTL-soittoääni. Voidaan tuoda tiedostosta</td> </tr> </tbody> </table></div> <h3 id="store--forward-module"> <a href="#store--forward-module" class="anchor-heading" aria-labelledby="store--forward-module"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Store &amp; Forward module </h3> <p>Puskuroi viestejä radioille, jotka ovat tilapäisesti poissa verkosta, ja toimittaa ne, kun nämä radiot yhdistyvät uudelleen. Välttämätön verkoissa, joissa radiot siirtyvät säännöllisesti kuuluvuusalueelle ja sen ulkopuolelle — varmistaa, etteivät viestit katoa lyhyiden yhteyskatkosten aikana.</p> <div class="table-wrapper"><table> <thead> <tr> <th>Asetus</th> <th>Kuvaus</th> </tr> </thead> <tbody> <tr> <td>Tallenna ja lähetä edelleen</td> <td>Ota Varastoi &amp; välitä käyttöön</td> </tr> <tr> <td>Valvontasignaali</td> <td>Ilmoita tämän radion varastoi &amp; välitä -ominaisuudesta säännöllisesti</td> </tr> <tr> <td>Kirjausten määrä</td> <td>Tallennettujen viestien enimmäismäärä</td> </tr> <tr> <td>Historian maksimimäärä</td> <td>Toistettavien viestien enimmäismäärä</td> </tr> <tr> <td>Historian aikamäärä</td> <td>Aikaikkuna viestien toistolle</td> </tr> <tr> <td>Palvelin</td> <td>Toimi mesh-verkon varastoi &amp; välitä -palvelimena (edellyttää riittävästi muistia, esimerkiksi ESP32 PSRAM:lla)</td> </tr> </tbody> </table></div> <blockquote> <p>💡 <strong>Vinkki:</strong> Varastoi &amp; välitä toimii parhaiten radioissa, joissa on runsaasti muistia (ESP32 ja PSRAM). Router-roolin radiot ovat ihanteellisia ehdokkaita, koska ne ovat yleensä jatkuvasti käynnissä.</p> </blockquote> <h3 id="range-test-module"> <a href="#range-test-module" class="anchor-heading" aria-labelledby="range-test-module"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Range Test module </h3> <blockquote> <p>⚠️ <strong>Varoitus:</strong> Kuuluvuustesti toimii vain suojatulla ensisijaisella kanavalla. As long as your primary channel still uses the default channel key, the interval and CSV controls stay disabled — you can still switch an already-enabled module off — and saving force-disables the module if the channel has reverted to public.</p> </blockquote> <p>Automaattinen kuuluvuustestityökalu radioiden välisen yhteyden laadun arviointiin. Kun toiminto on käytössä, radio lähettää säännöllisesti testiviestejä kasvavilla laskuriarvoilla. Vastaanottava radio kirjaa nämä viestit, jolloin voit myöhemmin kävellä tai ajaa pois ja analysoida, millä etäisyydellä viestien saapuminen loppui.</p> <div class="table-wrapper"><table> <thead> <tr> <th>Asetus</th> <th>Kuvaus</th> </tr> </thead> <tbody> <tr> <td>Kuuluvuustesti käytössä</td> <td>Ota kuuluvuustesti käyttöön</td> </tr> <tr> <td>Viestien lähetyksen aikaväli (sekuntia)</td> <td>Time between test transmissions, chosen from a dropdown of fixed intervals</td> </tr> <tr> <td>Tallenna .CSV (ESP32 ainoastaan)</td> <td>Log received test data to the node’s own filesystem. ESP32 hardware only</td> </tr> </tbody> </table></div> <h3 id="telemetry-module"> <a href="#telemetry-module" class="anchor-heading" aria-labelledby="telemetry-module"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Telemetry module </h3> <p>Määrittää, mitä telemetriatietoja radiosi jakaa verkkoon. Telemetria sisältää laitteen kuntoon liittyviä tietoja (akun varaustaso, käyttöaika) sekä ympäristöanturien tietoja (lämpötila, kosteus, ilmanpaine).</p> <p>Jokaisella neljällä mittausryhmällä on oma käyttöönottokytkin ja oma mittausväli, joten esimerkiksi akun tila voidaan raportoida usein ja anturitiedot harvemmin.</p> <div class="table-wrapper"><table> <thead> <tr> <th>Asetus</th> <th>Kuvaus</th> </tr> </thead> <tbody> <tr> <td>Lähetä laitteen telemetriatiedot</td> <td>Laitemittausten pääkytkin. Näkyy vain laiteohjelmistoversiossa 2.7.12 ja uudemmissa</td> </tr> <tr> <td>Laitemittareiden päivitysväli</td> <td>How often to report battery, uptime and channel utilization</td> </tr> <tr> <td>Ympäristötietojen moduuli käytössä</td> <td>Raportoi liitettyjen ympäristöanturien tiedot</td> </tr> <tr> <td>Ympäristömittareiden päivitysväli</td> <td>Kuinka usein tiedot raportoidaan</td> </tr> <tr> <td>Näytä ympäristötiedot näytöllä</td> <td>Näytä nämä tiedot myös radion omalla näytöllä</td> </tr> <tr> <td>Käytä Fahrenheit yksikköä</td> <td>Käytä radion näytössä Fahrenheit-asteita. This is the node’s screen only — the app follows your phone’s locale, see <a href="units-and-locale">Units &amp; Locale</a></td> </tr> <tr> <td>Ilmanlaadun tietojen moduuli käytössä</td> <td>Raportoi hiukkas- ja CO₂-anturin tiedot</td> </tr> <tr> <td>Ilmanlaatumittareiden päivitysväli</td> <td>Kuinka usein tiedot raportoidaan</td> </tr> <tr> <td>Virrankulutuksen moduuli käytössä</td> <td>Raportoi kanavakohtaiset jännite- ja virtamittaukset</td> </tr> <tr> <td>Virtamittareiden päivitysväli</td> <td>Kuinka usein tiedot raportoidaan</td> </tr> <tr> <td>Virrankulutuksen näyttö käytössä</td> <td>Näytä virtamittaukset myös radion omalla näytöllä</td> </tr> </tbody> </table></div> <p>Katso <a href="telemetry-and-sensors">Telemetria ja anturit</a> saadaksesi tietoa tuetuista antureista ja määrityssuosituksista.</p> <h3 id="canned-message-module"> <a href="#canned-message-module" class="anchor-heading" aria-labelledby="canned-message-module"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Canned Message module </h3> <p>Pre-configured messages accessible from the node’s physical buttons (for nodes with rotary encoders, keypads, or similar input hardware). Määritä luettelo pikaviesteistä, jotka voidaan lähettää ilman yhdistettyä puhelinta — ihanteellinen kenttäkäyttöön.</p> <div class="table-wrapper"><table> <thead> <tr> <th>Asetus</th> <th>Kuvaus</th> </tr> </thead> <tbody> <tr> <td><del>Valmisviesti käytössä</del></td> <td>⚠️ <strong>Vanhentunut</strong> protobuf-rakenteessa</td> </tr> <tr> <td>Viestit</td> <td>Rivinvaihdoilla eroteltu viestiluettelo</td> </tr> <tr> <td>Lähetä äänimerkki</td> <td>Lähetä viestin mukana BEL-ohjausmerkki, jotta vastaanottavan radion Ulkoiset ilmoitukset -moduuli voi antaa hälytyksen</td> </tr> <tr> <td>Kiertovalitsin #1 käytössä</td> <td>Käytä kiertokoodainta syöttölaitteena</td> </tr> <tr> <td>GPIO pin for rotary encoder A / B / Press port</td> <td>Kolme nastaa, joihin kiertokoodain on kytketty</td> </tr> <tr> <td>Generate input event on Press / CW / CCW</td> <td>Minkä näppäintapahtuman kukin kiertokoodaimen toiminto tuottaa</td> </tr> <tr> <td>Ylös/Alas/Valitse syöte käytössä</td> <td>Erillinen, yksinkertaisempi syöttötapa, jossa käytetään ylös-/alas-/valitse-painikkeita kiertokoodaimen sijaan</td> </tr> <tr> <td><del>Salli syöttölähde</del></td> <td>⚠️ <strong>Vanhentunut</strong> protobuf-rakenteessa</td> </tr> </tbody> </table></div> <h3 id="audio-module"> <a href="#audio-module" class="anchor-heading" aria-labelledby="audio-module"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Audio module </h3> <p>Codec2-äänituki matalan kaistanleveyden puheviestintään verkossa. Tämä on <strong>kokeellinen</strong> ominaisuus, joka koodaa puheen erittäin pieniksi datapaketeiksi käyttäen Codec2-koodekkia.</p> <div class="table-wrapper"><table> <thead> <tr> <th>Asetus</th> <th>Kuvaus</th> </tr> </thead> <tbody> <tr> <td>CODEC 2 käytössä</td> <td>Ota äänimoduuli käyttöön</td> </tr> <tr> <td>CODEC2 näytteenottotaajuus</td> <td>Äänenlaadun ja kaistanleveyden välinen kompromissi</td> </tr> <tr> <td>PTT-pinni</td> <td>PTT-painikkeen GPIO-nasta</td> </tr> <tr> <td>I2S-sanan valinta</td> <td>GPIO-pinni I2S WS:lle</td> </tr> <tr> <td>I2S-datatulo</td> <td>GPIO-nasta I2S DIN:lle</td> </tr> <tr> <td>I2S-datalähtö</td> <td>GPIO-pinni I2S DOUT:lle</td> </tr> <tr> <td>I2S-kello</td> <td>I2S-bittikellon GPIO-nasta</td> </tr> </tbody> </table></div> <blockquote> <p>ℹ️ <strong>Huomautus:</strong> Ääniominaisuus edellyttää yhteensopivaa laitteistoa (I2S-mikrofoni ja -kaiutin). Äänenlaatu on hyvin matalakaistainen — ajattele “ymmärrettävää radiopuhetta”, ei puhelinlaatua.</p> </blockquote> <h3 id="remote-hardware-module"> <a href="#remote-hardware-module" class="anchor-heading" aria-labelledby="remote-hardware-module"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Remote Hardware module </h3> <p>GPIO-ohjaus mesh-verkon kautta. Mahdollistaa etäradion lukea tai kirjoittaa GPIO-nastoja toisessa radiossa — hyödyllinen releiden aktivointiin, kytkimien lukemiseen tai ulkoisen laitteiston ohjaamiseen etäältä.</p> <blockquote> <p>⚠️ <strong>Warning:</strong> Turning on <strong>Allow undefined pin access</strong> gives remote nodes access to all GPIO pins, which could interfere with the node’s own hardware. Turn it on only on dedicated GPIO nodes.</p> </blockquote> <div class="table-wrapper"><table> <thead> <tr> <th>Asetus</th> <th>Kuvaus</th> </tr> </thead> <tbody> <tr> <td>Etälaitteen ohjaus käytössä</td> <td>Ota etä-GPIO-käyttö käyttöön</td> </tr> <tr> <td>Salli määrittämättömän pinnin käyttö</td> <td>Salli pääsy mihin tahansa GPIO-nastaan (tietoturvariski)</td> </tr> <tr> <td>Käytettävissä olevat pinnit</td> <td>Enintään 4 tämän radion etälukuun tai kirjoitukseen tarjoamaa GPIO-pinniä</td> </tr> </tbody> </table></div> <h3 id="neighbor-info-module"> <a href="#neighbor-info-module" class="anchor-heading" aria-labelledby="neighbor-info-module"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Neighbor Info module </h3> <p>Lähettää tietoa suoraan kuulluista naapureista mahdollistaen verkon topologian kartoituksen. Jokainen käyttöön otettu radio jakaa säännöllisesti luettelon muista radioista, jotka se kuulee, sekä niiden signaalin laadun.</p> <div class="table-wrapper"><table> <thead> <tr> <th>Asetus</th> <th>Kuvaus</th> </tr> </thead> <tbody> <tr> <td>Naapuritiedot käytössä</td> <td>Ota naapuritiedon lähetys käyttöön</td> </tr> <tr> <td>Päivityksen aikaväli (sekuntia)</td> <td>Kuinka usein naapuriluettelo lähetetään</td> </tr> <tr> <td>Lähetä LoRa:n kautta</td> <td>Lähetä myös naapuritiedot LoRa:n kautta, ei pelkästään MQTT:n tai puhelimen kautta. Ei käytettävissä kanavalla, joka käyttää oletusavainta ja nimeä</td> </tr> </tbody> </table></div> <p>Katso <a href="discovery">Paikallinen mesh-haku</a>, miten naapuritietoja käytetään mesh-verkon rakenteen tutkimiseen.</p> <h3 id="ambient-lighting-module"> <a href="#ambient-lighting-module" class="anchor-heading" aria-labelledby="ambient-lighting-module"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Ambient Lighting module </h3> <p>Ohjaa tuetuissa laitteissa olevaa NeoPixeliä tai muita osoitteellisia RGB-LEDejä. Voidaan käyttää visuaalisina tilailmaisimina, ilmoitusvaloina tai koriste-efekteinä.</p> <div class="table-wrapper"><table> <thead> <tr> <th>Asetus</th> <th>Kuvaus</th> </tr> </thead> <tbody> <tr> <td>LED-tila</td> <td>Kytke LED päälle tai pois päältä</td> </tr> <tr> <td>Virta</td> <td>LED-virran rajoitus (0–31)</td> </tr> <tr> <td>Punainen / vihreä / sininen</td> <td>Yksittäisten värikanavien arvot (0–255)</td> </tr> </tbody> </table></div> <h3 id="detection-sensor-module"> <a href="#detection-sensor-module" class="anchor-heading" aria-labelledby="detection-sensor-module"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Detection Sensor module </h3> <p>Muuttaa radiosi liike- tai ovitunnistimeen perustuvaksi hälytysjärjestelmäksi. Kun GPIO-pinni havaitsee tilamuutoksen (liike havaittu, ovi avattu), radio lähettää hälytysviestin verkkoon.</p> <div class="table-wrapper"><table> <thead> <tr> <th>Asetus</th> <th>Kuvaus</th> </tr> </thead> <tbody> <tr> <td>Tunnistinsensori käytössä</td> <td>Ota tunnistusanturi käyttöön</td> </tr> <tr> <td>GPIO-pinni valvontaa varten</td> <td>Anturiin kytketty GPIO-pinni</td> </tr> <tr> <td>Tunnistuksen tyyppi</td> <td>Miten pinnin tila vastaa havaitsemistapahtumaa (esim. aktiivinen korkea/matala taso tai reunalaukaisu)</td> </tr> <tr> <td>Käytä INPUT_PULLUP tilaa</td> <td>Ota pinnin sisäinen ylösvetovastus käyttöön</td> </tr> <tr> <td>Minimilähetys (sekuntia)</td> <td>Hälytyslähetysten vähimmäisaika</td> </tr> <tr> <td>Tilatiedon lähetys (sekuntia)</td> <td>Tilatiedon lähetysväli</td> </tr> <tr> <td>Lähetä äänimerkki hälytyssanoman kanssa</td> <td>Sisällytä soittomerkkimerkki hälytyksiin</td> </tr> <tr> <td>Käyttäjäystävällinen nimi</td> <td>Tälle anturille määritetty nimi</td> </tr> </tbody> </table></div> <h3 id="paxcounter-module"> <a href="#paxcounter-module" class="anchor-heading" aria-labelledby="paxcounter-module"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Paxcounter module </h3> <p>Henkilöt, jotka lasketaan WiFi- ja BLE-hakukyselyiden perusteella. Laskee lähellä olevia laitteita kuuntelemalla passiivisesti koepyyntöjä, joita puhelimet ja kannettavat tietokoneet lähettävät etsiessään verkkoja. Saatavilla vain ESP32-laitteissa.</p> <div class="table-wrapper"><table> <thead> <tr> <th>Asetus</th> <th>Kuvaus</th> </tr> </thead> <tbody> <tr> <td>PAX-laskuri käytössä</td> <td>Ota henkilölaskenta käyttöön</td> </tr> <tr> <td>Päivityksen aikaväli (sekuntia)</td> <td>Kuinka usein laskentatiedot raportoidaan</td> </tr> <tr> <td>WiFi-signaalin RSSI-kynnys</td> <td>Ignore Wi-Fi probes weaker than this, so distant devices aren’t counted (defaults to −80 dBm)</td> </tr> <tr> <td>BLE-signaalin RSSI-kynnys</td> <td>Sama raja-arvo BLE-mainospaketeille (oletus: -80 dBm)</td> </tr> </tbody> </table></div> <blockquote> <p>💡 <strong>Vinkki:</strong> PAX-laskuri on hyödyllinen jalankulkijamäärien arviointiin retkeilyreittien lähtöpisteissä, tapahtumapaikoilla tai muissa kohteissa. Laskentatulokset ovat arvioita — yhdellä henkilöllä voi olla useita laitteita mukana.</p> </blockquote> <h3 id="status-message-module"> <a href="#status-message-module" class="anchor-heading" aria-labelledby="status-message-module"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Status Message module </h3> <p>Tilaviestillä ei ole omaa moduulinäkymää. Sitä muokataan yhdessä muiden radion tunnistetietojen kanssa kohdassa <a href="settings-radio-user#user-profile">Asetukset → Radio ja käyttäjä</a>.</p> <h3 id="mesh-beacon-module"> <a href="#mesh-beacon-module" class="anchor-heading" aria-labelledby="mesh-beacon-module"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Mesh Beacon module </h3> <p>Lähettää kutsun mesh-verkkoosi ja vastaanottaa muiden lähettämiä kutsuja. The entry appears only on nodes running firmware 2.8.0 or newer. See <a href="discovery">Local Mesh Discovery</a> for the full walkthrough.</p> <h3 id="tak-module"> <a href="#tak-module" class="anchor-heading" aria-labelledby="tak-module"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> TAK module </h3> <p>Team Awareness Kit -integraatio yhteensopivuutta varten ATAK- ja WinTAK-järjestelmien kanssa. Two things have to be true before the entry appears in the module list: the node runs firmware 2.8.0 or newer, and its <strong>Device Role</strong> on <strong>Settings → Device configuration → Device</strong> is set to <code class="language-plaintext highlighter-rouge">TAK</code> or <code class="language-plaintext highlighter-rouge">TAK_TRACKER</code>. Katso <a href="tak">TAK-integraatio</a> saadaksesi tarkemmat määritys- ja käyttöohjeet.</p> <h2 id="ylläpito"> <a href="#ylläpito" class="anchor-heading" aria-labelledby="ylläpito"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Ylläpito </h2> <h3 id="etähallinta"> <a href="#etähallinta" class="anchor-heading" aria-labelledby="etähallinta"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Etähallinta </h3> <p>Määritä etänä radiot, jotka jakavat saman ylläpitoavaimen:</p> <ol> <li>Valitse kohderadio radioluettelosta.</li> <li>Siirry kyseisen radion <strong>Asetukset</strong>-kohtaan.</li> <li>Muokkaa määrityksiä.</li> <li>Napauta <strong>Tallenna</strong> — muutokset lähetetään verkon kautta.</li> </ol> <blockquote> <p>⚠️ <strong>Tärkeää:</strong> Edellyttää, että järjestelmänvalvojan avain on määritetty sekä omassa radiossasi että kohderadiossa.</p> </blockquote> <h3 id="device-actions"> <a href="#device-actions" class="anchor-heading" aria-labelledby="device-actions"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Device Actions </h3> <p><strong>Settings → Administration</strong> holds five one-shot actions, each behind a confirmation dialog:</p> <div class="table-wrapper"><table> <thead> <tr> <th>Toiminto</th> <th>Mitä se tekee</th> </tr> </thead> <tbody> <tr> <td>Aseta aika</td> <td>Sends your phone’s clock to the node</td> </tr> <tr> <td>Käynnistä uudelleen</td> <td>Restarts the node</td> </tr> <tr> <td>Sammuta</td> <td>Powers the node down</td> </tr> <tr> <td>Palauta tehdasasetukset</td> <td>Returns every setting to its factory default</td> </tr> <tr> <td>Tyhjennä NodeDB-tietokanta</td> <td>Clears the node database. This dialog carries a <strong>Preserve Favorites?</strong> switch</td> </tr> </tbody> </table></div> <blockquote> <p>⚠️ <strong>Warning:</strong> Factory reset erases all settings, channels, and keys, and cannot be undone. Before you reset, use <strong>Export configuration</strong> to save the node’s settings and <strong>Backup Keys</strong> on the Security screen to save its keys, so you can put both back afterwards.</p> </blockquote> <h3 id="varmuuskopiointi-ja-palautus"> <a href="#varmuuskopiointi-ja-palautus" class="anchor-heading" aria-labelledby="varmuuskopiointi-ja-palautus"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Varmuuskopiointi ja palautus </h3> <p><strong>Settings → Backup &amp; Restore</strong> writes the connected node’s whole configuration to a file with <strong>Export configuration</strong>, and reads a saved file back in with <strong>Import configuration</strong>. Export before a factory reset, or to copy one node’s setup onto another. The section is shown for your own node only, not over remote admin.</p> <h3 id="lisäasetukset"> <a href="#lisäasetukset" class="anchor-heading" aria-labelledby="lisäasetukset"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Lisäasetukset </h3> <p><strong>Settings → Advanced</strong> collects the tools that read or rewrite local state, and is likewise shown for your own node only: <strong>Firmware Update</strong> on OTA-capable hardware, <strong>Clean Node Database</strong>, <strong>TAK Server</strong>, <strong>Local Mesh Discovery</strong>, and the <strong>Debug Panel</strong>.</p> <h4 id="tyhjennä-nodedb-tietokanta"> <a href="#tyhjennä-nodedb-tietokanta" class="anchor-heading" aria-labelledby="tyhjennä-nodedb-tietokanta"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Tyhjennä NodeDB-tietokanta </h4> <p>Prunes nodes from your node database — from the app’s copy <em>and</em> from the node’s own, so this is not a display-only cleanup. The two filters combine rather than acting separately; the screen puts it as <em>Selections are additive</em>.</p> <ul> <li><strong>Clean up nodes last seen older than N days</strong> — always applied. The slider runs from 7 days to 365 and starts at 30; with <strong>Clean up only unknown nodes</strong> turned on, its floor drops to 0.</li> <li><strong>Clean up only unknown nodes</strong> — narrows the same purge to nodes that never sent their user info. The age limit still applies on top of it.</li> </ul> <p>The screen lists the nodes queued for deletion as you move the filters. <strong>Clean Now</strong> carries the purge out, after one more confirmation, and it can’t be undone. Favorited nodes, ignored nodes, and nodes with a public key heard in the last seven days are never removed, whatever the filters say — that is why the queued list can be shorter than you expect.</p> <h4 id="vianetsintäpaneeli"> <a href="#vianetsintäpaneeli" class="anchor-heading" aria-labelledby="vianetsintäpaneeli"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Vianetsintäpaneeli </h4> <p>Avaa <strong>Paketit</strong>- ja <strong>Sovelluslokit</strong>-välilehdet diagnostiikkatietojen tarkastelua, suodatusta ja vientiä varten. Katso <a href="debug-logs">Virheenjäljityslokit</a>, jossa on täydellinen käyttöohje.</p> <h3 id="app-settings"> <a href="#app-settings" class="anchor-heading" aria-labelledby="app-settings"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> App Settings </h3> <p>The <strong>App Settings</strong> block on the <strong>Settings</strong> screen configures the app rather than the node, and appears only when your own node is selected. It is grouped rather than flat:</p> <p><strong>Privacy</strong></p> <ul> <li><strong>Allow analytics and crash reporting</strong> — opt in or out of diagnostics.</li> <li><strong>Provide phone location to mesh</strong> — share this phone’s position when the node has no GPS fix.</li> <li><strong>Homoglyph encoding</strong> — how look-alike characters in names are handled.</li> </ul> <p><strong>Appearance</strong></p> <ul> <li><strong>Units</strong> — metric, imperial, or follow the system. This is the entry <a href="units-and-locale">Units &amp; Locale</a> sends you to.</li> <li><strong>Theme</strong> and <strong>Language</strong>.</li> <li><strong>Show full message timestamps</strong>.</li> </ul> <p><strong>Persistence</strong></p> <ul> <li>A cache limit for how much history is kept.</li> <li><strong>Export rangetest packets</strong>, <strong>Export all packets</strong> and <strong>Export node database</strong>.</li> </ul> <p><strong>On their own</strong></p> <ul> <li><strong>Node Layout</strong> — how much detail each row of the node list shows.</li> <li><strong>Wi-Fi Provisioning for mPWRD-OS</strong> — see <a href="connections">Connections</a>.</li> <li><strong>Message Filter</strong> — hides incoming messages that contain words you list. With no words configured it does nothing.</li> <li><strong>System AI</strong> — appears only where app functions are available; see <a href="app-functions">App Functions</a>.</li> </ul> <p>A <strong>Permissions</strong> block sits above App Settings, so a user who skipped a permission during onboarding can get back to it, and <strong>App Info</strong> sits below.</p> <h3 id="tietoja"> <a href="#tietoja" class="anchor-heading" aria-labelledby="tietoja"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Tietoja </h3> <p><strong>Settings → About</strong> carries the app’s own identity rather than the node’s:</p> <p>Kolme osiota:</p> <ul> <li><strong>Mikä on Meshtastic?</strong> – lyhyt kuvaus projektista.</li> <li><strong>Sovellukset</strong> — avaa <strong>Tarvitsetko laitteiston?</strong> -näkymän, jossa on suosittujen laitteiden karuselli ja linkit niiden ostopaikkoihin. Siellä näytetään myös GitHub-tietovarasto, käytössä oleva sovellusversio ja <strong>Tekijätiedot</strong> (katso seuraava osio).</li> <li><strong>Project information</strong> — links to the website, to this documentation, and to the GNU GPL v3 license the app is released under.</li> </ul> <p>The footer states the copyright and that the app is free software with no warranty, which you may redistribute under the same license.</p> <h3 id="kiitokset"> <a href="#kiitokset" class="anchor-heading" aria-labelledby="kiitokset"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Kiitokset </h3> <p><strong>Tietoja</strong>-kohdasta avattava näkymä, jossa luetellaan kaikki sovelluksen käyttämät avoimen lähdekoodin kirjastot lisensseineen. Luettelo luodaan käännöshetkellä AboutLibraries-kirjastolla. Tätä kutsuttiin aiemmin lisenssinäkymäksi.</p> <h3 id="troubleshooting-remote-admin"> <a href="#troubleshooting-remote-admin" class="anchor-heading" aria-labelledby="troubleshooting-remote-admin"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Troubleshooting remote admin </h3> <ul> <li><strong>Ei vastausta kohderadiolta</strong> — kohderadio voi olla kuuluvuusalueen ulkopuolella, poissa verkosta tai siinä voi olla eri ylläpitoavain. Varmista, että ylläpitoavain on sama molemmissa radioissa.</li> <li><strong>Muutokset eivät tule voimaan</strong> — jotkin asetukset edellyttävät uudelleenkäynnistystä ennen kuin ne astuvat voimaan. Kokeile Uudelleenkäynnistystä tallennuksen jälkeen.</li> <li><strong>Et näe etäasetuksia</strong> — varmista, että radiossasi on kohderadion ylläpitoavain. Ylläpitokanava määritetään automaattisesti, kun ylläpitoavain on asetettu.</li> </ul> <h2 id="aiheeseen-liittyvät-aiheet"> <a href="#aiheeseen-liittyvät-aiheet" class="anchor-heading" aria-labelledby="aiheeseen-liittyvät-aiheet"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Aiheeseen liittyvät aiheet </h2> <ul> <li><a href="settings-radio-user">Settings — Radio &amp; User</a> — core node and user profile settings</li> <li><a href="https://meshtastic.org/docs/configuration/module">Moduulien määritysviite</a> — yksityiskohtainen moduulidokumentaatio meshtastic.org-sivustolla</li> <li><a href="https://meshtastic.org/docs/faq/">UKK</a> – usein kysytyt kysymykset meshtastic.org -sivustolla</li> </ul> </div> <style> .locale-page-banner { background: rgba(103, 234, 148, 0.1); border: 1px solid rgba(103, 234, 148, 0.3); border-radius: 12px; padding: 10px 16px; margin-bottom: 1.5rem; font-size: 0.85rem; } .locale-notice a { margin-left: 12px; font-weight: 500; } </style> </main> <hr> <footer> <footer class="site-footer"> Copyright &copy; 2026 Meshtastic LLC. Distributed under the <a href="https://www.gnu.org/licenses/gpl-3.0.html">GPL v3 License.</a> </footer> <div class="d-sm-block d-md-none"> <div class="mt-4 fs-2"> This site uses <a href="https://github.com/just-the-docs/just-the-docs">Just the Docs</a>, a documentation theme for Jekyll. </div> </div> </footer> </div> </div> <div class="search-overlay"></div> </div> </body> </html>