To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.robotics.rcx.robolabOpen lugnet.robotics.rcx.robolab in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 Robotics / RCX / ROBOLAB / 473
472  |  474
Subject: 
RE: avoid messaging
Newsgroups: 
lugnet.robotics.rcx.robolab, lugnet.robotics.rcx.legos
Date: 
Mon, 5 Dec 2005 14:58:51 GMT
Viewed: 
18269 times
  
Yes, I indeed have an attachment which will act like blockage, but not a
full one though.   Sounds like this is the fastest and easiest to do.  I
fully understand the opcodes concept, as I myself wrote compile code before.
However, these kids age only from 10 to 14.  Well, needless, I won't even
attempt to do that.

That's very interesting.  Thank you very much.

----------------------------------------------------------------------------
--------
Best Regards,
Elizabeth Mabrey

-----Original Message-----
From: news-gateway@lugnet.com
[mailto:news-gateway@lugnet.com] On Behalf Of Steve Hassenplug
Sent: Monday, December 05, 2005 9:47 AM
To: lugnet.robotics.rcx.robolab@lugnet.com;
lugnet.robotics.rcx.legos@lugnet.com
Subject: Re: avoid messaging

On Mon, December 5, 2005 8:58 am, Elizabeth Mabrey wrote:
Hi

In order to avoid unwanted interruption, such as remote • shutdown, from
other RCX during execution time, I wonder if the only thing can be
done to safe-guard my RCX will be  having an independent task
dedicated to receive message (mail).  This, of course, • might  be quite time consuming to the RCX.
I wonder if there is anyone out there using the same • hacking method
and observe any negative impact to the actual working task. • Or,  the
negative impact may be negligible.  Or, perhaps there is better and
smarter way to do this.


If you have an event waiting for a message, I doubt it will
have much impact on the speed of the rest of the program.

However, this will not catch the messages you're looking for.
You can't use the "mail" function to receive op-code, such
as power off.

A real quick intro to op-codes: (I don't have all the exact
numbers, so this may not be 100% correct, and this is really
not that quick...)

When you send an op-code to the standard firmware, it should
be of the format:
0x55,0xff,0x00,
  [command],[command_complement],
  [optional_argument],[optional_argument_complement],
  [check-sum],[check-sum_complement]

The first three numbers (the header) tell the RCX the
following message is something it should listen to (an op-code)

The next two are the command, and the complement of the
command.  The command is a number, usually written in hex,
like 0x60 or as a decimal, like 96.  The complement is FF (or
255 dec) minus the command.  The RCX uses this value to make
sure the data is valid.

After the command, there may be arguments, and their complements.

Finally, is the check-sum (sum of command and arguments) and
the complement of that sum.

Clear as mud?  :)

So, if you send a message (mail) value of "3", the complete
message that's sent via IR would be something like:
0x55, 0xff, 0x00, (header)
  0xf7 (command to send message), 0x08 (complement),
  0x03 (message to send), 0xfc (complement),
  0xfa (checksum), 0x05 (complement)

If you want to send a power off command:
0x55, 0xff, 0x00, (header)
  0x60 (command to power off), 0x9f (complement),
  0x60 (checksum), 0x9f (complement)

The robolab mailbox will only receive the 'f7' command, which
tells it to store the argument in the mailbox.

With BrickOS, you can change the message handler, so your
program can receive all messages (op-codes).  But it's not as
clear and easy as using Robolab.


You should build a wall in front of your IR window.  :)

Steve




Message has 1 Reply:
  Re: avoid messaging
 
(...) I'd agree that a physical block is the easiest, although there is a software solution. The RCX can not recieve a command while it's transmitting - so if you saturate the transmitter with things to do, it will not be able to "look" for any (...) (18 years ago, 5-Dec-05, to lugnet.robotics.rcx.robolab, lugnet.robotics.rcx.legos)

Message is in Reply To:
  Re: avoid messaging
 
(...) If you have an event waiting for a message, I doubt it will have much impact on the speed of the rest of the program. However, this will not catch the messages you're looking for. You can't use the "mail" function to receive op-code, such as (...) (18 years ago, 5-Dec-05, to lugnet.robotics.rcx.robolab, lugnet.robotics.rcx.legos)

4 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