OpeniBoot Console

From iDroid Project

Revision as of 04:26, 25 March 2022 by Ddominator (Talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Usage of the OpeniBoot console and its commands is detailed here.


To run the OpeniBoot console client from Linux or OS X use the following command from ~/OpeniBoot/tools/client after picking the console option on your iDevice. For best results, wait for the WELCOME to OPENIBOOT message displayed on the iDevice's screen before entering the following command:

sudo ./oibc

Standard Command Set

  • help - List the available commands. This will list either the standard command set or both the standard and extended command sets depending if openiboot has been compiled with ENABLE_EXTRA=YES or not. Usage:
  • install - Installs OpeniBoot onto the device. iBoot is relocated in the NOR and OpeniBoot is flashed to take the place of primary bootloader on the device. Usage:
  • uninstall - Removes all OpeniBoot images from the device and restores iBoot to its usual location as primary bootloader. Usage:
  • multitouch_fw_install - Installs the multitouch firmware to the NOR in an IMG3 container to enable multitouch in OpeniBoot itself. Note: Do not use with ENABLE_EXTRA=YES as this may cause a NOR overflow and failed installation.
Usage (iPhone 2G):
multitouch_fw_install <a-speed fw> <a-speed fw len> <main fw> <main fw len>
Usage (iPhone 3G/iPod Touch):
multitouch_fw_install <constructed fw> <constructed fw len>
  • reboot - Reboots the device to the first screen. If OpeniBoot is already installed, it goes to the OS selection screen. If OpeniBoot is not installed, iOS is booted. Usage:
  • nor_read - Read a block from NOR into RAM. Read NOR Backup for more information. Usage:
nor_read <address> <offset> <len>
  • nor_write - Write data from RAM into NOR. Warning: only use this for restoring NOR Backups in the event of catastrophic failure. Usage:
nor_write <address> <offset> <len>
  • nand_erase - Erase a block from NAND. Warning: This will wipe data from your device and require a DFU restore. This is preferably used if you keep getting FTL errors. Usage:
nand_erase <bank> <block>
  • poweroff - Turns off the device. Usage:
  • echo - Echoes back a line. Usage:
echo <text>
  • clear - Clears the screen by wiping the framebuffer. Usage:
  • text - Turns text display on or off. This basically enables printf or not allowing commands to be extra verbose when running. Usage:
text <on|off>
  • md - Display a block of memory as 32-bit integers.
  • mw - Write a 32-bit dword into a memory address.
  • mwb - Write a byte into a memory address.
  • mws - Write a string into a memory address.
  • aes - Use the hardware crypto engine.
  • hexdump - Display a block of memory like 'hexdump -C'.
  • cat - Dumps a block of memory.
  • gpio_pinstate - Get the state of a GPIO pin.
  • gpio_out - Set the state of a GPIO pin.
  • dma - Perform a DMA transfer.
  • nand_read - Read a page of NAND into RAM.
  • nand_write - Write a page of NAND.
  • nand_read_spare - Read a page of NAND's spare into RAM.
  • nand_status - Read NAND status.
  • nand_ecc - Hardware ECC a page.
  • vfl_read - Read a page of VFL into RAM.
  • vfl_erase - Erase a block of VFL.
  • ftl_read - Read a page of FTL into RAM.
  • ftl_mapping - Print FTL mapping information.
  • ftl_sync - Commit the current FTL context.
  • bdev_read - Read bytes from a NAND block device.
  • fs_ls - List files and folders.
  • fs_cat - Display a file.
  • fs_extract - Extract a file into memory.
  • fs_add - Store a file from memory.
  • nor_erase - Erase a block of NOR.
  • iic_read - Read a IIC register.
  • iic_write - Write a IIC register.
  • accel - Display accelerometer data.
  • als - Display ambient light sensor data.
  • als_channel - Set channel to get ALS data from.
  • als_en - Enable continuous reporting of ALS data.
  • als_dis - Disable continuous reporting of ALS data.
  • sdio_status - Display sdio registers.
  • sdio_setup - Restart SDIO stuff.
  • wlan_prog_helper - Program wlan fw helper.
  • wlan_prog_real - Program wlan fw.
  • radio_send - Send a command to the baseband.
  • radio_nvram_list - List entries in baseband NVRAM.
  • radio_register - Register with a cellular network.
  • radio_call - Make a call.
  • radio_hangup - Hang up.
  • vibrator_loop - Turn the vibrator on in a loop.
  • vibrator_once - Vibrate once.
  • vibrator_off - Turn the vibrator off.
  • images_list - List the images available on NOR.
  • images_read - Read an image on NOR.
  • pmu_voltage - Get the battery voltage.
  • pmu_powersupply - Get the power supply type.
  • pmu_charge - Turn on and off the power charger.
  • pmu_nvram - List powernvram registers.
  • malloc_stats - Display malloc stats.
  • frequency - Display clock frequencies.
  • printenv - List the environment variables in nvram.
  • setenv - Sets an environment variable.
  • saveenv - Saves the environment variables in nvram.
  • bgcolor - Fill the framebuffer with a color.
  • backlight - Set the backlight level.
  • kernel - Load a Linux kernel.
  • ramdisk - Load a Linux ramdisk.
  • rootfs - Specify a file as the Linux rootfs.
  • boot - Boot a Linux kernel.
  • go - Jump to a specified address (interrupts disabled).
  • jump - Jump to a specified address (interrupts enabled).
  • version - Display the version string.
  • time - Display the current time according to the RTC.
  • wdt - Display the current wdt stats.
  • audiohw_transfers_done - Display how many times the audio buffer has been played.
  • audiohw_play_pcm - Queue some PCM data for playback.
  • audiohw_headphone_vol - Set the headphone volume.
  • audiohw_speaker_vol - Set the speaker volume.
  • audiohw_position - Print the playback position.
  • audiohw_pause - pause playback.
  • audiohw_resume - Resume playback.
  • multitouch_setup - Set up the multitouch chip.