Re: [Nxtcommand-developers] LEGO FW Support
Status: Beta
Brought to you by:
bbagnall
From: Brian B. <bba...@mt...> - 2007-08-05 16:30:25
|
Hi Peter, > About 1 and 2. I would prefer to make a tool that generates > the file icommand.properties in the home directory of the user. > > windows --> bluecove + detect bluetooth address > linux --> bluez + detect bluetooth addrress > os x --> rxtx + edit com port manually That sounds good. I added some code in the factory to detect OS but you can remove this if you would prefer a seperate class. For users with one NXT brick, will this tool will run automatically, without user assistance? It should be possible to have this function with no additional steps on the part of the user (other than if using RXTX). Maybe if they have more than one NXT they might have to specify which one to use, but then again it could just latch on to whichever one happens to be on. > About 3. I have the impression that this is a bluecove problem. Hard too > fix > (?) > See following examples. > - example 1 works correct. > Motor.A.rotate(1800); waits until the tacholimit is reached > - example 2 works correct. > NXTCommand.setVerify(true); Sound.playTone(1500, 1000); is waiting for a > response. > - example 3 has a problem. The connection is not closed even when the > program is cancelled. > NXTCommand.setVerify(false); Sound.playTone(1500, 1000); does not wait for > a response. > > example 1: (correct) > > for (int i = 0; i < 10; i++) { > NXTCommand.open(); > Motor.A.rotate(1800); > System.out.println("Tachometer A: " + Motor.A.getTachoCount()); > NXTCommand.close(); > } > > > example 2: (correct) > > NXTCommand.setVerify(true); > for (int i = 0; i < 10; i++) { > NXTCommand.open(); > Sound.playTone(1500, 1000); > NXTCommand.close(); > } > > example 3: (error) > > NXTCommand.setVerify(false); > for (int i = 0; i < 10; i++) { > NXTCommand.open(); > Sound.playTone(1500, 1000); > NXTCommand.close(); > } It might not be BlueCove since it happens with RXTX too. It also happens when using NXJ firmware, whereas Lawrie's works with NXJ firmware. Let's put that problem on the backburner for now. I'll do some research later and see if Lawrie has any insight into this since he seems to have it working right with a Bluecove/NXJ firmware combo. - Brian > -----Original Message----- > From: Brian Bagnall [mailto:bba...@mt...] > Sent: vrijdag 27 juli 2007 5:41 > To: Peter Joosten > Cc: iCommand Developers > Subject: LEGO FW Support > > > Hi Peter, > > I changed the NXJ firmware so it properly sends the run state instead of > mode to indicate if the motor is done turning. This should make it work > the > same for LCP and isMoving() shouldn't cause an infinite loop. I'll check > the > changes in later for Motor. > > The remaining tasks I'd like to get done before release are: > 1 - Auto NXTComm selection using OS detection (rather than manually > editing > the properties file) > 2 - Auto detection of Bluetooth address and automatically writing it to > the > properties file (Bluecove only?) > 3 - Working close() method so the NXT brick doesn't have to be reset after > each run (Lawrie figured this out with NXJ somehow) > > Any of those interest you? > > - Brian > > > -- > No virus found in this incoming message. > Checked by AVG Free Edition. > Version: 7.5.476 / Virus Database: 269.10.22/922 - Release Date: 27-7-2007 > 6:08 > > |