Let's Make Robots!

hardware not found error

Hi,

I run the picaxe programming editor on windows XP in a virtual machine (parallels desktop) on my OS X laptop. The serial connection to the picaxe 28x1 works fine when I'm just communicating using hyperterm or when the picaxe sends debug info.

When I want to upload a program to the chip, it usually takes 4 or 5 tries to get it right. The larger the program, the more it fails to load.

So i decided to use the command line compiler for mac OS X. Now the uploads are very stable only a new problem appeared.

Some files wont upload. They compile just fine, but I get an error saying "hardware not found on /dev/tty.usb...." When I pick a different file -> no problem. When I empty the file or just enter a 3 line dummy program -> no problem.

It seems as if some statement in the file produces an error somewhere but the syntax checks out OK. 

 

Does anybody have a clue as to where I should look? 

P.S. I just registered at the picaxe forum, but i'm not allowed to post. 

 

UPDATE

I found a piece of code that, when removed, allows the upload to proceed. It is a SELECT ..CASE.. ENDSELECT statement

Funny thing is: This code comes from another program that uploads just fine 

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

I use axepad for Linux and they make one for Mac as well. It works very well.

Here is the link for Intel: http://www.rev-ed.co.uk/software/macaxepad.app.tar.gz

Here is the link for PPC: http://www.rev-ed.co.uk/software/macaxepadppc.app.tar.gz

If you have an Intel system then download the first one.

If you have a Power PC system then download the second one. 

I downloaded that as soon as they put it on the site. I haven't tried it yet. Hopefully the new version will not have this problem.

There is something rotten..

My trial and error tells me that after the Mac has been on for a while, it starts to get funny with the "Hardware not found".

If I shut down when it starts, wait.. wait.. power all on again, and we're back!

So far no result from just unplugging USB.

Mind you this is trial & error, only preliminary results :)

Forget what I said above!

I can now positive confirm that same HW setup with 2 different pieces of code works / works not! Computer shut cold or hot :)

The code not working is including select / Case - statements. The working one has none.

It'za bug!

Funny error-statement though :) And I have had case/select-code that did work!

However, there are several other bugs in this version .. that is released as 0.1.2 - Which in other words is like "beta!"

Must write loads of if-then!

OMG this is highly iregular!

IF-THEN's also causes the error now.

First this does not compile:

main:
pause 10

if b0 = 1 then
end if

if b0 =2 then
end if

if b0 = 3 then
end if

Then this does compile:

main:
pause 10

if b0 = 1 then
end if

Then this does compile:

main:
pause 10

if b0 = 1 then
end if

if b0 =2 then
end if

.. and now this does compile (that did not at first):

main:
pause 10

if b0 = 1 then
end if

if b0 =2 then
end if

if b0 = 3 then
end if

- and every time I compiled like 5 times in a row, every time with same result, till I changed the code!

I have a piece of code that works. but when I save it using another name -> HWNF. Delete all content from the new file -> Works. Put code back -> fail.

I tried deleting the code bit by bit to figure out what is causing the error, but it just doesn't make sense.

Have you tried the java version of the software? Or are you using the command line compiler? I downloaded the new java stuff, but I haven't tried it yet. I was kinda hoping that version would be better.

PS: I have tried to post in the picaxe forum since about a year and a half ago, like you not allowed to post, no response from them.. one reason for me to think "maby I should start a better site.."

The serial protocol needs to send larger series of information for a bigger prog. The interactive (terminal) traffic consists of one byte per action. Maybe a line of characters at the time, when the pic talks to your terminal.

Perhaps, this is speculation, the virtualization causes trouble when the uploader tries to send data in bucket loads, rather than byte by byte.

8ik

Thats sort of what I figured, although I think i've seen it become unstable when I booted directly into windows. Maybe the unstable uploads are two problems: 1) from the virtualization and 2) from a half emtpy battery.

The problem with the command line uploads where one program loads and the other gives a hardware error are stranger.