github wilbowes/EchoMuse emos-v0.2
emOS emos-v0.2

latest releases: controller-ea-v2.23.0-ea.13, controller-ea-v2.23.0-ea.12, controller-ea-v2.23.0-ea.11...
2 hours ago

emOS 0.2

Names the device, on the USB descriptor and on the console. Both found on the
first provisioning run to reach a booted emOS device.

The USB console says what it is

The gadget set idVendor and idProduct and no descriptor strings at all, so the
host fell back to whatever it had cached for that port — on a Mac that showed
as "MT65xx Android Phone", left over from the same device in preloader or
FireOS mode. An operator picking a serial port in the provisioning wizard had
nothing to aim at, and tried several before concluding the right one had not
worked. It had.

Now EchoMuse / "emOS console" / the unit's serial, matching what stock sets
(Amazon / AEOBC / serial).

The prompt says which device it is

The kernel default hostname stood because nothing ever set one, so every
console session and log line read root@android — misleading on a device whose
whole point is that Android is gone, and useless for telling two Echoes apart
over USB. Now em-, or plain "emos" if the serial cannot be read.

Set through /proc/sys/kernel/hostname rather than sethostname(2): bionic does
not declare that at API 21, and an implicit declaration in a static PID 1 is
not something to ship. Caught by -Wall in the pinned compiler image, which is
the only place it shows.

The serial comes from androidboot.serialno on the kernel cmdline, which LK
supplies — the only source available, since there is no property service under
emOS and /system carries the build's identity rather than this unit's. Parsed
against the real cmdline plus the absent, empty, end-of-string and overlong
cases; an unreadable serial is treated as unknown and the boot carries on.

Requires a reflash to take effect: this is in the boot image, not the
controller.

What's Changed

  • Give the ring to the link state, and stand the buttons down without one by @wilbowes in #415
  • Serialise firmware updates across the controller, not per device by @wilbowes in #412
  • Move BLE advertisements off the control plane, negotiated on the ack by @wilbowes in #413
  • Arbitrate a barge-in, so only one Echo answers it by @wilbowes in #414
  • Quiet aiohttp.access logging to WARNING by default by @DennisGaida in #376
  • Record the day: the OTA queue, the link-state ring, and what the stall is not by @wilbowes in #418
  • Reconcile all three device payloads on connect by @wilbowes in #419
  • Bump actions/download-artifact from 7 to 8 in the actions group across 1 directory by @dependabot[bot] in #291
  • Take the safe half of the dependency bumps, and hold numpy for #224 by @wilbowes in #420
  • Refuse to install the firmware a device is already running by @wilbowes in #422
  • Early Access 2.23.0-ea.1 by @wilbowes in #424
  • Drive the whole jack routing, in both directions and at startup by @wilbowes in #425
  • Bring up the codec's DAPM routes, and two device fixes behind them by @wilbowes in #426
  • Report which userspace the device booted, and stop debloating emOS by @wilbowes in #427
  • Move the base OS onto the register message, where its consumer can see it by @wilbowes in #428
  • Stop a shell waiter releasing the holder's lock, and fail a transfer fast by @wilbowes in #429
  • The controller tells the device what time it is by @wilbowes in #430
  • Stop the ambient light sensor flooding the only crash channel we have by @wilbowes in #431
  • Don't wait 120s for an Android service that emOS will never have by @wilbowes in #432
  • emOS 0.1: an Echo Dot that runs EchoMuse with no Amazon userspace by @wilbowes in #434
  • Put a password in front of the emOS USB console: the controller half by @wilbowes in #435
  • Provision emOS from TWRP, without ever installing Magisk by @wilbowes in #436
  • Early Access 2.23.0-ea.4 by @wilbowes in #437
  • Do not tell people to restore a device into one that will not boot by @wilbowes in #441
  • Correct the FAQ entry that told people to cause #79 by @wilbowes in #440
  • Make every wizard step verify what it inherits and what it did by @wilbowes in #443
  • Correct the claim that the permissive cmdline patch is inert by @wilbowes in #444
  • Verify the flash against the bytes written, not the next megabyte by @wilbowes in #448
  • Make the emOS console readable and give it a supplicant to talk to by @wilbowes in #449

Full Changelog: v2.14.0...emos-v0.2

Don't miss a new EchoMuse release

NewReleases is sending notifications on new releases.