« Return to Thread: Widely used low level API?

Re: Widely used low level API?

by Heinz-Juergen Oertel :: Rate this Message:

Reply to Author | View in Thread

Am Donnerstag 20 November 2008 schrieb Oliver Betz:

> stunbmun wrote:
>
> > I designed a CAN/USB device for my company and we sell it via the web.  In my
> > experience, I have only ever heard of one common API that was requested by a
> > potential customer - I can't remember what it was now and never heard of it
> > again, so that may be a good sign that it was not widely used or adopted.
> > Of course I never really ever looked again, so I may be completely wrong.
> >
> > We ended up creating our own custom API, but really its almost as simple as
> > Open, Close, Send, Receive.  Users of the API are usually not too
> > intimidated by such simple functionality, and there is not really much
> > software out there (at least that I'm aware of) that uses a common driver
> > API anyway.  
>
> there are some more possibilities as setting versatile filters,
> distributing incoming messages to the appropriate handlers...
>
> Oliver
From our experience, maintaining the open source can4linux,
and a lot of proprietary drivers for CANopen, DeviceNet, J1939,
CAN error handling is very importand.
When we use manufacturer provided drivers, e.g. Windows CAN drivers,
we see big differences there.
Very importand is that the Error Passive State and Bus off are reported
to the application.
Error counters if available should be readable any time.
More things come in mind.

http://www.can-wiki.info/CanInterfaceAPI
is the place to collect requirements.

By the way, I agree that filtering should be handled by the driver.
But message distribution may be not. Could be a layer above if necessary.
The driver API should be a simple as possible and as flexible as possible.

Regards
  Heinz
  port GmbH


signature.asc (196 bytes) Download Attachment

 « Return to Thread: Widely used low level API?