We were working recently on adding webUSB functionality to existing LPC1768 firmware. The same functionality exists in DAPLink firmware on many boards. We have a first beta drop available. It can be downloaded from here: https://assets.mbed.com/firmwares/lpc1768/mbedMicrocontroller_221130.if
How to install
- Download firmware from here
- Connect LPC1768
- Drag & drop the firmware on the board
- Reconnect the board
How to revert to older firmware
Follow steps from Firmware LPC1768 LPC11U24 - Handbook | Mbed
New firmware adds support to following features:
- Windows 8.1 and higher
This is a beta release. Firmware still has few known issues that we are working on:
- Linux distributions are unsupported (webUSB interface can’t be claimed on that board)
- Remote deploy often fails every when semihost is disabled in mbed_app.json
- Remote deploy often fails when Mbed program uses
wait_ns(). LPC1768 board goes then into deep sleep. Issue is not reproducible for
- Remote deploy often fails for non-DAPLINK deploys. We recommend setting
use Daplink preference to
Arek - Studio team
Tried it on two mbed LPC1768s. Mbed Flash drive went away on office PC running Windows 10 on both after firmware update. Flash drive shows up on my newer Win 11 PC at home and compiler can now flash code and run on that PC.
Debug and breakpoints still not working 100% of the time on blinky baremetal example for me here. I was able to hit a breakpoint a few times, but often got an error - typically RDDI - Error 13, or 22 or 57. It also seemed to stop a lot on a return semihost sys_exit line that I never set a breakpoint on whenever I hit continue.
Hi @4180_1 ,
Thank you for taking it for a spin. Mbed flash should be back on Windows. You need to keep it connected a little bit longer after the first time after the board is running a new firmware as Windows may be doing a scanning. It may take even up to 1 minute. Please let us know if it went back.
It also seemed to stop a lot on a return semihost sys_exit line that I never set a breakpoint on whenever I hit continue. - This is the issue I mentioned about in known issues. Debug is stuck in semihost when device goes into deep sleep mode. We are working on improving it
Arek - Studio team
The mbed I put on the Win 11 PC - It’s flash drive now shows up fast in Win 10 this morning and it pairs with DAPlink now, but says device unsupported when I build. The second one is still MIA in Win 10 after several minutes. I will take it home tonight and see if the same thing happens on it when I use Win 11 on it. The DAPlink device shows up, but the compiler cannot connect whenever the flash drive is missing.
I played with deep sleep a few years back on this chip - I recall reading someplace obscure in a manual that you can’t wake from deep sleep in debug mode on the LPC1768 - and I never got that sleep mode to wake up! Might have been NXP Application Note AN10915?
Thank you for this wonderful update, I have a few questions:
Will the update also work on LPC1788 and LPC4088? Otherwise, what would it require for it to be compatible with these models?
Is there a way to use it with boards like LPC1768 MINI DK (schematic) that do not support drag and drop updates?
If the above questions yield negative answers, what would be the recommended approach to implement WebUSB communication with LPC1879 MINI DK or LPC1788 and LPC4088 on recommended boards?
Thank you. We are still working on improving firmware for LPC1768 even further to make it more stable with webUSB. Especially when it comes to debugging.
LPC4088 supports DAPLink. We added support for webUSB in DAPLink few years ago. This board should be fully supported in Keil Studio Cloud after you update DAPLink firmware on that board. You can find it here: https://daplink.io/
LPC1788 - I’ll investigate how much work will it be to add a webUSB support the the firmware for that board.
LPC1768 MINI DK - It won’t be easy to enable webUSB feature on that board. That functionally is heavily based on drag & drop functionality.
Arek - Studio team
Thank you Arek, that sounds very promising,
This board is very interesting, would you recommend it to work with LPC4088?
EA LPC4088 Display Module | Mbed
One of the key features we are interested in is using ADC for impedance measurements calculations.
And how about LPC4357 for the same purposes (WebUSB and Impedance measurements)
LPC4088/4357 Development Boards - Embedded Artists | Mouser
What could be an additional advantage to be taken from the dual-core setup here?