Page 1 of 3

Firmware update utility (test).

PostPosted: Sun Dec 27, 2009 12:01 am
by dmitri
From time to time people bump into the same problem with firmware update using MIDI-OX. The main error is that people keep setting MIDI Output buffer incorrectly. Having tired from solving the same problem over and over again I decide to write a command line utility which, I hope, should eliminate the problem.
It is obviously called MegaDrumUpdate and here it is:
MegaDrumUpdate.zip

Also, see the GUI version contributed by Firelord: viewtopic.php?p=14443#p14443

It is very easy to use. Run it from a command line without any options and it will print a short description of how to use it:
Code: Select all
$ ./MegaDrumUpdate.exe
Format of the command: MegaDrumUpdate.exe path_to_firmware_file [e[rase]]
       where: path_to_firmware_file - path to a .hex or .syx firmware file
              [e[rase]] - optional. Send 'erase_sysex' before sending the firmware


As you can see in the first command option it can take either .syx or .hex file as a source for the firmware update.
The second option 'e' tells the program to send 'erase_sysex' first. This is required for all latest versions of the bootloader.

This is a description of the whole update procedure using MegaDrumUpdate utility:

1. Power MegaDrum up while holding the key LEFT pressed. If you connect over USB and it is the first time you connect your MegaDrum to your PC, let Windows install drivers.

2. In MegaDrum select correct frequency for your Atmega crystal by pressing the key UP. Each time you press UP it will cycle one step through 16MHz-20MHz-24MHz-12MHz. If you use a 16MHz crystal for Atmega, you don't need to press UP since 16MHz is a default start up frequency for the bootloader.

3. In MegaDrum press the key DOWN. It will display 'Send Sysex now'.

4. From a command line run the utility, e.g.:
Code: Select all
MegaDrumUpdate.exe megadrum32_16_32_20091217.hex e

Omit 'e' option at the end if your MegaDrum has an old type of the bootloader, i.e. without protection from accidental firmware erasure.

5. It will prompt you to choose which MIDI port to send the firmware to. Type a number corresponding to the MegaDrum MIDI port and press Enter. It will start updating the firmware and after a couple of dozen of seconds it will finish. MegaDrum should show 'Updated finished' and it will restart automatically in a couple of seconds.

This is a screenshot of what it should look like on a command line when using this utility:
screenshot.png


This is the source code of the utility:
MegaDrumUpdateSource.zip


You can compile it on Windows using MinGW:
Code: Select all
g++ -D__WINDOWS_MM__ main.cpp RtMidi.cpp -o MegaDrumUpdate.exe -s -lwinmm


The utility uses RtMidi from http://www.music.mcgill.ca/~gary/rtmidi/index.html so it should be possible to compile it under Linux and Mac OS X. See http://www.music.mcgill.ca/~gary/rtmidi ... #compiling for compile options under Linux and Mac OS X.

Please, test this utility and let me know if it works fine for you.

Re: Firmware update utility (test).

PostPosted: Sun Dec 27, 2009 1:04 am
by Ken Forgettable
dmitri wrote:From time to time people bump over and over again As you can see using MinGW The utility uses RtMidi Please, test this utility and let me know if it works fine for you.

MCT with Succ-U-Bus doesn't work then...?

Re: Firmware update utility (test).

PostPosted: Sun Dec 27, 2009 1:56 am
by dmitri
Ken Forgettable wrote:
dmitri wrote:From time to time people bump over and over again As you can see using MinGW The utility uses RtMidi Please, test this utility and let me know if it works fine for you.

MCT with Succ-U-Bus doesn't work then...?

I don't know.

Re: Firmware update utility (test).

PostPosted: Sun Dec 27, 2009 2:52 am
by Ken Forgettable
dmitri wrote:I don't know.
Is there a grievance procedure ?!

Re: Firmware update utility (test).

PostPosted: Sun Dec 27, 2009 11:47 am
by dmitri
Ken Forgettable wrote:
dmitri wrote:I don't know.
Is there a grievance procedure ?!

The problem is that most of the time you bury useful information in your posts under deep layers of alien speech.

Re: Firmware update utility (test).

PostPosted: Sun Dec 27, 2009 4:24 pm
by Sabre
LOL! :lol:

Re: Firmware update utility (test).

PostPosted: Sun Dec 27, 2009 5:15 pm
by jman 31
I have to agree with Dmitri here. I still have no idea what Succ-u-bus is or does, and when you explain it it makes it even more unclear. Try some normal English if you want your project to have credibility. I don't mean any offense by this, but your posts rarely make any sense to the average human. :(

Re: Firmware update utility (test).

PostPosted: Sun Dec 27, 2009 9:06 pm
by Synthex
Your Firmware update utility works very well ! :)

Re: Firmware update utility (test).

PostPosted: Mon Dec 28, 2009 11:26 pm
by Ken Forgettable
Synthex wrote:Your Firmware update utility works very well ! :)
Have you tried Succ-U-Bus at all?

Re: Firmware update utility (test).

PostPosted: Mon Dec 28, 2009 11:29 pm
by Synthex
Ken Forgettable wrote:
Synthex wrote:Your Firmware update utility works very well ! :)
Have you tried Succ-U-Bus at all?

I still have no idea what Succ-u-bus is or does ...