Will you update this to use the included sdftool binary? I believe the sdf.bin image is not necessary when using the sdftool binary. I have tried all syntax possible according to sdftool —help. The error is unknown command. I copied and pasted the /io… designation for the drive and of course included the path to the firmware image both parts surrounded by apostrophe characters [some call them single quotations] just in case. No matter how I format the line I cannot make the syntax accepted. Of course I am using version 1.17.4 of MakeMKV. I am using the release candidate of Mac OS version 14.garygomm wrote: ↑Thu Sep 10, 2020 2:07 pmSteps taken
1. download sdf.bin
2. download mk-firmware-pack-YYYYMMDD
- where YYYYMMD is the date of the latest firmware pack
3. Extract the file you need for your drive from mk-firmware-pack-YYYYMMDD -> In my case this was -> HL-DT-ST-BD-RE_BU40N-1.04-NM00500-212005061142.bin
4. then in terminal on the MacBook
- I then copied sdf.bin and the firmware file I extracted from the mk-firmware-pack-YYYYMMDD into my /tmp folder .
(this only to make sure both files in same place and nice easy path to type).
5. then in terminal change directory - > cd /Applications/MakeMKV.app/MacOS/Contents
6. type -> ls - al
you should see a directory listing and one of the objects in the listing is 'makemkvcon'
this step just confirms you are in the right directory
7. the type -> ./makemkvcon f -l
This will allow you to find your drive identifier, in my case -> ''/IOBDServices/D5D25996'
from the following output:
Found 1 drives(s)
00: /IOBDServices/D5D25996, /dev/rdisk3, /dev/rdisk3
HL-DT-ST_BD-RE_BU40N_1.01_211910161032_MOFK6283224
8. to actually perform the update, type -> ./makemkvcon f -d '/IOBDServices/D5D25996' -f /tmp/sdf.bin rawflash main -i /tmp/HL-DT-ST-BD-RE_BU40N-1.04-NM00500-212005061142.bin
you will then be prompted to type in 'yes' to flash the firmware;
Reading input file /tmp/HL-DT-ST-BD-RE_BU40N-1.04-NM00500-212005061142.bin
Flashing flags = 0x0 : 0 0 0 0 : ---- ---- ---- ----
Current Drive ID: HL-DT-ST_BD-RE_BU40N_1.01_211910161032_MOFK6283224
Ready to write drive flash memory.
Type "yes" to continue, "no" to abort
yes
9. Once you type in yes and hit Enter - you should get the following output:
Operation started: Sending flash image to drive
100% Operation finished
Operation started: Programming flash
100% Operation finished
Done successfully
After hitting Enter the upload and flashing took about 20 seconds.
Flashing firmware on a Mac for LibreDrive
Re: Flashing firmware on a Mac for LibreDrive
Re: Flashing firmware on a Mac for LibreDrive
I think you're talking aboutMKV Maker wrote: ↑Sun Sep 17, 2023 5:36 amWill you update this to use the included sdftool binary? I believe the sdf.bin image is not necessary when using the sdftool binary. I have tried all syntax possible according to sdftool —help. The error is unknown command. I copied and pasted the /io… designation for the drive and of course included the path to the firmware image both parts surrounded by apostrophe characters [some call them single quotations] just in case. No matter how I format the line I cannot make the syntax accepted. Of course I am using version 1.17.4 of MakeMKV. I am using the release candidate of Mac OS version 14.
Code: Select all
/Applications/MakeMKV.app/Contents/MacOS/sdftool
Code: Select all
/Applications/MakeMKV.app/Contents/MacOS/sdftool -l
On my system, I get this output:
Code: Select all
user@machine ~ % /Applications/MakeMKV.app/Contents/MacOS/sdftool -l
Found 3 drives(s)
DEBUG: code=00000000 src=YF;}*jq/'~"3+_YtiqC]o-7i4:29395149
DEBUG: code=00000000 src=YF;}*jq/'~"3+_YtiqC]o-7i4:29395149
00: /IOBDServices/1E20D1E6
PIONEER_BD-RW___BDR-212U_1.01_AGDL002389WL
DEBUG: code=00000000 src=YF;}*jq/'~"3+_YtiqC]o-7i4:29395149
DEBUG: code=00000000 src=YF;}*jq/'~"3+_YtiqC]o-7i4:29395149
01: /IOBDServices/0DF09974
ASUS_BW-16D1HT_3.10_211901041014_KLPJ65B3554
DEBUG: code=00000000 src=YF;}*jq/'~"3+_YtiqC]o-7i4:29395149
DEBUG: code=00000000 src=YF;}*jq/'~"3+_YtiqC]o-7i4:29395149
02: /IOBDServices/1A4C5045
HL-DT-ST_BD-RE__WH16NS60_1.02_211810291936_KLHJ9P70118
Code: Select all
/Applications/MakeMKV.app/Contents/MacOS/sdftool -d /IOBDServices/0DF09974 help
Code: Select all
DEBUG: code=00000000 src=YF;}*jq/'~"3+_YtiqC]o-7i4:29395149
DEBUG: code=00000000 src=YF;}*jq/'~"3+_YtiqC]o-7i4:29395149
MTK19xx firmware module v1.30
Commands:
dump [auto|full|user]
Dumps firmware image
dump full - dumps full rom image (if not disabled in firmware)
dump user - dumps non-volatile user data
dump auto - dumps full image if possible, user data otherwise
rawflash [<flag>,<flag=value>,...]
Sends the image and flashing flags to drive
for flashing in self-update mode
flags:
main - flashes main firmware (this is the default)
full - flashes boot loader and main firmware (Caution!!!)
de - sets DE byte in image
enc - encrypts firmware before sending to drive
slim - force USB slim drive handshake
Code: Select all
/Applications/MakeMKV.app/Contents/MacOS/sdftool -d /IOBDServices/0DF09974 rawflash main -i <path to flash binary>
I haven't actually tried this, since I don't need/want to flash my drive.
Re: Flashing firmware on a Mac for LibreDrive
Interesting. I set the working directory to that directory and used ./sdftool instead of using the entire path every time. Also, the --help general command mentions flash not rawflash. That seems to be the only difference amongst yours and my syntax. I will try rawflash although it is not mentioned in the general help.
Re: Flashing firmware on a Mac for LibreDrive
Yes, rawflash worked for both drives instead of flash. Thanks for the clarification. If ever you use the binary then I definitely suggest to change the working directory and use ./sdftool instead of the entire path. If you type ./sdftool --help then you will note the command says flash instead of rawflash. I believe this is an oversight which shall be corrected. If only I would have known…
Re: Flashing firmware on a Mac for LibreDrive
The 'top level' help does use the vanilla 'flash'.MKV Maker wrote: ↑Sun Sep 17, 2023 6:25 pmYes, rawflash worked for both drives instead of flash. Thanks for the clarification. If ever you use the binary then I definitely suggest to change the working directory and use ./sdftool instead of the entire path. If you type ./sdftool --help then you will note the command says flash instead of rawflash. I believe this is an oversight which shall be corrected. If only I would have known…
Code: Select all
Typical usage:
sdftool -l list all available drives
sdftool -d D: help list all commands available for the drive
sdftool -d D: dump -o c:\out dump drive firmware
sdftool -d D: flash -i file.bin flash drive firmware
Code: Select all
user@machine MacOS % ./sdftool -d /IOBDServices/0DF09974 help
DEBUG: code=00000000 src=YF;}*jq/'~"3+_YtiqC]o-7i4:29395149
DEBUG: code=00000000 src=YF;}*jq/'~"3+_YtiqC]o-7i4:29395149
MTK19xx firmware module v1.30
Commands:
dump [auto|full|user]
Dumps firmware image
dump full - dumps full rom image (if not disabled in firmware)
dump user - dumps non-volatile user data
dump auto - dumps full image if possible, user data otherwise
rawflash [<flag>,<flag=value>,...]
Sends the image and flashing flags to drive
for flashing in self-update mode
flags:
main - flashes main firmware (this is the default)
full - flashes boot loader and main firmware (Caution!!!)
de - sets DE byte in image
enc - encrypts firmware before sending to drive
slim - force USB slim drive handshake
Re: Flashing firmware on a Mac for LibreDrive
I should have done that. I think Mike shall fix this because there is certainly ambiguity. Considering it worked for me I believe for users of Mac OS and MakeMKV this is by far the most easy, simple, and effectual manner by which to flash a drive’s firmware.
Re: Flashing firmware on a Mac for LibreDrive
I have got two questions. Firstly, what mean those debug codes whenever drives are listed? Secondly, what are the differences in behaviour to flash the main firmware versus to flash the main firmware and the boot loader? Apparently the latter requires caution.