WiPhone Beta Firmware 0.8.9a (full binary set)
==============================================

WHAT THIS IS
------------
WiPhone Beta Firmware 0.8.9a, the complete five-file binary set the vendor
offered on its Downloads page from 2019 to at least mid-2021 (Wayback captures
2019-10-19 to 2021-07-06), described there as the binary its Early Access
testers were using "to help test the phones before production". It is the
Kickstarter-era firmware and the only full set (bootloader, partition table,
OTA selector, application and SPIFFS data image) the vendor ever published.
Files inside are dated 2019-09-24 to 2019-09-25; the changelog in the later
source records 0.8.9b-0.8.9d as ScreenConfigApp work, keypad layout change,
limited transmit power and double debounce time.

The Downloads page said the source would be released later; this binary
predates the WiPhone Public License (added to the source in 0.8.26) and
carries no licence file. It is hosted because it was a free public download
from the vendor.

APPLIES TO
----------
WiPhone (HackEDA), Kickstarter and early-access hardware of 2019. Whether it
runs correctly on later production boards could not be confirmed. Not for any
other ESP32 device.

BEFORE STARTING
---------------
- A computer with a micro-USB data cable. The vendor's programming
  instructions (v0.4rc1 documentation, 2021) specify a microUSB cable.
- The Silicon Labs CP210x USB-to-UART driver, which the vendor's downloads
  page links
  (https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers),
  so the phone appears as a serial port.
- A flashing tool: Espressif's Flash Download Tool
  (https://www.espressif.com/en/support/download/other-tools), which the
  vendor documents, or esptool.py (shipped inside the WiPhone Arduino core,
  entry wiphone-arduino-core-0-1-2).
- A charged battery.
- This set rewrites the partition table and, if the SPIFFS image is written,
  erases every SIP account, phonebook entry and setting. Record them first.

CONTENTS OF THIS ZIP
--------------------
The zip published on fubsypoly.com wraps the vendor file(s)
byte-for-byte, unmodified.

WiPhone 0.8.9a-binary.zip
    1,318,089 bytes
    SHA-256 507e19b975c86fe53c2687d8d79aac2572a67b9015fd55d3a5e09c2d5783a6cd
    The vendor's zip, unmodified. It holds the five files listed below.
README.txt
    This file.
SHA256SUMS
    SHA-256 checksums of the files above.

Files inside the vendor zip (folder "WiPhone 0.8.9a-binary/"), with the
flash addresses given in the vendor's Firmware Download Tool Instructions:
    bootloader_dio_80m.bin      16,160 B  0x1000
      SHA-256 e5831be5379644de70e7cb83b0b2baa71d3abd7be710e1b612df9cffb30b2c68
    WiPhone.ino.partitions.bin   3,072 B  0x8000
      SHA-256 28205594eb56b204967d45f58d3c1cd8ba4fbe7b1750e84dafbdf656fc159d22
    boot_app0.bin                8,192 B  0xe000
      SHA-256 f94c5d786a7a8fab06ac5d10e33bf37711a6697636dc037559ea19cc410a17f0
    WiPhone.ino.bin          1,406,800 B  0x10000
      SHA-256 71dc64b7e897a3d7d92a48069f590f1e3a4d0d6257214ee2a3672f24be477166
    WiPhone.spiffs.bin       3,600,384 B  see INSTALLATION step 3
      SHA-256 f012f8635bc638b3b3985809156a1522c6adb873811f74e991e180a18c8997ec

INSTALLATION
------------
 1. Unzip the vendor zip. Connect the phone by micro-USB and note its COM
    port.
 2. Start the Espressif Flash Download Tool, choose the ESP32 download tool,
    and set SPI mode DIO, SPI speed 40 MHz, flash size 128Mbit, the COM port
    and a baud rate (vendor settings).
 3. Add the files at the addresses listed above. For WiPhone.spiffs.bin the
    vendor's table gives 0x00c90000, which matches the later partition scheme;
    the partition table inside this 0.8.9a set instead defines a 4 KB "eeprom"
    partition at 0xc90000 and SPIFFS at 0xc91000. Which address the 0.8.9a
    SPIFFS image was built for could not be confirmed; writing only the first
    four files and leaving SPIFFS alone avoids the question.
 4. Press START and wait for FINISH.
 5. Unplug, hold the power button for 10 seconds to force a shutdown, and
    press it again to boot (vendor procedure).

VERIFYING
---------
The application image carries the version string "Ver. 0.8.9a". This build
predates the Firmware settings screen described in the 2021 user manual, so
the menu location of the version display on 0.8.9a could not be confirmed.

IF SOMETHING GOES WRONG
-----------------------
- Serial flashing is done by the ESP32's ROM bootloader, which cannot be
  overwritten by a bad application image, so a failed or interrupted write is
  recovered by writing the image again.
- If the phone will not switch off, hold the power button for 10 seconds
  (vendor procedure).
- No port appears: install the CP210x driver and use a data (not charge-only)
  cable.
- To return to a current build, write a later application image (for example
  wiphone-firmware-0-8-32) at 0x10000 with boot_app0.bin at 0xe000; the later
  builds use the partition table in the WiPhone Arduino core (default_16MB:
  app0 0x10000, app1 0x650000, SPIFFS 0xc90000, 0x370000 bytes), which the
  Arduino IDE writes when uploading from source.

DOWNGRADING
-----------
This is the oldest firmware found. Going back to it is a serial flash of the
full set; it has no over-the-air updater, so leaving it again also requires
USB.

PROVENANCE
----------
- File: WiPhone 0.8.9a-binary.zip
- Retrieved from:
  https://wiphone.io/static/media/WiPhone%200.8.9a-binary.zip
- Wayback copy: none found (the file was never captured)
- Date retrieved: 2026-09-18
- Official page: https://wiphone.io/downloads.html
- Status: verified (vendor download, still served on 2026-09-18)

Linked from https://wiphone.io/downloads (and downloads.html) as "Beta
Firmware 0.8.9a (binary)" in Wayback captures from 2019-10-19 to 2021-07-06;
the link was gone by 2022-09-08. The file itself was never captured by the
Wayback Machine but is still served by the vendor at the original URL.

MORE INFORMATION
----------------
- https://radios.fubsypoly.com/wiphone/
- https://radios.fubsypoly.com/wiphone/vol-3/ (Configuration & Firmware)
- Firmware Updates (OTA): https://wiphone.io/docs/WiPhone/latest/user_manual/OTA.html
- Firmware Download Tool Instructions: https://wiphone.io/docs/WiPhone/latest/technical_manual/software/download_tool_instructions.html
- Programming Instructions (Arduino): https://wiphone.io/docs/WiPhone/latest/technical_manual/software/programming_manual.html
- Custom Firmware Server example: https://wiphone.io/docs/Examples/latest/FirmwareServer.html
