5 lines
40 KiB
HTML

<!doctype html><html lang=en class=no-js> <head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><meta name=description content="FunKey S - the world's smallest foldable handheld console Ultra-compact, foldable, powerful and comfortable, the FunKey S is the perfect handheld for playing retrogames anywhere, anytime."><meta name=author content="Michel Stempin"><link href=https://doc.funkey-project.com/developer_guide/tutorials/access_recovery/ rel=canonical><link href=../../software_reference/sd_card_layout/directory_structure/ rel=prev><link href=../build_system/ rel=next><link rel=icon href=../../../assets/favicon.png><meta name=generator content="mkdocs-1.6.0, mkdocs-material-9.5.21"><title>Access the Recovery Boot Mode - FunKey Project Documentation</title><link rel=stylesheet href=../../../assets/stylesheets/main.66ac8b77.min.css><link rel=stylesheet href=../../../assets/stylesheets/palette.06af60db.min.css><link rel=preconnect href=https://fonts.gstatic.com crossorigin><link rel=stylesheet href="https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,700,700i%7CRoboto+Mono:400,400i,700,700i&display=fallback"><style>:root{--md-text-font:"Roboto";--md-code-font:"Roboto Mono"}</style><link rel=stylesheet href=../../../assets/css/custom.css><link rel=stylesheet href=../../../assets/css/simple-lightbox.min.css><script>__md_scope=new URL("../../..",location),__md_hash=e=>[...e].reduce((e,_)=>(e<<5)-e+_.charCodeAt(0),0),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script></head> <body dir=ltr data-md-color-scheme=default data-md-color-primary=deep-purple data-md-color-accent=indigo> <input class=md-toggle data-md-toggle=drawer type=checkbox id=__drawer autocomplete=off> <input class=md-toggle data-md-toggle=search type=checkbox id=__search autocomplete=off> <label class=md-overlay for=__drawer></label> <div data-md-component=skip> <a href=#enter-the-recovery-mode class=md-skip> Skip to content </a> </div> <div data-md-component=announce> </div> <header class="md-header md-header--shadow" data-md-component=header> <nav class="md-header__inner md-grid" aria-label=Header> <a href=../../.. title="FunKey Project Documentation" class="md-header__button md-logo" aria-label="FunKey Project Documentation" data-md-component=logo> <img src=../../../assets/images/logo.png alt=logo> </a> <label class="md-header__button md-icon" for=__drawer> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M3 6h18v2H3V6m0 5h18v2H3v-2m0 5h18v2H3v-2Z"/></svg> </label> <div class=md-header__title data-md-component=header-title> <div class=md-header__ellipsis> <div class=md-header__topic> <span class=md-ellipsis> FunKey Project Documentation </span> </div> <div class=md-header__topic data-md-component=header-topic> <span class=md-ellipsis> Access the Recovery Boot Mode </span> </div> </div> </div> <label class="md-header__button md-icon" for=__search> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5Z"/></svg> </label> <div class=md-search data-md-component=search role=dialog> <label class=md-search__overlay for=__search></label> <div class=md-search__inner role=search> <form class=md-search__form name=search> <input type=text class=md-search__input name=query aria-label=Search placeholder=Search autocapitalize=off autocorrect=off autocomplete=off spellcheck=false data-md-component=search-query required> <label class="md-search__icon md-icon" for=__search> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5Z"/></svg> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12Z"/></svg> </label> <nav class=md-search__options aria-label=Search> <button type=reset class="md-search__icon md-icon" title=Clear aria-label=Clear tabindex=-1> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41Z"/></svg> </button> </nav> </form> <div class=md-search__output> <div class=md-search__scrollwrap data-md-scrollfix> <div class=md-search-result data-md-component=search-result> <div class=md-search-result__meta> Initializing search </div> <ol class=md-search-result__list role=presentation></ol> </div> </div> </div> </div> </div> <div class=md-header__source> <a href=https://github.com/FunKey-Project/FunKey-Project.github.io title="Go to repository" class=md-source data-md-component=source> <div class="md-source__icon md-icon"> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 448 512"><!-- Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg> </div> <div class=md-source__repository> GitHub </div> </a> </div> </nav> </header> <div class=md-container data-md-component=container> <main class=md-main data-md-component=main> <div class="md-main__inner md-grid"> <div class="md-sidebar md-sidebar--primary" data-md-component=sidebar data-md-type=navigation> <div class=md-sidebar__scrollwrap> <div class=md-sidebar__inner> <nav class="md-nav md-nav--primary" aria-label=Navigation data-md-level=0> <label class=md-nav__title for=__drawer> <a href=../../.. title="FunKey Project Documentation" class="md-nav__button md-logo" aria-label="FunKey Project Documentation" data-md-component=logo> <img src=../../../assets/images/logo.png alt=logo> </a> FunKey Project Documentation </label> <div class=md-nav__source> <a href=https://github.com/FunKey-Project/FunKey-Project.github.io title="Go to repository" class=md-source data-md-component=source> <div class="md-source__icon md-icon"> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 448 512"><!-- Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg> </div> <div class=md-source__repository> GitHub </div> </a> </div> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../.. class=md-nav__link> <span class=md-ellipsis> Overview </span> </a> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type=checkbox id=__nav_2> <label class=md-nav__link for=__nav_2 id=__nav_2_label tabindex=0> <span class=md-ellipsis> User's Manual </span> <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav data-md-level=1 aria-labelledby=__nav_2_label aria-expanded=false> <label class=md-nav__title for=__nav_2> <span class="md-nav__icon md-icon"></span> User's Manual </label> <ul class=md-nav__list data-md-scrollfix> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type=checkbox id=__nav_2_1> <label class=md-nav__link for=__nav_2_1 id=__nav_2_1_label tabindex=0> <span class=md-ellipsis> Tutorials </span> <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav data-md-level=2 aria-labelledby=__nav_2_1_label aria-expanded=false> <label class=md-nav__title for=__nav_2_1> <span class="md-nav__icon md-icon"></span> Tutorials </label> <ul class=md-nav__list data-md-scrollfix> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type=checkbox id=__nav_2_1_1> <label class=md-nav__link for=__nav_2_1_1 id=__nav_2_1_1_label tabindex=0> <span class=md-ellipsis> Software </span> <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav data-md-level=3 aria-labelledby=__nav_2_1_1_label aria-expanded=false> <label class=md-nav__title for=__nav_2_1_1> <span class="md-nav__icon md-icon"></span> Software </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../../user_manual/tutorials/software/add_roms/ class=md-nav__link> <span class=md-ellipsis> Add New ROMs </span> </a> </li> <li class=md-nav__item> <a href=../../../user_manual/tutorials/software/add_opk/ class=md-nav__link> <span class=md-ellipsis> Add OPK Files </span> </a> </li> <li class=md-nav__item> <a href=../../../user_manual/tutorials/software/gba_bios/ class=md-nav__link> <span class=md-ellipsis> Install the GBA/PS1 BIOS </span> </a> </li> <li class=md-nav__item> <a href=../../../user_manual/tutorials/software/aspect_ratio/ class=md-nav__link> <span class=md-ellipsis> Change Aspect Ratio </span> </a> </li> <li class=md-nav__item> <a href=../../../user_manual/tutorials/software/snapshot/ class=md-nav__link> <span class=md-ellipsis> Take a Snapshot </span> </a> </li> <li class=md-nav__item> <a href=../../../user_manual/tutorials/software/firmware_update/ class=md-nav__link> <span class=md-ellipsis> Firmware Upgrade </span> </a> </li> <li class=md-nav__item> <a href=../../../user_manual/tutorials/software/gb_palette/ class=md-nav__link> <span class=md-ellipsis> Change Game Boy Palette </span> </a> </li> <li class=md-nav__item> <a href=../../../user_manual/tutorials/software/gmenu2x_wallpaper/ class=md-nav__link> <span class=md-ellipsis> Change GMenu2X Wallpaper </span> </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type=checkbox id=__nav_2_1_2> <label class=md-nav__link for=__nav_2_1_2 id=__nav_2_1_2_label tabindex=0> <span class=md-ellipsis> Hardware </span> <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav data-md-level=3 aria-labelledby=__nav_2_1_2_label aria-expanded=false> <label class=md-nav__title for=__nav_2_1_2> <span class="md-nav__icon md-icon"></span> Hardware </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../../user_manual/tutorials/hardware/teardown/ class=md-nav__link> <span class=md-ellipsis> Teardown </span> </a> </li> <li class=md-nav__item> <a href=../../../user_manual/tutorials/hardware/flash_change_sd_card/ class=md-nav__link> <span class=md-ellipsis> Flash & Change micro-SD Card </span> </a> </li> <li class=md-nav__item> <a href=../../../user_manual/tutorials/hardware/change_buttons/ class=md-nav__link> <span class=md-ellipsis> Change the Buttons </span> </a> </li> <li class=md-nav__item> <a href=../../../user_manual/tutorials/hardware/fix_unstuck_screen/ class=md-nav__link> <span class=md-ellipsis> </span> </a> </li> </ul> </nav> </li> </ul> </nav> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--active md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type=checkbox id=__nav_3 checked> <label class=md-nav__link for=__nav_3 id=__nav_3_label tabindex=0> <span class=md-ellipsis> Developer's Guide </span> <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav data-md-level=1 aria-labelledby=__nav_3_label aria-expanded=true> <label class=md-nav__title for=__nav_3> <span class="md-nav__icon md-icon"></span> Developer's Guide </label> <ul class=md-nav__list data-md-scrollfix> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type=checkbox id=__nav_3_1> <div class="md-nav__link md-nav__container"> <a href=../../hardware_reference/ class="md-nav__link "> <span class=md-ellipsis> Hardware Reference </span> </a> <label class="md-nav__link " for=__nav_3_1 id=__nav_3_1_label tabindex=0> <span class="md-nav__icon md-icon"></span> </label> </div> <nav class=md-nav data-md-level=2 aria-labelledby=__nav_3_1_label aria-expanded=false> <label class=md-nav__title for=__nav_3_1> <span class="md-nav__icon md-icon"></span> Hardware Reference </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../hardware_reference/architecture/ class=md-nav__link> <span class=md-ellipsis> Architecture </span> </a> </li> <li class=md-nav__item> <a href=https://htmlpreview.github.io/?https://github.com/FunKey-Project/FunKey-S-Hardware/blob/master/BOM/ibom.html class=md-nav__link> <span class=md-ellipsis> BOM </span> </a> </li> <li class=md-nav__item> <a href=../../hardware_reference/cpu/ class=md-nav__link> <span class=md-ellipsis> CPU </span> </a> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type=checkbox id=__nav_3_1_4> <label class=md-nav__link for=__nav_3_1_4 id=__nav_3_1_4_label tabindex=0> <span class=md-ellipsis> Power </span> <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav data-md-level=3 aria-labelledby=__nav_3_1_4_label aria-expanded=false> <label class=md-nav__title for=__nav_3_1_4> <span class="md-nav__icon md-icon"></span> Power </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../hardware_reference/power/power_supplies_topologies/ class=md-nav__link> <span class=md-ellipsis> Regulated DC Power Supply Topologies </span> </a> </li> <li class=md-nav__item> <a href=../../hardware_reference/power/multiple_voltages/ class=md-nav__link> <span class=md-ellipsis> Multiple Power Supply Voltages </span> </a> </li> <li class=md-nav__item> <a href=../../hardware_reference/power/pmic/ class=md-nav__link> <span class=md-ellipsis> PMIC </span> </a> </li> <li class=md-nav__item> <a href=../../hardware_reference/power/dram_power/ class=md-nav__link> <span class=md-ellipsis> DRAM Power </span> </a> </li> <li class=md-nav__item> <a href=../../hardware_reference/power/decoupling/ class=md-nav__link> <span class=md-ellipsis> Decoupling </span> </a> </li> </ul> </nav> </li> <li class=md-nav__item> <a href=../../hardware_reference/screen/ class=md-nav__link> <span class=md-ellipsis> Screen </span> </a> </li> <li class=md-nav__item> <a href=../../hardware_reference/audio/ class=md-nav__link> <span class=md-ellipsis> Audio </span> </a> </li> <li class=md-nav__item> <a href=../../hardware_reference/buttons/ class=md-nav__link> <span class=md-ellipsis> Buttons </span> </a> </li> <li class=md-nav__item> <a href=../../hardware_reference/sd-card/ class=md-nav__link> <span class=md-ellipsis> SD Card </span> </a> </li> <li class=md-nav__item> <a href=../../hardware_reference/usb/ class=md-nav__link> <span class=md-ellipsis> USB </span> </a> </li> <li class=md-nav__item> <a href=../../hardware_reference/uart/ class=md-nav__link> <span class=md-ellipsis> UART </span> </a> </li> <li class=md-nav__item> <a href=../../hardware_reference/magnetic_switch/ class=md-nav__link> <span class=md-ellipsis> Magnetic Switch </span> </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type=checkbox id=__nav_3_2> <div class="md-nav__link md-nav__container"> <a href=../../software_reference/ class="md-nav__link "> <span class=md-ellipsis> Software Reference </span> </a> <label class="md-nav__link " for=__nav_3_2 id=__nav_3_2_label tabindex=0> <span class="md-nav__icon md-icon"></span> </label> </div> <nav class=md-nav data-md-level=2 aria-labelledby=__nav_3_2_label aria-expanded=false> <label class=md-nav__title for=__nav_3_2> <span class="md-nav__icon md-icon"></span> Software Reference </label> <ul class=md-nav__list data-md-scrollfix> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type=checkbox id=__nav_3_2_1> <div class="md-nav__link md-nav__container"> <a href=../../software_reference/boot_process/ class="md-nav__link "> <span class=md-ellipsis> Boot Process </span> </a> <label class="md-nav__link " for=__nav_3_2_1 id=__nav_3_2_1_label tabindex=0> <span class="md-nav__icon md-icon"></span> </label> </div> <nav class=md-nav data-md-level=3 aria-labelledby=__nav_3_2_1_label aria-expanded=false> <label class=md-nav__title for=__nav_3_2_1> <span class="md-nav__icon md-icon"></span> Boot Process </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../software_reference/boot_process/boot_rom/ class=md-nav__link> <span class=md-ellipsis> Boot ROM </span> </a> </li> <li class=md-nav__item> <a href=../../software_reference/boot_process/spl/ class=md-nav__link> <span class=md-ellipsis> SPL </span> </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type=checkbox id=__nav_3_2_2> <div class="md-nav__link md-nav__container"> <a href=../../software_reference/sd_card_layout/ class="md-nav__link "> <span class=md-ellipsis> SD-Card Layout </span> </a> <label class="md-nav__link " for=__nav_3_2_2 id=__nav_3_2_2_label tabindex=0> <span class="md-nav__icon md-icon"></span> </label> </div> <nav class=md-nav data-md-level=3 aria-labelledby=__nav_3_2_2_label aria-expanded=false> <label class=md-nav__title for=__nav_3_2_2> <span class="md-nav__icon md-icon"></span> SD-Card Layout </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../software_reference/sd_card_layout/directory_structure/ class=md-nav__link> <span class=md-ellipsis> Directory Structure </span> </a> </li> </ul> </nav> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--active md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type=checkbox id=__nav_3_3 checked> <label class=md-nav__link for=__nav_3_3 id=__nav_3_3_label tabindex=0> <span class=md-ellipsis> Tutorials </span> <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav data-md-level=2 aria-labelledby=__nav_3_3_label aria-expanded=true> <label class=md-nav__title for=__nav_3_3> <span class="md-nav__icon md-icon"></span> Tutorials </label> <ul class=md-nav__list data-md-scrollfix> <li class="md-nav__item md-nav__item--active"> <input class="md-nav__toggle md-toggle" type=checkbox id=__toc> <label class="md-nav__link md-nav__link--active" for=__toc> <span class=md-ellipsis> Access the Recovery Boot Mode </span> <span class="md-nav__icon md-icon"></span> </label> <a href=./ class="md-nav__link md-nav__link--active"> <span class=md-ellipsis> Access the Recovery Boot Mode </span> </a> <nav class="md-nav md-nav--secondary" aria-label="Table of contents"> <label class=md-nav__title for=__toc> <span class="md-nav__icon md-icon"></span> Table of contents </label> <ul class=md-nav__list data-md-component=toc data-md-scrollfix> <li class=md-nav__item> <a href=#enter-the-recovery-mode class=md-nav__link> <span class=md-ellipsis> Enter the Recovery Mode </span> </a> </li> <li class=md-nav__item> <a href=#recovery-mode-commands class=md-nav__link> <span class=md-ellipsis> Recovery mode commands </span> </a> <nav class=md-nav aria-label="Recovery mode commands"> <ul class=md-nav__list> <li class=md-nav__item> <a href=#info class=md-nav__link> <span class=md-ellipsis> INFO </span> </a> </li> <li class=md-nav__item> <a href=#usb-mountunmount class=md-nav__link> <span class=md-ellipsis> USB MOUNT/UNMOUNT </span> </a> </li> <li class=md-nav__item> <a href=#usb-check class=md-nav__link> <span class=md-ellipsis> USB CHECK </span> </a> </li> <li class=md-nav__item> <a href=#usb-format class=md-nav__link> <span class=md-ellipsis> USB FORMAT </span> </a> </li> <li class=md-nav__item> <a href=#network-enabledisable class=md-nav__link> <span class=md-ellipsis> NETWORK ENABLE/DISABLE </span> </a> </li> <li class=md-nav__item> <a href=#qr-code class=md-nav__link> <span class=md-ellipsis> QR CODE </span> </a> </li> <li class=md-nav__item> <a href=#factory-test-enabledisable class=md-nav__link> <span class=md-ellipsis> FACTORY TEST ENABLE/DISABLE </span> </a> </li> <li class=md-nav__item> <a href=#first-boot-enabledisable class=md-nav__link> <span class=md-ellipsis> FIRST BOOT ENABLE/DISABLE </span> </a> </li> <li class=md-nav__item> <a href=#exit-recovery class=md-nav__link> <span class=md-ellipsis> EXIT RECOVERY </span> </a> </li> </ul> </nav> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type=checkbox id=__nav_3_3_2> <div class="md-nav__link md-nav__container"> <a href=../build_system/ class="md-nav__link "> <span class=md-ellipsis> Build System </span> </a> <label class="md-nav__link " for=__nav_3_3_2 id=__nav_3_3_2_label tabindex=0> <span class="md-nav__icon md-icon"></span> </label> </div> <nav class=md-nav data-md-level=3 aria-labelledby=__nav_3_3_2_label aria-expanded=false> <label class=md-nav__title for=__nav_3_3_2> <span class="md-nav__icon md-icon"></span> Build System </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../build_system/compilation_environments/ class=md-nav__link> <span class=md-ellipsis> Compilation Environments </span> </a> </li> <li class=md-nav__item> <a href=../build_system/get_sources/ class=md-nav__link> <span class=md-ellipsis> Get the Sources </span> </a> </li> <li class=md-nav__item> <a href=../build_system/compile_sdk/ class=md-nav__link> <span class=md-ellipsis> Compile SDK </span> </a> </li> <li class=md-nav__item> <a href=../build_system/compile_distribution/ class=md-nav__link> <span class=md-ellipsis> Compile Distribution </span> </a> </li> <li class=md-nav__item> <a href=../build_system/write_image/ class=md-nav__link> <span class=md-ellipsis> Write firmware to SD Card </span> </a> </li> </ul> </nav> </li> <li class=md-nav__item> <a href=../build_system/build_program_using_sdk/ class=md-nav__link> <span class=md-ellipsis> Build Programs using SDK </span> </a> </li> </ul> </nav> </li> </ul> </nav> </li> <li class=md-nav__item> <a href=https://grabcad.com/library/funkey-s-1 class=md-nav__link> <span class=md-ellipsis> 3D files </span> </a> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type=checkbox id=__nav_5> <label class=md-nav__link for=__nav_5 id=__nav_5_label tabindex=0> <span class=md-ellipsis> Miscellaneous </span> <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav data-md-level=1 aria-labelledby=__nav_5_label aria-expanded=false> <label class=md-nav__title for=__nav_5> <span class="md-nav__icon md-icon"></span> Miscellaneous </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../../../miscellaneous/glossary/ class=md-nav__link> <span class=md-ellipsis> Glossary </span> </a> </li> </ul> </nav> </li> </ul> </nav> </div> </div> </div> <div class="md-sidebar md-sidebar--secondary" data-md-component=sidebar data-md-type=toc> <div class=md-sidebar__scrollwrap> <div class=md-sidebar__inner> <nav class="md-nav md-nav--secondary" aria-label="Table of contents"> <label class=md-nav__title for=__toc> <span class="md-nav__icon md-icon"></span> Table of contents </label> <ul class=md-nav__list data-md-component=toc data-md-scrollfix> <li class=md-nav__item> <a href=#enter-the-recovery-mode class=md-nav__link> <span class=md-ellipsis> Enter the Recovery Mode </span> </a> </li> <li class=md-nav__item> <a href=#recovery-mode-commands class=md-nav__link> <span class=md-ellipsis> Recovery mode commands </span> </a> <nav class=md-nav aria-label="Recovery mode commands"> <ul class=md-nav__list> <li class=md-nav__item> <a href=#info class=md-nav__link> <span class=md-ellipsis> INFO </span> </a> </li> <li class=md-nav__item> <a href=#usb-mountunmount class=md-nav__link> <span class=md-ellipsis> USB MOUNT/UNMOUNT </span> </a> </li> <li class=md-nav__item> <a href=#usb-check class=md-nav__link> <span class=md-ellipsis> USB CHECK </span> </a> </li> <li class=md-nav__item> <a href=#usb-format class=md-nav__link> <span class=md-ellipsis> USB FORMAT </span> </a> </li> <li class=md-nav__item> <a href=#network-enabledisable class=md-nav__link> <span class=md-ellipsis> NETWORK ENABLE/DISABLE </span> </a> </li> <li class=md-nav__item> <a href=#qr-code class=md-nav__link> <span class=md-ellipsis> QR CODE </span> </a> </li> <li class=md-nav__item> <a href=#factory-test-enabledisable class=md-nav__link> <span class=md-ellipsis> FACTORY TEST ENABLE/DISABLE </span> </a> </li> <li class=md-nav__item> <a href=#first-boot-enabledisable class=md-nav__link> <span class=md-ellipsis> FIRST BOOT ENABLE/DISABLE </span> </a> </li> <li class=md-nav__item> <a href=#exit-recovery class=md-nav__link> <span class=md-ellipsis> EXIT RECOVERY </span> </a> </li> </ul> </nav> </li> </ul> </nav> </div> </div> </div> <div class=md-content data-md-component=content> <article class="md-content__inner md-typeset"> <h1>Access the Recovery Boot Mode</h1> <p>The Recovery Mode is a special boot mode that can be entered when booting the <strong>FunKey S</strong> console.</p> <p>Its main purpose is to handle system updates, but it can also be used to recover the main system when it is no longer accessible, or to access some advanced test or developement features.</p> <h2 id=enter-the-recovery-mode>Enter the Recovery Mode<a class=headerlink href=#enter-the-recovery-mode title="Permanent link">&para;</a></h2> <p>There are 2 different ways to enter Recovery Mode:</p> <ul> <li> <p>by holding both the <i class=funkey-start></i> and the <i class=funkey-fn></i> keys at the same time while booting the <strong>FunKey S</strong> console</p> </li> <li> <p>by typing the following command at the Shell prompt, either using ssh over <abbr title="Universal Serial Bus">USB</abbr> Ethernet or the serial console:</p> </li> </ul> <div class=highlight><pre><span></span><code>$ recovery_mode
</code></pre></div> <p>While booting, the system will display the following logo instead of the familiar <strong>FunKey S</strong> logo:</p> <p><img alt="Recovery Logo" class=lightbox src=/assets/images/Recovery_Logo.png></p> <h2 id=recovery-mode-commands>Recovery mode commands<a class=headerlink href=#recovery-mode-commands title="Permanent link">&para;</a></h2> <p>The Recovery Mode automatically enables the <abbr title="Universal Serial Bus">USB</abbr> network client upon startup, allowing ssh connection over the <abbr title="Universal Serial Bus">USB</abbr> cable for debug purposes.</p> <p>At the same time, the Recovery mode provides a simple text menu, with the current menu item displayed at the top of the screen.</p> <p>Navigation through the menu commands is using the <i class=funkey-up></i> and <i class=funkey-down></i> keys, and validation is using the <i class=funkey-A></i> key.</p> <h3 id=info>INFO<a class=headerlink href=#info title="Permanent link">&para;</a></h3> <p>This command displays useful information regarding the <strong>FunKey S</strong>:</p> <ul> <li> <p>the Recovery Mode version</p> </li> <li> <p>the rootfs (e.g. "Normal" Mode) version</p> </li> <li> <p>if connected to a host through <abbr title="Universal Serial Bus">USB</abbr> network, the device IP address</p> <div class=highlight><pre><span></span><code>Recovery: 2.3.0
rootfs : 2.3.0
IP addr : 192.168.137.20
</code></pre></div> </li> </ul> <h3 id=usb-mountunmount><abbr title="Universal Serial Bus">USB</abbr> MOUNT/UNMOUNT<a class=headerlink href=#usb-mountunmount title="Permanent link">&para;</a></h3> <p>This toggle commands performs the same way as the FunKey menu command, except that no confirmation is asked.</p> <h3 id=usb-check><abbr title="Universal Serial Bus">USB</abbr> CHECK<a class=headerlink href=#usb-check title="Permanent link">&para;</a></h3> <p>This command performs a check of the FAT32 <abbr title="Universal Serial Bus">USB</abbr> partition, and try to repair it if it finds some errors, such as when the partition was not cleanly unmounted from a host computer.</p> <h3 id=usb-format><abbr title="Universal Serial Bus">USB</abbr> FORMAT<a class=headerlink href=#usb-format title="Permanent link">&para;</a></h3> <p>This commands formats the FAT32 <abbr title="Universal Serial Bus">USB</abbr> partition.</p> <div class="admonition warning"> <p class=admonition-title>Warning</p> <p>This function will delete all the files on the <abbr title="Universal Serial Bus">USB</abbr> partition, so be careful!</p> </div> <h3 id=network-enabledisable>NETWORK ENABLE/DISABLE<a class=headerlink href=#network-enabledisable title="Permanent link">&para;</a></h3> <p>This toggle command will enable/disable the <abbr title="Universal Serial Bus">USB</abbr> network upon next boot.</p> <h3 id=qr-code>QR CODE<a class=headerlink href=#qr-code title="Permanent link">&para;</a></h3> <p>This command will display a full screen QR Code containing the <strong>FunKey S</strong> serial number:</p> <p><img alt="QR Code" class=lightbox src=/assets/images/qrcode.png></p> <h3 id=factory-test-enabledisable>FACTORY TEST ENABLE/DISABLE<a class=headerlink href=#factory-test-enabledisable title="Permanent link">&para;</a></h3> <p>This toggle command will enable/disable the factory tests upon next boot.</p> <h3 id=first-boot-enabledisable>FIRST BOOT ENABLE/DISABLE<a class=headerlink href=#first-boot-enabledisable title="Permanent link">&para;</a></h3> <p>This toggle command will enable/disable the "first boot" sequence that:</p> <ul> <li> <p>expands the rootfs "Normal" system partition</p> </li> <li> <p>create the swap partition</p> </li> <li> <p>create the <abbr title="Universal Serial Bus">USB</abbr> shared partition</p> </li> <li> <p>install the free built-in games</p> </li> </ul> <h3 id=exit-recovery>EXIT RECOVERY<a class=headerlink href=#exit-recovery title="Permanent link">&para;</a></h3> <p>This comand exits the Recovery Mode and reboots in Normal Mode.</p> </article> </div> <script>var target=document.getElementById(location.hash.slice(1));target&&target.name&&(target.checked=target.name.startsWith("__tabbed_"))</script> </div> </main> <footer class=md-footer> <div class="md-footer-meta md-typeset"> <div class="md-footer-meta__inner md-grid"> <div class=md-copyright> <div class=md-copyright__highlight> &copy; 2020-2024 FunKey Project<br> Last updated on 2024-05-04 by DrUm78<br> <a href=http://creativecommons.org/licenses/by-sa/4.0/ rel=license> <img alt="Creative Commons License" style=border-width:0 src=https://i.creativecommons.org/l/by-sa/4.0/80x15.png> </a><br>This work is licensed under a <a href=http://creativecommons.org/licenses/by-sa/4.0/ rel=license>Creative Commons Attribution-ShareAlike 4.0 International License</a>. </div> Made with <a href=https://squidfunk.github.io/mkdocs-material/ target=_blank rel=noopener> Material for MkDocs </a> </div> <div class=md-social> <a href=https://www.facebook.com/FunKeyProjectOfficial target=_blank rel=noopener title=www.facebook.com class=md-social__link> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 512 512"><!-- Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M512 256C512 114.6 397.4 0 256 0S0 114.6 0 256c0 120 82.7 220.8 194.2 248.5V334.2h-52.8V256h52.8v-33.7c0-87.1 39.4-127.5 125-127.5 16.2 0 44.2 3.2 55.7 6.4V172c-6-.6-16.5-1-29.6-1-42 0-58.2 15.9-58.2 57.2V256h83.6l-14.4 78.2H287v175.9C413.8 494.8 512 386.9 512 256z"/></svg> </a> <a href=https://twitter.com/FunKeyProject target=_blank rel=noopener title=twitter.com class=md-social__link> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 512 512"><!-- Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z"/></svg> </a> <a href=https://www.instagram.com/funkey_project/ target=_blank rel=noopener title=www.instagram.com class=md-social__link> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 448 512"><!-- Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z"/></svg> </a> <a href=https://www.youtube.com/channel/UCm6RThJXazA1VMhimqOtjww target=_blank rel=noopener title=www.youtube.com class=md-social__link> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 576 512"><!-- Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78 0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305zm-317.51 213.508V175.185l142.739 81.205-142.739 81.201z"/></svg> </a> <a href=https://www.pinterest.fr/davidlarbi/funkey-project/ target=_blank rel=noopener title=www.pinterest.fr class=md-social__link> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 496 512"><!-- Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M496 256c0 137-111 248-248 248-25.6 0-50.2-3.9-73.4-11.1 10.1-16.5 25.2-43.5 30.8-65 3-11.6 15.4-59 15.4-59 8.1 15.4 31.7 28.5 56.8 28.5 74.8 0 128.7-68.8 128.7-154.3 0-81.9-66.9-143.2-152.9-143.2-107 0-163.9 71.8-163.9 150.1 0 36.4 19.4 81.7 50.3 96.1 4.7 2.2 7.2 1.2 8.3-3.3.8-3.4 5-20.3 6.9-28.1.6-2.5.3-4.7-1.7-7.1-10.1-12.5-18.3-35.3-18.3-56.6 0-54.7 41.4-107.6 112-107.6 60.9 0 103.6 41.5 103.6 100.9 0 67.1-33.9 113.6-78 113.6-24.3 0-42.6-20.1-36.7-44.8 7-29.5 20.5-61.3 20.5-82.6 0-19-10.2-34.9-31.4-34.9-24.9 0-44.9 25.7-44.9 60.2 0 22 7.4 36.8 7.4 36.8s-24.5 103.8-29 123.2c-5 21.4-3 51.6-.9 71.2C65.4 450.9 0 361.1 0 256 0 119 111 8 248 8s248 111 248 248z"/></svg> </a> <a href=https://github.com/FunKey-Project target=_blank rel=noopener title=github.com class=md-social__link> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 496 512"><!-- Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"/></svg> </a> <a href=https://hub.docker.com/r/funkeyproject/funkey-os/ target=_blank rel=noopener title=hub.docker.com class=md-social__link> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 640 512"><!-- Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M349.9 236.3h-66.1v-59.4h66.1v59.4zm0-204.3h-66.1v60.7h66.1V32zm78.2 144.8H362v59.4h66.1v-59.4zm-156.3-72.1h-66.1v60.1h66.1v-60.1zm78.1 0h-66.1v60.1h66.1v-60.1zm276.8 100c-14.4-9.7-47.6-13.2-73.1-8.4-3.3-24-16.7-44.9-41.1-63.7l-14-9.3-9.3 14c-18.4 27.8-23.4 73.6-3.7 103.8-8.7 4.7-25.8 11.1-48.4 10.7H2.4c-8.7 50.8 5.8 116.8 44 162.1 37.1 43.9 92.7 66.2 165.4 66.2 157.4 0 273.9-72.5 328.4-204.2 21.4.4 67.6.1 91.3-45.2 1.5-2.5 6.6-13.2 8.5-17.1l-13.3-8.9zm-511.1-27.9h-66v59.4h66.1v-59.4zm78.1 0h-66.1v59.4h66.1v-59.4zm78.1 0h-66.1v59.4h66.1v-59.4zm-78.1-72.1h-66.1v60.1h66.1v-60.1z"/></svg> </a> </div> </div> </div> </footer> </div> <div class=md-dialog data-md-component=dialog> <div class="md-dialog__inner md-typeset"></div> </div> <script id=__config type=application/json>{"base": "../../..", "features": [], "search": "../../../assets/javascripts/workers/search.b8dbb3d2.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}}</script> <script src=../../../assets/javascripts/bundle.a7c05c9e.min.js></script> <script src=../../../assets/js/jquery-3.5.1.min.js></script> <script src=../../../assets/js/simple-lightbox.jquery.min.js></script> <script src=../../../assets/js/custom.js></script> </body> </html>