Project

General

Profile

Actions

EWSD SCSI drive emulation » History » Revision 1

Revision 1/5 | Next »
laforge, 11/12/2023 10:17 AM


EWSD SCSI drive emulation

Introduction

EWSD requires special hard drives. They are approved by Siemens and have special behaviors. What is it what makes them work with EWSD? This document describes how to tweak ZuluSCSI emulator to work with EWSD.

Firmware quirks

Check Condition

The emulation must report “Check Condition” SCSI Status as first response to a command:

root@scsi:~# sg_raw -r 1k /dev/sdd 0x28 0x00 0x00 0x00 0x04 0x00 0x00 0x00 0x01 0x00
SCSI Status: Check Condition

Sense Information:
Fixed format, current; Sense key: Unit Attention

Additional sense: Power on occurred

Error 6 occurred, no data received

It is not enough to enable EnableUnitAttention = 1 in zuluscsi.ini on SD card. The firmware must be patched so that the Unit Attention must only be sent once after power on or insert of the SD card. If not, the boot loader will read drive information in an endless loop. This means that once the Unit Attention is sent, the emulation must not send Unit Attention again.

Without it, the EWSD will use wrong block numbers when trying to read the drive. This is obviously because the EWSD did not provide READ CAPACITY command to retrieve proper disk size and block size.

Status Delay

The EWSD will not boot, if there is a delay before SCSI status reply. A delay of 1 ms work. Don’t ask me why!

PMI on ReadCapacity

A PMI bit set to one specifies that the device server return information on the last logical block after that specified in the LOGICAL BLOCK ADDRESS field before a substantial vendor-specific delay in data transfer may be encountered.

This is obsolete, but without it, EWSD will not accept the drive. (DIAGMDD) Some value, captured from a real hard drive works well: 0x00001053

Use ZuliSCSI in EWSD

  • Use exFAT FS to format the SD card. This allows HD images larger than 4 Gig.
  • Remove D203. (diode connects between Termination pin and +5V) The device will then be power by the BERG connector. Connect 5V and ground to the DEVB’s power supply.
  • Keep all switches off, especially termination. You don’t want to feed power to the IOPUNI via termination power when the IOPUNI is not powered.
  • Copy zuluscsi.ini to SD card and enable Quirks = 10.
  • Create a hard disk file HD0.img on the SD card.
  • If you want to power off ZuluSCSI emulation: Turn PSU of IOPUNI off and then turn PSU of ZuluSCSI off. This prevents from power loss while writing to the SD card.

Problems

  • SD card must have MBR, not GPT.
  • If the LED lights long and the emulator stalls, check SCSI cabling and termination. On first read after powering on, it seems ok that the LED light long.
  • If EWSD show something like read-only when showing files on the drive (DISPFILE): Check if SD card is broken and refuses to write.

Conclusion

It is possible to emulate hard drive that is accepted by EWSD using ZuluSCSI with the quirks described in this document.

There is no special inquiry data stored on the original hard drives, nor there is special firmware used by Siemens. All these quirks are required, due to bugs in the EWSD firmware.

Patches will be submitted to the GIT repository, to support EWSD without patching firmware.

Files (2)
zulu-ewsd-firmware.tar.gz zulu-ewsd-firmware.tar.gz 193 KB Patched firmware, copy to SD card to flash. jolly, 12/03/2023 10:16 AM
zulu-ewsd.patch zulu-ewsd.patch 4.21 KB ZuluSCSI patch for EWSD support jolly, 12/03/2023 10:17 AM

Updated by laforge 4 months ago · 1 revisions

Add picture from clipboard (Maximum size: 48.8 MB)