To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.robotics.rcxOpen lugnet.robotics.rcx in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 Robotics / RCX / * (-20)
Subject: 
How to get RCX software and the IR tower to work on modern systems
Newsgroups: 
lugnet.robotics.rcx
Date: 
Sun, 6 Mar 2022 02:40:59 GMT
Viewed: 
9888 times
  
And yes, it uses virtual devices.

A friend sent me a link to this page-

<https://www.bartneck.de/2017/06/08/using-your-lego-mindstorms-rcx-on-a-modern-computer/?fbclid=IwAR0LuYuY3kZjmJYQy5mP7A1VPbQsuUhOX2J6__ZU9l62xe5QY8EU-FA9e10>

The page gives a walkthru to set up a virtual device, install XP in that virtual
device and then spool up the RCX software and the IR tower

I tried it a few times now and it works.

I now don't have to worry if my old WinXP laptop dies.

I made a vid shoeing the walkthru-

<https://youtu.be/RgiFoJfq6iM>

Take care,

Dave K


Subject: 
Re: Communication with Swan firmware
Newsgroups: 
lugnet.robotics.rcx
Date: 
Mon, 18 Jun 2018 17:36:25 GMT
Viewed: 
19273 times
  
I've used the RCX with standard LEGO firmware, though I'm not familiar with the
Swan firmware.  Having said that, this simply sounds like the old message is not
getting cleared to make room for the new message.  Have you tried calling the
ClearMessage() function?

If that doesn't fix it, try posting your source code and maybe someone can
figure it out.


Subject: 
Communication with Swan firmware
Newsgroups: 
lugnet.robotics.rcx
Date: 
Mon, 1 May 2017 08:20:25 GMT
Viewed: 
29687 times
  
Good morning
We are using a total of 12 lego rcx sets to practice in an educational center.
We are using the nqc language with these robots. We use 2 types of firmware: on
the one hand the firm0328.lgo, sometimes the firm0332.lgo, ie RCX2, and also the
fast0103.lgo. I have not managed to work with nqc correctly a higher version of
the firmware created by Dick Swan. Why do not we always use the Swan despite its
advantages? Because we have a problem with communication between rcx. We managed
to maintain unidirectional communication between 2 RCX2 and from Swan to RCX2.
Also bidirectional between 2 RCX2. What we can not do is that Swan gets
messages. Really, what we can not do is to get a second message. The first
message is received, but then no longer receives more, even if we stop the
program with the "run" key. We can only stop it by pressing the "on / off" key
and then turning it back on. Each time you receive a message, this appears on
the screen with the transmission points, but the rcx with Swan does not seem to
react. We have tried to place waiting times between receptions but it does not
seem to work.
For a while we have given up on robots with 2 rcx to work with 6 sensors
simultaneously, or we have to work with 6 sensors, but giving up the advantages
of the Swan firmware.
But now I was determined to take up this issue, because I think that
communication between 2 Swan, by now, must be more than proven, and as I have
not seen anyone comment on this problem, it must be that we are doing something
wrong.
I know this material is discontinued and there is less and less information on
the web, but if there is still someone out there using it, could anyone tell us
if receiving several messages by a Swan can be obtained, and if you have some
example of a simple program?
Perhaps it can influence in this the fact of having several tasks running
simultaneously so that the messages do not work?


Subject: 
Re: Process Control with RCX
Newsgroups: 
lugnet.robotics.rcx
Date: 
Fri, 7 Apr 2017 01:30:43 GMT
Viewed: 
25050 times
  
Using RCX bricks and RoboLab 2.94, in many ways is like being stranded on Mars
and this is all there is, which is everything. There is plenty of time until the
next spaceship arrives since contacting Earth depends on making this software
and hardware work. The first space shuttle used a software and hardware that was
more primitive than RCX bricks and RoboLab 2.94. The goal is to surf the
Internet for a paintable image, change it into nine colors of blobs and print it
by melting oil pastels on metal.


Subject: 
Re: Process Control with RCX
Newsgroups: 
lugnet.robotics.rcx
Date: 
Wed, 15 Mar 2017 16:43:06 GMT
Viewed: 
24617 times
  
Having to trouble shoot a Dell Inspiron 1100 not booting up cleanly. An alarm
goes off and it goes to safe boot mode. I am running the original Home version
of XP without updates and RoboLab 2.94. Keeping the 2007 working original
program until new application arm is working. Side arm needs to come in and heat
up surface where oil pastel dot is applied and move aside for the application
wheel to rotate to the color and move down to apply the dot. Thinking it will be
a side arm where the heating box flips down, moves into dot area for allotted
time then out. http://tomlohre.com/lego.htm


Subject: 
Re: Process Control with RCX
Newsgroups: 
lugnet.robotics.rcx
Date: 
Mon, 20 Feb 2017 16:15:09 GMT
Viewed: 
24689 times
  
Here is the twenty foot long process on the main RCX for the printer.
https://www.dropbox.com/s/ejpgar7sg9cw02c/BlockMainRCX.jpg?dl=0
I wanted to use sub routines and loop the process so the program could look
elegant but never got it to work. Here each color has it's own put and return.


Subject: 
Process Control with RCX
Newsgroups: 
lugnet.robotics.rcx
Date: 
Mon, 9 Jan 2017 04:25:54 GMT
Viewed: 
25453 times
  
I am back on the Lego wagon, making another painting machine. Looking forward to
creating the best practices program with your advising.


Subject: 
Re: Faster Firmware/Motor Control
Newsgroups: 
lugnet.robotics.rcx
Date: 
Thu, 19 Jul 2012 01:58:15 GMT
Viewed: 
25509 times
  
In lugnet.robotics.rcx, Iain Hendry wrote:

BrixCC doesn't recognize "wait1Msec", and when I try to download a program with
it, it just gives me an error.

That's kind of what I was getting at with the motor power stuff; I can tell the
RCX can handle more motor powers, but there doesn't appear to be a way to use
them in the program...

D'oh...

I'm posting this because I'm sure I'm not the only one who missed this:  I
didn't realize there's a drop-down when BricxCC starts up, to select "Swan"
instead of "RCX" when making the first handshake with the brick.

After doing that, it compiles no problem.  MotorSetPower128 doesn't seem to
work, though...

At any rate, WaitMS() is great!  Super-precision motor control, here I come!

http://www.youtube.com/watch?v=kZlBlbe2cu0

-Iain


Subject: 
Re: Faster Firmware/Motor Control
Newsgroups: 
lugnet.robotics.rcx
Date: 
Wed, 18 Jul 2012 10:37:47 GMT
Viewed: 
25491 times
  
In lugnet.robotics.rcx, Jetro de Chateau wrote:

I found this site:  http://www.elenafrancesco.org/old/lego/index.html

Thanks for the link!

(snip)

The documentation on this page
http://www.elenafrancesco.org/old/lego/Firmware%20Features.html mentions the
following:

"new wait1Msec opcode to perform program waits using one millisecond resolution"

Maybe that is what you are looking for.

BrixCC doesn't recognize "wait1Msec", and when I try to download a program with
it, it just gives me an error.

That's kind of what I was getting at with the motor power stuff; I can tell the
RCX can handle more motor powers, but there doesn't appear to be a way to use
them in the program...

-Iain


Subject: 
Re: Faster Firmware/Motor Control
Newsgroups: 
lugnet.robotics.rcx
Date: 
Wed, 18 Jul 2012 08:10:48 GMT
Viewed: 
25404 times
  
In lugnet.robotics.rcx, Iain Hendry wrote:

I found this site:  http://www.elenafrancesco.org/old/lego/index.html


Thanks for the link!

After downloading the 100x firmware, I can tell that it is a different firmware
(different clock, tone on button press is different, etc.) - however, it seems
like I just can't unlock this 1/1000 sec. timer issue.  Wait(1); still results
in a 1/100 second delay.

I found some reference to a "WaitMS" command in the NQC programming guide,
however, if I enter "WaitMS(1);" I get a "Error:  Undefined function 'WaitMS'"
whenever I try to compile.  BrixCC recognizes the WaitMS command (it turns blue
when I type it), so it must be valid...

I'm not a programmer.  I just want a 1/1000 wait :)

-Iain

The documentation on this page
http://www.elenafrancesco.org/old/lego/Firmware%20Features.html mentions the
following:

"new wait1Msec opcode to perform program waits using one millisecond resolution"

Maybe that is what you are looking for.


Subject: 
Re: Faster Firmware/Motor Control
Newsgroups: 
lugnet.robotics.rcx
Date: 
Wed, 18 Jul 2012 01:05:21 GMT
Viewed: 
25043 times
  
In lugnet.robotics.rcx, David Koudys wrote:

I have it and use it exclusively.  i'll mail you a copy when i get your e-mail
sddess

Hi Dave,

Thanks - I tried to send you a note, but your email bounced...

I found this site:  http://www.elenafrancesco.org/old/lego/index.html

After downloading the 100x firmware, I can tell that it is a different firmware
(different clock, tone on button press is different, etc.) - however, it seems
like I just can't unlock this 1/1000 sec. timer issue.  Wait(1); still results
in a 1/100 second delay.

I found some reference to a "WaitMS" command in the NQC programming guide,
however, if I enter "WaitMS(1);" I get a "Error:  Undefined function 'WaitMS'"
whenever I try to compile.  BrixCC recognizes the WaitMS command (it turns blue
when I type it), so it must be valid...

I'm not a programmer.  I just want a 1/1000 wait :)

-Iain


Subject: 
Re: Faster Firmware/Motor Control
Newsgroups: 
lugnet.robotics.rcx
Date: 
Tue, 17 Jul 2012 20:28:58 GMT
Viewed: 
24296 times
  
In lugnet.robotics.rcx, Iain Hendry wrote:
Hi all,

One of the common ways I like to control the speed of a gearmotor (in NQC) is by
introducing a loop, for example, like this:

while(true)
{
  OnFwd(motor);
  Wait(a);
  Off(motor);
  Wait(b);
}

I often do this as a motor approaches a setpoint (say an offset from a target
position as measured by a rotation sensor) or the like.  Variable a and b could
be defined somewhere else but usually are around 1/100 or 2/100 of a second.
Any more than that and the motion gets jittery.  I sometimes swap out Off for
Float, depending on the application (unloaded the motors tend to glide right
through the Float, however).

I seem to remember hearing someone (Dick Swan?) built some Firmware a while back
that ran much faster and allowed for 1/1000 second (millisecond) intervals for
the Wait command, instead of 1/100 (decisecond).  Any truth to that?

I have it and use it exclusively.  i'll mail you a copy when i get your e-mail
sddess


Take care,

Dave K


Obviously if I could cut down the time delay, the sawtooth of "On" to "Off" gets
a lot crisper and the whole thing would work a lot better.

Thanks in advance,

-Iain


Subject: 
Faster Firmware/Motor Control
Newsgroups: 
lugnet.robotics.rcx
Date: 
Tue, 17 Jul 2012 16:59:23 GMT
Viewed: 
24024 times
  
Hi all,

One of the common ways I like to control the speed of a gearmotor (in NQC) is by
introducing a loop, for example, like this:

while(true)
{
  OnFwd(motor);
  Wait(a);
  Off(motor);
  Wait(b);
}

I often do this as a motor approaches a setpoint (say an offset from a target
position as measured by a rotation sensor) or the like.  Variable a and b could
be defined somewhere else but usually are around 1/100 or 2/100 of a second.
Any more than that and the motion gets jittery.  I sometimes swap out Off for
Float, depending on the application (unloaded the motors tend to glide right
through the Float, however).

I seem to remember hearing someone (Dick Swan?) built some Firmware a while back
that ran much faster and allowed for 1/1000 second (millisecond) intervals for
the Wait command, instead of 1/100 (decisecond).  Any truth to that?

Obviously if I could cut down the time delay, the sawtooth of "On" to "Off" gets
a lot crisper and the whole thing would work a lot better.

Thanks in advance,

-Iain


Subject: 
Re: BrickOS Patches and Development
Newsgroups: 
lugnet.robotics.rcx.legos
Date: 
Thu, 17 May 2012 21:36:46 GMT
Viewed: 
29322 times
  
Matthew Sheets wrote:
The Bibo Patch Rollup Collection posted to SourceForge at
http://sourceforge.net/tracker/?func=detail&aid=2773502&group_id=58151&atid=486699
has been updated.

Excellent, Matthew. Many thanks for keeping the project alive and moving
forward.

I've uploaded a little patch with the edge counting (which I needed once
upon a time when I tried to build a plotter without any rotation sensors)
re-implemented in a more sensible way. Here:
https://sourceforge.net/tracker/?func=detail&aid=3527703&group_id=58151&atid=486699

I'm currently working on figuring out all the little quirks of the power
functions protocol (such as what happens with the toggle bit state for
commands where the toggle bit is ignored). Once I have it fully working,
I'll release a patch with power functions control based on Bob Kojima's
code but updated to match the latest PF specification.

Cheers,
//Carl


Subject: 
Re: NQC and RCXCC
Newsgroups: 
lugnet.robotics.rcx.nqc
Date: 
Wed, 1 Feb 2012 02:05:45 GMT
Viewed: 
26996 times
  
In lugnet.robotics.rcx.nqc, Ahui Herrera wrote:
<<snip>>
he,he,he...
I'm going to bring back a 12 year old thread.
I'm using Windows XP and cannot figure out how to set the NQC_OPTIONS=-Trcx2
option.  Any idea?

-Ahui

Hi Ahui,

You can set environment variables on XP by going to Control Panel / System,
click Advanced tab, and click "Environment Variables" near the bottom.

You can add it to either system variables (available to all users) or just for
the user you normally login with.

Add a new variable, name=NQC_OPTIONS, value=-Trcx2.

Hope this helps.

ROSCO

Thanks ROSCO

I did that and it does work when I am using the "command line" of NQC.
When I do either:

nqc -Trcx2 -d counter.nqc
or
nqc -d counter.nqc

However in BricxCC when I hit compile I get an error saying
Undefined function (SetUserDisplay)
???
-Ahui

Never mind I got it now!

It's a 2 step process.

1) Use the instructions you provided to set the "variable" in Windows XP.
!!!RESTART THE COMPUTER!!!! !!!RESTART THE COMPUTER!!!!

2) When you start BrixCC select RCX2 from the drop-down list.
DUH!!!!  =)
The simple things trip me up. ROFL!

Now off to dust the old mindstorm off as I found a non-LEGO use for it.
-AHui


Subject: 
Re: NQC and RCXCC
Newsgroups: 
lugnet.robotics.rcx.nqc
Date: 
Wed, 1 Feb 2012 01:24:33 GMT
Viewed: 
27018 times
  
<<snip>>
he,he,he...
I'm going to bring back a 12 year old thread.
I'm using Windows XP and cannot figure out how to set the NQC_OPTIONS=-Trcx2
option.  Any idea?

-Ahui

Hi Ahui,

You can set environment variables on XP by going to Control Panel / System,
click Advanced tab, and click "Environment Variables" near the bottom.

You can add it to either system variables (available to all users) or just for
the user you normally login with.

Add a new variable, name=NQC_OPTIONS, value=-Trcx2.

Hope this helps.

ROSCO

Thanks ROSCO

I did that and it does work when I am using the "command line" of NQC.
When I do either:

nqc -Trcx2 -d counter.nqc
or
nqc -d counter.nqc

However in BricxCC when I hit compile I get an error saying
Undefined function (SetUserDisplay)
???
-Ahui


Subject: 
Re: NQC and RCXCC
Newsgroups: 
lugnet.robotics.rcx.nqc
Date: 
Wed, 1 Feb 2012 01:18:07 GMT
Viewed: 
26978 times
  
In lugnet.robotics.rcx.nqc, Ahui Herrera wrote:
In lugnet.robotics.rcx.nqc, Bernd Frassek wrote:
Using NQC together with RCXCC (by Mark Overmars) is a fine combination that
fulfills my demands for writing software, debugging and testing. Unfortunately,
Mark Overmars, the author of RCXCC will not do any further development for
this product.

Meanwhile, I succeeded in "implementing" all the new features of the latest NQC
version into RCXCC. Here is what I did:

For writing programs, RCXCC functions just as a text editor with the aibility
to high-light and colorize special words. These words are arranged in lists
(keywords, functions, macros, templates) and stored in the Windows registry. I
put in all of the new features (e.g. access control, monitor, setuserdisplay,
etc.). I also added templates for all new NQC commands.

The new NQC file was copied into the RCXCC directory.

An Environment variable was defined (thanks again to Dave Baum who gave me the
hint and did foresee to check environment variables befor NQC is executed).
Since I am using Windows 95 I had to do this within the AUTOEXEC.BAT file (when
using higher versions of Windows or NT you can define this under File
Properties in a "nice" window):

Set NQC_OPTIONS=-Trcx2

The result of all this works perfectly.

If there is anyone who wants to work with the same NQC/RCXCC combination, I can
send the exported RCXCC registry key file via mail. All you will have to do is
to copy this key file file onto your desktop and afterwards double-click on it.
The registry will be updated immediately and you can use RCXCC with the new
features. Sometimes I am "overwhelmed" that things are so easy with Windows and
don't cause any problems ...   ;-)

Bernd

he,he,he...
I'm going to bring back a 12 year old thread.
I'm using Windows XP and cannot figure out how to set the NQC_OPTIONS=-Trcx2
option.  Any idea?

-Ahui

Hi Ahui,

You can set environment variables on XP by going to Control Panel / System,
click Advanced tab, and click "Environment Variables" near the bottom.

You can add it to either system variables (available to all users) or just for
the user you normally login with.

Add a new variable, name=NQC_OPTIONS, value=-Trcx2.

Hope this helps.

ROSCO


Subject: 
Re: SetUserDisplay?
Newsgroups: 
lugnet.robotics.rcx.nqc
Date: 
Wed, 1 Feb 2012 01:12:12 GMT
Viewed: 
26928 times
  
In lugnet.robotics.rcx.nqc, Ross Crawford wrote:
In lugnet.robotics.rcx.nqc, Dave Baum wrote:
In article <I6DH4L.1zwI@lugnet.com>,
"Ross Crawford" <rosscraw@bigpond.net.au> wrote:

I can't seem to get SetUserDisplay to compile. When I compile my program, it
gets "Error: undefined function 'SetUserDisplay'".

I thought it might be the version of NQC (3.0a1) so I downloaded 2.5r3, but
same
error.

Seems strange because SelectDisplay works fine, but I want to display a
variable.

Any ideas?

ROSCO

My guess is that NQC hasn't been told to target the 2.0 api, so it is
defaulting to 1.0 which does not have SetUserDisplay().  See
http://bricxcc.sourceforge.net/nqc/doc/faq.html#-Trcx2 for a more
detailed explanation.

Thanks Dave. I didn't notice the RCX2 option in Bricxcc, works great now! Just
to clarify, the only difference between RCX 1 & 2 (from the compile target POV)
is the firmware it's running?

ROSCO

????
Still a bit confused on this?
I am running WinXP and not sure where to use the SET command?
Opening up a DOS windows via CMD does show that I have this:

NQC_OPTIONS=-Trcx2
along with a lot of other windows variables but when I go and compile I still
get the error the OP was getting.
=(

-AHui


Subject: 
Re: NQC and RCXCC
Newsgroups: 
lugnet.robotics.rcx.nqc
Date: 
Wed, 1 Feb 2012 01:01:36 GMT
Viewed: 
27868 times
  
In lugnet.robotics.rcx.nqc, Bernd Frassek wrote:
Using NQC together with RCXCC (by Mark Overmars) is a fine combination that
fulfills my demands for writing software, debugging and testing. Unfortunately,
Mark Overmars, the author of RCXCC will not do any further development for
this product.

Meanwhile, I succeeded in "implementing" all the new features of the latest NQC
version into RCXCC. Here is what I did:

For writing programs, RCXCC functions just as a text editor with the aibility
to high-light and colorize special words. These words are arranged in lists
(keywords, functions, macros, templates) and stored in the Windows registry. I
put in all of the new features (e.g. access control, monitor, setuserdisplay,
etc.). I also added templates for all new NQC commands.

The new NQC file was copied into the RCXCC directory.

An Environment variable was defined (thanks again to Dave Baum who gave me the
hint and did foresee to check environment variables befor NQC is executed).
Since I am using Windows 95 I had to do this within the AUTOEXEC.BAT file (when
using higher versions of Windows or NT you can define this under File
Properties in a "nice" window):

Set NQC_OPTIONS=-Trcx2

The result of all this works perfectly.

If there is anyone who wants to work with the same NQC/RCXCC combination, I can
send the exported RCXCC registry key file via mail. All you will have to do is
to copy this key file file onto your desktop and afterwards double-click on it.
The registry will be updated immediately and you can use RCXCC with the new
features. Sometimes I am "overwhelmed" that things are so easy with Windows and
don't cause any problems ...   ;-)

Bernd

he,he,he...
I'm going to bring back a 12 year old thread.
I'm using Windows XP and cannot figure out how to set the NQC_OPTIONS=-Trcx2
option.  Any idea?

-Ahui


Subject: 
Re: Controlling an Electromagnet (LSM)
Newsgroups: 
lugnet.robotics.rcx
Followup-To: 
lugnet.robotics
Date: 
Sat, 31 Dec 2011 15:04:50 GMT
Viewed: 
25800 times
  
In lugnet.robotics.rcx, Kevin Karplus wrote:

How much power do you want for the electromagnets, and how rapidly do
you need to switch them on and off?
...
If you need faster switching (like for pulse-width modulation), your
best bet is to use power MOS transistors with Schottky protection
diodes.

Or... avoid both stock relays and chip-based switching.

For a linear motor you want to trigger each electromagnet in a series, you
ideally you might like a "push-pull" system, where you aren't just turning a
magnet on and off, but reversing the polarity (this is true for either the track
magnets or the magnets on the "car" under active control, but perhaps easier to
visualize for dynamically switched track magnets). Why not make a "mechanical
multi-relay", where a motor-driven slider slides two electrical bridges over a
series of contacts, each powering a different magnet in a different polarity.
After all, the order the magnets will "fire" in is fixed. The timing is not
(ideally the later magnets in the series should fire faster, as the car is
moving at higher velocity), which can be varied by changing either the speed the
electrical bridges slide along the sequencer, or by spacing out the contacts on
the sequencer itself.

Not only can you see that easily, but it's easy to tune (mechanically), and
perhaps best of all, it can be made completely electrically isolated from the
RCX or NXT (an important point given the inductive loads and currents that might
end up running around).

Railgun-style linear accelerators are far easier... if you have very low
voltage, ludicrously high current power systems. I've always wanted to make a
simple one of those with a rolling armature (instead of one you have to dump
enough current through to vaporize it), just to see it work.

--
Brian Davis



Next Page:  5 more | 10 more | 20 more

Redisplay Messages:  Brief | Compact

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