Flipper Zero Documentation
<style>
#main-column.w-full.max-w-\[760px\] {
max-width: unset;
}
.landing-wrapper {
margin: 0 1rem 1rem 1rem;
}
.landing-wrapper header>div:first-of-type {
width: 450px;
height: 190px;
margin-right: 3rem;
background-image: url(https://cdn.flipperzero.one/whiteFlatNew.svg);
background-size: contain;
background-repeat: no-repeat;
}
.landing-wrapper header>div:last-of-type>h1 {
font-size: 51px;
font-weight: 600;
color: #afafaf;
}
.landing-wrapper header>div:last-of-type>p {
font-size: 24px;
}
@media (max-width: 400px) {
.landing-wrapper .text-5xl {
font-size: 2.7rem;
}
}
</style>
<div class="landing-wrapper flex flex-col items-center">
<style>
.landing-wrapper {
white-space: initial;
}
.landing-wrapper>.header>div:first-of-type {
width: 400px;
height: 175px;
margin-right: 3rem;
background-image: url(https://cdn.flipperzero.one/whiteFlatNew.svg);
background-size: contain;
background-repeat: no-repeat;
background-position: center;
}
.landing-wrapper>.header {
max-width: 1242px;
}
.landing-wrapper>.grid {
grid-template-columns: 1fr 1fr 1fr;
grid-gap: 1.5rem;
margin-top: 2.5rem;
}
.landing-wrapper>.grid>.category {
max-width: 400px;
padding: 1.5rem 1rem 1.5rem 1.5rem;
border-radius: 7px;
border: 1px solid #AFAFAF;
transition-duration: 300ms;
cursor: pointer;
}
.landing-wrapper>.grid>.category:hover {
border-color: transparent;
box-shadow: 0px 4px 16px 1px #cbcbcb5e;
}
.landing-wrapper>.grid>.category>div:first-of-type {
width: 4.75rem;
height: 4rem;
margin-right: 1.5rem;
background-size: contain;
background-repeat: no-repeat;
background-position: center center;
image-rendering: pixelated;
}
.landing-wrapper>.grid>.category>div:last-of-type {
width: 3.5rem;
height: 100%;
background-image: url(https://cdn.flipperzero.one/docs-landing-chevron-down.png);
background-repeat: no-repeat;
background-size: 20px;
background-position: bottom 22% right;
}
.landing-wrapper>.grid>.category>div:nth-of-type(2) {
width: 100%;
}
.landing-wrapper>.grid>.category:hover>div:last-of-type {
background-image: url(https://cdn.flipperzero.one/docs-landing-chevron-down-black.png);
}
@media (max-width: 920px) {
.landing-wrapper>.grid {
grid-template-columns: 1fr 1fr;
}
}
@media (max-width: 780px) {
.landing-wrapper {
margin-top: 1rem;
}
.header {
flex-direction: column;
max-width: 90vw;
}
.landing-wrapper>.header>div:first-of-type {
width: 280px;
height: 125px;
margin: 0 0 1.5rem 0;
}
.landing-wrapper>.header>div:last-of-type {
text-align: center;
max-width: 80vw;
}
}
@media (max-width: 620px) {
.landing-wrapper {
margin-top: 1rem;
}
.landing-wrapper>.header>div:first-of-type {
width: 235px;
height: 100px;
}
.landing-wrapper>.grid {
grid-template-columns: 1fr;
}
}
@media (max-width: 375px) {
.landing-wrapper>.header>div:last-of-type>h1 {
font-size: 2.5rem;
}
.landing-wrapper>.header>div:last-of-type>p {
font-size: 1.15rem;
}
}
</style>
<div class="header flex items-center">
<div></div>
<div>
<h1 class="h1 font-bold text-5xl pb-4">
Flipper Zero Documentation
</h1>
<p class="text-xl">
Need help using your Flipper Zero?<br />
Discover user guides, developer documentation, schematics, blueprints, and more.
</p>
</div>
</div>
<div class="grid">
<div class="category flex items-center"
onclick="window.open('https://docs.flipperzero.one/basics/first-start', 'this')">
<div style="background-image: url(https://cdn.flipperzero.one/black-pixel-icon-general.png);"></div>
<div>
<h4 class="text-xl font-bold text-gray-900">
Basics
</h4>
<p>
Learn how to update firmware, manage device controls, insert a microSD card, customize settings, and
troubleshoot issues.
</p>
</div>
<div></div>
</div>
<div class="category flex items-center" onclick="window.open('https://docs.flipperzero.one/sub-ghz', 'this')">
<div style="background-image: url(https://cdn.flipperzero.one/black-pixel-icon-subghz.png)"></div>
<div>
<h4 class="text-xl font-bold text-gray-900">
Sub-GHz
</h4>
<p>
Engage with radio signals that operate at frequencies below 1 GHz. Control devices that use radio technology.
</p>
</div>
<div></div>
</div>
<div class="category flex items-center" onclick="window.open('https://docs.flipperzero.one/rfid', 'this')">
<div style="background-image: url(https://cdn.flipperzero.one/black-pixel-icon-rfid.png)"></div>
<div>
<h4 class="text-xl font-bold text-gray-900">
125 kHz RFID
</h4>
<p>
Explore the technology behind low-frequency proximity cards and discover how to read, write, and emulate RFID
tags.
</p>
</div>
<div></div>
</div>
<div class="category flex items-center" onclick="window.open('https://docs.flipperzero.one/nfc', 'this')">
<div style="background-image: url(https://cdn.flipperzero.one/black-pixel-icon-nfc.png)"></div>
<div>
<h4 class="text-xl font-bold text-gray-900">
NFC
</h4>
<p>
Discover the 13.56 MHz RFID technology, including reading, writing, and emulating NFC cards, extracting keys
and passwords.
</p>
</div>
<div></div>
</div>
<div class="category flex items-center" onclick="window.open('https://docs.flipperzero.one/infrared', 'this')">
<div style="background-image: url(https://cdn.flipperzero.one/black-pixel-icon-infrared.png)"></div>
<div>
<h4 class="text-xl font-bold text-gray-900">
Infrared
</h4>
<p>
Understand infrared signals used in TVs, sound systems, projectors, and others, and discover how to read and
emulate remotes.
</p>
</div>
<div></div>
</div>
<div class="category flex items-center"
onclick="window.open('https://docs.flipperzero.one/gpio-and-modules', 'this')">
<div style="background-image: url(https://cdn.flipperzero.one/black-pixel-icon-gpio.png)"></div>
<div>
<h4 class="text-xl font-bold text-gray-900">
GPIO & modules
</h4>
<p>
Learn about general-purpose input/output pins for connecting modules and how to use Flipper Zero as a USB to
UART/SPI/I2C converter.
</p>
</div>
<div></div>
</div>
<div class="category flex items-center" onclick="window.open('https://docs.flipperzero.one/ibutton', 'this')">
<div style="background-image: url(https://cdn.flipperzero.one/black-pixel-icon-ibutton.png)"></div>
<div>
<h4 class="text-xl font-bold text-gray-900">
iButton
</h4>
<p>
Understand the 1-Wire technology to read, write, and emulate iButton electronic keys used in access control
systems.
</p>
</div>
<div></div>
</div>
<div class="category flex items-center" onclick="window.open('https://docs.flipperzero.one/bad-usb', 'this')">
<div style="background-image: url(https://cdn.flipperzero.one/black-pixel-icon-badusb.png)"></div>
<div>
<h4 class="text-xl font-bold text-gray-900">
Bad USB
</h4>
<p>
Learn how to upload a Rubber Ducky script to a PC to emulate a keyboard that sends commands.
</p>
</div>
<div></div>
</div>
<div class="category flex items-center" onclick="window.open('https://docs.flipperzero.one/u2f', 'this')">
<div style="background-image: url(https://cdn.flipperzero.one/black-pixel-icon-u2f.svg)"></div>
<div>
<h4 class="text-xl font-bold text-gray-900">
U2F
</h4>
<p>
Sign in to web accounts using Flipper Zero as the second authentication factor security key.
</p>
</div>
<div></div>
</div>
<div class="category flex items-center" onclick="window.open('https://docs.flipper.net/apps', 'this')">
<div style="background-image: url(https://cdn.flipperzero.one/black-pixel-icon-modules.png)"></div>
<div>
<h4 class="text-xl font-bold text-gray-900">
Apps
</h4>
<p>
Explore an ever-growing collection of apps developed by the Flipper Zero community.
</p>
</div>
<div></div>
</div>
<div class="category flex items-center" onclick="window.open('https://docs.flipperzero.one/mobile-app', 'this')">
<div style="background-image: url(https://cdn.flipperzero.one/black-pixel-icon-mobile.png)"></div>
<div>
<h4 class="text-xl font-bold text-gray-900">
Flipper Mobile App
</h4>
<p>
Learn about the mobile application that makes using Flipper Zero even more convenient.
</p>
</div>
<div></div>
</div>
<div class="category flex items-center" onclick="window.open('https://docs.flipperzero.one/qflipper', 'this')">
<div style="background-image: url(https://cdn.flipperzero.one/black-pixel-icon-qflipper.svg)"></div>
<div>
<h4 class="text-xl font-bold text-gray-900">
qFlipper
</h4>
<p>
Understand how to use the desktop application for updating and repairing firmware and managing files.
</p>
</div>
<div></div>
</div>
<div class="category flex items-center" onclick="window.open('https://docs.flipperzero.one/development', 'this')">
<div style="background-image: url(https://cdn.flipperzero.one/black-pixel-icon-develop.svg)"></div>
<div>
<h4 class="text-xl font-bold text-gray-900">
Development
</h4>
<p>
Dive into software and hardware development with developer documentation, schematics, and blueprints.
</p>
</div>
<div></div>
</div>
<div class="category flex items-center" onclick="window.open('https://docs.flipper.net/video-game-module', 'this')">
<div style="background-image: url(https://cdn.flipperzero.one/black-pixel-icon-vgm.svg)"></div>
<div>
<h4 class="text-xl font-bold text-gray-900">
Video Game Module
</h4>
<p>
Add new entertainment and development possibilities to your Flipper Zero with the Video Game Module.
</p>
</div>
<div></div>
</div>
</div>
</div>
<script>
window.name = 'this'
function loadLanding() {
document.querySelector('.ab-doc-name').style.display = 'none'
document.querySelector("#main-column").style.maxWidth = 'fit-content'
const sidebar = document.querySelector('.w-full.ab-space-content > div > .ab-right-column').parentElement
next.router.events.on('routeChangeComplete', () => {
if (location.pathname === '/') {
document.querySelector('.ab-doc-name').style.display = 'none'
sidebar.style.display = 'none'
} else {
document.querySelector("#main-column").style.maxWidth = ''
document.querySelector('.ab-doc-name').style.display = 'block'
sidebar.style.display = 'block'
}
})
if (location.pathname === '/') {
sidebar.style.display = 'none'
/* const header = document.querySelector("#ab-top-navbar")
if (!header) {
throw new Error('Header not found')
} */
const wrapper = document.querySelector('.landing-wrapper')
if (!wrapper) {
throw new Error('Wrapper not found')
}
wrapper.style.display = 'flex'
// header.after(wrapper)
document.querySelector("#main-column > div > div > div.flex.flex-col").style.display = 'none'
const iframe = document.querySelector('.landing-wrapper').parentElement
iframe.style.maxHeight = '100%'
iframe.style.height = '100%'
} else {
container.style.display = 'flex'
document.querySelector('.landing-wrapper').style.display = 'none'
}
}
loadLanding()
localStorage.setItem('oldHref', document.location.href)
function observe() {
const bodyList = document.querySelector("body")
const observer = new MutationObserver(function (mutations) {
mutations.forEach(function (mutation) {
if (localStorage.getItem('oldHref') !== document.location.href) {
localStorage.setItem('oldHref', document.location.href)
loadLanding()
}
})
})
observer.observe(bodyList, {
childList: true,
subtree: true
})
}
observe()
</script>