To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.robotics.rcx.legosOpen lugnet.robotics.rcx.legos in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 Robotics / RCX / legOS / 4008
4007  |  4009
Subject: 
Re: brickos 090 problem no program download with CONF_LNP_FAST
Newsgroups: 
lugnet.robotics.rcx.legos
Date: 
Wed, 30 Apr 2008 07:39:07 GMT
Viewed: 
27367 times
  
Hello Jochen

At first i was astonished, that somebody is answering
so fast, because in the last 2 years there is not much conversation here.



You're trying this still with standard hardware and standard dll-src,

I am not completly shure about your question concerning standart HW. I use the
USB Tower and the RCX2.0 for this tests because for the 76 Khz IR-modulation at
the tower and the ir receiver in the rcx.

I use standart sw 090 version.

I activate the CONF_LNP_FAST option in boot/config.h


...
// networking services
//
#define CONF_LNP                        //!< link networking protocol
#define CONF_LNP_FAST                  //!< enable 4800 bps LNP
// Can override with compile-time option
#if !defined(CONF_LNP_HOSTADDR)
#define CONF_LNP_HOSTADDR 0             //!< LNP host address
#endif
....

This change the baudrate, parity and bytetimes in include\lnp\sys\lnp-logical.h

....
#ifdef  CONF_LNP_FAST
#define LNP_LOGICAL_BAUD_RATE   B4800             //!< baud rate
#define LNP_LOGICAL_PARITY  SMR_P_NONE        //!< parity
#define LNP_BYTE_TIME           MSECS_TO_TICKS(3) //!< time to transmit a byte
#else
.....

Intersting is, that for the dll program loader there exists a more or less
eaquel config.h file. Interesting is, that i never have heard something about
that config file on the  internet.

util\dll-src\config.h

Here i have made for testing after i hade no sucess for download the program the
same changes.

....
// networking services
//
#define CONF_LNP    //!< link networking protocol
//#define CONF_LNP_VIS    //!< display LNP activity
#define CONF_LNP_FAST        //!< enable 4800 bps LNP
#define CONF_LNP_HOSTADDR 0x8 //!< LNP host address
#define CONF_LNP_HOSTMASK 0xf0  //!< LNP host mask
....




right? Otherwise, check that you use the right baud-rate and parity
settings (4800, no parity bit, 1 start, 1 stop bit).

In my experience the IR-communication doesn't work that well,
especially in 4800 baud mode.  It is mainly the PC that does not
understand the RCX correctly.  Try running dll-src with "-v" to get
more information.  Sometimes the PC receives part of the reply but
there are some broken or missing bytes so the reply is just ignored.


Now i made the tests.
1) download the changed (4800) kernel to the rcx
2) Send a simple hello program to the rcx and get this :


/brickos-0.9.0_pat48/A_test send_hello_usb.sh


Hary Mahesan - LEGO USB IR Tower Mode

opening tty...
KeepAlive Init...
KeepAliveSend: keeping the IR tower alive...
LNP Initialized...
loader hostaddr=0x00 hostmask=0xf0 portmask=0x00

#time 3913531404 try 0: ack:0
try 1: ack:0
try 2: ack:0
try 3: ack:0
try 4: ack:0
error setting IR mode to far

But now i made a crazy try.
1) load down the original kernel (2400) to the rcx.
and tried to send once again the program with the change in
util\dll-src\config.h == set 4800 baud

and
/brickos-0.9.0_pat48/A_test send_hello_usb.sh


Hary Mahesan - LEGO USB IR Tower Mode

opening tty...
KeepAlive Init...
KeepAliveSend: keeping the IR tower alive...
LNP Initialized...
loader hostaddr=0x00 hostmask=0xf0 portmask=0x00

#time 23948733 f1 03 80 00 00 73
deletef1 03 80 00 00 73
create f1 0a 80 00 00 01 be 40 be 7e be 7e f1
data
#time 228000 f1 03 80 00 00 73

SUCCESS

-----------------------------------------------------
Now i made a filediff from


original

C:\cygwin\brickos-0.9.0_pat48\util\dll.exe  RENAMED to dll2400.exe

compiled with the config.h option (2400)
//#define CONF_LNP_FAST        //!< enable 4800 bps LNP


and the  the second compilation option (4800) of dll with
#define CONF_LNP_FAST        //!< enable 4800 bps LNP

dll.exe    RENAMED to dll4800.exe

There is a difference in the files. I used the Ultraedit for that check.
So i am not shure what it is.

Solutions:

1)Try the old serial tower.
2) Use the hard way : Take a 38 khz IR receiver and check the data with a
osciloscope.
3) try to change the kernel that i  can change baudrate/ paritiy in some timings
at runtime of the rcx.
Hard way stop the taskmanagment , change serial parameters and start once again
the whole LNP stuff.

But however there is guarantie that it works.

Maybe there are other option and i am free for all sugestions.

best regard
Bernhard



Message has 1 Reply:
  Re: brickos 090 problem no program download with CONF_LNP_FAST
 
(...) Now i have success ! !) i made to directorys brickos-0.9.0_orig with //#ifdef CONF_LNP_FAST in /boot/config.h and util/dll-src/config.h and brickos-0.9.0_pat48 with #ifdef CONF_LNP_FAST in /boot/config.h and util/dll-src/config.h 2) compile (...) (16 years ago, 30-Apr-08, to lugnet.robotics.rcx.legos)

Message is in Reply To:
  Re: brickos 090 problem no program download with CONF_LNP_FAST
 
Hello Powolny, > > I build allready a bluetooth connection between the pc and the rcx . The > bluetooth module (BTM-222) supports the spp serial protocoll only for 4800 or > higher baudrates. But it is cheap in comparsion to other ones. Costs about (...) (16 years ago, 29-Apr-08, to lugnet.robotics.rcx.legos)

9 Messages in This Thread:


Entire Thread on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact

This Message and its Replies on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact
    

Custom Search

©2005 LUGNET. All rights reserved. - hosted by steinbruch.info GbR