All of lore.kernel.org
 help / color / mirror / Atom feed
* AW: Web GUI for can-utils (i.e. cangw, cansend, candump)
@ 2013-06-10 16:30 Michael Luxen
  2013-06-10 18:22 ` Oliver Hartkopp
  0 siblings, 1 reply; 5+ messages in thread
From: Michael Luxen @ 2013-06-10 16:30 UTC (permalink / raw)
  To: Oliver Hartkopp; +Cc: linux-can Mailing List

Hello Oliver,

OK!
Thnak you for pointing me to the interestin toolchain with .kcd files (CANbabel translator), socketcand and Kayak.
Nevertheless I did some tests last weekend on my BeagleBone Black setup with DCAN0/DCAN1.

If I fire round about 37%@500kbit/s to DCAN0 I get a tast load of round about 45% of socketcand. In general it's possible for me to use Kayak on i.e. my Windows machine and connect to my BeagleBone Black via ethernet. But if I use the second CAN channel (DCAN1) or increase the busload of channel one (DCAN0) the taskload/CPUload increases unacceptable.

Did you have the same experience with socketcand and Kayak?
Why isn't it possible to connect directly to the can0/can1 socketcan interfaces without socketcand?

Regards
Mike

-----Ursprüngliche Nachricht-----
Von:	Oliver Hartkopp <socketcan@hartkopp.net>
Gesendet:	Sa 08.06.2013 14:31
Betreff:	Re: Web GUI for can-utils (i.e. cangw, cansend, candump)
An:	Michael Luxen <mluxen@gmx.net>; 
CC:	linux-can Mailing List <linux-can@vger.kernel.org>; 
> On 07.06.2013 22:10, Michael Luxen wrote:
> 
> > I'm looking for a easy solution to make the powerful cangw tool more 
> comfortable for endusers (dummy user).
> > 
> > Therefore I prefer to have a webfrontend / Web GUI to configure the cangw 
> rules with a webbrowser which is available on each PC/smartphone/etc
> > 
> > Is there already a configuration tool or best a Web GUI available which can 
> i.e.:
> > cangw
> > - Load two Vector .dbc files (one for can0 and one for can1)
> 
> I would suggest to start with kcd files instead of dbc files, which are Vector
> property.
> 
> E.g. The JAVA tool Kayak (http://kayak.2codeornot2code.org/) uses the kcd
> format (see: http://kayak.2codeornot2code.org/tutorial.html). There's also a
> kcd converter CANBabel at github: https://github.com/julietkilo/CANBabel
> 
> > - Select on one side (can0) the input CAN frame which should be routed from 
> can0 to can via cagw
> > - Select on the other side (can1) the input CAN fram whcih should be routed 
> from can1 to can0 via cangw
> > - Manipulate of CAN-frames with some logic operations +/-/*/div to use the 
> modification features of cangw
> 
> Today there are only AND/OR/XOR/SET defined for CAN frame modifications.
> 
> To modify signals on the fly is a much more complex attempt than doing some
> bit-wise operations. E.g. if you think about +/-/*/div operations: You need to
> provide the other operands, you need to extract and shift the data for
> processing and afterward inject it at the right place (shifting, adding the
> original information that was not modified, etc).
> 
> I wonder if this can/should be done in kernel context in a proper manner.
> 
> > - start cangw
> > 
> > cansend
> > - load a Vector .dbc file
> > - select a CAN-frame for transmitting
> > - select a CAN-signal to fillin a value to transmit
> > - manipulate the CAN-frames/CAN-signals content/values independent
> > - start cansend for CAN simulation
> > 
> > candump
> > - configure can interface to monitor/log
> > - start candump -l in background
> 
> I would suggest to preserve cansend and candump as-is.
> 
> Especially candump has become pretty complex by today to support all the
> CAN_RAW socket options and control information (from CAN FD to dropcounters &
> timestamps).
> 
> Probably some new tools like sigdump and sigsend (signal...) that make use of
> kcd files are a better option here.
> 
> But i don't know how this can be adapted to a web-based interface then.
> 
> Best regards,
> Oliver
> 
> 
> > 
> > 
> > Environment background:
> > I'm currently using the two internal CAN-Interfaces of the BeagleBone Black. 
> They are perfectly working for me with the latest Angstrom or Debian images.
> > 
> > Thanks for any hint or pointing me to the right place!
> > 
> > Regards
> > Mike
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-can" in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at  http://vger.kernel.org/majordomo-info.html
> > 
> 
>

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: AW: Web GUI for can-utils (i.e. cangw, cansend, candump)
  2013-06-10 16:30 AW: Web GUI for can-utils (i.e. cangw, cansend, candump) Michael Luxen
@ 2013-06-10 18:22 ` Oliver Hartkopp
  2013-06-11  9:54   ` Mohamed HAMZAOUI
  0 siblings, 1 reply; 5+ messages in thread
From: Oliver Hartkopp @ 2013-06-10 18:22 UTC (permalink / raw)
  To: Michael Luxen; +Cc: linux-can Mailing List

On 10.06.2013 18:30, Michael Luxen wrote:

> Thnak you for pointing me to the interestin toolchain with .kcd files (CANbabel translator), socketcand and Kayak.
> Nevertheless I did some tests last weekend on my BeagleBone Black setup with DCAN0/DCAN1.
> 
> If I fire round about 37%@500kbit/s to DCAN0 I get a tast load of round about 45% of socketcand. In general it's possible for me to use Kayak on i.e. my Windows machine and connect to my BeagleBone Black via ethernet. But if I use the second CAN channel (DCAN1) or increase the busload of channel one (DCAN0) the taskload/CPUload increases unacceptable.
> 
> Did you have the same experience with socketcand and Kayak?

Usually we use it with localhost IP communication.
An in the rare cases we use a MPC5200@400MHz based embedded system with two
CAN interfaces without any problems so far.

> Why isn't it possible to connect directly to the can0/can1 socketcan interfaces without socketcand?

Kayak is Java based. And Java does not support PF_CAN sockets. Therefore the
workaround via IP networking was necessary.

Best regards,
Oliver


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: AW: Web GUI for can-utils (i.e. cangw, cansend, candump)
  2013-06-10 18:22 ` Oliver Hartkopp
@ 2013-06-11  9:54   ` Mohamed HAMZAOUI
  0 siblings, 0 replies; 5+ messages in thread
From: Mohamed HAMZAOUI @ 2013-06-11  9:54 UTC (permalink / raw)
  To: Michael Luxen; +Cc: linux-can Mailing List, Oliver Hartkopp

Hi,

Good idea. I think we could use Qt to develop this on a GUI based
application which you can deploy on several architecture.
I worked on a strong tool for simulation analysis and automatic
validation of CAN/LIN networks and we developp all in C/C++/Qt.
For Web based Gui, I think that it's possible to develop a gsoap
webservice which you can consume with interface web and other type of
application.

Regards,
Mohamed

> I would suggest to start with kcd files instead of dbc files, which are Vector
> property.

I think dbc format is too more used than kcd and switch to this format
it's not possible for many reason

Regards,
Mohamed

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: AW: Web GUI for can-utils (i.e. cangw, cansend, candump)
  2013-06-16  8:18 Michael Luxen
@ 2013-06-19 17:29 ` Oliver Hartkopp
  0 siblings, 0 replies; 5+ messages in thread
From: Oliver Hartkopp @ 2013-06-19 17:29 UTC (permalink / raw)
  To: Michael Luxen; +Cc: linux-can Mailing List

On 16.06.2013 10:18, Michael Luxen wrote:

>> Usually we use it with localhost IP communication.
>> An in the rare cases we use a MPC5200@400MHz based embedded system with two
>> CAN interfaces without any problems so far.
> Can you explain your setup more in detail?

AFAIK Kayak was always running on a Linux Laptop in our setups.

And the socketcand was running on the same Linux Laptop or on the PowerPC
MPC5200. I must admit that i didn't look to CPU usage details. It was just
working for the purposes.

> I did several tests in the last days with:
> a) Kayak installed on the BeagleBone Black and export display to my Windows machine (using socketcand only on localhost)
> b) Kayak installed on my windows machine and connection via ethernet port of the BeagleBone Black via socketcand
> 
> Results for a) are that the socketcand process uses round abput 45% CPU (1GHz SoC) load at 37%@500kbit/s busload and a further socketcand process for DCAN1 increases the busload depending on the busload.
>  
> Results for b) are unacceptable due to very low speed of the exported Kayak application via MobaXterm.

Forwarding of display data is not very CPU / networking friendly.
The socketcand data is the only thing that should be transmitted via network.


> Further nice tools are:
> Webbased CANlogger using socketcan 
> https://bitbucket.org/Mongo/ewecan/overview
> 
> Qcanobserver - CAN sniffer Qt based
> http://qcanobserver.sourceforge.net/

Interesting!

> 
> As I'm fighting with getting my MCP2515 to work on a BeagleBone Black (Angstrom 2013-06-06 distribution)I'm very interested in getting a guideline/howto to get it working. 
> Does someone in the mailinglist have a working MCP2515 running with BeagleBone / BeagleBone Black.

Don't know.

You better start a new thread with a matching mail subject.

Best regards,
Oliver



^ permalink raw reply	[flat|nested] 5+ messages in thread

* AW: Web GUI for can-utils (i.e. cangw, cansend, candump)
@ 2013-06-16  8:18 Michael Luxen
  2013-06-19 17:29 ` Oliver Hartkopp
  0 siblings, 1 reply; 5+ messages in thread
From: Michael Luxen @ 2013-06-16  8:18 UTC (permalink / raw)
  To: Oliver Hartkopp; +Cc: linux-can Mailing List

Hello Oliver,

> > Thnak you for pointing me to the interestin toolchain with .kcd files 
> (CANbabel translator), socketcand and Kayak.
> > Nevertheless I did some tests last weekend on my BeagleBone Black setup with 
> DCAN0/DCAN1.
> > 
> > If I fire round about 37%@500kbit/s to DCAN0 I get a tast load of round about 
> 45% of socketcand. In general it's possible for me to use Kayak on i.e. my 
> Windows machine and connect to my BeagleBone Black via ethernet. But if I use 
> the second CAN channel (DCAN1) or increase the busload of channel one (DCAN0) 
> the taskload/CPUload increases unacceptable.
> > 
> > Did you have the same experience with socketcand and Kayak?
> 
> Usually we use it with localhost IP communication.
> An in the rare cases we use a MPC5200@400MHz based embedded system with two
> CAN interfaces without any problems so far.
Can you explain your setup more in detail?
I did several tests in the last days with:
a) Kayak installed on the BeagleBone Black and export display to my Windows machine (using socketcand only on localhost)
b) Kayak installed on my windows machine and connection via ethernet port of the BeagleBone Black via socketcand

Results for a) are that the socketcand process uses round abput 45% CPU (1GHz SoC) load at 37%@500kbit/s busload and a further socketcand process for DCAN1 increases the busload depending on the busload.
 
Results for b) are unacceptable due to very low speed of the exported Kayak application via MobaXterm.

Further nice tools are:
Webbased CANlogger using socketcan 
https://bitbucket.org/Mongo/ewecan/overview

Qcanobserver - CAN sniffer Qt based
http://qcanobserver.sourceforge.net/

As I'm fighting with getting my MCP2515 to work on a BeagleBone Black (Angstrom 2013-06-06 distribution)I'm very interested in getting a guideline/howto to get it working. 
Does someone in the mailinglist have a working MCP2515 running with BeagleBone / BeagleBone Black.

Regards
Mike

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2013-06-19 17:29 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-06-10 16:30 AW: Web GUI for can-utils (i.e. cangw, cansend, candump) Michael Luxen
2013-06-10 18:22 ` Oliver Hartkopp
2013-06-11  9:54   ` Mohamed HAMZAOUI
2013-06-16  8:18 Michael Luxen
2013-06-19 17:29 ` Oliver Hartkopp

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.