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 / *2244 (-40)
  Re: libm, windows
 
(...) No chance to get this running under legOS. You can do some float math like addition or multiplication but no trigonometric functions. Look in legOS/lib/float to see what can be done with the legOS floating point library. Mike (23 years ago, 24-Jan-02, to lugnet.robotics.rcx.legos)
 
  libm, windows
 
has anyone had success with using libm in windows? I have legOS programs written from a solaris machine that compile fine and work when downloaded to the RCX, but I have not been able to compile them on a windows machine due to linking problems. The (...) (23 years ago, 24-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: thread class for legOS
 
(...) In the post you replied to saying "static doesn't matter", the proposal was: private: static int runWrapper(...) ; I then replied to your post, etc. Anyway, let's not degenerate into he-said-she-said. We're really just talking past each other (...) (23 years ago, 22-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: thread class for legOS
 
(...) In fact, neither of these suggestions will work with the code as it stands, because the runWrapper() function tries to call the Run() function, which is a non-static member function. You could pass a pointer to the class instance (this) in the (...) (23 years ago, 21-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: thread class for legOS
 
(...) Unless you define a function as a member function, there is no this parameter at all. In the example given, it was not a member function at all (nor should it be). I believe you are thinking of a static member function vs. a non-static member (...) (23 years ago, 21-Jan-02, to lugnet.robotics.rcx.legos)
 
  RE: newbie
 
If you decide to use LegOS you won't be needing nor will you have the chance to use NQC because a RCX with LegOS loaded won't understand nor respond to any standard firmware commands. Check (if you didn't already) the side links at: (URL) From: (...) (23 years ago, 21-Jan-02, to lugnet.robotics.rcx.legos)
 
  RE: newbie
 
so if i decide to use LegOS I don't need NQC, right? as I understood, de LegOS itself it's complete to be used alone.... (...) programs on RCX. (...) LEGO (...) could call (...) LEGO (...) standard LEGO (...) for (...) run some (...) don't (...) -- (...) (23 years ago, 21-Jan-02, to lugnet.robotics.rcx.legos)
 
  RE: newbie
 
LegOS is an operation system ( a firmware replacement in itself) It's like a mini UNIX system, that will run true C compiled programs on RCX. NQC on the other hand, all it does is translate a NQC program into LEGO pCode that will be *interpreted* by (...) (23 years ago, 21-Jan-02, to lugnet.robotics.rcx.legos)
 
  newbie
 
Hi everybody, I'm starting to use Lego products and I'm having problems to undrestand a few things. For example, I want to use NQC and I don't understand why the LegOS needs a C cross-compiler... or by having LegOS I don't need NQC? -- Paula Berger (...) (23 years ago, 21-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: thread class for legOS
 
(...) Static DOES matter; it declares the method as being a "class" method, rather than a normal instance method. I believe there is no implicit 'this' parameter and therefore it can be treated like a normal function. Of course, it can't be linked (...) (23 years ago, 21-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: thread class for legOS
 
(...) No, static doesn't matter but it is possible the calling conventions of C and C++ might be different (I don't know of a platform where that is the case for a an extern function), so you might need to specify C linkage, as in: extern "C" int (...) (23 years ago, 21-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: thread class for legOS
 
(...) Haven't done any C++ for a while, but IIRC you just need to declare runWrapper as static, ie: private: static int runWrapper(...) ; HTH ROSCO (23 years ago, 21-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: threads - bug in the firmware?
 
(...) Advantage: Less memory used (each thread needs a block of memory in the kernel, I'm at work & can't remember the struct name off hand). In the case under discussion, this doesn't make much difference, but in a large project, memory use can (...) (23 years ago, 21-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: Still having problems with helloworld.c
 
John, Where is the source for makelx ?? I am having this same problem. Thanks JohnG (...) (23 years ago, 20-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: LNP Routing daemon with tcp/ip for RCX/legOS, Cybermaster/NQC
 
Sources for the LNPoI Router are available now. You find it at (URL) . Bye (23 years ago, 20-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: More on threads
 
(...) I recall that legOS's priority model is pretty rigid. If a thread with a higher priority never yields, threads with lower priority will never get any time. When I write legOS programs, I generally just have everything run at PRIO_NORMAL. That (...) (23 years ago, 19-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: More on threads
 
(...) Digging through tm.c gave me the impression, that main will indeed get no time slice. So I wrote another test program: ---...--- #include <conio.h> #include <unistd.h> pid_t worker; int work_task(int argc, char *argv[]); int main() { int i; i (...) (23 years ago, 19-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: More on threads
 
(...) ability to terminate but to run in an endless loop. But This is not true of an embedded system though which will have to run 'forever'. (...) priority of NORMAL+4. So, the (...) any time slice at all. NO time slice or just a very small chunk (...) (23 years ago, 19-Jan-02, to lugnet.robotics.rcx.legos)
 
  More on threads
 
(...) Of course you are right. I think it is a bad programming style not to give your program the ability to terminate but to run in an endless loop. But what is the penalty for this bad style? I've done some investigations and here are the results: (...) (23 years ago, 18-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: thread class for legOS
 
(...) IRC, every method in C++ has an implicit parameter wich is the object itself; that's why you can't cast it. Try the following (does someone have a nicer solution?): Put runWrapper() outside the class: int runWrapper(int, char **th) { (...) (23 years ago, 18-Jan-02, to lugnet.robotics.rcx.legos)
 
  thread class for legOS
 
I write a Thread class for LegOs with a simple interface like in Java or CommonC++. I'm using LegOs 0.2.4. Below are my work till yet. The problem is in the Method Start(). The line is marked with !!. The error message is at the end of the file. I (...) (23 years ago, 18-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: LNP Routing daemon with tcp/ip for RCX/legOS, Cybermaster/NQC
 
"Freddy" <mail-nowak@web.de> schrieb im Newsbeitrag news:GpzyB6.Kpt@lugnet.com... (...) A C++ class to build client application without knowing the LNPoI protocol is available for Windows and Linux now. (URL) (23 years ago, 18-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: threads - bug in the firmware?
 
(...) I would strongly suggest changing this to while(1) msleep(bignumber);. Otherwise you're hogging the processor doing nothing important, which could do bad things to any compute-intensive tasks you may have going. It'll also use slightly less (...) (23 years ago, 18-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: threads - bug in the firmware?
 
Hi Ross (...) you (...) What are the advantages and disadvantages of this method as opposed to the one I used? mike (23 years ago, 18-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: threads - bug in the firmware?
 
(...) Note also since bumper_task() is an infinite loop, and you never use pid1, you could save one thread by doing this: int main(int argc, char *argv[]) { pid2 = execi (&left_task, 0, NULL, PRIO_NORMAL+2, DEFAULT_STACK_SIZE); pid3 = execi (...) (23 years ago, 17-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: threads - bug in the firmware?
 
;-) That worked a treat, thanks Michael. (thanks for the other little corrections in the code too). mike (...) Mike, (...) your subroutines and then you leave main()! Leaving main means (...) memory is freed. The following will do the job: (...) (...) (23 years ago, 17-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: threads - bug in the firmware?
 
Hi Mike, your problem is not because of an error in legOS. But what you do is that you start your subroutines and then you leave main()! Leaving main means that all your allocated memory is freed. The following will do the job: ---...--- cut here (...) (23 years ago, 17-Jan-02, to lugnet.robotics.rcx.legos)
 
  IRC
 
Anyone who is a regular user of IRC can join my channel #LegoMindstorms (on dalnet). Coma and chat or give/recieve assistance. If you join you are welcome to Ops because anyone in here will know more about Mindstorms than me as i know almost (...) (23 years ago, 16-Jan-02, to lugnet.robotics.rcx.legos)  
 
  Re: threads
 
Albert (...) yea, I see what you are getting at. I am sure that I was hitting the bumper while the threads were still alive, but I will check again. I think this also points out some of the dangers of just dumping in some poorly thought out dummy (...) (23 years ago, 17-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: threads - bug in the firmware?
 
(...) As pointed by Albert Huang, you cannot call kill() with an "invalid" pid. Actually, the comment above kill() in tm.c says: //! kill a process /*! \param pid must be valid process ID, or undefined behaviour will result! The function updates (...) (23 years ago, 16-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: threads
 
two of your threads terminate shortly after being started (...) as far as I know, legOS provides no functionality for determining whether or not a thread is alive or not. You need to keep track of this yourself (e.g. using a variable/flag that gets (...) (23 years ago, 16-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: threads - bug in the firmware?
 
Hi again I have now totally stripped down my code to a minimum and I am still having problems with the code hanging up. I can see nowhere where there can be a fault. I am a long way from being an expert, but is it possible there is a bug in the (...) (23 years ago, 16-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: Cygwin problems
 
Ben I recommend you read the Howto from the sourceforge docs section, or even better buy the Extreme Mindstorms book (Extreme Mindstorms; D. Baum, M. Gasperi, R. Hempel, L. Villa; Apress; ISBN: 1893115844 ) . Both give a good explanation of legOS. (...) (23 years ago, 16-Jan-02, to lugnet.robotics.rcx.legos)
 
  Cygwin problems
 
Hi all, i am having problems with cygwin. It doesnt help that i dont know what all these linux commands mean but i will explain my problems now. I have intstalled all the software to my system ok and the linux emulator seems to work fine(i can use (...) (23 years ago, 16-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: threads
 
Thanks Albert (...) still (...) How do I check this? There are no other tasks that can kill threads apart from this one. I also checked process IDs after creation and before killing. Best regards, mike (23 years ago, 16-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: threads
 
some suggestions: 1) random_delay = random()/1000000; LegOS uses 16 bit integers, meaning the largest value an integer can have is something like 65535. The above statement is meaningless 2) (...) If you kill a thread, make sure it's still a valid (...) (23 years ago, 15-Jan-02, to lugnet.robotics.rcx.legos)
 
  LNP Routing daemon with tcp/ip for RCX/legOS, Cybermaster/NQC
 
Dear NG, i try to develop a LNP routing daemon (LNPoI - Lego Network Protocol over Internet)and i think this peace of software can be also usefull to other people using legOS, RCX and Cybermasters (!). For now it´s only available as a binarie file (...) (23 years ago, 15-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: threads
 
Hi again, I'm now totally stuck with this problem. I've spent all day at it, stepping through the code line by line with key presses. I've marked the point that the code appears to hang in left_control_task (). Someone please help, please. Thanks (...) (23 years ago, 15-Jan-02, to lugnet.robotics.rcx.legos)
 
  threads
 
Hi, I'm struggling to get threads working (in a simple motor speed matching program), the code just keeps hanging up. I've isolated the problem to when I restart the threads after killing them if a bumper is hit in the bumper_task() function. The (...) (23 years ago, 14-Jan-02, to lugnet.robotics.rcx.legos)
 
  Re: Measuring robot turn angle
 
Wanted to thank everybody for replies. I ended up attaching an 80-tooth gear to the rear axle (wheels are on the front set) after extending the axle. The rotation sensor is mounted on the chassis outside with an 8-tooth gear meshing to the other (...) (23 years ago, 13-Jan-02, to lugnet.robotics.rcx.legos)


Next Page:  5 more | 10 more | 20 more | 40 more

Redisplay Messages:  All | Compact

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