| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| | |
| | |
| | |
| | |
| | | |
Change-Id: I1efaf60109d17a370662ca2b57c20ac76a9fe523
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][QCanBusDeviceInfo] Added the function
alias() to query user-defineable identifiers
associated with a CAN bus interface.
Currently implemented for Peak CAN hardware on
Windows with PCAN-Basic >= 4.4.0: It returns the
PCAN_DEVICE_ID here, which can be set with PCAN-View.
Fixes: QTBUG-65195
Change-Id: I70480df956498015c3f876da7c12406be045aba6
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Rolf Eike Beer <eb@emlix.com>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|/
|
|
|
|
|
|
| |
[ChangeLog][VectorCAN] Added CAN FD support to the VectorCAN plugin.
Change-Id: I7e72dafd13bb16b2db636a133502f0bdbc7a2ba6
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Because that is already done in
QCanBusDevice::disconnectDevice()
before calling this private implementation.
Add a logging entry instead.
Change-Id: I4b7e4ba31a49e2a80d92e8dc0f24a8065d465f3a
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Rolf Eike Beer <eb@emlix.com>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
While the client sent a disconnect command to
the server, this was not handled on server side.
Thus, the client was never really Unconnected and
in turn it was not possible to connect again.
Fix that by closing the socket, that leads to
VirtualCanBackend::clientDisconnected() being
called and that sets the plugin to Unconnected.
In any case, the server keeps running until the
plugin is unloaded, even after the last client
is disconnected.
[ChangeLog][VirtualCAN] Fixed that the plugin
stayed forever in closing state and subsequent
connect calls always failed.
Change-Id: I7a490c55a3cb6bd193ba4783b48d1385aa85bcde
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Rolf Eike Beer <eb@emlix.com>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|\
| |
| |
| | |
Change-Id: I49240ebad0b08b728783a4e5137f12799cb5080c
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QtSerialBus is already using QtSerialPort which has a WriteNotifier and
ReadNotifier class in place. Therefore it is possible that if these were
linked in together into one application that there would be multiple
instances of the same class name which caused problems as it would think
that the WriteNotifier in QtSerialPort was a QTimer and not a
QSocketNotifier. So keep the names unique to be on the safe side.
Change-Id: I8667e3d4230b316d47e266ad1b4319cf5e74444b
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I35dad8a57ea003c7d70f03651aa0604141c8b2db
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Having the same function name in a global namespace
can lead the linker to pick an arbitrary one instead
the right one.
[ChangeLog] Fixed problems on static builds where
an arbitrary version of resolveSymbol() was used
instead the correct one.
Fixes: QTBUG-78546
Change-Id: I0ff9bc3e5905b3b9694dfe9d446b2a52700f213f
Reviewed-by: Karsten Heimrich <karsten.heimrich@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
So far, only CAN_RAW was allowed, but there might be
cases where other protocols are useful too.
The default value is still CAN_RAW, so all existing
applications will continue working.
[ChangeLog][SocketCAN] Added the configuration parameter
QCanBusDevice::ProtocolKey to use another protocol
inside the protocol family PF_CAN.
Fixes: QTBUG-75204
Change-Id: I8323ab8d77a569f51d3cd8c296b433352a3f5609
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|\|
| |
| |
| | |
Change-Id: If26de70aa60d2a033b0422feabfa0a0275e048bc
|
| |\
| | |
| | |
| | | |
Change-Id: Ica2fb988735520ed1bacacd72eeda24428aec981
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Fixes: QTBUG-76957
Change-Id: I8c4c86aa23137d67f5d20eedfe1c46a241c0632b
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The original terminology is Error active, Error warning,
Error Passive and Bus Off. We map them to GoodStatus,
WarningStatus, ErrorStatus and BusOffStatus here.
[ChangeLog][QCanBusDevice] Added the function busStatus()
to query the CAN bus status from the CAN bus device.
Fixes: QTBUG-70766
Change-Id: I22b99e2a02a6b22509005dd177796b861d536281
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Change-Id: If47df4e9d62b5ca95ce14ddf8b4346ef14e4cf42
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Currently missing:
* VectorCAN: no information in the documentation found
* PassthroughCAN: no documentation
[ChangeLog][QCanBus][QCanBusDevice] Added the function
QCanBusDevice::resetController() to reset a CAN controller
from bus off state, as far as supported by the various
plugins.
Fixes: QTBUG-54943
Change-Id: Ic098054b012726c0c69970c0ae84f434c2b3964a
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: I80ce9909774c24834060dd37a5201ec413e37647
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Some configuration parameters must be changed before
the device is opened, like bitrate and data bitrate.
Both bitrates are already set in PeakCanBackendPrivate::open(),
which is called some lines above. So skip the data bitrate
here, like already done for the (arbitration) bitrate.
Amends ac8509d992f4
Change-Id: Ib2ee99a8c969eeae96a8978401987c4fde273743
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
That should make it easier to debug problems and bug reports.
Change-Id: I31367a3a46df9dcca6dc8282cf1cb9c9e189e2ca
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Seems we missed them when porting all other debug and
warning messages.
Change-Id: I3f083de2ed0c4d9bf73842a7e0c2e09f3883a3bb
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|\| |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
examples/serialbus/modbus/adueditor/modbustcpclient_p.h
Change-Id: I620bfce752a957fdcd068c44ff039d84b7502edc
|
| |\|
| | |
| | |
| | | |
Change-Id: I345178003443aabe5c60c31b091d105f4639914a
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When using the QCanBusDevice::ReceiveOwnKey, it has to be applied
before the device is opened. While this already correctly happened
in SystecCanBackendPrivate::open(), the parameter was applied again
in SystecCanBackendPrivate::setConfigurationParameter() which led
to the error message.
Solution is to skip ReceiveOwnKey when applying all configuration
parameters in SystecCanBackend::open(), like already done there
for BitRateKey.
[ChangeLog][SystecCAN] Fixed the error message "Cannot configure
TxEcho for open device" when QCanBusDevice::ReceiveOwnKey was used.
Change-Id: I37c1732798a3ce205a65ca803a99b5b7b9306d2a
Reviewed-by: Samuel Gaist <samuel.gaist@idiap.ch>
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
|
|\| |
| | |
| | |
| | | |
Change-Id: I566eb2a607c59bf80a50a411dd4311f39c72e2c8
|
| |\|
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
.qmake.conf
Change-Id: Iddf3becef6ac9cd7978fcbe80457f85fbc80df52
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Remove the colons from a few places to make their output
similar to the debug output in other lines.
Example (omitting qt.canbus.plugins.virtualcan prefix):
Server [0x7f19684903c0] constructed.
Server [0x7f19684903c0] could not be started, port 35468 is already in use.
Client [0x5586262ecaa0] socket created.
Client [0x5586262ecaa0] socket connected.
Client [0x5586262ecaa0] received: '0##f9ffad71e96cb5ee'.
Client [0x5586262ecaa0] socket disconnected.
Client [0x5586262ecaa0] socket destructed.
Server [0x7f19684903c0] destructed.
Change-Id: I6d91282a262c58e2c983ee6db5c030698197c9f6
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
There is a PeakCAN "compatible" CAN library available for macOS:
http://www.mac-can.com/doxygen/html/index.html
The following changes need to be implemented to use this library:
- Use different library load name (PCBUSB rather than peakcanbasic)
- Use different types for data exchange with the library
[ChangeLog][PeakCAN] Added support for PCAN-USB devices on macOS
by using the MacCAN library (http://www.mac-can.com)
Change-Id: I6fcc62f5ddee32077ac007236ba78f834fc3f7f7
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Can be extended for further functions from this library also.
[ChangeLog][Plugins][SocketCAN] If libsocketcan is available,
the CAN bus bitrate can be get and set at runtime.
Fixes: QTBUG-54296
Change-Id: Ie677ddb5cf4ee9f99927973d837ef7a2810a2b37
Reviewed-by: Rolf Eike Beer <eb@emlix.com>
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
|
|\|
| |
| |
| | |
Change-Id: I3b0f7e3ef4d3201f3ffcac458fc691296dabf12a
|
| |
| |
| |
| |
| |
| |
| |
| | |
there is no point in putting the owning module there.
Change-Id: I9bc49ae323a4bbc8cd35d10493c899466645bd44
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|/
|
|
|
|
| |
Task-number: QTBUG-70360
Change-Id: I511e368e227a46f9eba178612c8b106f5930ee49
Reviewed-by: André Hartmann <aha_1980@gmx.de>
|
|
|
|
|
|
|
|
|
|
|
| |
Based on a TCP/IP server/client infrastructure, to allow testing
programs against a second program without CAN hardware connected.
[ChangeLog][QCanBus] Added a generic virtual CAN bus plugin.
Task-number: QTBUG-61837
Change-Id: I7acf04bd476b65b4d1d04254463d61a4dc9042d5
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Introduced by e0e89f0719497d43fcbd14a2c8d17bcaaf595a78
which changed the constants PCAN_CHANNEL_AVAILABLE and
FEATURE_FD_CAPABLE to unsigned integers.
Change-Id: I0d9278d2842180230ac3d744595151762de77794
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
|
|\
| |
| |
| | |
Change-Id: I02db5c1b8c8445ec96c79cc26bdf4fbb84720d5e
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
As reason for the fix, see section "3.4.1 XLevent" in the Vector
documentation XL_Driver_Library_Manual_EN.pdf, which states:
"portHandle: Internal use only".
This portHandle seems to be always zero and therefore channels
greater then zero could not receive frames.
Tested with Vectors simulated channels by sending frames to one
channel which in turn were received by both channels. The
sending channel had the local echo flag set, the other one not.
[ChangeLog][QCanBus][VectorCAN] Fixed a receive problem in the
VectorCAN plugin. When multiple channels were open, only the
first one could receive frames.
Task-number: QTBUG-67030
Change-Id: Ib76a04bc06e7b810d1c1cb092b79c4bc1aacf23a
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Mihai Baneu <bdmihai@gmail.com>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| |
| |
| |
| |
| |
| | |
Change-Id: I802c68d7ea6422640a83d7e5ea17c591a8e3d078
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Tested on Windows 7 with PCAN-USB Pro, both channels connected,
one side connected to PCAN-View, other side to CAN-Example.
The bitrate handling is done according the information in the
following threads:
https://www.peak-system.com/forum/viewtopic.php?f=41&t=1756
https://www.peak-system.com/forum/viewtopic.php?f=177&t=1257
[ChangeLog][QCanBus][Plugins] Added CAN FD functionality to
the PeakCAN plugin. Therefore the minimum required PCAN-Basic
version is now 4.0.0.
Task-number: QTBUG-62959
Change-Id: I76180d3e251969bfaa324708de6b7e39487b45f3
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|
|
|
|
| |
Change-Id: I11ca3256347075cf9767eba4667a6ab3da671baf
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|\
| |
| |
| |
| |
| |
| | |
Conflicts:
.qmake.conf
Change-Id: Ibcb5508d7f131cbeba0d047111177a8dff1e5f68
|
| |\
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
.qmake.conf
Change-Id: If12daffe4655f71d9aea39e0ed9e0db405a09fe7
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* Currently there is no way to detect the available devices
* The existing code lead to compile errors with MSVC2013
* Also fix the documentation while at it
[ChangeLog][QCanBus][Plugins] The function availableDevices()
now returns an empty list for the TinyCAN plugin. The code was
never functional and always returned a hardcoded example list.
The function will be changed in later Qt versions to return the
correct values once QTBUG-62958 is solved.
Task-number: QTBUG-65474
Change-Id: Iebb4c8d4baf3b021d8890c6b3f252e9050856fce
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
[ChangeLog][SocketCAN] Fixed compiling the SocketCAN plugin
with older Kernels without support for CAN FD bitrate switch
and error state indicator.
Task-number: QTBUG-64406
Change-Id: I05a7869b7df64ae6c3c29aa69dbf423d886b610a
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Fix build failure with musl libc:
socketcanbackend.h:88:38: error: 'timeval' was not declared in this scope
Change-Id: I4089f5a906095c21b2790d35ad131d9a0713ff3b
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Added description, serial number and channel for SocketCAN, PeakCAN,
SystecCAN, and VectorCAN plugins. For now, not all plugins do support
all kind of information:
SocketCAN: description and channel
PeakCAN: description and channel (Windows PCANBasic >= 4.2.0)
SystecCAN: description, serial number, and channel
VectorCAN: description, serial number, and channel
[ChangeLog][QCanBusDeviceInfo] Added description, serial number
and channel to QCanBusDeviceInfo, as far as supported by the
various plugins.
Change-Id: Ib2292e06065eb91848f682ebf69a4cc968f4d4ba
Reviewed-by: Rolf Eike Beer <eb@emlix.com>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
[ChangeLog] Add J2534 Pass-Thru CAN plugin
SAE J2534 is a standard for communication between a computer and
a vehicle. The "passthrucan" plugin adds support for communicating
with a vehicle's CAN bus via the generic J2534 Pass-Thru API.
The J2534 Pass-Thru API v04.04 is only specified for 32-bit Windows,
but implementations for 64-bit Windows and other platforms do exist.
Automatic device discovery is based on the Windows registry and thus
supported on Windows only. However, this plugin alternatively allows
users to specify the path to a J2534 vendor library to load.
Any CAN interface adapters that ship with a compliant J2534 Pass-Thru
interface library (v04.04) for the target platform should work with
this plugin. It should be noted though that driver support for x64 is
as of yet rare, thus a 32-bit Qt build may be required to make use of
the passthrucan plugin.
Change-Id: I55280d455828d9cf0ad03690224b924b39c17cf7
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
|\| |
| | |
| | |
| | | |
Change-Id: Ia04f54eee1264b659d8928b7f08d7221f587bc54
|
| |\|
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
.qmake.conf
Change-Id: Icfbad81955ad8a7c4ddc49ac4ee952bcba6317ec
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
initInfo->m_fTryNext is set to false when the
callback is entered but must be set to true to
continue with the next device.
[ChangeLog][QCanBus][SystecCAN] Fixed that the
function availableDevices() only returned the
first device.
Change-Id: I689564c2379a1db28cb7c623425aa261e44fdd4d
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
[ChangeLog][QCanBus][SystecCAN] The function availableDevices()
returned the wrong device number in some cases. In turn, it was
not possible to connect to the correct device afterwards.
Task-number: QTBUG-63833
Change-Id: I37cc250d144596af00aec9f743f0016e5634abe7
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
[ChangeLog][CanBus][PeakCAN] Peak CAN status frames are no longer
converted into QCanBusFrame::DataFrame, they are simply dropped
for now. In a later Qt version they might by converted into proper
QCanBusFrame::ErrorFrame, together with an interpretErrorFrame()
implementation.
Change-Id: I673ef2c8d312a96de192def831036ad10d5f2c01
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Marcell Varga <eandr2@gmail.com>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
|