* [Xenomai-help] FW: Peak parallel port dongle rtcan driver
@ 2009-08-05 15:56 Charlton, John
2009-08-13 12:13 ` Wolfgang Grandegger
0 siblings, 1 reply; 5+ messages in thread
From: Charlton, John @ 2009-08-05 15:56 UTC (permalink / raw)
To: xenomai@xenomai.org
To follow up on this, I configured the parallel port for standard mode and the xeno_can_peak_dng driver works without error so the problem has to do with the EPP/ECP mode. I would like to use EPP or ECP for performance. And as indicated below, the xeno_can_peak_dng driver only recognizes the sja1000 when the bios is set to EPP mode. Any ideas on how to get it to work in EPP or ECP?
--John
-----Original Message-----
From: Charlton, John
Sent: Wednesday, August 05, 2009 10:12 AM
To: xenomai@xenomai.org
Subject: Peak parallel port dongle rtcan driver
I am having some problems with the xeno_can_peak_dng driver with the Peak parallel port CAN dongle. I am using linux-2.6.27.7 kernel and xenomai-2.4.6.1 on an embedded PC (NANO-7240, ULV Celeron 400 MHz CPU).
I have done extensive testing using both RAW CAN and CanOpen using CanFestival at 1Mbit baud with a TS-CAN1 PC-104 bus card with no errors. When I use the Peak parallel port dongle at 1 Mbit or 125Kbit baud I loose packets and get errors. It is worse receiving packets with rtcanrecv than transmitting with rtcansend. I can transmit for longer intervals but eventually it fails with an error. The last error reported is:
Assertion failed! <linux kernel directory>/drivers/xenomai/can/rtcan_raw.c:rtcan_tx_push:171 dev->tx_socket == 0 This error occurred after 484 successful transmissions with 100msec delay at baudrate=1000000:
rtcansend rtcan0 --verbose --identifier=0x123 0xde 0xad 3 4 5 6 7 8
After the transmission failed the I was unable to send any more packets until I reloaded the driver. The /proc/rtcan/rtcan0/info state goes to warning in this case.
Receiving using rtcanrecv rtcan0 --verbose --error=0xffff has more errors. Receiving errors result in corrupt packets but don't cause the CAN bus to quit working or the state to go to warning. Right after a receive failure
Device rtcan0
Controller SJA1000
Board PEAK-Dongle
Clock-Hz 8000000
Baudrate 1000000
Bit-time brp=1 prop_seg=0 phase_seg1=5 phase_seg2=2 sjw=1 sam=0
Ctrl-Mode
State active
TX-Counter 0
RX-Counter 0
Errors 0
Refcount 0
SJA1000 registers
00: 80 00 0c 00 ff 00 00 14 1a 00 00 00 a2 60 00 00
10: 60 de ad 03 04 05 06 80 08 08 24 60 de 00 23 80
I currently have the Peak parallel dongle set to io=0x378 irq=7 type=epp. I set the parallel port bios to EPP mode and IRQ 7. I tried ECP mode but the xeno_can_peak_dng driver doesn't find the sja1000 unless the bios setting is EPP. This conflicts with the Peak documentation which states in the FAQ that ECP is the correct setting even though the driver type is EPP. It looks to me like there may be a timing problem in the parallel port register read.
--John
John D. Charlton
Sr. Development Engineer
GATD Electrical Controls
Tyco Electronics Corporation
Mail Stop: 161-39
(717) 810-2141
(717) 810-2443 FAX
john.charlton@domain.hid
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: [Xenomai-help] FW: Peak parallel port dongle rtcan driver
2009-08-05 15:56 [Xenomai-help] FW: Peak parallel port dongle rtcan driver Charlton, John
@ 2009-08-13 12:13 ` Wolfgang Grandegger
2009-08-13 12:23 ` Charlton, John
0 siblings, 1 reply; 5+ messages in thread
From: Wolfgang Grandegger @ 2009-08-13 12:13 UTC (permalink / raw)
To: Charlton, John; +Cc: xenomai@xenomai.org
Hi John,
Charlton, John wrote:
> To follow up on this, I configured the parallel port for standard mode and the xeno_can_peak_dng driver works without error so the problem has to do with the EPP/ECP mode. I would like to use EPP or ECP for performance. And as indicated below, the xeno_can_peak_dng driver only recognizes the sja1000 when the bios is set to EPP mode. Any ideas on how to get it to work in EPP or ECP?
I'm not really familiar with EPP and ECP and the differences. I just
know that this devcie is not really good for production purposes,
especially at 1 MB/s. Also real-time suffers, because device access is
quite slow. The driver is derived from PEAK's PCAN driver. PEAK might be
able to tell you more about the limitations and EPP/ECP problems with
that device.
Wolfgang.
> --John
>
> -----Original Message-----
> From: Charlton, John
> Sent: Wednesday, August 05, 2009 10:12 AM
> To: xenomai@xenomai.org
> Subject: Peak parallel port dongle rtcan driver
>
> I am having some problems with the xeno_can_peak_dng driver with the Peak parallel port CAN dongle. I am using linux-2.6.27.7 kernel and xenomai-2.4.6.1 on an embedded PC (NANO-7240, ULV Celeron 400 MHz CPU).
>
> I have done extensive testing using both RAW CAN and CanOpen using CanFestival at 1Mbit baud with a TS-CAN1 PC-104 bus card with no errors. When I use the Peak parallel port dongle at 1 Mbit or 125Kbit baud I loose packets and get errors. It is worse receiving packets with rtcanrecv than transmitting with rtcansend. I can transmit for longer intervals but eventually it fails with an error. The last error reported is:
> Assertion failed! <linux kernel directory>/drivers/xenomai/can/rtcan_raw.c:rtcan_tx_push:171 dev->tx_socket == 0 This error occurred after 484 successful transmissions with 100msec delay at baudrate=1000000:
> rtcansend rtcan0 --verbose --identifier=0x123 0xde 0xad 3 4 5 6 7 8
>
> After the transmission failed the I was unable to send any more packets until I reloaded the driver. The /proc/rtcan/rtcan0/info state goes to warning in this case.
> Receiving using rtcanrecv rtcan0 --verbose --error=0xffff has more errors. Receiving errors result in corrupt packets but don't cause the CAN bus to quit working or the state to go to warning. Right after a receive failure
>
> Device rtcan0
> Controller SJA1000
> Board PEAK-Dongle
> Clock-Hz 8000000
> Baudrate 1000000
> Bit-time brp=1 prop_seg=0 phase_seg1=5 phase_seg2=2 sjw=1 sam=0
> Ctrl-Mode
> State active
> TX-Counter 0
> RX-Counter 0
> Errors 0
> Refcount 0
>
> SJA1000 registers
> 00: 80 00 0c 00 ff 00 00 14 1a 00 00 00 a2 60 00 00
> 10: 60 de ad 03 04 05 06 80 08 08 24 60 de 00 23 80
>
> I currently have the Peak parallel dongle set to io=0x378 irq=7 type=epp. I set the parallel port bios to EPP mode and IRQ 7. I tried ECP mode but the xeno_can_peak_dng driver doesn't find the sja1000 unless the bios setting is EPP. This conflicts with the Peak documentation which states in the FAQ that ECP is the correct setting even though the driver type is EPP. It looks to me like there may be a timing problem in the parallel port register read.
>
> --John
>
> John D. Charlton
> Sr. Development Engineer
> GATD Electrical Controls
> Tyco Electronics Corporation
> Mail Stop: 161-39
> (717) 810-2141
> (717) 810-2443 FAX
> john.charlton@domain.hid
>
> _______________________________________________
> Xenomai-help mailing list
> Xenomai-help@domain.hid
> https://mail.gna.org/listinfo/xenomai-help
>
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Xenomai-help] FW: Peak parallel port dongle rtcan driver
2009-08-13 12:13 ` Wolfgang Grandegger
@ 2009-08-13 12:23 ` Charlton, John
2009-08-14 7:57 ` Wolfgang Grandegger
0 siblings, 1 reply; 5+ messages in thread
From: Charlton, John @ 2009-08-13 12:23 UTC (permalink / raw)
To: Wolfgang Grandegger; +Cc: xenomai@xenomai.org
Wolfgang,
Thank you for the information and advice. We are currently considering this interface in a custom embedded controller design but based on your recommendations we probably need to reassess that decision. We were intending to use the parallel port through a super io chip on a custom designed board but it sounds like we should go with an ISA or PCI bus interface to get real-time performance at 1mbit baud rate. Our application requires the full 1mbit baudrate continuous for 100msec to 200msec intervals.
--John
-----Original Message-----
From: Wolfgang Grandegger [mailto:wg@domain.hid
Sent: Thursday, August 13, 2009 8:14 AM
To: Charlton, John
Cc: xenomai@xenomai.org
Subject: Re: [Xenomai-help] FW: Peak parallel port dongle rtcan driver
Hi John,
Charlton, John wrote:
> To follow up on this, I configured the parallel port for standard mode and the xeno_can_peak_dng driver works without error so the problem has to do with the EPP/ECP mode. I would like to use EPP or ECP for performance. And as indicated below, the xeno_can_peak_dng driver only recognizes the sja1000 when the bios is set to EPP mode. Any ideas on how to get it to work in EPP or ECP?
I'm not really familiar with EPP and ECP and the differences. I just know that this devcie is not really good for production purposes, especially at 1 MB/s. Also real-time suffers, because device access is quite slow. The driver is derived from PEAK's PCAN driver. PEAK might be able to tell you more about the limitations and EPP/ECP problems with that device.
Wolfgang.
> --John
>
> -----Original Message-----
> From: Charlton, John
> Sent: Wednesday, August 05, 2009 10:12 AM
> To: xenomai@xenomai.org
> Subject: Peak parallel port dongle rtcan driver
>
> I am having some problems with the xeno_can_peak_dng driver with the Peak parallel port CAN dongle. I am using linux-2.6.27.7 kernel and xenomai-2.4.6.1 on an embedded PC (NANO-7240, ULV Celeron 400 MHz CPU).
>
> I have done extensive testing using both RAW CAN and CanOpen using CanFestival at 1Mbit baud with a TS-CAN1 PC-104 bus card with no errors. When I use the Peak parallel port dongle at 1 Mbit or 125Kbit baud I loose packets and get errors. It is worse receiving packets with rtcanrecv than transmitting with rtcansend. I can transmit for longer intervals but eventually it fails with an error. The last error reported is:
> Assertion failed! <linux kernel directory>/drivers/xenomai/can/rtcan_raw.c:rtcan_tx_push:171 dev->tx_socket == 0 This error occurred after 484 successful transmissions with 100msec delay at baudrate=1000000:
> rtcansend rtcan0 --verbose --identifier=0x123 0xde 0xad 3 4 5 6 7 8
>
> After the transmission failed the I was unable to send any more packets until I reloaded the driver. The /proc/rtcan/rtcan0/info state goes to warning in this case.
> Receiving using rtcanrecv rtcan0 --verbose --error=0xffff has more
> errors. Receiving errors result in corrupt packets but don't cause
> the CAN bus to quit working or the state to go to warning. Right
> after a receive failure
>
> Device rtcan0
> Controller SJA1000
> Board PEAK-Dongle
> Clock-Hz 8000000
> Baudrate 1000000
> Bit-time brp=1 prop_seg=0 phase_seg1=5 phase_seg2=2 sjw=1 sam=0
> Ctrl-Mode
> State active
> TX-Counter 0
> RX-Counter 0
> Errors 0
> Refcount 0
>
> SJA1000 registers
> 00: 80 00 0c 00 ff 00 00 14 1a 00 00 00 a2 60 00 00
> 10: 60 de ad 03 04 05 06 80 08 08 24 60 de 00 23 80
>
> I currently have the Peak parallel dongle set to io=0x378 irq=7 type=epp. I set the parallel port bios to EPP mode and IRQ 7. I tried ECP mode but the xeno_can_peak_dng driver doesn't find the sja1000 unless the bios setting is EPP. This conflicts with the Peak documentation which states in the FAQ that ECP is the correct setting even though the driver type is EPP. It looks to me like there may be a timing problem in the parallel port register read.
>
> --John
>
> John D. Charlton
> Sr. Development Engineer
> GATD Electrical Controls
> Tyco Electronics Corporation
> Mail Stop: 161-39
> (717) 810-2141
> (717) 810-2443 FAX
> john.charlton@domain.hid
>
> _______________________________________________
> Xenomai-help mailing list
> Xenomai-help@domain.hid
> https://mail.gna.org/listinfo/xenomai-help
>
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Xenomai-help] FW: Peak parallel port dongle rtcan driver
2009-08-13 12:23 ` Charlton, John
@ 2009-08-14 7:57 ` Wolfgang Grandegger
2009-08-14 12:38 ` Charlton, John
0 siblings, 1 reply; 5+ messages in thread
From: Wolfgang Grandegger @ 2009-08-14 7:57 UTC (permalink / raw)
To: Charlton, John; +Cc: xenomai@xenomai.org
Charlton, John wrote:
> Wolfgang,
>
> Thank you for the information and advice. We are currently considering this interface in a custom embedded controller design but based on your recommendations we probably need to reassess that decision. We were intending to use the parallel port through a super io chip on a custom designed board but it sounds like we should go with an ISA or PCI bus interface to get real-time performance at 1mbit baud rate. Our application requires the full 1mbit baudrate continuous for 100msec to 200msec intervals.
FYI, I remember discussions about real-time problems with the PCAN dongle:
https://mail.gna.org/public/xenomai-help/2007-03/msg00185.html
See also:
https://mail.gna.org/public/xenomai-help/2007-03/msg00183.html
Can't remember where I got that information from, maybe from PEAK PCAN
support.
But that user did not have the problems you reported. Maybe it's
hardware related.
Wolfgang.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Xenomai-help] FW: Peak parallel port dongle rtcan driver
2009-08-14 7:57 ` Wolfgang Grandegger
@ 2009-08-14 12:38 ` Charlton, John
0 siblings, 0 replies; 5+ messages in thread
From: Charlton, John @ 2009-08-14 12:38 UTC (permalink / raw)
To: Wolfgang Grandegger; +Cc: xenomai@xenomai.org
Wolfgang,
This question is getting off the initial thread topic, but we are looking for another hardware route to a xenomai compatible CAN interface. We have an LPC bus. Do you know of any MSCAN or SJA1000 or other xenomai supported devices that have LPC bus interface? We currently don't have any other devices that require a PCI or ISA bus so if we can do it through the LPC bus that would be the best hardware option instead of using the slower super-I/O parallel port dongle interface. We also don't have an SPI interface. I was looking at the MCP2515 but without SPI that seems to be out.
--
John
-----Original Message-----
From: Wolfgang Grandegger [mailto:wg@domain.hid
Sent: Friday, August 14, 2009 3:58 AM
To: Charlton, John
Cc: xenomai@xenomai.org
Subject: Re: [Xenomai-help] FW: Peak parallel port dongle rtcan driver
Charlton, John wrote:
> Wolfgang,
>
> Thank you for the information and advice. We are currently considering this interface in a custom embedded controller design but based on your recommendations we probably need to reassess that decision. We were intending to use the parallel port through a super io chip on a custom designed board but it sounds like we should go with an ISA or PCI bus interface to get real-time performance at 1mbit baud rate. Our application requires the full 1mbit baudrate continuous for 100msec to 200msec intervals.
FYI, I remember discussions about real-time problems with the PCAN dongle:
https://mail.gna.org/public/xenomai-help/2007-03/msg00185.html
See also:
https://mail.gna.org/public/xenomai-help/2007-03/msg00183.html
Can't remember where I got that information from, maybe from PEAK PCAN support.
But that user did not have the problems you reported. Maybe it's hardware related.
Wolfgang.
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2009-08-14 12:38 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-08-05 15:56 [Xenomai-help] FW: Peak parallel port dongle rtcan driver Charlton, John
2009-08-13 12:13 ` Wolfgang Grandegger
2009-08-13 12:23 ` Charlton, John
2009-08-14 7:57 ` Wolfgang Grandegger
2009-08-14 12:38 ` Charlton, John
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.