[C.CC USERS] Transterpreter not finding plumbing.module - adventures in getting started

André David andre.david at gmail.com
Sun Jun 20 14:50:38 BST 2010


(Please cc me as I am not in the list and forgive me if this starts as
user stuff and ends as devel stuff)

Hi,

I have been long interested in the microcontroller platform. First
fiddled with a basic stamp in 1999 to make a networked (RS485) door
access system with card reader, keypad reader and LCD display. I
managed to make each part work alone, but operating the thing as a
whole required parallel programming of some sort.

That is why I was excited with the idea of proper concurrency being
unleashed on microcontrollers and decided it was a good time to spend
my money on a -ino board and learning a new programming language. So I
got the Transterpreter and tried compiling the simplest example from
the book, using the code that came with it. I was quite disappointed
to get:

Compiling: /Applications/Transterpreter/plumbing/ch1.occ
Error-occ21-/Applications/Transterpreter/plumbing/ch1.occ(1)- cannot
open file "plumbing.module"
Error-occ21-/Applications/Transterpreter/plumbing/ch1.occ(4)-
heartbeat is not declared
heartbeat undeclared on "/Applications/Transterpreter/plumbing/ch1.occ" line 4
2 errors found in source
occbuild: Command failed:
/Applications/Transterpreter/Transterpreter.app/Contents/Resources/bin/occ21
-t8 -zqa -etc -w -y -znd -znec -udo -zncc -init -xin -mobiles -zrpe
-zcxdiv -zcxrem -zep -b -DEF OCCBUILD.TVM
/Applications/Transterpreter/plumbing/ch1.occ
compile exited with error code: 1

The file *is* there:

$ find /Applications/Transterpreter -iname plumbing.module
/Applications/Transterpreter/Transterpreter.app/Contents/Resources/share/tvm-arduino/plumbing-include/plumbing.module

but it seems to be under tvm-arduino. So, looking closer:

$ ls /Applications/Transterpreter/Transterpreter.app/Contents/Resources/share/tvm*/
/Applications/Transterpreter/Transterpreter.app/Contents/Resources/share/tvm-arduino/:
avr-vtinclude           avr-vtlib               firmware
 plumbing-include

/Applications/Transterpreter/Transterpreter.app/Contents/Resources/share/tvm-ppc/:
firmware        vtinclude       vtlib

/Applications/Transterpreter/Transterpreter.app/Contents/Resources/share/tvm/:
firmware        vtinclude       vtlib

it seems that only the arduino flavor of TVM has plumbing. So, now I
get it: I was using the default "Desktop (TVM)" under Platform in
occPlug. Not good.

Selecting "Platfom: Arduino (and compatible)" now compiles without problems:

Compiling: /Applications/Transterpreter/plumbing/ch1.occ
compile completed sucessfully

But then I can't run anything, because I need to specify a port. So I
can't try out things without a real board. This prompted me to look
around for an arduino emulator (some software that would get the
binary on a virtual com port and then show the result in another
window) and it seems that the discussion at

http://stackoverflow.com/questions/780819/how-can-i-unit-test-arduino-code
and
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1270047709/4

is still valid: there isn't a really a suitable one. There is
VirtualBreadBoard and Fritzing, but my understanding is both work at a
high level and neither could load the occam-pi environment. (Still, I
may be wrong and would love being proven wrong).

So that leads to the next best possibility: to have a version of
plumbing that runs on a computer. And the inevitable questions are:
How useful/hard would it be? And are there plans for such a thing or
are arduino boards cheaper than making this?

Thanks,

Andre

--
André David




More information about the users mailing list