More tea please.

fetproxy: An open source replacement for msp430-gdbproxy

Just under 3 months ago, Tom and I reverse engineered the protocol to talk to the TI FET430UIF MSP430 debugger.

We weren’t confident that we could release the source without legal repercussions. We couldn’t really afford to pay a solicitor to find out what our legal position was (I got a quote from one of £600). We gave the problem some thought.

Letter to Texas Instruments After many discussions about what we could do, we decided to send a letter to TI to ask them whether they’d mind us releasing our code as open source. That letter is here on the right. Click on it to be able to read it. (You may notice that I’ve blacked out my address.)

Today I got a phone call from Thomas Mitnacht, who is Texas Instrument’s Development Tools Manager for MSP430 Microcontrollers and is based in Munich. After I’d explained to him why we’d reverse engineered the protocol, he said that he was happy for it to be released as open source. This is amazing. Thank you Thomas Mitnacht and TI!. I was quite surprised how quickly TI responded to this request.

He said he’d prefer for it to be under LGPL or GPL version 2 so that they could use the code, as apparently they’re not sure yet about how to deal with the patent requirements that GPLv3 has. Personally, I think the patent clauses in GPLv3 are useful and will help to make our software more free. However, given that TI could have given us a much harder time about this, I’m willing to release it under version 2.

Thomas also informed me about some important things to do with the MSP430 debugger. They’re not able to release the source code of their FET430 interface library at the moment. I think this is because of some licensing issues they have with that code. They’re working on a replacement library that will be open source and available at the end of this year. Sounds good. I’m looking forward to it.

I’m extremely happy to release the source code that Tom and I hacked together at 25C3. It’s a bit dirty at the moment, but now that we can have it out in the open we’ll definitely be putting more work into it.

Quit rambling, just give me the code!

I’ve put the code up in a git repository on gitorious. You can grab it like this:

git clone git://gitorious.org/fetproxy/mainline.git fetproxy

Several people have emailed me over the last couple of months asking me for the source. I’ve had to give them all a bit of a disappointing reply, which was “sorry, please wait”. If you’re one of those people, I hope that you understood.

P.S. Further good news: My msp430-gcc Fedora package passed its review a couple of days ago. It’ll hopefully be shipping within the next week.

Posted at 8:08 pm on Wednesday 25th March 2009

17 responses to “fetproxy: An open source replacement for msp430-gdbproxy”

  1. Justyn says:

    Well, this has cheered me up!

  2. Tom says:

    Good to see it up for all to see. I think I still have some of the commands in my logbook that I was not 100% sure on, unfortunately I haven’t yet worked out how to read the source from the confines of Internet cafe crippled windows horror. Perhaps this calls from dome sort of on line git viewer!

  3. rob says:

    @Tom: gitorious provides a method of browsing the source.

  4. Tom says:

    Ah yes, I wasn’t seeing the wood for the trees!

  5. Serafin says:

    @Rob and Tom: Thank you very much
    A big step fordward to really open source msp430 development platform

  6. Frank says:

    Very good news ! Thanks both for your great work. I’d like also to thank TI to make this great tool legally available.

  7. paul says:

    Great work!

    But how to make/use ? after git clone git://gitorious.org/fetproxy/mainline.git fetproxy?


  8. rob says:

    @Paul: After the git clone, cd into the new fetproxy directory and run “make”. fetproxy doesn’t yet support talking to gdb. That’s my weekend project!

  9. […] fetproxy: An open source replacement for msp430-gdbproxy […]

  10. […] — jedizone @ 3:56 pm Surpresas boas de empresas não open source são realmente motivantes. Robert e Tom criaram uma versão open source do msp430-gdbproxy, através de engenharia reversa. Ao entrar em […]

  11. Iwan Lokomotifeilowitsch says:

    Very good tool. I never got used to get msp430-gdbproxy working under Linux, but your tool instantly did its job. msp430-gdbproxy always gave me “Failed to initialize device (1)”, although i had updated the firmware on my Windoze-Computer (where msp430-gdbproxy works, funnily).

    Thank you fore this usefull piece of software!

  12. alp says:

    Does your tool work on a Windows machine (build using Cygwin)?
    I’ m saying this because after I finally managed to build it, the execution was aborted saying: “Failed to set serial baud rate to 460800: m”. Please advice on this.

    Thanks and good job!

  13. rob says:

    @alp: I’m not sure whether it’ll work under Cygwin. I don’t know what windows does with the EZ430/UIF. Since the device contains a usb-to-serial chip, I’d expect Windows to create a serial device, in which case it should work. However, Windows doesn’t necessarily do what one expects…

  14. dwelch says:

    Doesnt seem to build with a 64 bit linux

    /usr/include/libelf.h:98: error: expected specifier-qualifier-list before ‘off64_t’

  15. apullin says:

    dwlech, that has something do with an old version of elfutils. Update and it will work.

  16. soxs says:

    Is there some howto I can get my custom code to the MSP430 ( I gut that fancy student USB-Stick eZ430-F2013 Development Tool) on the mcu? The readmes within the code are way to short to actually get enough info :>

    May you please point me to some howto and/or extend the readme files, so they tell you how to actually transfer compiled code to the device.

    Thanks for any input on that subject.

  17. […] may remember Fetproxy, a free software alternative to […]

Site by Robert Spanton. © 2008 - 2011