chipKIT® Development Platform

Inspired by Arduino™

Chipkit uc32 - stk500v2_receiveMessage() timeout

Created Mon, 18 Aug 2014 19:40:37 +0000 by vance.walsh


vance.walsh

Mon, 18 Aug 2014 19:40:37 +0000

I'm running Ubuntu 12.04 64 bit with the latest 64bit mpide downloaded. I've installed the rxtx lib along with all of the other suggested libs. I am able to open Mpide and can 'verify' the code runs, but I cannot 'upload' it to the board, I keep getting timeouts (stk500v2_recievemessage() timeout). I've tried many possible combinations of settings with no luck.

I've tried this exact chipkit board on my windows 7 64bit machine and it works perfectly, no issues uploading. So I am to assume that I have the incorrect version of java or a bad library installed somehow.

What steps should I take to get mpide working so that I can build my code and upload it to the board? Specifically what libraries are needed? I've looked over the post on this forum about linux issues and its basically the same advice across the internet, which isn't helping.

It would be perfectly acceptable to make a bash script to do all of this by hand, instead of utilizing mpide, but obviously, the ide is friendly. I'm sure there is a way to utilize avrdude and some gcc to compile the code.

If its easier to use Mplab X I would be willing to give that a try.

I'm a little lost here and need some guidance, I'll provide any necessary logs, etc. Please help

-- Somewhat Unrelated --

Please note that I cannot hose over my java install completely. I have to have a compatible version of java to work with WEBEX for business meetings. But I can't imagine that jdk6 would interfere or cause instability issues there.


Laci04

Mon, 16 Mar 2015 12:02:57 +0000

Hello! I'm using MPIDE latest version under Ubuntu 14.04LTS 64bit. Max32 board programming it works perfectly, but uC32 board upload not successfully. (simple led blink program) Error message: stk500v2_recievemessage() timeout Max32 and uC32 boards on my windows 7 machine it works perfectly. Tested MPIDE 20140316 and 20140821 linux 64bit. What is the problem?


Laci04

Mon, 16 Mar 2015 12:04:51 +0000

Hello! I'm using MPIDE latest version under Ubuntu 14.04LTS 64bit. Max32 board programming it works perfectly, but uC32 board upload not successfully. (simple led blink program) Error message: stk500v2_recievemessage() timeout Max32 and uC32 boards on my windows 7 machine it works perfectly. Tested MPIDE 20140316 and 20140821 linux 64bit. What is the problem?


vance.walsh

Wed, 01 Apr 2015 11:30:00 +0000

I never found a solution to this and I just simply had to move onto other things (it worked on my windows machine - which got me by in the short term).

Honestly, I'm probably going to move towards the STM32 Nucleo or Discovery boards as they cost about $10 dollars and seem to have the same specs as the chipkit boards. Hell they are probably a clone of the chipkit boards themselves.

In any case, if you do find a working solution, I'd be glad to hear it. Otherwise, best of luck to you!


nfdcasaleiro

Thu, 05 Nov 2015 16:06:10 +0000

I had the same problem and the solution was burn again the bootloader (http://www.digilentinc.com/Products/Detail.cfm?NavPath=2,892,1035&Prod=CHIPKIT-UC32)


majenko

Thu, 05 Nov 2015 22:39:00 +0000

uC32 boards were shipped with the wrong bootloader installed which meant they didn't work in Linux. Why only Linux is a mystery.

The bootloader on the Digilent website is the correct bootloader and should be used to replace the bootloader on any uC32 boards.

There is a bootloader re-programming sketch available here: [url]http://www.digilentinc.com/Data/Products/CHIPKIT-UC32/chipKIT_uC32_BL_Update.zip[/url]. Load it in MPIDE or UECIDE, compile it, and upload it to your uC32. Open the serial monitor or other serial terminal program and follow the prompts.

Of course you need a system that isn't running Linux to install it via the non-working-in-Linux bootloader. It has been tested and works in a Windows virtual machine running inside VirtualBox.

Or you can reprogram the bootloader HEX file using a hardware programmer such as a PICkit3 or chipKIT PGM.