Microchip Puts Up Two $1000 Prizes For USB And TCP/IP Stacks!


A couple of weeks ago we put up a post titled Addressing Microchip’s open source problem where we talked about some of their shortcomings as far as open source code goes, specifically the TCP/IP stack and the USB stack. The comments were predictably fairly negative. The interesting part here is that Microchip actually listened. If you read through all of the comments, you will get a bit of an inside look at what is going on internally at Microchip. At the very end, [Marc] from Microchip left a couple of comments outlining a pair of prizes for independently ported stacks for TCP/IP and USB. Microchip can’t fully open the ones that they have because of legal reasons so they need the help of the development community and they are putting up $1000 for each one to prove that they are serious. If you follow this link you will arrive at a page outlining the rules for the contest.

The gauntlet has been dropped! Do you have chops to pull this off and earn yourself a cool $1000?

37 thoughts on “Microchip Puts Up Two $1000 Prizes For USB And TCP/IP Stacks!

  1. Having to “customized” the existing Microchip USB code to get it to work for a particular application, I am almost sure that the $1000 bounty for an entire PIC based USB stack will not come out to more then several dollars an hour – if that.

    On the other hand, if anyone has already created a USB stack for other purposes, go for it! There are so many thing the USB stack found in Linux does that the one found in Microchip Solutions does not – it’s enough to make you go nuts.

    1. A port of LUFA (AVR USB stack) is also viable for the contest. It says so in the rules. So it’s just a porting challenge. (I’ve never worked with PIC, so no idea how much work it will be)

  2. Despite all the negativity I think this is a great idea. Shows they are serious about getting people to develop open source code for their chips.

    I will say that it’s difficult to make an entire stack for either USB or TCP/IP, but at least there are open source versions of both to get someone started.

  3. I have heard time and time again from FLOSS fanbois, “If they would just release the specs we would write it.”
    Now not only has microchips released the specs but offered a $1000 prize. Is everyone happy? No……
    Really folks this is really cool. Some college student will probably do this as a project and collect $1000 to boot.

  4. This is a good thing. A huge corporation –including the CEO (think about that for a moment)– listens to a tiny, vocal minority and relatively quickly makes a move to try to fix a perceived problem. Most corporations could never even get past the point of acknowledging the kind of bitching that occurred in the previous HAD thread. Microchip responded to the community without putting themselves in a position of being extorted by it later.

  5. There does seem to be a lot more complaining than productive coding going on!

    If this does get done, it’ll very likely be the work of just one determined individual. Then suddenly all this complaining and negativity will magically turn into a bunch of self congratulatory praise about the open source / open hardware “community”.

    I believe I have some special insights here, speaking as one of the 2 people who’s written a widely used open source USB stack for AVR… though some people might not consider my much smaller code in only a few files a “stack” compared to Dean’s hundreds of files in 4 levels of directory hierarchy!

    Regarding the $1k bounty, Microchip probably sees it a PR expense. They probably also expect someone to more or less copy or at least use their published code as a template.

  6. I agree with Iwatcdr. 2 weeks ago everyone on HAD screamed for Microchip to put up or shut up about the chipKIT being OS. Well Microchip just put up $2k and now people are bitching and moaning about how that will not cover the time invested. They are not asking you to rewrite new stacks from the ground up, but rather asking you to modify an OpenSource stack to work with the chipKIT line. So now is the time for the community to put up or shut up. Adafruit challenged the community to make the kinect work with PC and other hardware and it took almost no time at all. Then someone challenged the community to port Android to the HP Touchpad. It took less than a month. Now lets see how fast we can get these stacks wrote!

  7. Well also read the rules closer to the ones that are bitching about the bitchers. its 1000$ to port/code the stack, and then support it and write their wiki article about it… While its an interesting challenge, and 1000$ to port something would have defineatly been put up money. expecting the porter to support it after the code dump for that little is kinda insulting. Its great to see them taking steps but try a bit harder next time you know.

    1. Hey Kusuriya:

      We’re definitely not asking the individual to handle support by themselves. All we’re asking is that they agree to help me generate supporting documentation that I will post to the http://www.chipkit.cc/wiki page so that users get the best reference possible. As for the amount of cash we’re putting up, you have to remember we’re in a down cycle right now in this industry. So anything related to Marketing/Sales is always the first to be pulled back in lieu of keeping a continuous supply of products to our customers and keeping people employed. Believe me, if these were better times, we could have done more. I think that this really speaks volumes to our Executive Staff for approving this amount and to their commitment to this community.

  8. 1k dollar?

    They must be kidding us! I think isn’t Microchip. It’s [Marc] paying for the prize from his weekends money back…

    A complete joke! Almonst anyone with enough skills like to do something like that wins more in half month.

    Add one zero to the right of that number, or pay 1k dollars but in Microchip products at factory costs, and we may start to think about doing it.

  9. Keeping in mind that there’s more to life in the hacking world than cash. If dollars were the only motivation, then I doubt most of the hacks we see here would get done. Where’s the money in them? I’m sure people will be motivated for the challenge, fame, credibility, and the money.

  10. Nice move on the part of Microchip, especially in the present economy! I’m really impressed. If I were a coder, I’d be all over the challenge. Sadly, coding is not one of my skills (or inclinations… I prefer to settle things with a soldering gun!). But to the coders out there, now’s the time to put up or shut up… or, as they say it in the hills of TX, qwitcherbitchin!

  11. Not to be a downer but if they wanted to be open source friendly then they would stop charging $800 for an old version of GCC that has 16KB of code modified.

    The people complaining of the work to payment ratio are absolutely correct. I’m a career programmer and have worked with embedded systems and these are tight requirements to meet and will take a lot of time to implement/convert. If they were even half serious, they would put up a minimum of $10K per prize. These are not small feats and they know it. They licensed the current closed source stuff so they are not allowed to release the source but seem unwilling to actually pay to write their own code. I’m betting running this contest cost more than $10K.

    Microchip got popular and then they got really lazy. I believe their mentality is that they make hardware, not software when in fact one cannot exist without the other.

    Unfortunately for Microchip, new contenders have arrived that are quite superior in hardware, software and cost. I’m interested in seeing if they survive the decade.

  12. Me thinks this is something Microchip should have done for themselves. Yep – supporting your product with open source software. Even my 3 year old $100 Samsung printer came with Linux printer driver.

    It is hard to fathom that they couldn’t put one of their engineers to work on this. I guess it is cheaper to pay others $1000, instead of paying your own $100 k. “It is too expensive” – no it is not. You lose customers by not supporting your products properly.

    And where is the link for that free PIC32 kit for which those stacks are to be developed? It was present last week I think. It would be nice to provide links to existing stacks (from which the new is to be developed):

    “A port of an existing open-source Ethernet stack (e.g. Contiki) for the chipKIT Max32 with the following requirements:

    o Functionality with the current chipKIT Ethernet Library

    § i.e. Can run current examples …”

  13. You guys are missing the point here. Microchip is trying to build a support base for the chipKIT boards. Just like Arduino. How about all of the library’s and stacks that have been built to support it for free? How many people bitched about needing a library for a less common LCD only to see one coded mere weeks later by someone just wanting to help out.

    I bet Microsoft paid their engineers hundreds of thousands of dollars to build the drivers and code to get the Kinect working.When Adafruit issued the challenge to hack it and get it working on other platforms no one balked at their prize size verses what a paid Microsoft engineer would make during the year he spent coding and debugging.

    All of this whining about the prize size is coming from people who are jealous that someone more skilled than them who might have a lot of free time, will churn out one of these more sooner than later and they will loose their time invested and not get any thing.

    Or its coming from those will always jump on the “Anti corporation” bandwagon and declare anything said corporation does as evil.

    Microchip is attempting to do the right thing here. First people bitch about them not being open source friendly, then they team up with Digilent to release something open source. Then people bitch again about the stacks not being open source, so again Microchip steps up and fronts the cash to motivate the os community to create something they do not need. I have the Max32 and Network shield and I can tell you that they both work perfectly fine with the closed stacks. So instead of condemning Microchip for trying to do the right thing here, how about we support them.

    If the $1000 per stack seems way too cheap to you, you do not have to participate. I can assure you that some engineer out there who recently lost his job and needs to pay his mortgage or feed his children will work on this 24 hours a day, because even if it takes him 3 months of coding, its still $1000 he did not have before he started.

  14. Just my 2 cents, we have to draw the line somewhere on what opensource is. I have a website where I give my designs away, however, others complain that the compiler I use cost allot of money. Where do we draw the line? I use the CCS compiler mostly for PIC’s, and I use some built in functions, do we ask CCS to open source the compiler? lets look at intel, do we ask them to opensource the microcode inside their chips? Not every line of source needs to be open, if you can read my source and understand that output_high(pin_a1) turns on pin a1, then who cares what compiler? same with send_udp(“data”)..

    ok, more of a rant, but I hold my position.

  15. That is very interesting. Now, Microchip will make millions and millions of dollars selling the code you wrote for only ONE THOUSAND DOLLARS. That is really amazing. It must be a joke, right? A serious joke? Is really Microchip thinking that every PIC code writer is that cheap? people is really naive? Even a small and novice coder, that is able to develop such stacks, he/she will sell that code for any emerging company in the market that might use such code, for at least 10 to 15k… no kidding about that. Hey Microchip, WAKE UP… your buyers are NOT that cheap kids. If you, Microchip think so, I will move to Atmel AVR immediately, at least they dont trash their users. Come on.!!!

  16. @MicroChip: (company)

    @(anyone mad):
    this just might be a catalyst that ends up putting PIC alongside propeller uC in those walkin stores you were all argueing about(last week?)… and still no arduino there.

    personally, i dont like PIC chips, but anything that gets more ppl involved in this hobby(ERM BRAND), the bigger our market share: the more prices fall and “hobbyist preference” may some day come into (greater) play…

    @everyone the fact that they even read this site at all means something, SLOW change, what with thier MASSIVE shipments to device manu.s compared to the nonexistent hobby market, they actually waded through a bunch of our bitching and whinning and decided they would help us to be happy, even a little.

    PS: ever wonder what that chip was in that ___ that had the label scraped off? most of what they sell probably never even gets a label… we are nothing to thier profit margins, and they still listened! like a strict BUT LOVING parent!

    and again i prefer atmel, but atmel and others HINT HINT!!! fuse settings could have been GREATLY simplified with only 2 bytes more of config,(there only is 2or3 bytes i think) geeze! …i mean 4096 ram and only 2or3 for config WTF???!?!?!

  17. Looking at it isolated as a contest it is IMHO a cool thing. If microchip were going “lets do a contest and put up some price money plus some kits” everybody would be glad and happy.

    However, it totally fails as a reponse to the request of “giving something back to the community”. I’d understand the request as “take some of your assets and make them available to the community” or – if this is impossible for e.g. legal reasons – “assign some of our engineers to improve some community-project”. If there are no engineers available it also could mean “hire a contractor to develop $asset and make the result available”.

    The contest thing goes into the other direction: In the end (if the contest is successful) microchip will have access to a TCP and USB stack, for the bargain of 2000USD (three or four person-days if you’d have hired a contractor, which is not enough to develop a single one of these stacks) plus some peanuts. And lots of community-people will have invested their time in vain, since they did *not* win the lottery. This is more like exploiting the community *again*.

    Reading this again it really sounds a lot more bitter than I intended. This “contest” sucks from the angle of “giving back”, but as a standalone thing it is cool.


    1. Err, Simon

      The contest thing goes into the other direction: In the end (if the contest is successful) microchip will have access to a TCP and USB stack, for the bargain of 2000USD (three or four person-days if you’d have hired a contractor, which is not enough to develop a single one of these stacks) plus some peanuts.

      Mircochip already have TCP/IP & USB stacks. Its just that they are not open source. The only people that benefit are the ones who need the Open Source stacks. Microchip gets no real direct benefit from this. Trust me, hobbists are not the bread and butter customers of Microchip. Those cutomers are fine to use the “closed license” stacks (of which the restriction basicly boils down to – don’t distribute the source & only use on microchip uCs).

      1. Sorry, I forgot to add “royalty free” (or do you think that microchip got the permission to distribute the existing stacks for free?)

        And even then, the point in question is, that this is microchips attempt to “give something back to the community”. And it apparently believes, that the financial equivalent of a handful of licenses for a commercial toolchain is a reasonable compensation for “the community”.

        Granted, this is a very noir point of view. However, I really miss the “commitment to community” aspect here. Spending 2000 USD once is peanuts, even with someone organizing a contest around this, even when they didn’t want to award something that usually is a lot more expensive.

        Assigning a part of the time of one of their developers to improving the open source toolchain for PICs would be a totally different signal. It would indicate that they’re willing to join the community eco system, it would signal a different attitude.


  18. Simon,
    The existing Microchip TCP/IP and USB stacks are royalty free. Microchip offers all of the source code for both the USB and TCP/IP stacks for a zero cost under Microchip’s license. Rangerbob made some comments on Microchip’s license above, which I could repeat, but that won’t add to the current discussion.

  19. LWIP is a nice open source TCPIP stack
    and it is already ported to PIC32, it can do most of all the TCP funcionality, TCP, UDP, TELNET, FTP, HTTP, PING, SNTP, SSL
    Why reinvent the wheel?
    Rather put together a easier user guide for the stack, so more people can use it, as the documentation is not so easy to go through

  20. Seems like a candidate for a Kick Starter. Now that MicroChip is deprecating their C18 and currently their TCP/IP stack with it, I bet there are a lot of folks who would pitch in a couple bucks and a lot of companies which would pitch in more for some person to port the stack.

  21. Got uIP .9 is working on MIcroChip’s PICDEM.net 2 board being compiled by sdcc. :-) The PICDEM.net 2 board uses the PIC18F9797J60 with an internal PHY. Microchip’s driver files are of course non-free but can be distributed as for a MicroChip uP or Ethernet controller. No changes had to be made to uIP .9 code.
    Hope this wasn’t effort duplication… :-P
    The uIP example program currently connected in is the one which responds with “ok” to any messages sent in on a TCP connection on port 1234.
    After splitting development off from the test program to the real application it was discovered that the timer code wasn’t working so the main loop is spinning faster then it should and also that uIP’s own implementation of the ARP cache doesn’t work well for non-response generated messages.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.