|
|
|
![]() |
|
|||||||
|
||||||||
![]() |
| Thread Tools | Rate Thread | Display Modes |
|
#16
|
||||
|
||||
|
Re: Joystick motion to CAN connected jaguar
Wait, your firmware version request isn't returning anything valid?
But it does in LabVIEW… It's just the Device Query that doesn't return anything. (In LabVIEW, the Jaguar Open VI returns an error if the Jaguar firmware isn't in the correct range) |
|
#17
|
|||
|
|||
|
Joystick motion to CAN connected jaguar
GetFirmwareVersion() returns zero.
I'm connecting the crio to the 2CAN through ethernet port 1 (the same port used for the wireless). Maybe that's the problem? I transferred the 2CAN connection over to ethernet port 2 (192.168.x.x). Yes, I changed the 2CAN IP address. The results are the same. GetFirmwareVersion still returns 0. I still get the CANJaguar errors during crio boot-up. Here's a little more about the 2CAN web page interface. Sometimes it shows the firmware rev, sometimes not. Radical Pi, I may have to pull a paper bag over my head in shame for my comments about the firmware. |
|
#18
|
|||
|
|||
|
Re: Joystick motion to CAN connected jaguar
Well if it returns zero during the actual running of the code and the 2CAN can retrieve a version and it doesn't work over Serial but everything works in LabVIEW, then there must be a problem in the CANJaguar.cpp file.
2 parts to this one: Marshal: In LabVIEW's Get Firmware Version, is 0x80000000 OR'd into the ID? sam: Go into the function GetFirmwareVersion in CANJaguar.cpp (line 866 for me) and replace this line with a different version: Code:
ORIGINAL: // Set the MSB to tell the 2CAN that this is a remote message. getTransaction(0x80000000 | CAN_MSGID_API_FIRMVER, dataBuffer, &dataSize); REPLACE WITH: // REMOVED: Set the MSB to tell the 2CAN that this is a remote message. getTransaction(CAN_MSGID_API_FIRMVER, dataBuffer, &dataSize); EDIT: It appears that Java had the same problem at one point and the firmware check was bypassed as a workaround |
|
#19
|
||||
|
||||
|
Re: Joystick motion to CAN connected jaguar
Quote:
There is just the decimal value 512 ORed with the device number. In hexadecimal, that should be 0x0b00 What's weird about ORing 0x80000000 is that it makes TRUE the highest bit of the Arbitration ID. The highest 3 bits of the arbitration ID should be reserved. By all means, take it out, and comment what and why you did. |
![]() |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Can we detect if PSoC is connected or not ? | gokul | Programming | 5 | 03-03-2010 11:24 |
| CAN Jaguar enhancements | JasonStern | CAN | 10 | 01-03-2010 09:38 |
| CAN Jaguar Malfunction | PranavSathy | CAN | 4 | 21-02-2010 18:32 |
| Joystick To Jaguar | Taxi Quinn | Programming | 1 | 17-02-2010 11:12 |
| Using the same Jaguar/Controller for Joystick and buttons.... | mck567 | NI LabVIEW | 2 | 09-02-2010 16:34 |