NXP 11u3x microcontroller

I have a small device (lens adapter ring) using a 11U35 controller from NXP. The device has a micro usb for firmware updates. I want to reprogram the microcontroller to add a couple of functions (all it does is take simple serial data commands and converts them into different serial commands for another lens system).

Does anyone have any experience with this chip ?

How difficult would reprogramming it be compared to arduino ? Is there an app I can use to connect to the chip and upload a new set of instructions ?

https://www.nxp.com/docs/en/data-sheet/LPC11U3X.pdf

It looks like it’s jus JTAG.

I use the word "just " with trepidation

You should be able to use LPCXpresso IDE which is similar to the Arduino IDE.

great thanks! is the code similar to arduino ?

I’ve used LPCXPresso daily for 2 years, is more advanced than Arduino but your microcontroller support mbed :

https://os.mbed.com/platforms/EA-LPC11U35/

which is more user friendly (it use an online web IDE but you can download the code as well and the library are opensource)

It’s more old school.

Thanks guys. Looks like I’ve got my work cut out :grin:

Just to be clear, you’re not “adding” to what’s there already, you’re completely reimplementing it =]

But mbed is great, I think far better than Arduino on most if not all fronts.

1 Like

Yes I realise that. I’m looking at what sort of stuff I have to re-code and weighing my options vs. leaving the thing alone.

Is there any way of downloading the raw compliled state of whatever is on the chip, and putting it back later in case I want to revert to the factory firmware ?

That’s an Andrea question, I have no idea. But it’s starting to make my mind wander… starting with the USB update process.

From the product page :

“The USB-ISP mode where the board will enumerate as a USB Mass storage device on a Windows PC. Just copy the compiled binary file to the storage device.”

As far as I know, there is no way to overwrite the bootloader , because the bootloader is in a protected area of the chip.

Where’s the product page for the lens adapter? Is there documentation for the serial commands in? And the serial commands of the lens system it’s controlling?

But, oh wow, if it uses the drag and drop update as per (most?) mbed dev boards, you’re golden. If the existing firmware isn’t just sitting there already, it’s likely a download away, and you’ve got a risk-free way of trying to put on new firmware.

Finally, if the online mbed IDE will produce binaries that you can run on the actual hardware, I’d say this is a good, achievable project. The code is going to get low-level, but the goal is simple enough to motivate getting through that.

it’s a Micro Four Thirds to Canon EF adaptor from metabones. Aperture works (sort of, not very well, i want to make it more reliable) but unfortunately the mount doesn’t forward focus commands to the lens. I know the serial commands to get the lens to move focus back/forth as the EF protocol is well documented.

Unfortunately, the MFT protocol is not patented and has not been disclosed. It also seems way more complicated than the EF commands, as handshake information is constantly sent back and forth to the camera, and if no lens is recognised the camera won’t send aperture/focus commands :frowning:

It might be too complicated to implement a fix for this, unless i drive everything through the adapter without using the camera, or find some way of spying on the commands without erasing the software currently in there

firmware seems to be available here http://metabones.com/article/of/EF-M43_Firmware_Win

I worked on camera lenses in the past with mbed, I know the Fujinon and Canon protocols, I’m happy to help if you want, my ex-colleague was used to call me “The protocol Wizard” , just saying :wink:

oohhh! look! what is this? the protocol doc for Canon? who dropped this here?? and what about this working C++ code?

Weird.

OMG that’s awesome! Fuji have gone with the MFT mount developed by olympus for their latest X range cameras, have you worked with that standard?

all I can find is this guy’s work to reverse engineer it in 2013, looks like he didn’t get too far

I think I will 3D print lens mounts with electric contacts and get a prototype working on arduino first, until I figure out what instructions the camera is sending and needs to receive.

This process is currently not working very well on my adapter, since I have to un-twist it several times and slowly twist it back on to get the lens aperture to show up in camera. The adapter was developed for an older model camera which it works fine with, but not with this one, although weirdly the mount standard is exactly the same. So not sure what is going on. Maybe some tolerances are off and pins are not always contacting, or some sort of handshake error is preventing the camera from setting the pin voltage to high.

I have a Saleae logic analyser you are welcome to borrow.

awesome ! I’l have to figure out how one works first though :grin:
are you still down at the space from time to time? haven’t seen you in ages!

I’m planning to be down on Saturday for the CNC demo - I’m working near Heathrow during the day so have not been around much :frowning: I’ll bring the Saleae along. It is fairly simple - you tap the serial lines then you can use it as a protocol sniffer. You record then can see the lines going high and low on the screen.

There’s a bus pirate in the space somewhere too, that can debug most protocols.

Courty

They’re easy. It’s basically a dongle you attach to the computer, and you’re looking at a decent app, rather than inscrutable hardware interface. You get a graph of high/low over time, and if you tell the app it’s RS232 or whatnot, it will translate that into text in-situ on the graph.

I was using one to debug my stepper control a year or two back:
http://tobyz.net/diary/2015/06/tekton-stepperpulses