Jump to content

Lynx R1 (lynx-r1): Difference between revisions

From postmarketOS Wiki
Medusa (talk | contribs)
mNo edit summary
Medusa (talk | contribs)
No edit summary
 
(9 intermediate revisions by 2 users not shown)
Line 25: Line 25:


== Table of hardware ==
== Table of hardware ==
{|class="wikitable feature-colors" style="display: block; overflow-x: auto"
{|class="wikitable feature-colors"
! Component !! Model !! Notes ||
! Component !! Model !! Notes
|-
|-
| SoC || Qualcomm SM8250 Snapdragon XR2 ||
| SoC || Qualcomm Snapdragon XR2 || SM8250, codename "kona"
|-
|-
| UFS || WDC SDINFDK4-128G || WD iNAND MC EU521, 128GB UFS 3.1 ||
| UFS || WDC SDINFDK4-128G || WD iNAND MC EU521, 128GB UFS 3.1
|-
|-
| SD reader || ? || There's a slot on the left side of the device ||
| SD reader || MMC SoC interface ||
|-
|-
| Displays || JDI/BOE LPM021M528C || Unsure how they're connected yet, waiting for vendor sources ||
| Audio codec || Qualcomm WCD9385 ||
|-
|-
| Wi-Fi || Qualcomm QCA6390 || PCI-E ||
| Speaker amplifier || Qualcomm WSA8815 ||
|-
|-
| IR Cameras || OmniVision OV9282 (x2) ||  
| Displays || JDI/BOE LPM021M528C (x2) || DSI0/DSI1
|-
|-
| Passtrough cameras || OmniVision OV4689 (x2) ||
| Display backlight || MPS MP3387LGRT ||
|-
|-
| Accel/gyro || TDK ICM4X6XX ||
| Wi-Fi || Qualcomm QCA6390 || PCI-E
|-
| Bluetooth || Nordic Semi nRF52840 || SPI
|-
| IR Cameras || OmniVision OV9282 (x2) ||
|-
| Passtrough cameras || OmniVision OV4689 (x2) || CSI2/3
|-
| Accel/gyro || TDK ICM42688 || SPI
|-
|-
| Magnetometer || Bosch BMM150 ||
| Magnetometer || Bosch BMM150 ||
|-
|-
| Proximity || SensorTek STK3X3X ||
| Proximity || SensorTek STK3X3X ||
|-
| Buck converter || Texas Instruments LP3907 || i2c1 0x61, Likely for fan PWM
|-
| Fan controller || Analog Devices LTC1695 || i2c1 0x74
|-
| USB-C MUX/Audio Switch || Onsemi FSA4480 || i2c15 0x43
|-
| Charging IC || Qualcomm SMB1390 || i2c15 0x10
|-
| Battery || Compal 8600mAh ||
|}
|}


== Bootloader log ==
== Bootloader log ==
<div class="toccolours mw-collapsible mw-collapsed" style="width: 1000px; overflow: auto;">
<div class="toccolours mw-collapsible mw-collapsed" style="width: 800px; overflow: auto;">
<code> strings /dev/block/sde54 </code>
<code> Bootloader log </code>
<div class="mw-collapsible-content">
<div class="mw-collapsible-content">
<pre>
<pre>
Line 845: Line 863:
</div>
</div>
</div>
</div>
== Entering EDL mode ==
Hold power and both volume buttons for ~15 seconds.


== Rooting, running ADB as root ==
== Rooting, running ADB as root ==
Line 858: Line 880:
# You may use ADB as root now (to dump partitions etc). This module breaks scrcpy.
# You may use ADB as root now (to dump partitions etc). This module breaks scrcpy.


== Flashing ==
== Flashing stock firmware ==
# Download firmware package from Lynx: https://portal.lynx-r.com/api/public/ota/firmware/download/latest-qfil
# Download firmware package from Lynx: https://portal.lynx-r.com/api/public/ota/firmware/download/latest-qfil
# Download/build QDL tool: https://github.com/linux-msm/qdl
# Download/build QDL tool: https://github.com/linux-msm/qdl
# Reboot to EDL using `adb reboot edl`
# Reboot to EDL
# Flash the headset using the following command: <code>./qdl --storage ufs --include ./ ./prog_firehose_ddr.elf ./rawprogram0.xml ./patch0.xml ./rawprogram1.xml ./patch1.xml ./rawprogram2.xml ./patch2.xml ./rawprogram3.xml ./patch3.xml ./rawprogram4.xml ./patch4.xml ./rawprogram5.xml ./patch5.xml ./rawprogram_unsparse0_fullupgrade.xml</code>
# Flash the headset using the following command: <code>./qdl --storage ufs --include ./ ./prog_firehose_ddr.elf ./rawprogram0.xml ./patch0.xml ./rawprogram1.xml ./patch1.xml ./rawprogram2.xml ./patch2.xml ./rawprogram3.xml ./patch3.xml ./rawprogram4.xml ./patch4.xml ./rawprogram5.xml ./patch5.xml ./rawprogram_unsparse0_fullupgrade.xml</code>
# Reboot the device by holding the power button for ~15 seconds.
# Reboot the device by holding the power button for ~15 seconds.

Latest revision as of 16:10, 14 February 2025

Lynx R1
.
.
Manufacturer Lynx
Name R1
Codename lynx-r1
Released 2023
Type headset
Hardware
Chipset Qualcomm Snapdragon XR2 (SM8250)
CPU Octa-core (1x2.84 GHz Cortex-A77 & 3x2.42 GHz Cortex-A77 & 4x1.80 GHz Cortex-A55)
GPU Adreno 650
Display 3200x1600 (1600x1600 per eye)
Storage 128 GB UFS 3.1
Memory 6 GB LPDDR5
Architecture aarch64
Software
Original software Android
Original version 12
postmarketOS
Category testing
Pre-built images no
Mainline no
Features
Flashing
No data
USB Networking
No data
Internal storage
No data
SD card
No data
Battery
No data
Screen
No data
Touchscreen
No data
Multimedia
3D Acceleration
No data
Audio
No data
Camera
No data
Camera Flash
No data
Connectivity
WiFi
No data
Bluetooth
No data
GPS
No data
NFC
No data
Modem
Calls
No data
SMS
No data
Mobile data
No data
Miscellaneous
FDE
No data
USB OTG
No data
HDMI/DP
No data
Sensors
Accelerometer
No data
Magnetometer
No data
Ambient Light
No data
Proximity
No data
Hall Effect
No data
Haptics
No data
Barometer
No data


Contributors

Users owning this device

  • Caleb (Notes: With JTAG breakout)
  • Medusa (Notes: Year of spatial Linux desktop???)


Table of hardware

Component Model Notes
SoC Qualcomm Snapdragon XR2 SM8250, codename "kona"
UFS WDC SDINFDK4-128G WD iNAND MC EU521, 128GB UFS 3.1
SD reader MMC SoC interface
Audio codec Qualcomm WCD9385
Speaker amplifier Qualcomm WSA8815
Displays JDI/BOE LPM021M528C (x2) DSI0/DSI1
Display backlight MPS MP3387LGRT
Wi-Fi Qualcomm QCA6390 PCI-E
Bluetooth Nordic Semi nRF52840 SPI
IR Cameras OmniVision OV9282 (x2)
Passtrough cameras OmniVision OV4689 (x2) CSI2/3
Accel/gyro TDK ICM42688 SPI
Magnetometer Bosch BMM150
Proximity SensorTek STK3X3X
Buck converter Texas Instruments LP3907 i2c1 0x61, Likely for fan PWM
Fan controller Analog Devices LTC1695 i2c1 0x74
USB-C MUX/Audio Switch Onsemi FSA4480 i2c15 0x43
Charging IC Qualcomm SMB1390 i2c15 0x10
Battery Compal 8600mAh

Bootloader log

Bootloader log

Partition layout

kona:~# ls -alh /dev/block/bootdevice/by-name/

Entering EDL mode

Hold power and both volume buttons for ~15 seconds.

Rooting, running ADB as root

  1. Download stock firmware from https://portal.lynx-r.com/downloads/firmware/lynx-r-1/
  2. Download OTA extractor from https://github.com/StevenDoesStuffs/android-ota-extractor
  3. Download Magisk from https://github.com/topjohnwu/Magisk/releases
  4. Download/build https://github.com/tiann/adb_root

---

  1. Install Magisk on the headset using ADB, copy boot.img to internal storage and patch it.
  2. Download patched boot.img
  3. Flash it using Qualcomm EDL mode
  4. After flashing it, copy adb_root Magisk module to internal storage and install it.
  5. You may use ADB as root now (to dump partitions etc). This module breaks scrcpy.

Flashing stock firmware

  1. Download firmware package from Lynx: https://portal.lynx-r.com/api/public/ota/firmware/download/latest-qfil
  2. Download/build QDL tool: https://github.com/linux-msm/qdl
  3. Reboot to EDL
  4. Flash the headset using the following command: ./qdl --storage ufs --include ./ ./prog_firehose_ddr.elf ./rawprogram0.xml ./patch0.xml ./rawprogram1.xml ./patch1.xml ./rawprogram2.xml ./patch2.xml ./rawprogram3.xml ./patch3.xml ./rawprogram4.xml ./patch4.xml ./rawprogram5.xml ./patch5.xml ./rawprogram_unsparse0_fullupgrade.xml
  5. Reboot the device by holding the power button for ~15 seconds.

See also