LPC4088 QuickStart Board - Things to Note

This page contains random information that is worth noting when working with the LPC4088 QuickStart Board

USB mass-storage does does not work on Mac - LPC4088 locks up

The HDK is not compatible with how a Mac writes the binary file to the USB mass-storage device (that the HDK creates). If a Mac is used to download a binary file, the LPC4088 will be flashed with a partial binary that is in no way correct. When the LPC4088 starts executing this program it can lock up. Further, the HDK gives an error message (error file on the USB mass-storage device).
If this happens, place the LPC4088 in ISP mode (hold down the user push-button when powering up the board, or resetting it). After that it is possible for the HDK to communicate again with the LPC4088 and download the binary correctly (if a Windows/Linux PC is used). Note that the user push-button must be pressed whenever the LPC4088 is power cycled or reset to keep the board in ISP mode. It is not until a new, correct binary has been downloaded that the "enter ISP mode" operation can be ignored after a power cycle or reset.

USB Virtual Serial Channel behaviour

A known behaviour of the HDK USB device is that it restarts after downloading any file to the mass storage device. If a virtual serial channel is active it will of course stop during the restart. A power cycle of the HDK is needed in order to restart the virtual serial channel after this. The simplest way to accomplish this is to open (and then short) JP3. This jumper can be found just beside the FPC connector.

USB Host stack not working

As mentioned on other places in the documentation, the USB Host stack in mbed does not work since it does not support the memory layout of the LPC4088 microcontroller.

Cannot download binary to LPC4088 via HDK or Cortex Debug connector

If it is impossible to download a new binary to the LPC4088 via the HDK/external debugger, it is likely that the LPC4088 is in a mode where it is impossible for the HDK/debugger to take control over it.
Press the user push-button while powering the board. That will place the LPC4088 is ISP/bootloader mode. After that it should be possible for the HDK/debugger to download a new binary.

Updating the HDK

If you are experiencing problems, perhaps there is an update for the CMSIS-DAP firmware that may help. Visit lpc4088-updating-the-cmsis-dap-interface to read about available updates and how to apply it.


Report

23 comments on LPC4088 QuickStart Board - Things to Note:

09 Oct 2013

Hello,

I tried to upload programs to the newly acquiered LPC4088. I started with the provisionned program using the 4 leds. While I uploaded the third version of the program (changing time values), the LPC40088 did not restart. I am using WIN 7 64bits and Chrome.

Now, the LED5 is no more green, LEDS 3 & 4 are dimed (blue) and when I write a file to the LPC4088, I have a file named "fail.txt" with "SWD ERROR" in it.

How can I fix this please ?

Thanks for your help.

09 Oct 2013

LED5 is not accessible from the LPC4088, so I assume you mean some other LED. Anyhow, if the LPC4088 program "hang" for some reason and the HDK cannot get in contact with it, just press the user push-button (found near the USB Host connector) while powering the board. That will place the LPC4088 in ISP/bootloader more. After this the HDK should be able to download a new program (binary file) to the LPC4088.

09 Oct 2013

/media/uploads/Kerpower/lcp4088.jpg

Yes, sorry LED5 turns on if an Xbee is on the board.

Even powering while pressing the user push-button does not change anything while uploading a bin file.

Still hung.

09 Oct 2013

Why do you think the processor is hung? After a power cycle all three HDK LEDs are always on and the Blue LEDs are in "dim" state until the I/Os are properly initialized by the application program. Have you tested downloading the pre-compiled binary? If failing, press the user-button (close to the USB Host connector) while powering the board (or alternatively, while pressing the reset push-button), but do not keep it pressed while using USB drag-n-drop of the pre-compiled binary.

09 Oct 2013

I seems that it is hung because I did not have those two dim blue leds while using it at the begining. Whatever the button used at power up, I cannot transfert binaries to the board. I always get the fail.txt file.

I tried to upload a .BIN from a Mac or a Linux PC (Ubuntu) without any success either

09 Oct 2013

As a start, I would suggest testing downloading from a Windows PC. That is the only platform from where the new HDK from the mbed team has been tested.

09 Oct 2013

EmbeddedArtists AB wrote:

As a start, I would suggest testing downloading from a Windows PC. That is the only platform from where the new HDK from the mbed team has been tested.

I tested the three plateforms. Same results.

10 Oct 2013

Just a note for possible future readers: Problem solved off-line.

15 Nov 2013

Is uploading from a Mac now supported?

15 Nov 2013

Stephane's problem was not related to the platform so it should work on a Mac. We have, however, not tested ourselves since we don't use Mac. The HDK software is developed by the mbed team and also used on other platforms (such as the LPC812 MAX board). I'm sure there would be more reports from users if it didn't work on a Mac

18 Nov 2013

Doesnt work on 10.8.5 here :(

[0xffffff800ce48a00](1)/(5) Device not responding
       0        0 dgmdmcontrol: start - Failed to find the CDC driver
       0        1 AppleUSBCDCACMControl: start - Failed to find the CDC driver
       0        2 AppleUSBCDCACMData: start - Find CDC driver for ACM data interface failed
       0        2 AppleUSBCDCECMData: start - Find CDC driver for ECM data interface failed
AppleUSBCDC: Version number - 4.1.23
USBF:	1792778.815	AppleUSBEHCI[0xffffff800ba54000]::Found a transaction which hasn't moved in 5 seconds on bus 0xfa, timing out! (Addr: 0, EP: 0)
USBF:	1792821.362	[0xffffff800e4e1c00] The IOUSBFamily was not able to enumerate a device.
USBF:	1792827.829	AppleUSBEHCI[0xffffff800ba54000]::Found a transaction which hasn't moved in 5 seconds on bus 0xfa, timing out! (Addr: 0, EP: 0)
USBF:	1792833.830	AppleUSBEHCI[0xffffff800ba54000]::Found a transaction which hasn't moved in 5 seconds on bus 0xfa, timing out! (Addr: 0, EP: 0)
USBF:	1792833.862	[0xffffff800e4e1c00] The IOUSBFamily is having trouble enumerating a USB device that has been plugged in.  It will keep retrying.  (Port 4 of Hub at 0xfa100000)
USBF:	1792839.831	AppleUSBEHCI[0xffffff800ba54000]::Found a transaction which hasn't moved in 5 seconds on bus 0xfa, timing out! (Addr: 0, EP: 0)
USBF:	1792870.775	[0xffffff800e4e1c00] The IOUSBFamily was not able to enumerate a device.
USBF:	1792876.841	AppleUSBEHCI[0xffffff800ba54000]::Found a transaction which hasn't moved in 5 seconds on bus 0xfa, timing out! (Addr: 0, EP: 0)
USBF:	1792882.842	AppleUSBEHCI[0xffffff800ba54000]::Found a transaction which hasn't moved in 5 seconds on bus 0xfa, timing out! (Addr: 0, EP: 0)
USBF:	1792882.875	[0xffffff800e4e1c00] The IOUSBFamily is having trouble enumerating a USB device that has been plugged in.  It will keep retrying.  (Port 4 of Hub at 0xfa100000)
USBF:	1792894.877	[0xffffff800e4e1c00] The IOUSBFamily gave up enumerating a USB device after 10 retries.  (Port 4 of Hub at 0xfa100000)
USBF:	1792894.877	[0xffffff800e4e1c00] The IOUSBFamily was not able to enumerate a device.
17 Dec 2013

It is sad that HDK doesn't works on MAC OS X... as the LPC1768 do.

Even with bootcamp (ie boot in windows 7 mode), the 4088 is not reconized as an USB Mass Storage, so from impossible to upload any soft.

Can we expect soon the HDK working with Mac OS X platform ?

Best regards.

If someone else succeed with uploading an bin file to this mbed platform with mac os X, please let-us know.

I'm using Maverick OS (ie 10.8.5).

20 Dec 2013

No luck yet (Mac OSX 10.9.1). The LPC MAX board works fine, a USB drive appears and I can drag a .bin file to it to upload, then press reset and it's running. I was thinking that this is a similar setup, but apparently not?

When plugging in micro-USB, I get a few blinks on the blue LED of the 2x2 LED area, then red-green-blue LEDs stay on next to the FPC ribbon.

I'm trying to get some sign of life out of the LPC4088: anything to validate uploads would be good sign. The attached base board with 7" LCD would be the next goal, so I bravely went ahead and started uploading app_gfx from the mbed site. No doubt a bit over-ambitious as first test...

Keeping the button above the micro-USB jack pressed leads to a "CRP DISABLD" drive being mounted, I assume that is the µC on the end acting as ISP/DAP/etc interface? Is there a way to make sure the proper code is loaded in there?

Keeping the USER button pressed while powering up via micro-USB brings up the MBED drive, with 9.4 MB free and an mbed.htm dated Dec 14th. Dragging the app_gfx_LPC4088.bin file to the USB drive keeps a busy bary running for long time, then I get a 'The item “app_gfx_LPC4088.bin” can’t be copied because there isn’t enough free space.' dialog, and the Mac laptop's keyboard and mouse become very unresponsive - sounds like some USB bus issue.

Attached some kernel console log entries which may have a bearing on this issue:

I'll be happy to assist and try things out to figure out the issue. I can switch to a Linux VM on the same machine if needed.

-jcw

20 Dec 2013

20/12/13 16:46:28,000 kernel[0]: USBMSC Identifier (non-unique): 0x00000000 0x1fc9 0xf 0x702, 1
20/12/13 16:46:31,037 mds[56]: (Normal) Volume: volume:0x7fbc02845800 ********** Bootstrapped Creating a default store:1 SpotLoc:(null) SpotVerLoc:(null) occlude:0 /Volumes/CRP DISABLD
20/12/13 16:46:31,125 fseventsd[66]: failed to make the directory /Volumes/CRP DISABLD/.fseventsd (28/No space left on device)
20/12/13 16:48:06,789 com.apple.kextd[12]: kext com.joshuawise.kexts.HoRNDIS  100001001 is in exception list, allowing to load
20/12/13 16:48:06,000 kernel[0]: USBMSC Identifier (non-unique): 01030200FA3276210C68B179 0xd28 0x204 0x100, 1
20/12/13 16:48:07,000 kernel[0]: [0xffffff8021332600](0)/(5) Device not responding
20/12/13 16:48:07,000 kernel[0]: IOUSBMassStorageClass: not registry member at registerService()
20/12/13 16:48:07,000 kernel[0]: AppleUSBCDCACMData: Version number - 4.2.1b2, Input buffers 8, Output buffers 16
20/12/13 16:48:08,000 kernel[0]: AppleUSBCDC: Version number - 4.2.1b2
20/12/13 16:48:11,000 kernel[0]: USBMSC Identifier (non-unique): 01030200FA3276210C68B179 0xd28 0x204 0x100, 1
20/12/13 16:48:11,000 kernel[0]: AppleUSBCDCACMData: Version number - 4.2.1b2, Input buffers 8, Output buffers 16
20/12/13 16:48:12,000 kernel[0]: AppleUSBCDC: Version number - 4.2.1b2
20/12/13 16:48:13,048 mds[56]: (Normal) Volume: volume:0x7fbc02068000 ********** Bootstrapped Creating a default store:0 SpotLoc:(null) SpotVerLoc:(null) occlude:0 /Volumes/MBED
20/12/13 16:48:13,165 fseventsd[66]: Logging disabled completely for device:1: /Volumes/MBED
20/12/13 16:49:59,000 kernel[0]: USBF:    42303.741    AppleUSBOHCI::Found a transaction past the completion deadline on bus 0x4, timing out! (Addr: 5, EP: 2)
20/12/13 16:50:05,000 kernel[0]: USBF:    42309.747    AppleUSBOHCI::Found a transaction which hasn't moved in 5 seconds on bus 0x4, timing out! (Addr: 5, EP: 0)
20/12/13 16:50:11,000 kernel[0]: USBF:    42315.752    AppleUSBOHCI::Found a transaction which hasn't moved in 5 seconds on bus 0x4, timing out! (Addr: 0, EP: 0)
20/12/13 16:50:17,000 kernel[0]: USBF:    42321.756    AppleUSBOHCI::Found a transaction which hasn't moved in 5 seconds on bus 0x4, timing out! (Addr: 0, EP: 0)
20/12/13 16:50:23,000 kernel[0]: USBF:    42327.762    AppleUSBOHCI::Found a transaction which hasn't moved in 5 seconds on bus 0x4, timing out! (Addr: 0, EP: 0)
20/12/13 16:50:29,000 kernel[0]: USBF:    42333.769    AppleUSBOHCI::Found a transaction which hasn't moved in 5 seconds on bus 0x4, timing out! (Addr: 0, EP: 0)
20 Dec 2013

20/12/13 16:50:35,000 kernel[0]: USBF:    42339.775    AppleUSBOHCI::Found a transaction which hasn't moved in 5 seconds on bus 0x4, timing out! (Addr: 0, EP: 0)
20/12/13 16:50:39,000 kernel[0]: AppleUSBMultitouchDriver::handleSuspend - SuspendPort returned error 0xe00002e2.
20/12/13 16:50:40,000 kernel[0]: disk2: device/channel is not attached.
20/12/13 16:50:40,000 kernel[0]: disk2: device/channel is not attached.
20/12/13 16:50:40,000 kernel[0]: msdosfs_meta_flush_internal: error 6 flushing FAT cache!
20/12/13 16:50:40,000 kernel[0]: disk2: device/channel is not attached.
20/12/13 16:50:40,000 kernel[0]: disk2: device/channel is not attached.
20/12/13 16:50:40,000 kernel[0]: [0xffffff801d9f9000](1)/(5) Device not responding
20/12/13 16:50:40,000 kernel[0]: disk2: device/channel is not attached.
20/12/13 16:50:40,000 kernel[0]: disk2: media is not present.
20/12/13 16:50:40,000 kernel[0]: disk2: media is not present.
20/12/13 16:50:40,000 kernel[0]: disk2: media is not present.
20/12/13 16:50:40,000 kernel[0]: disk2: media is not present.
20/12/13 16:50:40,000 kernel[0]: disk2: media is not present.
20/12/13 16:50:40,000 kernel[0]: disk2: media is not present.
20/12/13 16:50:40,000 kernel[0]: disk2: media is not present.
20/12/13 16:50:40,000 kernel[0]: disk2: media is not present.
20/12/13 16:50:40,000 kernel[0]: disk2: media is not present.
20/12/13 16:50:40,881 ReclaimSpaceAgent[3026]: Attempting to recover 140734654630160 free space on volume , operation UUID: (null)
20/12/13 16:50:40,881 ReclaimSpaceAgent[3026]: Failed to get available capacity for (null), error: (null)
20 Dec 2013

With apologies for the attachment style - direct file attachments do not seem to work with Safari.

20 Dec 2013

When plugged in as-is (no USER button), an "MBED CMSIS-DAP" USB device shows up in the system info. Is there some other way to upload, perhaps via the LPCxpresso IDE?

Likewise, there's a /dev/tty.usbmodem412 serial port. I tried uploading via the open source "lpc21isp" utility (github.com/capiman/lpc21isp), which works with other LPC chips, but no luck - may not be the same serial ISP protocol.

21 Dec 2013

We are working on an updated version of the HDK that will have the same code base as the LPC812 MAX and be just as stable. As soon as testing is completed we will post the updated files along with instructions on how to upload it on the LPC4088 QuickStart Board.

If you would like to test it before it is released then send a private message to us and don't forget to include your email address so that we can send you the files and instructions.

21 Dec 2013

I ve found a way of using mbed boards with Mac OS X 10.9.1 Mavericks.

I own 2xLPC4088 QuickStart Board and 1xLPC812 mbed/Xpresso.

Every time I tempt to connect the 4088 Board on the Mac, I get some troubles. The board appears, disappers, sometimme the system suddenly reboot himself without preventing of that fact...

After long tests, I found a way that works every time with the boards I own.

I use VirtualBox 4.3.6 (https://www.virtualbox.org/) with and version of Windows XP PRO SP3 installed on it.

I will describe how to use the boards through 12 screens capture.

This tutorial implies that virtualbox, with an full windows xp system are installed on your computer and works fine.

-1- Connect the 4088 board to the mac while pressing the button near the Ethernet connector (USER button).

-2- the mbed board appears on the Finder.

-3- Before starting XP with virtualbox you must :

Start virtualbox to access at the usb options of the virtual machine.

/media/uploads/Grag38/img01.png

You will see some of usb devices you prevliously declared to be used with the virtual machine

/media/uploads/Grag38/img02.png

Click and the icon with the '+' sign to add an new usb devices to the virtual machine. You will see that you can add the 'MBED CMSIS-DAP[0100]' device

/media/uploads/Grag38/img03.png

Add it !

/media/uploads/Grag38/img04.png

If you double click on that device you will see some informations about the mbed as serail number and other things.

/media/uploads/Grag38/img05.png

If you want you can rename the device to get an more explicit name of it (good way of doing if you own as I, several boards)

/media/uploads/Grag38/img06.png

As the board is still 'attached' to Mac OS X, it will not be usable by the virtual machine (virtual machines doesn't share some devices with the host machine), so from, eject it.

/media/uploads/Grag38/img07.png

Start the XP machine, the virtual machine will find automatically the mbed board ! And will open a window as any usb disk devices.

If your WinXP is in the window mode (a window over the mac os x system, not in the full view), you can cliqu to the USB Icon of the WinXP window that will show you that the MBED is attached to this virtual machine.

/media/uploads/Grag38/img08.png

(continues on next psot bacause of 3000 char limit).

21 Dec 2013

(second part of the post).

You can then use the online compiler, or create virtual shared disks between Mac OS X and the XP machiine to share folders you need.

Then you can upload, or write to the mbed your bin files as we like to do !

/media/uploads/Grag38/img09.png

If you have also installed windows serial drivers on the virtual machine you will also discover the Com port to use with an serial terminal emulator like Putty.

/media/uploads/Grag38/img10.png

you can then set the Putty to use the correct com port (ie COM3 in my case), because it will be different for each board you add.

/media/uploads/Grag38/img11.png

As you can see, Putty is working without any trouble with the LPC4088 board with WinXp machine.

/media/uploads/Grag38/img12.png

I hope this small tutorial can help some of you, if you've got some trouble to use the LPC4088 board with mac OSX.

Best Regards.

Raph

14 Mar 2014

Have there been any developments using a Mac to program the LPC4088 bin file?

02 Jul 2014

Hello,

EmbeddedArtists AB wrote:

Just a note for possible future readers: Problem solved off-line.

same problem here. How was the problem solved?

Kind regards, Sören

23 Nov 2015

I use USBHostKeyboard and it works. But in comparison to a KL46Z board sending each character takes 100ms. I cannot find such a delay processing of the queue. What is the difference or how can I speed it up? Thanks, Joerg

Please log in to post comments.