browsing the svn

0 views
Skip to first unread message

vasile surducan

unread,
Nov 8, 2009, 4:59:57 AM11/8/09
to jal...@googlegroups.com
Hi all,
 
I had a little time and browsing the entire svn from the perspective of a guest . Impressive work there!
I've noticed some files are reffering to a board file.
The board file indeed exist but in the svn/trunk/test/board, however maybe an include of the real board in the test file could simplify the user search.

Also the tests which deals with two boards (like master slave) are not grouped together.
With other words: in the svn/trunk/test/peripheral/i2c there are 10 jal files dealing with various I2C tests. Trying to understand which files are pairs for a master slave test I've noticed (maybe it's wrong) that
"test_i2C_sw_master_echo.jal"  and  "test_i2c_hw_slave_echo.jal" should belong together into a separate directory in the i2C section named for example "master-slave".
Probably the same with "test_i2C_sw_master_check_bus.jal" and "test_i2C_hw_slave_check_bus.jal"
 
I understand the reason why svn is organised like this, however maybe a better ideea would be to keep together (maybe a zip file?) everything related to a project or to a test file.
 
best wishes,
Vasile
 
 

Joep Suijs

unread,
Nov 8, 2009, 5:41:36 AM11/8/09
to jal...@googlegroups.com
Hi Vasile,

2009/11/8 vasile surducan vsur...@gmail.com
 
> had a little time and browsing the entire svn from the perspective of a guest .
> Impressive work there!
Thank you (on behalf of the team).
 
> I've noticed some files are reffering to a board file.
> The board file indeed exist but in the svn/trunk/test/board, however maybe an
> include of the real board in the test file could simplify the user search.
What are you looking for?
 
We use board and test files to support development and testing.
And Seb made a nice script that generates all possible (compilable) samples from each test/board combination. These samples only contain the required (actually: specified) part of the board files, we we don't confuse people with i2c setup when we want to show how to use an lcd display.
 
> Also the tests which deals with two boards (like master slave) are not grouped
> together.
True. And this probably applies to samples as well.
 
> With other words: in the svn/trunk/test/peripheral/i2c there are 10 jal files dealing
> with various I2C tests. Trying to understand which files are pairs for a master slave
> test I've noticed (maybe it's wrong) that "test_i2C_sw_master_echo.jal"  and 
> "test_i2c_hw_slave_echo.jal" should belong together into a separate directory in
> the i2C section named for example "master-slave". Probably the same with
> "test_i2C_sw_master_check_bus.jal" and "test_i2C_hw_slave_check_bus.jal"
>
> understand the reason why svn is organised like this, however maybe a better
> ideea would be to keep together (maybe a zip file?) everything related to a
> project or to a test file.
 
A zip file limits access to the files and limits svn functionality. Maybe we could do something with naming conventions (so it applies automaticly to the samples generated) ?
 
Joep

vasile surducan

unread,
Nov 8, 2009, 6:33:00 AM11/8/09
to jal...@googlegroups.com
Hi Joep & all

On 11/8/09, Joep Suijs <jsu...@gmail.com> wrote:
Hi Vasile,

2009/11/8 vasile surducan vsur...@gmail.com
 
> had a little time and browsing the entire svn from the perspective of a guest .
> Impressive work there!
Thank you (on behalf of the team).
 
> I've noticed some files are reffering to a board file.
> The board file indeed exist but in the svn/trunk/test/board, however maybe an
> include of the real board in the test file could simplify the user search.
What are you looking for?
 
I'm not searching for something special, just try to understand things that I've missed (and find a few :) including the wedge procedures usage in the ISR, which does not work properly for me on my last project)
 
However I'm starting a new design involving a graphical display  probably with touchscreen / isolated USB conectivity/ IR temperature measurement, some specific high voltage supply for a microwave generator and a peltier based thermostat, all together in a medical device. The chalenge is huge at this point, but the project will be slowly solved, step by step. I think I will split the main functionality on two microcontrollers, since I do not want to use any ARM or DSP core.
 

 
We use board and test files to support development and testing.
And Seb made a nice script that generates all possible (compilable) samples from each test/board combination.
 
How do you use those scripts? I guess is something phyton related which run on your own computer together with jal.
 
 

These samples only contain the required (actually: specified) part of the board files, we we don't confuse people with i2c setup when we want to show how to use an lcd display.
 
 
OK, understood that.
 
best wishes,
Vasile

 

Joep Suijs

unread,
Nov 8, 2009, 10:16:21 AM11/8/09
to jal...@googlegroups.com
Hi Vasile,

2009/11/8 vasile surducan <vsur...@gmail.com>
Hi Joep & all

 
I'm not searching for something special, just try to understand things that I've missed (and find a few :) including the wedge procedures usage in the ISR, which does not work properly for me on my last project)
Wedge... sounds like something I added into a library and did not document (yet). Not for the faint of heart and I am happy to work with you on this.
  
However I'm starting a new design involving a graphical display  probably with touchscreen / isolated USB conectivity/ IR temperature measurement, some specific high voltage supply for a microwave generator and a peltier based thermostat, all together in a medical device. The chalenge is huge at this point, but the project will be slowly solved, step by step. I think I will split the main functionality on two microcontrollers, since I do not want to use any ARM or DSP core.
 
Impressive... Why don't you want an ARM or DSP core?
 
I'm sure you took care of liability issue's?
  
We use board and test files to support development and testing.
And Seb made a nice script that generates all possible (compilable) samples from each test/board combination.
 
How do you use those scripts? I guess is something phyton related which run on your own computer together with jal.

vasile surducan

unread,
Nov 8, 2009, 11:19:43 AM11/8/09
to jal...@googlegroups.com
On 11/8/09, Joep Suijs <jsu...@gmail.com> wrote:
  
However I'm starting a new design involving a graphical display  probably with touchscreen / isolated USB conectivity/ IR temperature measurement, some specific high voltage supply for a microwave generator and a peltier based thermostat, all together in a medical device. The chalenge is huge at this point, but the project will be slowly solved, step by step. I think I will split the main functionality on two microcontrollers, since I do not want to use any ARM or DSP core.
 
Impressive... Why don't you want an ARM or DSP core?
 
   In medical equipment the first concern is to assure the pacient electrical isolation. For a device which may have splitted functions (some of them dealing with thermostated fluids, others dealing directly with the pacient body through the sensors) it's easier from the isolation perspective to split the embedded system in one, two or even more smaller systems. Communication between those could be easily optoisolated and the master (which also monitorize the biologic parameters) may talk with all the slaves. Splitting the function of a huge embedded system into a sum of smaller systems make the usage of an ARM usless (at least at this moment of my thoughts).
  If you wish, there is an electrical comparison between this system and an electrical one used in the FPGA hardware design, called point of load. POL meaning briefly many local switching power supplies instead of a big one for the whole system. While POL is the only solution for a current hungry FPGA, for a medical application splitted embedded system is not.
 

 
I'm sure you took care of liability issue's?
 
Using a medical device in real life (on humans) need some years of tests. But, based on my previous experience (jal not included there) once the system works and is properly tested before used, liability is the last issue.
 
best wishes,
Vasile
 

Wayne

unread,
Nov 8, 2009, 3:32:57 PM11/8/09
to jal...@googlegroups.com

Joep

Thanks for that link! I had not seen that before. I have a few
questions though.

I as a user, and not a developer, was very confused when I first read
that page. At first I thought that I should be in the jalpack directory
to run the tests. Then realized that I had to be in the svn
directory as there is no board or test dirs in the jalpack. Duh :-(
I missed that because I was really confused by the paragraph about
Testfiles and boardfiles and I still don't understand it!

I then tried to do the "jallib" command which didn't work. I had to look
at the jallib file to realize that I had to edit it to work on my
system. That makes sense, now, but I think it should be pointed out to
a new user in that page.

I fixed the jallib file, finally, and ran the script which did put a
bunch of files in outdir as well as throwing a bunch of errors while
doing the writes.

--------------------------------------------------------
Invalid board/test combination: [Errno 13] Permission denied
Traceback (most recent call last):
File
"/Programming/PIC/JALv2/jallib/jallib-read-only/tools/jallib.py", line
587, in generate_samples_for_board
generate_one_sample(board,test,fullsamplepath)
File
"/Programming/PIC/JALv2/jallib/jallib-read-only/tools/jallib.py", line
541, in generate_one_sample
status = do_compile([outfile],exitonerror=False,clean=True)
File
"/Programming/PIC/JALv2/jallib/jallib-read-only/tools/jallib.py", line
209, in do_compile
status =
subprocess.check_call(cmd,shell=False,stdout=stdout,stderr=stderr)
File "/usr/lib/python2.5/subprocess.py", line 457, in check_call
retcode = call(*popenargs, **kwargs)
File "/usr/lib/python2.5/subprocess.py", line 444, in call
return Popen(*popenargs, **kwargs).wait()
File "/usr/lib/python2.5/subprocess.py", line 594, in __init__
errread, errwrite)
File "/usr/lib/python2.5/subprocess.py", line 1153, in _execute_child
raise child_exception
OSError: [Errno 13] Permission denied
----------------------------------------------------------

I believe it may be due to the paths being different but I have not gone
through the jallib.py file yet to confirm that, yet. It may also be
that I don't have some python files that you fellows have.

In the 16f648a files generated I noticed the the MCLR pragma is not
defined. Is that not needed in that pic?

That's it for now... I have to get back to re-reading the
testfile/bordfile paragrph again. :-(

Sorry if I should have known all of the above. I have tried to keep up
with the list but we have had some problems over here that took
precidence over my 'fun' work.

Wayne

Rob Hamerling

unread,
Nov 8, 2009, 3:53:04 PM11/8/09
to jal...@googlegroups.com

Hi Wayne

Just picking one issue of your msg:

Wayne wrote:

> In the 16f648a files generated I noticed the the MCLR pragma is not
> defined. Is that not needed in that pic?

It is really the 'device file' in which the MCLR pragma is missing or
did you mean board file?
In case of device file, please tell me which date 'your' device file of
the 16f648A is, because I scanned back some versions and could not find
one with a missing pragma fuse_def MCLR.
In case of board file: every device file has a default setting of the
configuration bits. So when a pragma fuse_def is not specified the
default setting will be taken. The defaults are (probably!) the most
obvious/popular, so that an ignorant user is 'lucky'.

Regards, Rob.

--
Rob Hamerling, Vianen, NL (http://www.robh.nl/)

Joep Suijs

unread,
Nov 8, 2009, 4:30:16 PM11/8/09
to jal...@googlegroups.com
Hi Wayne,
 
Thanks for pointing this out and no, you should not have known all of the above.
 
The thing is that this list started off as a developers list. At some point, there was a need to document parts of the development process. The JSG and SVN -pages were the first iirc and later test, board and sample files were added and documented (by others, I have documented way too little...).
 
Some of these documents may be outdated and most of them assume you are a developer and have a working copy of the svn to work on. I can imagine this is confusing if you are not aware of this.
 
But how to proceed? Maybe I shouldn't have mailed the link without a notice that it is a development-related procedure, using tools intended for developers. Maybe we should put a message on each developer page. Or we could suffice by stating that the jallib wiki is all for developers and if you use a package, you should focus on justanotherlanguage.org (which is still under construction afaik) I don;t know...
 
What I do know is that testfiles, boardfiles are intended for developers to easly apply pic-independent test-files to their specific board configuration. The sample generation is developers tool to re-use the test-investment. So most of the knowledge of the test-files should be available in samples.
 
I'm afraid I can't help you on the python issue. I'm glad I got it running here on my windows computer...
 
Joep
 
 
 


 
2009/11/8 Wayne <linu...@gmail.com>

Wayne

unread,
Nov 8, 2009, 5:22:51 PM11/8/09
to jal...@googlegroups.com

Rob

Sorry for the lack of precision Rob. What I 'should' have said was
that the 16f648a files that the jallib created from the board and test
files, in the outdir directory, do not have the MCLR pragma defined. All
of the other files in outdir do have MCLR defined.

jallib sample -a c:\jallib\sample -o outdir

I'm still trying to piece together just what/how those files produce the
files in outdir and just when I (a user) would have occasion to do that.
I have a feeling it is some of Seb's python magic that I have to
decipher to understand the process.

I have had problems getting the k107 code working consistently so am
trying to get into the guts of jallib a bit deeper so I can figure out
what I am doing wrong. I thought that maybe I could use Joep's
Jallib-testing page to help me. I seem to be getting more confused the
more I read.

Again, sorry for the un-clear post.

Wayne

Sebastien Lelong

unread,
Nov 8, 2009, 5:40:41 PM11/8/09
to jal...@googlegroups.com

I then tried to do the "jallib" command which didn't work. I had to look
at the jallib file to realize that I had to edit it to work on my
system.  That makes sense, now, but I think it should be pointed out to
a new user in that page.

jallib.py isn't supposed to be modified before use.... What did you change and why ?
Also, I recommend to use shell wrapper: "jallib" (no extension) under *nix, and "jallib.bat". Edit one of them, read comment and adjust paths as needed.

Cheers,
Seb
--
Sébastien Lelong
http://www.sirloon.net
http://sirbot.org

Wayne

unread,
Nov 8, 2009, 6:21:21 PM11/8/09
to jal...@googlegroups.com
Sebastien Lelong wrote:
>>
>> I then tried to do the "jallib" command which didn't work. I had to look
>> at the jallib file to realize that I had to edit it to work on my
>> system. That makes sense, now, but I think it should be pointed out to
>> a new user in that page.
>>
>
> jallib.py isn't supposed to be modified before use.... What did you change
> and why ?

From this example in the jallib-testing page of the wiki.

Create all samples an put them into 'outdir':

md outdir


jallib sample -a c:\jallib\sample -o outdir

I had to edit the ./tools/jallib file. Why because when I ran the the
linux version of the script it didn't work. So I looked for the jallib
program, read it and had to adjust the path statements to match my setup.

I never said that I changed/edited the jallib.py file Seb .

I said
<quote>


I believe it may be due to the paths being different but I have not gone
through the jallib.py file yet to confirm that, yet. It may also be
that I don't have some python files that you fellows have.

<un-quote>


> Also, I recommend to use shell wrapper: "jallib" (no extension) under *nix,
> and "jallib.bat". Edit one of them, read comment and adjust paths as needed.

That "is" the file I used. and that "is" what I did.

If you re-read my OP, you will see that my svn /sample directory is not
under jallib but is under jallib/jallib-read-only/ so I thought that
might be the reason for the errors I reported.


Sorry I caused all this confusion. I'm just trying to learn more from
the available documentation. I don't want to make waves, I'm just
trying learn what I don't know, which seems to be a lot.

Wayne


Sebastien Lelong

unread,
Nov 9, 2009, 1:48:52 AM11/9/09
to jal...@googlegroups.com
Hi,



I had to edit the ./tools/jallib file.   Why because when I ran the the
linux version of the script it didn't work.  So I looked for the jallib
program, read it and had to adjust the path statements to match my setup.

OK, then that's normal :)
 

I never said that I changed/edited the jallib.py file Seb .

My mistake, read too fast !
 

Sorry I caused all this confusion.  I'm just trying to learn more from
the available documentation.  I don't want to make waves, I'm just
trying learn what I don't know, which seems to be a lot.


Sure, and again, I read it too fast, *I* cause this confusion...

Cheers,
Seb

Wayne

unread,
Nov 9, 2009, 10:43:44 PM11/9/09
to jal...@googlegroups.com
Sebastien Lelong wrote:
> Hi,
>
>
>> I had to edit the ./tools/jallib file. Why because when I ran the the
>> linux version of the script it didn't work. So I looked for the jallib
>> program, read it and had to adjust the path statements to match my setup.
>>
>
> OK, then that's normal :)
>
>> I never said that I changed/edited the jallib.py file Seb .
>>
>
> My mistake, read too fast !
>
No problem mate....

>
>> Sorry I caused all this confusion. I'm just trying to learn more from
>> the available documentation. I don't want to make waves, I'm just
>> trying learn what I don't know, which seems to be a lot.
>>
>>
> Sure, and again, I read it too fast, *I* cause this confusion...

So were the error messages spit out by the jallib script, when I
followed the "jallib-testing wiki, normal or do I have something missing?

Wayne

Sebastien Lelong

unread,
Nov 10, 2009, 1:42:56 AM11/10/09
to jal...@googlegroups.com

So were the error messages spit out by the jallib script, when I
followed the "jallib-testing wiki,  normal or do I have something missing?

"Permission denied" errors ? Well, it seems you're not allowed to generate samples :)
More seriously, your hypothesis about a read-only checkout is plausible. Did you try in another directory, like "/tmp" ?...

Cheers,
Seb

Wayne

unread,
Nov 10, 2009, 9:51:36 AM11/10/09
to jal...@googlegroups.com
Sebastien Lelong wrote:
>>
>> So were the error messages spit out by the jallib script, when I
>> followed the "jallib-testing wiki, normal or do I have something missing?
>>
>
> "Permission denied" errors ? Well, it seems you're not allowed to generate
> samples :)

That user has full rwx permissions on the svn tree including the 'outdir'.

> More seriously, your hypothesis about a read-only checkout is plausible. Did
> you try in another directory, like "/tmp" ?...


I doubt it Seb. The program created over 200 new files in the 'outdir,
while
it was throwing those errors.

Thanks anyway. I don't see a use for that feature, for a user, anyway.

Regards

Wayne

Reply all
Reply to author
Forward
0 new messages