[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Dual format DVD burner drive problem



> The first drive identified itself as "Generic 2.15" and the second
> drive identified itself as "Optorite DVD RW DD0203 2.11".

Might be same OEM, meaning that they might be sharing firmware [and
consequently firmware bugs]. It's a djungle out there...

> I have
> located a firmware update for the DD0203 drive from Optorite and
> updated the firmware to 2.30.  Still having the same problems.
> 
> The burn process will complete without any errors, however, the
> resulting disk is not usable.  It can be mounted and a directory
> can be read.  But the files will all return seek errors like below.
> 
> scsi0: ERROR on channel 0, id 0, lun 0, CDB: Request Sense 00 00 00 40 00
> Current sd0b:00: sense key Medium Error
> Additional sense indicates No seek complete
>  I/O error: dev 0b:00, sector 52996
> 
> These errors are typical of the burned DVD+RW from other drives as
> well. The media can be erased and then reused.  I have confirmed
> that the media is usable in another drive.

So it can't read media recorded in *other* recorders either, not only
own media. At the same time *other* units can read media recorded in it.
Isn't it a definition of broken unit?

> Because the drive burned a DVD+RW disk correctly under Win98SE I am
> having a hard time condemning the drive itself.

One thing comes to mind. It's possible that Nero applies OPC, Optimal
Power Calibration procedure even to DVD+RW, which might do the trick.
Note that OPC is defined in DVD-dash context only, but there is a chance
that some firmwares support or even require it even in DVD+context. To
figure this one out try following:

- save attached program in dvd+rw-tools source catalog;
- compile it with 'g++ -o opc opc.cpp';
- execute './opc /dev/dvd' with DVD+RW media in;
- *without* reloading media, save output from 'dvd+rw-mediainfo /dev/dvd
verbose' and send it to me;
- *without* reloading media, perform a recording with growisofs;

Do not treat attached program as an extra "tool," but as disposable code
snippet. A.
#include "transport.hxx"

int main(int argc,char *argv[])
{ Scsi_Command cmd;
  int err;

    if (!cmd.associate(argv[1])) perror("can't open"),exit(1);

    cmd[0]=0x54;
    cmd[1]=0x1;
    cmd[9]=0;

    if (err=cmd.transport()) printf("%x\n",err);

    wait_for_unit (cmd,NULL);
}

Reply to: