Because the RJ45 network port on your Dreambox DM900 is broken, you cannot use the standard Web Interface (Rescue Mode web page) to flash a new image. However, you can still flash it by using a USB recovery stick via the bootloader/rescue system, or by using a serial-to-USB connection to interact with the boot console.

The easiest and most common way to bypass a broken LAN port for flashing is using a Rescue USB Stick.

- Method: Flashing via USB Recovery Stick

Step 1: Prepare the USB Recovery Stick

1. Take a standard USB flash drive and format it to FAT32 on your computer.
2. Download the official Dreambox OE2.5 Recovery files for the DM900 (these typically include a special rescue/kernel file and instructions, often found on forums like i-have-a-dreambox.com or Newnigma2 under the thread "Dreambox OE2.5 Recovery DM520/525 DM820 DM900 DM920").
3. Alternatively, you can use the official rescue image files. Copy the required update/rescue files onto the root directory of the USB stick according to the rescue package instructions.

Step 2: Trigger Rescue Mode on the DM900

1. Turn off the DM900 using the physical power switch on the back.
2. Insert your prepared USB flash drive into one of the USB ports on the Dreambox.
3. Press and hold down the touch power button on the front panel of the DM900.
4. While holding the front button, turn the power switch on the back ON.
5. Keep holding the front button until the LED light on the front turns red (or flashes through colors and settles) indicating it has entered the Rescue/Recovery loader.

Step 3: Flash the Image

1. Once the box is in Rescue Mode with the USB stick detected, the internal bootloader (BOLT) will look for recovery commands or files on the USB stick.
2. If you are using a serial cable (USB service port connected to a PC via a terminal program like PuTTY) alongside the USB stick, you can interact directly with the BOLT> prompt to execute the update commands.
3. Follow the specific on-screen or terminal prompts to complete the installation of the image from the USB storage.

Verification: Once the flashing process completes successfully, the receiver will display a success message or reboot automatically into the newly flashed image setup screen.

- Alternative: USB Service Port (UART)

If your rescue loader does not automatically read from the USB stick, you can connect a Micro-USB cable from the Service Port on the back of the DM900 to your PC's USB port.

1. Install the appropriate Silicon Labs USB-to-UART bridge drivers on your PC.
2. Open a serial terminal program (like PuTTY or TeraTerm) set to the correct COM port (typically 115200 baud).
3. Power on the box into the bootloader (BOLT>) to manually execute flash commands via the command line interface.

Code:
BOLT> show devices
BOLT> dir usbdisk0
BOLT> boot usbdisk0:/rescue-dm900.bin


Extract all three files (imageversion, kernel.bin, and rootfs.tar.bz2) directly into the root directory of a FAT32-formatted USB flash drive. Do not put them inside a folder.

Turn off the DM900 via the rear power switch, plug the USB stick into the box, press and hold the front touch power button, and turn the power switch back on until the LED turns red.

Since your network port is broken, if the bootloader doesn't automatically flash from the stick on startup, use the BOLT> serial terminal prompt via the service port to trigger the recovery from the USB storage.

BOLT> show devices
BOLT> dir usbdisk0

BOLT> boot usbdisk0:/rescue-dm900.bin
eg
BOLT> boot usbdisk0:/zImage-rescue-3.14-r0-dm900-20200715.bin

Code:
boot usbdisk0:/zImage-rescue-3.14-r0-dm900-20200715.bin
mount -t vfat /dev/sda /mnt/usb
cp /mnt/usb/KERNEL.BIN /tmp/
cp /mnt/usb/rootfs.tar.bz2 /tmp/
flash-kernel /tmp/KERNEL.BIN
flash-tarball /tmp/rootfs.tar.bz2
reboot


LOG :
Code:
root@dm900:~# flash-kernel /tmp/KERNEL.BIN
[*] Writing /tmp/KERNEL.BIN to /dev/mmcblk0p1
65+1 records in
65+1 records out
4297976 bytes (4.1MB) copied, 0.234076 seconds, 17.5MB/s
root@dm900:~#
root@dm900:~# flash-tarball /tmp/rootfs.tar.bz2
[*] Creating directory '/data'
[*] Mounting '/dev/mmcblk0p3' to '/data'
[  507.233070] EXT4-fs (mmcblk0p3): mounted filesystem with ordered data mode. Opts: (null)
[*] Creating ext4 filesystem 'dreambox-rootfs' on /dev/mmcblk0p2
mke2fs 1.43-WIP (18-May-2015)
[*] Mounting '/dev/mmcblk0p2' to '/mnt'
[  509.008988] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
[*] Extracting '/tmp/rootfs.tar.bz2' to '/mnt'
[*] Mounting '/dev' to '/mnt/dev'
[*] Mounting '/proc' to '/mnt/proc'
[*] Mounting '/run' to '/mnt/run'
[*] Mounting '/sys' to '/mnt/sys'
[*] Mounting '/tmp' to '/mnt/tmp'
/var/lib/opkg/info/kernel-image.postinst: line 4: flash-kernel: command not found
Fatal: Failed to run kernel-image.postinst
[*] Unmounting '/mnt/tmp'
[*] Unmounting '/mnt/sys'
[*] Unmounting '/mnt/run'
[*] Unmounting '/mnt/proc'
[*] Unmounting '/mnt/dev'
[*] Unmounting '/mnt'
[*] Unmounting '/data'


Flashing new Rescue bootloader :
Code:
mkdir -p /mnt/usb
mount -t vfat /dev/sda /mnt/usb
root@dm900:~# ls -l /mnt/usb
drwxr-xr-x    2 root     root          4096 Sep 17  2026 System Volume Information
-rwxr-xr-x    1 root     root            29 Aug 21  2026 imageversion
-rwxr-xr-x    1 root     root       4297976 Aug 21  2026 kernel.bin
-rwxr-xr-x    1 root     root      73620222 Aug 21  2026 rootfs.tar.bz2
-rwxr-xr-x    1 root     root      11657240 Sep 17  2026 zImage-rescue-3.14-r0-dm900-20200715.bin
cp /mnt/usb/zImage-rescue-3.14-r0-dm900-20200715.bin /tmp/rescue.bin
flash-rescue /tmp/rescue.bin

Manufacturer ID: c2
Memory type    : 20
Memory density : 19
read id ok
comparing 2847 sectors...
erasing 2845 sectors...
writing 45520 pages...
verifying 2845 sectors...
flash done

reboot
_________________________