Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - Andy Ayre

Pages: 1 [2] 3 4 5
LPC9xx/LPC9xxx / Electrical Solutions to Programming Problems
« on: May 08, 2012, 12:54:15 pm »
The following is from Per Olesen on solutions he found to problems using the MCB900. Thank you to Per for providing this for the benefit of others!

I use the TSSOP types on my boards, so it is not possible to program them in the MCB900, and then move it to the target board.

In 2 cases I had the problem that it would only program 1. Time.

Solution problem 1: I had a RS485 chip on the RxT TxT line on the target board, and with no external power on the target board, the RxT line was overloaded. I simply put a 100K resistor in serial with the input on the 485 chip, and it worked fine.

Solution problem 2: To be safe I had placed a 100uF capasitor on the VDD of the LPC, and it is too much, it kills the rise time of the VDD from the programmer. 22uF works.

Announcements / Yahoo
« on: July 15, 2011, 12:56:37 am »
Sadly we now have to ban the use of Yahoo email addresses due to spammers. If you wish to obtain an exception to this please contact us through email.


Announcements / Hotmail
« on: July 04, 2011, 01:19:53 am »
Spammers are repeatedly posting using Hotmail accounts, so sadly we will not allow registrations using Hotmail from this point on.

When registering for this forum please use your company email address. If you don't have one and wish to ask for an exception please contact us via email first.


Off-Topic (Read Only) / This Section is Now Read Only
« on: January 28, 2011, 01:07:13 am »
The inclusion of an off-topic area was to allow questions on other aspects of microcontrollers. Sadly, spammers see this as a potentially valid place to post in the hopes that their spam will be kept.

We have now marked this area a read only, therefore all questions and answers on this forum must be related to Flash Magic in some way, otherwise they will be deleted.

For general microcontroller support please visit or the NXP LPC support groups.


ARM Cortex / Important Change Regarding Code Read Protection
« on: December 09, 2010, 03:07:37 am »
Previously code read protection was enabled by checking a box in the main window of Flash Magic. This supported only level 2 of CRP.

Starting with Flash Magic 5.11 the code read protection setting is read from the hex file and all CRP levels are supported. If an attempt is made to set the device to CRP3 then the user is prompted for confirmation.

To set the CRP value in your project add something like the following (Keil RealView example):

Code: [Select]
const unsigned long crp __attribute__ ((at(0x1FC))) = 0x87654321;

Code: [Select]
const unsigned long crp __attribute__ ((at(0x2FC))) = 0x87654321;
If you don't wish to use CRP then set the value to zero.

If you have previously programmed hex files without problems and now find that you cannot read the contents of memory or access a few other features then this change is the likely cause. Erase all the flash in the device and add the above line (or similar).


General / Debugging the Ethernet Bootloader
« on: April 12, 2010, 09:29:11 am »
Here are some hints on how to debug problems when using Flash Magic with the Ethernet bootloader.

0. Run Flash Magic as Administrator

Right-click on FlashMagic.exe and choose "Run as Administrator".

1. Remove routers and switches from your network

Routers and switches can choose whether to forward packets from one part of the network to another depending on where they know devices to be connected. Because the Ethernet bootloader uses MAC addresses rather than IP addresses this can confuse these network devices.

A hub however forwards all messages.

2. Try a direct connection

Using an Ethernet cross-over cable connect your PC directly to your evaluation board. This is the simplest possible arrangement.

3. Debug the Ethernet Communications

Download and install Wireshark. Start it recording on your Ethernet interface and then try to use Flash Magic to communicate with the bootloader. Wait for the error message to appear in Flash Magic then stop recording.

The following is a screenshot from Wireshark showing a read of the device signature.

1. In the filter box enter "udp.srcport == 41825" then click on "Apply". This will remove the other packets and only show the communications between the PC and the bootloader.

2. Click on the first UDP message.

3. Click on the "+" for the Data field to expand it. Then click on the "Data: 3F0D0A" line.

4. Look at the highlighted area in the data. It should show "?.." which corresponds to "?<cr><lf>".

Note that the packet shows a destination (Dst) MAC address and IP address that matches the values entered into Flash Magic.

If you don't see any UDP messages then for some reason Flash Magic is not transmitting to the bootloader. Skip to the ARP Table section for more debugging steps.

Here is a screenshot showing the response packet from the bootloader containing "1<cr><lf>":

If you don't see a response then double-check the MAC address is correct and P2.7 is outputting a square wave (which indicates the bootloader is running).

4. ARP Table

The ARP table is a list of associations between MAC addresses and IP addresses held on your PC. In order to communicate with the bootloader it must have an entry in this table. Flash Magic does this automatically but we can double-check that it worked.

Start Flash Magic and attempt to connect to the bootloader. Then:

In XP: Go to Start -> Run, enter "cmd" and click on "OK".

In Vista/7: Go to Start, enter "cmd" into the search box and press Enter.

Enter "arp -a" to display the table. It should look something like:

Code: [Select]
Interface: --- 0x4
  Internet Address       Physical Address         Type             00-11-22-33-44-55     dynamic            0c-1d-12-e0-1f-10     static

The interface IP address is the IP address of your PC. The entry is your router/gateway, if one exists. The entry, marked as "static" is the bootloader. Note that the IP addresses may be different. What you are looking for is a static entry with the IP address and MAC (Physical) address of the bootloader as entered into Flash Magic.

If an entry for the bootloader does not exist or does not appear under the IP address for your PC then take a screenshot of your ARP table or cut and paste it into a text editor then try manually adding it with a command like:

Code: [Select]
arp -s 0c-1d-12-e0-1f-10
Replace the IP address with the one you actually want to use. Now look at the table again with "arp -a" to make sure it was added. Now try connecting in Flash Magic. If this worked then please send the screenshot or text from the ARP table as it was before to us for analysis.

If you have more than one Ethernet interface (for example if you have VPN clients installed they add virtual interfaces) then you can specify with the arp command which interface to add the entry to. For example:

Code: [Select]
arp -s 0c-1d-12-e0-1f-10
Depending on your operating system you might need to run an "elevated command prompt". Right-click on C:\Windows\system32\cmd.exe and choose "Run as Administrator...".

LPC2xxx / MOVED: Signalyzer Arm-Jtag with LPC2148
« on: April 01, 2010, 08:52:53 am »

Announcements / Blog
« on: February 01, 2010, 10:04:14 am »
We now have a company-wide blog that we will use to post Flash Magic related news. Major and semi-major releases of Flash Magic will be announced on this blog. You can find it here:

An RSS feed can be found here:


P89V51Rx2/P89LV51Rx2 / Version 4 of the Bootloader
« on: January 26, 2010, 11:21:36 am »
Version 4 of the bootloader in the P89V51Rx2 devices suffers from a couple of issues. To determine the version of your bootloader:

  • Choose ISP -> Read Device Signature...
  • The bootloader version will be displayed

Block 0 Erase

Version 4 of the bootloader has an issue with erasing block zero. The solution is to upgrade the bootloader.

Upgrading the Bootloader

Version 4 of the bootloader should be upgraded to version 5 first; see link (1). Follow the instructions. If it doesn't work then try a terminal program such as Hyperterminal to manually update the bootloader.

Once version 5 is installed it can be upgraded to version 7 using the functionality built into Flash Magic; see link (2).

Version 5 solves the block zero erase issue. Version 7 adds the option to use a pin to start the bootloader.


LPC9xx/LPC9xxx / MOVED: I2C Monitor
« on: December 03, 2009, 08:10:08 am »

This topic has been moved to Off-Topic because it is about firmware development.

Announcements / Signatures
« on: November 30, 2009, 11:10:57 am »
Signatures have been limited to one character, effectively disabling them. A new form of spam is to post something that looks useful but then have spam links in the signature. Sorry for any inconvenience.


Pages: 1 [2] 3 4 5