Universal open-source optical disc drive firmwares?

  • For PCs, there are adaptive open-source operating systems, such as Linux, ReactOS, BSD and many more.
  • For portable multimedia players and jukeboxes, there’s Rockbox.
  • For multimedia centers, there is Kodi/XMBC(?).
  • For compressed audio formats, there are XiPH/Xiph formats, which are technically superior despite insufficient adaption..
    Media players? VLC, MPC-HC, MPC-BE, mPlayer, GPlayer, etc…
  • Also, there were open-source camera/camcorder firmwares. Canon DSLM published their source code.
    Were there not some open-source HDD firmwares?
  • There is also open source hardware. No ODD’s unfortunately, but Arduino, the Pi-computers (Raspberry PI, Banana Pi and many more), etc. .

But what about optical disc drives ﴾(ODDs)﴿?

The advantages of open-source firmwares:

  • Everybody can be a potential contributor. That’s exactly how Linux, BSD, ReactOS and Wikipedia succeeded.
  • Restricted developement team.Ultimate versatility.
  • Everybody can adapt the code to own needs and occasionally create adapted forks (example: Linux distributions, again.).
  • Community can provide much better technical help (see GNU/Linux) for technical problems.
  • Developers appreciate feedback.
  • Forks adapted to individual purposes (eg. Ubuntu, SuSE, CentOS, Mint, Gentoo, UbuntuStudio, Android, …).
  • Power users can unleash their hardware capabilities and do interesting and passionate experiments.
  • No more compatibility issues thanks to one unified firmware and one unified, cross-platform open-source tweaking/setting tool.
  • Exclusive features possible, suitable for power users:
    • Extended error scans (E11 E21 E31 E21 E22 E32).
    • (if reverse-engineered:) PurpleBook DDCD, GigaRec, HD-Burn, DiscT@2, LightScribe, LabelFlash, Plextor VariRec, SecurDisc redundant data, DiscSpan.
    • VariREAD manual laser power setting too. Maybe even in mW or lux/candela/lumen.
    • More accurate reading of information such as serial numbers.
    • Ability to control reading/writing pattern/strategy 100% manually if desired. Eg. both PCAV and ZCLV, depending on what the user desires, to write CD-RW US+. Example: Write CAV×8 DVD+RW×8 instead of Z-CLV for faster random write access.
    • Ability to enforce inappropriate writing speeds (too high/low; incorrect pattern eg. CAV on DVD-RW) for testing purposes and unlimited experimentation fun.
  • Ability to enforce extremely low reading/writing speeds too, e.g. ×1 CAV or ×0.5 CLV.
  • Ability to allow adjusting writing speed and pattern during writing.
  • Ability to write during speed change and acceleration. Only experimentally: On Non-MountRainer(MRW)/DVD+/BD discs, this would probably lead to quality losses.
  • MountRainer, MtFuji.
  • (if supported by hardware) Ability to control laser power manually.
  • Ability to read DVD+RW DL using available laser power. (I really wish that DVD+RW DL was released. Marketed improperly, so died.).
  • Ability to enforce high reading speeds on damaged discs. Better disc damage readability at higher speeds?
  • Superior data forensics. Eg. CD-RW recovery after quick format sinplified.
  • Ability to simulate inferior error corrections.
  • Manual over/underspeeding for read and write.
  • Slim drives: speed overclock eg. DVD×10, CD×32. Rotation engine is easily sufficiently powerful!.
  • Enable reading DVD+RW DL using sufficient laser power: DVD ± RW Dual Layer?
  • Ability to bypass SCSi deadlock and monitor drive activity during damage handling. How?: Skip damaged sector instead of getting hooked to it . Forensic APi.
  • Ability to optionally enforce reading during speed changes. If a read request happens shortly after the drive spins down, the engine needs to put more power into re-accelerating it. Especially for portable slim drives, power efficiency is essential.
  • Do not brake disc to zero rotation speed, just let it roll out. LG BU20 does already do it in that way. Same reasons as previous point.
  • Move laser before acceleration when sector access requested.
  • More SCSi commands.
  • Support custom disc types. LG drives read Nintendo Wii disc?
  • Multipass reading (set data rate range lower than rotation speed or numbers/range of pass-by rotations manually) to enhance DAE/VCD reading while preventing hiccups. [add link via desktop PC edit].
  • LiteOn Premium features.
  • RAW Reading (7203b or 3234b) to bypass NegahBan CD!Lock and similar software.
  • Ability to create 3D surface images fron CD surface (scratches, disc rot, dirt/dust differentiable; reflectivity at some CD-Rs at inner edge darkened).
  • CD+EG, all subcode reading.
  • Fake TOC injection, instant disc reading.
  • Ability to treat discs differently (e.g. DVD-R like DVD+RW) to test how they react.
  • Ability to manually read and set laser parameters (frequency,power mW,focus,etc.). This could allow funny experiments such as reading/writing CDs with the blue BluRayDisc laser.
  • Ability to read rotation speed directly from engine, which is more accurate than data transfer rate.
  • Speed variation test: Accelerate angular velocity during write to have all linear velocities (e.g.:×1-×20 in levels OR smoothly accelerating) to test error scans for all speeds on one disc.
  • (If technically implementable) Manipulate and get the speed and position of tray opening/closing.
  • Ability to enforce full speed DAE even on damaged discs. Old drives such as GDR8162B keep full rotation speed sometimes, but the actual reading speed decreases.
  • Direct sensor reading (e.g. read real RPM from engine sensor, not guess from transfer speed.).
  • Ability to eject the drive without spindown (for laptop drives; use with caution on PC drives.) or with more spindown to compensate defect drives such as SH-S182 with too early ejection.
  • Bundled open-source software; cross-platform to make use of all these useful features. Example features: Flasher integrated into GUi (graphical user interface), MCSE features but also CLi version bundled (command line interface). The software should also include warning messages for overspeeding, to avoid amateur users to cry.
  • The bundled flashing software should also allow selectively excluding features such as eHammer and SmartErase, that violate the WORM policy. And if I actually needed to destroy data, I can use my faulty school-dumped WriteMaster SH-S182D, which occasionally detects recordable DVDs (mostly minus) as blank, and forces overwrite.

Of course, the original firmware should be downloaded from the drive first, to keep as a backup before flashing a new firmware.

One unified open-source firmware, which adapts to each chipset and media type (ODD FDD HDD SSD USB SD etc.)/controller modification would also be considerable. Like Linux adapts to each PC.

We are in 2018 when I am writing this. Power users should at least (finally) be allowed to have their ultimate ODD fun, because they know what they are doing.

Ala42’s MCSE is excellent, but suffered from the closed-source abandonware faith/fate unfortunately. Developement stagnated. Hopefully, CD2date by AzTekk will not be disposed as closed-source abandonware too.

  • Some new disc drive vendors devote their drives to restricted firmware modifications. (uhUm, HL, cough).

Findtags; OpnSrcODD, OSALT.

I have done some research and found new clues about an open-source ODD firmware, coastermelt by @scanlime, originally made for burning laser art onto BD-R.
Does somebody have more clues?

For CD-RWs, speed overriding and manual laser power trim pitch control (without opening case and adjusting tiny laser potentiometer) could greatly be tweaky and practical:

  • Underspeed writing = less quality for current burn, but more writing cycles.
  • Overspeed writing = ability to enforce worn and stubborn CD-RW/etc. phase-change dye to keep changing. Also apply a bit of additional laser power if needed.

Another useful concept that already exists for PCs (Pi, Arduino, etc.) is open-source hardware.

It would be nice seeing it on optical drives and optical drive chipsets for hardware hacking experiments.

Maybe, MediaTek will soon decide, not to be a proprietary patent monster like Qualcomm Fast Chrge. Qual Colm.