aspect2-pcb

Public

@xboxoneresearch

Download board files

Files for version 1. Pick what you came for.

Share aspect2-pcb

Check access before sharing the link.

Who can open this board

Anyone can open this board. No sign-in is required.

This link opens the latest version. Copying it does not grant additional access.

Loading…

README

Build PCBs Build firmware GitHub Tag

ASPECT2 PCB

Development board for Xbox One / Xbox Series consoles, based mostly on blurry PCB images.

Allows for POST-Code monitoring (via I2C) and reading flash via SPI.

On some development kits, there are more features available.

See Functionality for more infos

This repo contains:

Functionality

FunctionalityDescriptionTested / WorkingNotes
SPIReading eMMC flash✅Could also support reading SPI NOR on series-family
POSTPOST-Code display✅STM32 renders codes to OLED display
JTAGSouthbridge JTAG✅Devkit exclusive
I2CSMBus communication❌Requires bitbanging driver @ libaspect2 (TODO)
SWOARM Single-Wire-Output❌No success, Devkit exclusive (?)
UART (KRNL)Kernel Debugging✅Devkit exclusive
UART (SMC)SMC/SB Debugging (?)❌No success, likely Devkit exclusive

Software

There are two main repos with support software for this board.

  • dsmc-rs - A windows x64 tool that makes use of a proprietary DLL to read flash via SPI. Also supports reading Expected1SMCBLDigest from flash controller.
  • libaspect2 - Attempt at an open source library

Directory structure

|- Main Aspect2 PCB
├── eeprom
│   ├── Greybull_FabD+.xml - FT Prog template (official on-board FACET)
│   └── Facet2_fabA+.xml - FT Prog template (derived from onboard FTDI dump)
├── firmware - STM32 firmware
├── lib - additional KiCad symbols / footprints

Manufacturing / Development

PCB Stackup

  • 4 Layer board (for impedance control) - 1.6mm thickness
  • Stackup:
    • F.Cu: Signal
    • In1.Cu: Power (GND)
    • In2.Cu: Power (GND)
    • B.Cu: Signal

This PCB was designed with the target stackup of JLC04161H-3313 (JLCPCB). See JLCPCB - Impedance.

Manufacturing files

Generally, Github Pages hosts the most up-to-date manufacturing files. These are also available for download on the Releases-page.

Here is a list of the most important ones.

We recommend JLCPCB, due to the specific Layer-Stackup that was used.

JLCPCB MFG files

Software / plugins

Module bring-up

Before being able to communicate with the device, programming eeprom or regular usage, drivers need to be installed!

Programming the eeprom

  • Download & install drivers
  • Download & open FT Prog
  • Connect Aspect2 board
  • Click "Scan & Parse" to enumerate connected device (Magnifying glass icon or "Devices -> Scan & Parse")
  • Right-click on the found device, hit Apply template
  • Click Program (Lightning bolt icon or "Devices -> Program")
  • Click Program-button in the dialog box
  • Click Close-button, close FT Prog tool
  • Re-plug Aspect2 board

Programming the STM32 (POST Code display)

See firmware/ for detailed build & flash instructions.

Thanks

@emoose @OGXHarcroft @cactusduper @TorusHyperV @ShadowLAG @billy @craftbenmine @DonyPS3 @flynnyfoo @jacksomness @Pheeeenoom and everybody else helping and testing along the way

References

Comments

No comments yet. Be the first to ask about this board.

Ask about this board

Sign in to BoardRepo

New here? Signing in creates your account; there is no separate sign-up.