Sending app to MD4-7 taking too long

Neeraj Chirmulay 7 years ago in IQANdesign updated by Ulrik Zakariasson (Software development) 7 years ago 8


I am trying to send an app (even a blank app) in v5 to an MD4-7 and the process slows down drastically on "sending firmware resource 7/12" (8/13 when sending actual app). It has now been progressing at 1-2% per hour - it has taken me just over 15 hours to get to 57%.

I have tried using v4.07, and while it showed progress as "sending firmware resource x/10", it did seem to slow down around resource 5 or so but I did not wait long enough to see if it went past it. 

Any recommendations?

I am doing this using the actual harness. However, I have tried using a bench programming harness as well, both with and without a terminating resistor at the CAN adapter end. I have also tried this with and without an address tag installed. 

I can't recall how long a complete firmware update (version change) takes over CAN.

I guess it shouldn't be more than 30 minutes... which in itself is a long time...

You should really get an Ethernet cable and connect the MD4 to your local (Ethernet) switch.

We don't have a local ethernet switch - this MD4 is part of mobile system that will be installed on trucks. All the communication in the system is CAN. 

If it's a one time thing, I can try ethernet if it's easily doable with a laptop. Can you please provide instructions on how to do the firmware update using ethernet? 

Can't really recall the specifics about it.

Check the IQANdesign user manual Chapter 4 => Master and display modules => MD4 => Ethernet => AutoIP

I guess there must be something more on the forum regarding this.

Basically the MD4, when not connected to a DHCP server, gets an automatic IP address assigned in the 169.254.x.x range.

When you connect the MD4 directly to your computer, what you need to do, is to get such an address assigned to your Ethernet port on your PC.


Just connect the Ethernet cable to your laptop. Windows will set an AutoIP after a minute or two by it self.

So after you connect the Ethernet cable to your MD4 and laptop, select Ethernet under Communication menu and then press Send Project. It will show you a dialog box with discovered MD4s, it will take a minute or two before it shows up. Just select the discovered MD4 and press send. Done.

Can you connect to multiple MD4s through a network switch? We have an installation with two of these modules and it has taken hours to update the system with a firmware update, even when connected via ethernet to one of the modules. It seems like if you have a multi master system (unless you can connect to multiple units directly) you're going to have to deal with at least one of them updating through the CAN bus.

When you have selected one of the MD4s in IQANdesign/IQANrun the traffic to the second one will be routed over CAN. If there is a big firmware update this will be quite slow (also depending on CAN bus load). 

The firmware is partitioned into several smaller pieces meaning that in most cases only a small potion of the firmware needs to be sent. But if upgrading between two versions where a bigger portion of the firmware has changed more data needs to be sent.

To reduce the time loading the multimaster system it might be a good idea to upgrade each MD4 to the same firmware version over Ethernet. You can connect multiple MD4s to a switch and upgrade one at the time using IQANdesign/IQANrun. Or you can connect the MD4 directly to the Ethernet port of the computer.

But 15 hours... there must be some other issue as well. How large is your project file (idax file)? Is there any other traffic on the CAN bus?

Tried over ethernet and it worked like a charm. Took a couple of minutes to update the firmware and subsequent application updates have taken only a few seconds. 

I don't know why CAN was not working. The idax file is about 25 MB so at 250kbps it should still only be theoretically <11 min. There are no other components on the bus. CAN-A on the MD4 has been reserved for the diagnostics bus and the MD4 is the only IQAN module in the system so that bus isn't even shared. 

Thanks so much for responses and comments.