diff --git a/Documents/1 Development Environment/topics/nsis.dita b/Documents/1 Development Environment/topics/nsis.dita index 9548c27a7..2eb3ada9a 100644 --- a/Documents/1 Development Environment/topics/nsis.dita +++ b/Documents/1 Development Environment/topics/nsis.dita @@ -24,7 +24,7 @@
Configuration -

There is no specific configuration necessary.

+

Download nsProcess.zip from http://nsis.sourceforge.net/NsProcess_plugin. Extract and Copy nsProcess.nsh to %ProgramFiles%\NSIS\Include.

Usage diff --git a/Documents/4 Help_New/help.ditamap b/Documents/4 Help_New/help.ditamap index fb8dd11b9..631dca82f 100644 --- a/Documents/4 Help_New/help.ditamap +++ b/Documents/4 Help_New/help.ditamap @@ -37,7 +37,8 @@ - + + diff --git a/Documents/4 Help_New/images/GCC_Compiler_Selection.bmp b/Documents/4 Help_New/images/GCC_Compiler_Selection.bmp index 333ccd8b2..9c26e5337 100644 Binary files a/Documents/4 Help_New/images/GCC_Compiler_Selection.bmp and b/Documents/4 Help_New/images/GCC_Compiler_Selection.bmp differ diff --git a/Documents/4 Help_New/images/TDM-GCC1.PNG b/Documents/4 Help_New/images/TDM-GCC1.PNG new file mode 100644 index 000000000..019bb439e Binary files /dev/null and b/Documents/4 Help_New/images/TDM-GCC1.PNG differ diff --git a/Documents/4 Help_New/images/TDM-GCC2.PNG b/Documents/4 Help_New/images/TDM-GCC2.PNG new file mode 100644 index 000000000..7a6f13cb8 Binary files /dev/null and b/Documents/4 Help_New/images/TDM-GCC2.PNG differ diff --git a/Documents/4 Help_New/images/TDM-GCC3.PNG b/Documents/4 Help_New/images/TDM-GCC3.PNG new file mode 100644 index 000000000..3328f4ebe Binary files /dev/null and b/Documents/4 Help_New/images/TDM-GCC3.PNG differ diff --git a/Documents/4 Help_New/images/TDM-GCC4.PNG b/Documents/4 Help_New/images/TDM-GCC4.PNG new file mode 100644 index 000000000..dd382788c Binary files /dev/null and b/Documents/4 Help_New/images/TDM-GCC4.PNG differ diff --git a/Documents/4 Help_New/images/TDM-GCC5.PNG b/Documents/4 Help_New/images/TDM-GCC5.PNG new file mode 100644 index 000000000..7a0f7c525 Binary files /dev/null and b/Documents/4 Help_New/images/TDM-GCC5.PNG differ diff --git a/Documents/4 Help_New/images/TDM-GCC6.PNG b/Documents/4 Help_New/images/TDM-GCC6.PNG new file mode 100644 index 000000000..1ea8ac252 Binary files /dev/null and b/Documents/4 Help_New/images/TDM-GCC6.PNG differ diff --git a/Documents/4 Help_New/images/TDM-GCC7.PNG b/Documents/4 Help_New/images/TDM-GCC7.PNG new file mode 100644 index 000000000..4fe739945 Binary files /dev/null and b/Documents/4 Help_New/images/TDM-GCC7.PNG differ diff --git a/Documents/4 Help_New/topics/MinGW Installation.dita b/Documents/4 Help_New/topics/MinGW Installation.dita deleted file mode 100644 index 4f466df17..000000000 --- a/Documents/4 Help_New/topics/MinGW Installation.dita +++ /dev/null @@ -1,31 +0,0 @@ - - - - MinGW Installation - - Saravanan - - - ROBERT BOSCH ENGINEERING AND BUSINESS SOLUTIONS LIMITED - - - - MinGW - - - - -
- MinGW Installation -

The following steps should be followed to install MinGW folder and use it to successfully compile CPP files in Node Simulation using BUSMASTER.

-
    -
  • Download latest mingw executable from the following link and then use it to download the actual MinGW and copy the MinGW folder to C: drive
  • -
  • During MinGW installation, please choose the C++ compiler in component list as shown in the screen below as it is not selected by default:
  • -
- GCC C++ Compiler Selection -
    -
  • Set the environment variable β€˜path’ as β€˜C:\MinGW\bin’.
  • -
-
- -
diff --git a/Documents/4 Help_New/topics/MinGW_Installation.dita b/Documents/4 Help_New/topics/MinGW_Installation.dita index 4f466df17..349dee23a 100644 --- a/Documents/4 Help_New/topics/MinGW_Installation.dita +++ b/Documents/4 Help_New/topics/MinGW_Installation.dita @@ -1,7 +1,7 @@ - MinGW Installation + MinGW Installation using GCC Installer Saravanan @@ -17,10 +17,10 @@
MinGW Installation -

The following steps should be followed to install MinGW folder and use it to successfully compile CPP files in Node Simulation using BUSMASTER.

+

The following steps should be followed to install MinGW and use it to successfully compile CPP files in Node Simulation using BUSMASTER.

  • Download latest mingw executable from the following link and then use it to download the actual MinGW and copy the MinGW folder to C: drive
  • -
  • During MinGW installation, please choose the C++ compiler in component list as shown in the screen below as it is not selected by default:
  • +
  • During MinGW installation, please choose the packages as shown in the screen below as it is not selected by default:
GCC C++ Compiler Selection
    diff --git a/Documents/4 Help_New/topics/MinGW_Installation_TDM.dita b/Documents/4 Help_New/topics/MinGW_Installation_TDM.dita new file mode 100644 index 000000000..0e76810e4 --- /dev/null +++ b/Documents/4 Help_New/topics/MinGW_Installation_TDM.dita @@ -0,0 +1,58 @@ + + + + MinGW Installation using TDM-GCC Installer + + Shailesh H + + + ROBERT BOSCH ENGINEERING AND BUSINESS SOLUTIONS LIMITED + + + + MinGW + + + + +
    + MinGW Installation +

    The following steps should be followed to Download and install MinGW using TDM-GCC Installer.

    +
      +
    • Download the TDM-GCC from the following link
    • +
    • Run the installer. Following image will show the first screen of the installer.
    • +
    • + +
    • +
    +
      +
    • Click on the create button, if you are installing the first time this will go to the following screen.
    • +
    • + +
    • +
    +
      +
    • Select MingW/TDM(32-bit) option and click Next, to get to the following screen.
    • +
    • + +
    • +
    • Click Next and provide path to install the GCC . GCC has some problems if it is installed in a folder name having space. So it is recommended to install in path like C:\MinGw. Make sure the folder was empty.
    • +
    • + +
    • +
    • Click Next
    • +
    • + +
    • +
    • Click Next and select MingW Stable, C\C++ option as shown in the below image.
    • +
    • + +
    • +
    • Make sure 'Add to path' option is selected. Click to install.
    • +
    • + +
    • +
    +
    + +
    diff --git a/Documents/4 Help_New/topics/what_is_new.dita b/Documents/4 Help_New/topics/what_is_new.dita index 217e83d7f..2c4a0639e 100644 --- a/Documents/4 Help_New/topics/what_is_new.dita +++ b/Documents/4 Help_New/topics/what_is_new.dita @@ -15,6 +15,11 @@ +

    2.6.2

    +

    Following features are added:

    +

      +
    • Bug Fixes
    • +

    2.6.1

    Following features are added:

      diff --git a/Installation Setup/BUSMASTER INSTALL SCRIPT.nsi b/Installation Setup/BUSMASTER INSTALL SCRIPT.nsi index 90bca0df2..2421f17d3 100644 --- a/Installation Setup/BUSMASTER INSTALL SCRIPT.nsi +++ b/Installation Setup/BUSMASTER INSTALL SCRIPT.nsi @@ -719,6 +719,15 @@ SectionGroupEnd ; Uninstall section here... Section "Uninstall" + ${Do} + ${nsProcess::FindProcess} "BUSMASTER.exe" $R0 + ${If} $R0 == 0 + MessageBox MB_OK|MB_ICONSTOP "Please close all instances of BUSMASTER and Click 'OK'" + ${EndIf} + ${LoopUntil} $R0 != 0 + ${Do} + ${nsProcess::FindProcess} "BusEmulation.exe" $R0 + ${LoopUntil} $R0 != 0 ; Unregister server SetOutPath $INSTDIR ExecWait 'BusEmulation.exe /unregserver' diff --git a/Installation Setup/NSISHeaders.nsh b/Installation Setup/NSISHeaders.nsh index fa84e094e..b34b907f7 100644 --- a/Installation Setup/NSISHeaders.nsh +++ b/Installation Setup/NSISHeaders.nsh @@ -25,8 +25,10 @@ !include nsDialogs.nsh !include LogicLib.nsh !include "DotNetVer.nsh" +!include "nsProcess.nsh" +!include "LogicLib.nsh" !define StrStr "!insertmacro StrStr" /* BUSMASTER Version to be updated for every release */ -!define VERSION "2.6.1" \ No newline at end of file +!define VERSION "2.6.2" \ No newline at end of file diff --git a/Sources/Application/BUSMASTER.rc b/Sources/Application/BUSMASTER.rc index 648167f5f..7113d1e1b 100644 --- a/Sources/Application/BUSMASTER.rc +++ b/Sources/Application/BUSMASTER.rc @@ -1853,7 +1853,7 @@ BEGIN IDS_INVALID_DB_PROMPT "Invalid database filename" ID_ACTIVE_DATABASE_NAME " " IDS_MESSAGE_NAME "Message Name" - IDS_VERSION "Ver 2.6.1" + IDS_VERSION "Ver 2.6.2" IDS_HEADER "***NOTE: PLEASE DO NOT EDIT THIS DOCUMENT***\n\n\n***[START LOGGING SESSION]***\n" IDS_FOOTER "***[END LOGGING SESSION]***" IDS_CONNECT "&Connect\tF2" diff --git a/Sources/Application/BUSMASTERJPN.rc b/Sources/Application/BUSMASTERJPN.rc index b1cf94b33..5160d0e30 100644 --- a/Sources/Application/BUSMASTERJPN.rc +++ b/Sources/Application/BUSMASTERJPN.rc @@ -678,13 +678,13 @@ BEGIN VALUE "Comments", "Public Copy" VALUE "CompanyName", "RBEI, Bangalore" VALUE "FileDescription", "BUSMASTER MFC Application" - VALUE "FileVersion", "Ver 2.6.1" + VALUE "FileVersion", "Ver 2.6.2" VALUE "InternalName", "BUSMASTER" VALUE "LegalCopyright", "Copyright (C) 2011" VALUE "LegalTrademarks", "BOSCH" VALUE "OriginalFilename", "BUSMASTER.EXE" VALUE "ProductName", "BUSMASTER Application" - VALUE "ProductVersion", "Ver 2.6.1" + VALUE "ProductVersion", "Ver 2.6.2" END END BLOCK "VarFileInfo" @@ -1815,7 +1815,7 @@ BEGIN IDS_INVALID_DB_PROMPT "–³Œψ‚Θƒf[ƒ^ƒx[ƒXƒtƒ@ƒCƒ‹–Ό" ID_ACTIVE_DATABASE_NAME " " IDS_MESSAGE_NAME "ƒƒbƒZ[ƒW–Ό" - IDS_VERSION "Ver 2.6.1" + IDS_VERSION "Ver 2.6.2" IDS_HEADER "***’ˆΣ: ‚±‚ΜƒhƒLƒ…ƒƒ“ƒg‚πC³‚΅‚Θ‚’‚Ε‚­‚Ύ‚³‚’***\n\n\n***[ƒƒMƒ“ƒOƒZƒbƒVƒ‡ƒ“‚ΜŠJŽn]***\n" IDS_FOOTER "***[ƒƒMƒ“ƒOƒZƒbƒVƒ‡ƒ“‚̏I—Ή]***" IDS_CONNECT "&Ϊ‘±\tF2" diff --git a/Sources/Application/BusStatisticCAN.cpp b/Sources/Application/BusStatisticCAN.cpp index a181cff6e..e0ccc4c69 100644 --- a/Sources/Application/BusStatisticCAN.cpp +++ b/Sources/Application/BusStatisticCAN.cpp @@ -24,7 +24,8 @@ #include "Include/Can_Error_Defs.h" #include "DIL_Interface/DIL_Interface_Extern.h" #include "TimeManager.h" - +#include "BUSMASTER.h" // App class header +extern CCANMonitorApp theApp; //Can interface to Bus Statistics void* CBusStatisticCAN:: sm_pouBSCan; @@ -1137,6 +1138,13 @@ void CBusStatisticCAN::vCalculateBusParametres(void) { EnterCriticalSection(&m_omCritSecBS); vCalculateDiffTime(); + CFlags* pouFlags = nullptr; + pouFlags = theApp.pouGetFlagsPtr(); + BOOL bIsConnected = FALSE; + if (nullptr != pouFlags) + { + bIsConnected = pouFlags->nGetFlagStatus(CONNECTED); + } for(int nChannelIndex =0; nChannelIndex 0.50 && msgPerSec < 1) - { - m_sBusStatistics[ nChannelIndex ].m_unMsgPerSecond =1; - - } - else + if(bIsConnected) { m_sBusStatistics[ nChannelIndex ].m_unMsgPerSecond = - static_cast - (m_sBusStatistics[ nChannelIndex ].m_unMsgPerSecond / m_dDiffTime ); + m_sBusStatistics[ nChannelIndex ].m_unTotalMsgCount - + m_sPrevStatData[ nChannelIndex ].m_unTotalMsgCount; + FLOAT msgPerSec= (m_sBusStatistics[ nChannelIndex ].m_unMsgPerSecond /(FLOAT) m_dDiffTime ); + if( msgPerSec > 0.50 && msgPerSec < 1) + { + m_sBusStatistics[ nChannelIndex ].m_unMsgPerSecond =1; + } + else + { + m_sBusStatistics[ nChannelIndex ].m_unMsgPerSecond = + static_cast + (m_sBusStatistics[ nChannelIndex ].m_unMsgPerSecond / m_dDiffTime ); + } } - - /* m_sBusStatistics[ nChannelIndex ].m_unMsgPerSecond = - m_sBusStatistics[ nChannelIndex ].m_unTotalMsgCount - - m_sPrevStatData[ nChannelIndex ].m_unTotalMsgCount; - m_sBusStatistics[ nChannelIndex ].m_unMsgPerSecond = - static_cast - (m_sBusStatistics[ nChannelIndex ].m_unMsgPerSecond / m_dDiffTime );*/ - - - // Calculate Error Count & Rate m_sBusStatistics[ nChannelIndex ].m_unErrorTotalCount = m_sBusStatistics[ nChannelIndex ].m_unErrorRxCount + m_sBusStatistics[ nChannelIndex ].m_unErrorTxCount; - m_sBusStatistics[ nChannelIndex ].m_dErrorRate = - m_sBusStatistics[ nChannelIndex ].m_unErrorTotalCount - - m_sPrevStatData[ nChannelIndex ].m_unErrorTotalCount; - // Transmitted messages - // Calculate Total Tx Message Rate - m_sBusStatistics[nChannelIndex].m_dTotalTxMsgRate = - (m_sBusStatistics[nChannelIndex].m_unTotalTxMsgCount - - m_sPrevStatData[nChannelIndex].m_unTotalTxMsgCount); - // Calculate STD Tx Message Rate - m_sBusStatistics[ nChannelIndex ].m_dTxSTDMsgRate = - (m_sBusStatistics[ nChannelIndex ].m_unTxSTDMsgCount - - m_sPrevStatData[ nChannelIndex ].m_unTxSTDMsgCount); - // Calculate Extended Tx Message Rate - m_sBusStatistics[ nChannelIndex ].m_dTxEXTMsgRate = - (m_sBusStatistics[ nChannelIndex ].m_unTxEXTDMsgCount - - m_sPrevStatData[ nChannelIndex ].m_unTxEXTDMsgCount); - // Calculate Tx Error Rate - m_sBusStatistics[ nChannelIndex ].m_dErrorTxRate = - (m_sBusStatistics[ nChannelIndex ].m_unErrorTxCount - - m_sPrevStatData[ nChannelIndex ].m_unErrorTxCount); - // Received messages - // Calculate Total Rx Message Rate - m_sBusStatistics[nChannelIndex].m_dTotalRxMsgRate = - (m_sBusStatistics[nChannelIndex].m_unTotalRxMsgCount - - m_sPrevStatData[nChannelIndex].m_unTotalRxMsgCount); - // Calculate STD Rx Message Rate - m_sBusStatistics[ nChannelIndex ].m_dRxSTDMsgRate = - (m_sBusStatistics[ nChannelIndex ].m_unRxSTDMsgCount - - m_sPrevStatData[ nChannelIndex ].m_unRxSTDMsgCount); - // Calculate Extended Rx Message Rate - m_sBusStatistics[ nChannelIndex ].m_dRxEXTMsgRate = - (m_sBusStatistics[ nChannelIndex ].m_unRxEXTDMsgCount - - m_sPrevStatData[ nChannelIndex ].m_unRxEXTDMsgCount); - // Calculate Rx Error Rate - m_sBusStatistics[ nChannelIndex ].m_dErrorRxRate = - (m_sBusStatistics[ nChannelIndex ].m_unErrorRxCount - - m_sPrevStatData[ nChannelIndex ].m_unErrorRxCount); + + if(bIsConnected) + { + m_sBusStatistics[ nChannelIndex ].m_dErrorRate = + m_sBusStatistics[ nChannelIndex ].m_unErrorTotalCount - + m_sPrevStatData[ nChannelIndex ].m_unErrorTotalCount; + // Transmitted messages + // Calculate Total Tx Message Rate + m_sBusStatistics[nChannelIndex].m_dTotalTxMsgRate = + (m_sBusStatistics[nChannelIndex].m_unTotalTxMsgCount - + m_sPrevStatData[nChannelIndex].m_unTotalTxMsgCount); + // Calculate STD Tx Message Rate + m_sBusStatistics[ nChannelIndex ].m_dTxSTDMsgRate = + (m_sBusStatistics[ nChannelIndex ].m_unTxSTDMsgCount - + m_sPrevStatData[ nChannelIndex ].m_unTxSTDMsgCount); + // Calculate Extended Tx Message Rate + m_sBusStatistics[ nChannelIndex ].m_dTxEXTMsgRate = + (m_sBusStatistics[ nChannelIndex ].m_unTxEXTDMsgCount - + m_sPrevStatData[ nChannelIndex ].m_unTxEXTDMsgCount); + // Calculate Tx Error Rate + m_sBusStatistics[ nChannelIndex ].m_dErrorTxRate = + (m_sBusStatistics[ nChannelIndex ].m_unErrorTxCount - + m_sPrevStatData[ nChannelIndex ].m_unErrorTxCount); + // Received messages + // Calculate Total Rx Message Rate + m_sBusStatistics[nChannelIndex].m_dTotalRxMsgRate = + (m_sBusStatistics[nChannelIndex].m_unTotalRxMsgCount - + m_sPrevStatData[nChannelIndex].m_unTotalRxMsgCount); + // Calculate STD Rx Message Rate + m_sBusStatistics[ nChannelIndex ].m_dRxSTDMsgRate = + (m_sBusStatistics[ nChannelIndex ].m_unRxSTDMsgCount - + m_sPrevStatData[ nChannelIndex ].m_unRxSTDMsgCount); + // Calculate Extended Rx Message Rate + m_sBusStatistics[ nChannelIndex ].m_dRxEXTMsgRate = + (m_sBusStatistics[ nChannelIndex ].m_unRxEXTDMsgCount - + m_sPrevStatData[ nChannelIndex ].m_unRxEXTDMsgCount); + // Calculate Rx Error Rate + m_sBusStatistics[ nChannelIndex ].m_dErrorRxRate = + (m_sBusStatistics[ nChannelIndex ].m_unErrorRxCount - + m_sPrevStatData[ nChannelIndex ].m_unErrorRxCount); + } + SERROR_CNT sErrorCounter; sErrorCounter.m_ucRxErrCount = 0; sErrorCounter.m_ucTxErrCount = 0; @@ -1277,9 +1280,12 @@ void CBusStatisticCAN::vCalculateBusParametres(void) m_sBusStatistics[ nChannelIndex ].m_dTotalBusLoad += dBusLoad; // Increament samples // Calculate Avarage bus load - m_sBusStatistics[ nChannelIndex ].m_dAvarageBusLoad = - m_sBusStatistics[ nChannelIndex ].m_dTotalBusLoad / - m_sBusStatistics[ nChannelIndex ].m_nSamples; + if(bIsConnected) + { + m_sBusStatistics[ nChannelIndex ].m_dAvarageBusLoad = + m_sBusStatistics[ nChannelIndex ].m_dTotalBusLoad / + m_sBusStatistics[ nChannelIndex ].m_nSamples; + } // Initialise previous values with current values. m_unPrevStandardCount[ nChannelIndex ] = m_sBusStatistics[ nChannelIndex ].m_unRxSTDMsgCount + diff --git a/Sources/Application/BusStatisticCAN.h b/Sources/Application/BusStatisticCAN.h index 7d79aeb8b..4f17945fc 100644 --- a/Sources/Application/BusStatisticCAN.h +++ b/Sources/Application/BusStatisticCAN.h @@ -29,6 +29,8 @@ #include "DIL_Interface/BaseDIL_CAN.h" #include "BaseBusStatisticCAN.h" +#include "Flags.h" + class CBusStatisticCAN : public CBaseBusStatisticCAN { //Attributes diff --git a/Sources/Application/MainFrm.cpp b/Sources/Application/MainFrm.cpp index 2ef735d8a..b8d661dcf 100644 --- a/Sources/Application/MainFrm.cpp +++ b/Sources/Application/MainFrm.cpp @@ -1253,7 +1253,7 @@ Operation unsuccessful."), MB_OK|MB_ICONINFORMATION); return; } - m_podMsgSgWnd->ShowWindow( SW_SHOWMAXIMIZED ); + m_podMsgSgWnd->ShowWindow( SW_SHOWNORMAL ); m_podMsgSgWnd->UpdateWindow(); // Set the flag to indicate the opening of database window @@ -1949,7 +1949,7 @@ void CMainFrame::OnNewDatabase() return; } - m_podMsgSgWnd->ShowWindow( SW_SHOWMAXIMIZED ); + m_podMsgSgWnd->ShowWindow( SW_SHOWNORMAL ); m_podMsgSgWnd->UpdateWindow(); // Set the flag to indicate the opening of database window @@ -3365,6 +3365,7 @@ void CMainFrame::OnLog_LIN_Enable() /******************************************************************************/ void CMainFrame::OnStatisticsCAN() { + m_bUpdateNetworkStatistics = true; OnStatistics(CAN); } @@ -3407,6 +3408,7 @@ void CMainFrame::OnStatistics(ETYPE_BUS ebus) if ( nullptr != m_oNetworkStatistics ) { bRet = m_oNetworkStatistics->Create(this, WS_SYSMENU | WS_POPUP | WS_CAPTION | DS_MODALFRAME); + m_oNetworkStatistics->SetParent(AfxGetMainWnd()); if(ebus == CAN) { @@ -3466,8 +3468,7 @@ void CMainFrame::OnStatisticsUpdate(CCmdUI* pCmdUI) if(pCmdUI != nullptr) { // Check for window creation - if( m_oNetworkStatistics != nullptr /*&& - m_oNetworkStatistics->IsWindowVisible() == TRUE*/ ) + if( m_oNetworkStatistics != nullptr ) { //pCmdUI->SetCheck(TRUE); } @@ -4673,7 +4674,7 @@ void CMainFrame::OnUpdateMessageInterpret(CCmdUI* pCmdUI) { // Disable the button pCmdUI->Enable(FALSE); // Disabled - pCmdUI->SetCheck(m_bInterPretMsg); // Retain pressed state + pCmdUI->SetCheck(0); // Retain pressed state } else if (IS_MODE_OVER(byGetDispFlag)) { @@ -8484,26 +8485,24 @@ void CMainFrame::OnTimer(UINT nIDEvent) { if (nIDEvent == m_unTimerSB) { - + //Update the bus statistics window once if it opened when CAN is in disconnnected state. if ( m_oNetworkStatistics != nullptr && - m_oNetworkStatistics->IsWindowVisible( ) == TRUE ) + m_oNetworkStatistics->IsWindowVisible( ) == TRUE && theApp.pouGetFlagsPtr()->nGetFlagStatus(CONNECTED) == FALSE && m_bUpdateNetworkStatistics) { - // Perform network statistics calculation and update of - // network statistics window m_oNetworkStatistics->vSendMessage(CAN); + m_bUpdateNetworkStatistics = false; } if (((theApp.pouGetFlagsPtr()->nGetFlagStatus(CONNECTED)) == TRUE)) { vUpdateGraphStatsData(); - // Update the bus statistics window if it exists. - //if ( m_oNetworkStatistics != nullptr && - // m_oNetworkStatistics->IsWindowVisible( ) == TRUE ) - //{ - // // Perform network statistics calculation and update of - // // network statistics window - // m_oNetworkStatistics->vSendMessage(CAN); - //} - + //Update the bus statistics window if it exists. + if ( m_oNetworkStatistics != nullptr && + m_oNetworkStatistics->IsWindowVisible( ) == TRUE) + { + // Perform network statistics calculation and update of + // network statistics window + m_oNetworkStatistics->vSendMessage(CAN); + } // Get Present error counter value and take // appropriate actions for error handler execution @@ -16274,6 +16273,10 @@ void CMainFrame::LoadControllerConfigData(SCONTROLLER_DETAILS& sController, xmlN { sController.m_omStrSamplePercentage = strVar.c_str(); } + if (xmlUtils::GetDataFrmNode(pNodePtr,"BTLCycles",strVar)) + { + sController.m_unBTL_Cycles = atoi(strVar.c_str()); + } if (xmlUtils::GetDataFrmNode(pNodePtr,"Sampling",strVar)) { @@ -19166,7 +19169,7 @@ void CMainFrame::OnJ1939DBNew() } CMsgSignalDBWnd::sm_bValidJ1939Wnd = TRUE; - m_podMsgSgWndJ1939->ShowWindow( SW_SHOWMAXIMIZED ); + m_podMsgSgWndJ1939->ShowWindow( SW_SHOWNORMAL ); m_podMsgSgWndJ1939->UpdateWindow(); // Set the flag to indicate the opening of database window @@ -19273,7 +19276,7 @@ void CMainFrame::OnJ1939DBOpen() return; } CMsgSignalDBWnd::sm_bValidJ1939Wnd = TRUE; - m_podMsgSgWndJ1939->ShowWindow( SW_SHOWMAXIMIZED ); + m_podMsgSgWndJ1939->ShowWindow( SW_SHOWNORMAL ); m_podMsgSgWndJ1939->UpdateWindow(); // Set the flag to indicate the opening of database window diff --git a/Sources/Application/MainFrm.h b/Sources/Application/MainFrm.h index 2e8b720c8..1e9657b0e 100644 --- a/Sources/Application/MainFrm.h +++ b/Sources/Application/MainFrm.h @@ -597,6 +597,7 @@ class CMainFrame : public CMDIFrameWnd bool bFillDbStructure(CMsgNameMsgCodeListDataBase& odMsgNameMsgCodeListDB); void vInitialiaseLINConfig(int nChannel = 0); private: + bool m_bUpdateNetworkStatistics; bool m_bLINDisconnect; HMODULE m_hModAdvancedUILib; bool m_bUseAdvancedUILib; diff --git a/Sources/Application/MsgSignal.cpp b/Sources/Application/MsgSignal.cpp index c2cfb559b..731002887 100644 --- a/Sources/Application/MsgSignal.cpp +++ b/Sources/Application/MsgSignal.cpp @@ -260,9 +260,7 @@ CString CMsgSignal::bWriteDBHeader(CString omStrActiveDataBase) CString omStrcommandLine = ""; CString omStrSigName = ""; CString omStrdelimiter = ""; - for ( UINT unMsgIndex = 0; - unMsgIndex < m_unMessageCount; - unMsgIndex++) + for ( UINT unMsgIndex = 0; unMsgIndex < m_unMessageCount; unMsgIndex++) { // Get all signal names. // signal name will be the variable name @@ -5028,7 +5026,27 @@ BOOL CMsgSignal::bFormSigNameAndLengthJ1939(const UINT* punStartBit, pSg->m_unSignalLength); } } - omStrArraySigName.Add(omFormatString); + + + // Check if already the same signal is added in the list. Might be the scenario if more than one signal has same start bit index + bool bSignalExists = false; + if (omStrArraySigName.GetSize() > 0 ) + { + for (int nIndex = 0; nIndex < omStrArraySigName.GetSize(); nIndex++) + { + if (omStrArraySigName.GetAt(nIndex) == omFormatString) + { + bSignalExists = true; + } + } + } + + // IF the signal is already added in the list, then ignore adding it again + if (!bSignalExists) + { + omStrArraySigName.Add(omFormatString); + } + // check if there is some unsed in between two signal // defined diff --git a/Sources/Application/Res/Uninstaller-4384.ico b/Sources/Application/Res/Uninstaller-4384.ico deleted file mode 100644 index 3ee582957..000000000 Binary files a/Sources/Application/Res/Uninstaller-4384.ico and /dev/null differ diff --git a/Sources/Application/Res/Uninstaller.ico b/Sources/Application/Res/Uninstaller.ico index 7be0313af..3ee582957 100644 Binary files a/Sources/Application/Res/Uninstaller.ico and b/Sources/Application/Res/Uninstaller.ico differ diff --git a/Sources/Application/RxMsgList.cpp b/Sources/Application/RxMsgList.cpp index e7e684d59..19df5c192 100644 --- a/Sources/Application/RxMsgList.cpp +++ b/Sources/Application/RxMsgList.cpp @@ -765,7 +765,7 @@ void CRxMsgList::OnContextMenu(CWnd* /*pWnd*/, CPoint point) char sColText[256]; lvc.pszText = sColText; - lvc.cchTextMax = 15; //Set the Width of Menu Items here + lvc.cchTextMax = 30; //Set the Width of Menu Items here //lvc.cchTextMax = sizeof(sColText)-1; VERIFY( GetColumn(i, &lvc) ); diff --git a/Sources/Application/StdAfx.h b/Sources/Application/StdAfx.h index 62b74e489..af2bc4e4a 100644 --- a/Sources/Application/StdAfx.h +++ b/Sources/Application/StdAfx.h @@ -82,4 +82,4 @@ const float PI = (float) 3.14159265358979323846; //2.6.1 const BYTE VERSION_MAJOR=2; const BYTE VERSION_MINOR=6; -const BYTE VERSION_BUILD=1; +const BYTE VERSION_BUILD=2; diff --git a/Sources/Application/TxMsgWndJ1939.cpp b/Sources/Application/TxMsgWndJ1939.cpp index 31fc6705b..7b9fb6448 100644 --- a/Sources/Application/TxMsgWndJ1939.cpp +++ b/Sources/Application/TxMsgWndJ1939.cpp @@ -405,6 +405,8 @@ BOOL CTxMsgWndJ1939::OnInitDialog() m_omCheckCyclic.EnableWindow(FALSE); m_omMiliSecs.EnableWindow(FALSE); + + GetDlgItem(IDC_SEND)->EnableWindow(false); return TRUE; } diff --git a/Sources/BUSMASTER_Settings/BUSMASTER.props b/Sources/BUSMASTER_Settings/BUSMASTER.props index 3af5a1776..934f0dc83 100644 --- a/Sources/BUSMASTER_Settings/BUSMASTER.props +++ b/Sources/BUSMASTER_Settings/BUSMASTER.props @@ -5,7 +5,7 @@ - BUSMASTER_VER="2.6.1";%(PreprocessorDefinitions) + BUSMASTER_VER="2.6.2";%(PreprocessorDefinitions) diff --git a/Sources/BusEmulation/BusEmulation.idl b/Sources/BusEmulation/BusEmulation.idl index 4014bd3d2..34948aa17 100644 --- a/Sources/BusEmulation/BusEmulation.idl +++ b/Sources/BusEmulation/BusEmulation.idl @@ -10,8 +10,7 @@ import "ocidl.idl"; [ object, - uuid(8B6AC5D7-8591-488F-844B-DC74A2CE704B), - dual, + uuid(947ADFAC-BC71-4F67-95F6-7FC50C02D3E9), dual, nonextensible, helpstring("ISimENG Interface"), pointer_default(unique) @@ -26,15 +25,14 @@ interface ISimENG : IDispatch{ [id(7), helpstring("method GetCurrentStatus")] HRESULT GetCurrentStatus([in] USHORT ClientID, [in,out] VARIANT *pNodeStatus); }; [ - uuid(77E353C7-244B-44DE-B218-9141831EB122), - version(1.1), + uuid(0C43FE3D-05AF-41D7-A508-F26AD45E4DF2), version(1.1), helpstring("BusEmulation 1.1 Type Library") ] library BusEmulationLib { importlib("stdole2.tlb"); [ - uuid(490146BC-A1BA-4EC6-9515-8475D86946A6), helpstring("SimENG Class") + uuid(68AD1DF1-1E97-4AE2-9163-847BA8236064), helpstring("SimENG Class") ] coclass SimENG { diff --git a/Sources/BusEmulation/SimENG.rgs b/Sources/BusEmulation/SimENG.rgs index caea44abe..d07c883ee 100644 --- a/Sources/BusEmulation/SimENG.rgs +++ b/Sources/BusEmulation/SimENG.rgs @@ -2,16 +2,16 @@ HKCR { BusEmulation.SimENG.1 = s 'SimENG Class' { - CLSID = s '{490146BC-A1BA-4EC6-9515-8475D86946A6}' + CLSID = s '{68AD1DF1-1E97-4AE2-9163-847BA8236064}' } BusEmulation.SimENG = s 'SimENG Class' { - CLSID = s '{490146BC-A1BA-4EC6-9515-8475D86946A6}' + CLSID = s '{68AD1DF1-1E97-4AE2-9163-847BA8236064}' CurVer = s 'BusEmulation.SimENG.1' } NoRemove CLSID { - ForceRemove {490146BC-A1BA-4EC6-9515-8475D86946A6} = s 'SimENG Class' + ForceRemove {68AD1DF1-1E97-4AE2-9163-847BA8236064} = s 'SimENG Class' { ProgID = s 'BusEmulation.SimENG.1' VersionIndependentProgID = s 'BusEmulation.SimENG' diff --git a/Sources/CAN_ETAS_BOA/CAN_ETAS_BOA.cpp b/Sources/CAN_ETAS_BOA/CAN_ETAS_BOA.cpp index 749bba9aa..255434bca 100644 --- a/Sources/CAN_ETAS_BOA/CAN_ETAS_BOA.cpp +++ b/Sources/CAN_ETAS_BOA/CAN_ETAS_BOA.cpp @@ -2420,11 +2420,26 @@ HRESULT CDIL_CAN_ETAS_BOA::CAN_SetConfigData(PSCONTROLLER_DETAILS pInitData, int /* if controller is open, close the controller. Do not bother about return value */ ErrCode = (*sBOA_PTRS.m_sOCI.closeCANController)(sg_asChannel[i].m_OCI_HwHandle); - + OCI_CANConfiguration ociCANConfig; /* Now load the controller config and open the controller */ ErrCode = (*sBOA_PTRS.m_sOCI.openCANController)(sg_asChannel[i].m_OCI_HwHandle, &(sg_asChannel[i].m_OCI_CANConfig), &(sg_asChannel[i].m_OCI_CntrlProp)); + // Check if incompatible config + if(ErrCode == BOA_ERR_INCOMPATIBLE_CONFIG) + { + // Get the config with which channel opened + ErrCode = (*(sBOA_PTRS.m_sOCI.getCANConfiguration))(sg_asChannel[i].m_OCI_HwHandle, &ociCANConfig); + + if(BOA_SUCCEEDED(ErrCode)) + { + //Open the channel with existing configuration + ErrCode = (*(sBOA_PTRS.m_sOCI.openCANController))(sg_asChannel[i].m_OCI_HwHandle, + &(ociCANConfig), + &(sg_asChannel[i].m_OCI_CntrlProp)); + sg_asChannel[i].m_OCI_CANConfig = ociCANConfig; + } + } /* Fill the hardware description details */ ((PSCONTROLLER_DETAILS)pInitData)[i].m_omHardwareDesc = diff --git a/Sources/CAN_ETAS_BOA/CAN_ETAS_BOA.rc b/Sources/CAN_ETAS_BOA/CAN_ETAS_BOA.rc index 204abece8..9a5ba8506 100644 --- a/Sources/CAN_ETAS_BOA/CAN_ETAS_BOA.rc +++ b/Sources/CAN_ETAS_BOA/CAN_ETAS_BOA.rc @@ -97,39 +97,39 @@ FONT 8, "MS Sans Serif", 0, 0, 0x1 BEGIN CONTROL "List1",IDC_LIST_CHANNELS,"SysListView32",LVS_SINGLESEL | LVS_SHOWSELALWAYS | WS_BORDER | WS_TABSTOP,7,8,56,185 EDITTEXT IDC_EDIT_BAUD_RATE,125,19,40,14,ES_AUTOHSCROLL - COMBOBOX IDC_COMB_SAMPLING,265,19,36,39,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_COMB_SAMPLING,265,19,36,39,CBS_DROPDOWN | CBS_SORT | WS_VSCROLL | WS_TABSTOP EDITTEXT IDC_EDIT_WARNING_LIMIT,126,43,40,14,ES_AUTOHSCROLL PUSHBUTTON "OK",IDC_ButtonOK,211,221,50,14 PUSHBUTTON "Cancel",IDCANCEL,264,221,50,14 GROUPBOX "CAN Parameters",IDC_STAT_BAUD_RATE,71,5,244,101,BS_LEFT LTEXT "Bit Rate:",IDC_STAT_BUAD_RATE,77,18,36,14,SS_CENTERIMAGE LTEXT "bps",IDC_STAT_KBPS,168,18,17,14,SS_CENTERIMAGE - COMBOBOX IDC_COMB_SAMPOINT,265,42,36,82,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_COMB_SAMPOINT,265,42,36,82,CBS_DROPDOWN | CBS_SORT | WS_VSCROLL | WS_TABSTOP LTEXT "Warning Limit:",IDC_STAT_BUAD_RATE2,78,42,45,14,SS_CENTERIMAGE LTEXT "Number of ",IDC_STATIC,201,17,36,10 LTEXT "samples/bit:",IDC_STATIC,201,25,37,8 LTEXT "Sample Point (%):",IDC_STATIC,202,45,54,8 LTEXT "SJW:",IDC_STATIC,202,67,16,8 - COMBOBOX IDC_COMB_SJW,265,64,36,64,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_COMB_SJW,265,64,36,64,CBS_DROPDOWN | CBS_SORT | WS_VSCROLL | WS_TABSTOP LTEXT "Physical Media: High Speed CAN",IDC_STATIC,78,67,106,8 CONTROL "Self Reception On",IDC_CHECK_SELF_REC,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,78,88,74,10 LTEXT "BTL Cycles:",IDC_STATIC,201,89,37,8 - COMBOBOX IDC_COMB_BTL,265,86,36,64,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_COMB_BTL,265,86,36,64,CBS_DROPDOWN | CBS_SORT | WS_VSCROLL | WS_TABSTOP LTEXT "Description:",IDC_STATIC,9,200,40,8 EDITTEXT IDC_EDIT_CHANNEL_DESC,48,200,267,12,ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER GROUPBOX "CAN FD Parameters",IDC_STATIC,71,107,244,85,BS_LEFT EDITTEXT IDC_EDIT_DATA_BAUD_RATE,149,128,40,14,ES_AUTOHSCROLL | ES_NUMBER LTEXT "Bit Rate:",IDC_STAT_BUAD_RATE3,78,128,47,14,SS_CENTERIMAGE LTEXT "Kbps",IDC_STAT_KBPS2,189,128,17,14,SS_CENTERIMAGE - COMBOBOX IDC_COMB_DATA_SAMPOINT,265,128,36,82,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_COMB_DATA_SAMPOINT,265,128,36,82,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP LTEXT "Sample Point (%):",IDC_STATIC,210,131,54,8 LTEXT "BTL Cycles:",IDC_STATIC,210,150,37,8 - COMBOBOX IDC_COMB_DATA_BTL,265,148,36,64,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_COMB_DATA_BTL,265,148,36,64,CBS_DROPDOWN | CBS_SORT | WS_VSCROLL | WS_TABSTOP LTEXT "SJW:",IDC_STATIC,210,171,16,8 - COMBOBOX IDC_COMB_DATA_SJW,265,168,36,64,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_COMB_DATA_SJW,265,168,36,64,CBS_DROPDOWN | CBS_SORT | WS_VSCROLL | WS_TABSTOP LTEXT "txDelayCompensation:",IDC_STATIC,78,150,69,8 COMBOBOX IDC_COMB_DELAY_COMPENSATION,149,148,40,37,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_TABSTOP - LTEXT "Compensation Quanta:",IDC_STATIC,78,171,71,8 + LTEXT "Secondary Sample Point:",IDC_STATIC,79,165,56,16 EDITTEXT IDC_EDIT_COMPENSATION_QUANTA,149,168,40,14,ES_AUTOHSCROLL | ES_NUMBER END diff --git a/Sources/CAN_ETAS_BOA/ChangeRegisters_CAN_ETAS_BOA.cpp b/Sources/CAN_ETAS_BOA/ChangeRegisters_CAN_ETAS_BOA.cpp index 6064bcb53..534a391b1 100644 --- a/Sources/CAN_ETAS_BOA/ChangeRegisters_CAN_ETAS_BOA.cpp +++ b/Sources/CAN_ETAS_BOA/ChangeRegisters_CAN_ETAS_BOA.cpp @@ -44,7 +44,7 @@ class ENTRY_COMPATIBILITY CChangeRegisters_CAN_ETAS_BOA::CChangeRegisters_CAN_ETAS_BOA(CWnd* pParent, PSCONTROLLER_DETAILS psControllerDetails, UINT nHardwareCount) : CDialog(CChangeRegisters_CAN_ETAS_BOA::IDD, pParent) - , m_omStrSamplePoint("70") + //, m_omStrSamplePoint("70") , m_omStrSJW("") { m_omStrEditCNF1 = ""; @@ -74,11 +74,11 @@ CChangeRegisters_CAN_ETAS_BOA::CChangeRegisters_CAN_ETAS_BOA(CWnd* pParent, PSCO /*CAN FD Parameters */ m_omstrDataBitRate = ""; - m_omstrDataSamplePoint = ""; + //m_omstrDataSamplePoint = ""; m_omstrDataBTL_Cycles = ""; m_omstrDataSJW = ""; m_omstrTxDelayCompensationON = ""; - m_omstrTxDelayCompensationQuanta = ""; + m_omstrTxDelayCompensationQuanta.Format("%d", CANFD_SECONDARY_SAMPLE_POINT); } /** @@ -97,15 +97,16 @@ void CChangeRegisters_CAN_ETAS_BOA::DoDataExchange(CDataExchange* pDX) DDX_Text(pDX, IDC_EDIT_WARNING_LIMIT, m_omStrEditWarningLimit); DDX_Control(pDX, IDC_COMB_SAMPOINT, m_omCtrlSamplePoint); DDX_CBString(pDX, IDC_COMB_SJW, m_omStrSJW); - DDX_CBString(pDX,IDC_COMB_SAMPOINT, m_omStrSamplePoint); + //DDX_CBString(pDX,IDC_COMB_SAMPOINT, m_omStrSamplePoint); DDX_Control(pDX, IDC_COMB_SJW, m_omCtrlSJW); DDX_Check(pDX, IDC_CHECK_SELF_REC, m_bSelfReception); DDX_Text(pDX, IDC_EDIT_DATA_BAUD_RATE, m_omstrDataBitRate); - DDV_MinMaxInt(pDX,atoi(m_omstrDataBitRate.GetBuffer(0)),0,1000000); - DDX_CBString(pDX,IDC_COMB_DATA_SAMPOINT, m_omstrDataSamplePoint); + //DDV_MinMaxInt(pDX,atoi(m_omstrDataBitRate.GetBuffer(0)),0,1000000); + //DDX_CBString(pDX,IDC_COMB_DATA_SAMPOINT, m_omstrDataSamplePoint); DDX_CBString(pDX,IDC_COMB_DELAY_COMPENSATION, m_omstrTxDelayCompensationON); - DDX_CBString(pDX,IDC_COMB_DATA_BTL, m_omstrDataBTL_Cycles); + //DDX_CBString(pDX,IDC_COMB_DATA_BTL, m_omstrDataBTL_Cycles); DDX_Text(pDX, IDC_EDIT_COMPENSATION_QUANTA, m_omstrTxDelayCompensationQuanta); + DDX_Control(pDX, IDC_EDIT_COMPENSATION_QUANTA, m_omEditSamplePoint); DDX_CBString(pDX,IDC_COMB_DATA_SJW, m_omstrDataSJW); } @@ -191,7 +192,19 @@ BOOL CChangeRegisters_CAN_ETAS_BOA::OnInitDialog() CComboBox* pComboBTLCYCL = (CComboBox*)GetDlgItem(IDC_COMB_BTL); if (pComboBTLCYCL != nullptr) { - pComboBTLCYCL->SetCurSel (0); + // pComboBTLCYCL->SetCurSel (0); + CString omStrBTLCycles; + omStrBTLCycles.Format(_("%d"), m_pControllerDetails->m_unBTL_Cycles); + pComboBTLCYCL->SetWindowText(omStrBTLCycles); + } + + CComboBox* pComboDataBTLCYCL = (CComboBox*)GetDlgItem(IDC_COMB_DATA_BTL); + if (pComboDataBTLCYCL != nullptr) + { + // pComboBTLCYCL->SetCurSel (0); + CString omStrDataBTLCycles; + omStrDataBTLCycles.Format(_("%d"), m_pControllerDetails->m_unDataBTL_Cycles); + pComboDataBTLCYCL->SetWindowText(omStrDataBTLCycles); } CButton* pCheckSelfRec = (CButton*)GetDlgItem(IDC_CHECK_SELF_REC); @@ -203,7 +216,7 @@ BOOL CChangeRegisters_CAN_ETAS_BOA::OnInitDialog() /* Add an entry in each of the two combo boxes FindStringExact */ int nIndex = m_omCtrlSamplePoint.FindStringExact(-1, m_pControllerDetails->m_omStrSamplePercentage.c_str()); - m_omStrSamplePoint = m_pControllerDetails->m_omStrSamplePercentage.c_str(); + CString omStrSamplePoint = m_pControllerDetails->m_omStrSamplePercentage.c_str(); m_omStrSJW = m_pControllerDetails->m_omStrSjw.c_str(); if (CB_ERR != nIndex) { @@ -211,9 +224,12 @@ BOOL CChangeRegisters_CAN_ETAS_BOA::OnInitDialog() } else { + m_omCtrlSamplePoint.SetCurSel(-1); + m_omCtrlSamplePoint.SetWindowText(omStrSamplePoint); + /* Set the default selection as 70% and update the controller structure */ - m_omCtrlSamplePoint.SetCurSel (7); - m_pControllerDetails->m_omStrSamplePercentage = "70"; + /* m_omCtrlSamplePoint.SetCurSel (7); + m_pControllerDetails->m_omStrSamplePercentage = "70";*/ } nIndex = m_omCtrlSJW.FindStringExact (-1, m_pControllerDetails->m_omStrSjw.c_str()); @@ -241,7 +257,7 @@ BOOL CChangeRegisters_CAN_ETAS_BOA::OnInitDialog() m_nSJWCurr = nSJWCurr; } - m_omEditWarningLimit.SetReadOnly(TRUE); + //m_omEditWarningLimit.SetReadOnly(TRUE); //Initialise the index for number of items in list box before passing it is //function to calculate the same. @@ -339,18 +355,18 @@ void CChangeRegisters_CAN_ETAS_BOA::OnKillfocusEditBaudRate() { /* Validate for empty string and if zero value is entered. */ DOUBLE dBaudRate = (FLOAT)_tstof(omStrBaudRate); - if (nLength == 0 || dBaudRate <= 0 || dBaudRate > 1000000.0) - { - m_omEditBaudRate.SetWindowText(m_omStrEditBaudRate); - AfxMessageBox(_(defVALIDATION_MSG_BAUD_RATE)); - m_omEditBaudRate.SetFocus(); - m_omEditBaudRate.SetSel(0, -1,FALSE); - } - else + /* if (nLength == 0 || dBaudRate <= 0 || dBaudRate > 1000000.0) + { + m_omEditBaudRate.SetWindowText(m_omStrEditBaudRate); + AfxMessageBox(_(defVALIDATION_MSG_BAUD_RATE)); + m_omEditBaudRate.SetFocus(); + m_omEditBaudRate.SetSel(0, -1,FALSE); + } + else*/ { m_dEditBaudRate = (FLOAT)_tstof(m_omStrEditBaudRate); - + m_omStrEditBaudRate = omStrBaudRate; // Call if string is valid to validate the baud rate value and // suggest a next valid baud rate //Validate only if previous value in edit control is not the @@ -358,7 +374,8 @@ void CChangeRegisters_CAN_ETAS_BOA::OnKillfocusEditBaudRate() if (m_dEditBaudRate != dBaudRate && dBaudRate>0 && m_dEditBaudRate > 0 ) { - vValidateBaudRate(); + m_omStrEditBaudRate = omStrBaudRate; + //vValidateBaudRate(); // Update List items only it is from edit box //vChangeListBoxValues(-1); CButton* pomButtonoK = (CButton*) GetDlgItem(IDC_ButtonOK); @@ -514,7 +531,7 @@ void CChangeRegisters_CAN_ETAS_BOA::OnClickedOK() UpdateData(TRUE); /* Validate Baud rate and find the nearest match */ - vValidateBaudRate(); + //vValidateBaudRate(); /* Update data members associated with the controller */ if (bUpdateControllerDataMembers() == FALSE) @@ -627,7 +644,7 @@ void CChangeRegisters_CAN_ETAS_BOA::OnItemchangedListChannels(NMHDR* pNMHDR, LRE return; } // Validate Baud rate and find the nearest match - vValidateBaudRate(); + // vValidateBaudRate(); // Save the changes in to the local data structure vUpdateControllerDetails(); } @@ -681,7 +698,9 @@ void CChangeRegisters_CAN_ETAS_BOA::vFillControllerConfigDetails() //m_omStrComboClock = m_pControllerDetails[ nIndex ].m_omStrClock.c_str(); m_omStrComboSampling = m_pControllerDetails[ nIndex ].m_omStrSampling.c_str(); m_omStrEditWarningLimit = m_pControllerDetails[ nIndex ].m_omStrWarningLimit.c_str(); - m_omStrSamplePoint = m_pControllerDetails[ nIndex ].m_omStrSamplePercentage.c_str(); + //m_omStrSamplePoint = m_pControllerDetails[ nIndex ].m_omStrSamplePercentage.c_str(); + + m_omCtrlSamplePoint.SetWindowText(m_pControllerDetails[ nIndex ].m_omStrSamplePercentage.c_str()); m_omStrSJW = m_pControllerDetails[ nIndex ].m_omStrSjw.c_str(); m_bSelfReception = m_pControllerDetails[ nIndex ].m_bSelfReception; @@ -694,14 +713,42 @@ void CChangeRegisters_CAN_ETAS_BOA::vFillControllerConfigDetails() // TO BE FIXED LATER m_dEditBaudRate = (FLOAT)_tstof(m_omStrEditBaudRate); m_omstrBTL_Cycles.Format("%d", m_pControllerDetails[ nIndex ].m_unBTL_Cycles); + CComboBox* pComboBTLCYCL = (CComboBox*)GetDlgItem(IDC_COMB_BTL); + if (pComboBTLCYCL != nullptr) + { + pComboBTLCYCL->SetWindowText(m_omstrBTL_Cycles); + } #if BOA_VERSION >= BOA_VERSION_2_0 /*Update CAN FD parameters */ m_omstrDataBitRate.Format("%d", m_pControllerDetails[ nIndex ].m_unDataBitRate/1000); - m_omstrDataSamplePoint.Format("%d", m_pControllerDetails[ nIndex ].m_unDataSamplePoint); - m_omstrDataBTL_Cycles.Format("%d", m_pControllerDetails[ nIndex ].m_unDataBTL_Cycles); + + CString omDataSamplePoint; + omDataSamplePoint.Format("%d", m_pControllerDetails[ nIndex ].m_unDataSamplePoint); + + GetDlgItem(IDC_COMB_DATA_SAMPOINT)->SetWindowText(omDataSamplePoint); + + //m_omstrDataSamplePoint.Format("%d", m_pControllerDetails[ nIndex ].m_unDataSamplePoint); + //m_omstrDataBTL_Cycles.Format("%d", m_pControllerDetails[ nIndex ].m_unDataBTL_Cycles); m_omstrDataSJW.Format("%d", m_pControllerDetails[ nIndex ].m_unDataSJW); + CComboBox* pComboDataBTLCYCL = (CComboBox*)GetDlgItem(IDC_COMB_DATA_BTL); + if (pComboDataBTLCYCL != nullptr) + { + // pComboBTLCYCL->SetCurSel (0); + CString omStrDataBTLCycles; + omStrDataBTLCycles.Format(_("%d"), m_pControllerDetails[ nIndex ].m_unDataBTL_Cycles); + pComboDataBTLCYCL->SetWindowText(omStrDataBTLCycles); + } + + if(m_pControllerDetails[ nIndex ].m_unTxSecondarySamplePointOffset != 0) + { + m_omstrTxDelayCompensationQuanta.Format("%d", m_pControllerDetails[ nIndex ].m_unTxSecondarySamplePointOffset); + } + else + { + m_omstrTxDelayCompensationQuanta.Format("%d", CANFD_SECONDARY_SAMPLE_POINT); + } if ( m_pControllerDetails[ nIndex ].m_bTxDelayCompensationControl ) { m_omstrTxDelayCompensationON.Format(defSTR_CANFD_TX_DELAY_COMPENSATION_ON); @@ -755,6 +802,8 @@ void CChangeRegisters_CAN_ETAS_BOA::vUpdateControllerDetails() // Update controller information m_pControllerDetails[ m_nLastSelection ].m_nItemUnderFocus = nItemUnderFocus; + + GetDlgItem(IDC_EDIT_BAUD_RATE)->GetWindowText(m_omStrEditBaudRate); m_pControllerDetails[ m_nLastSelection ].m_omStrBaudrate = m_omStrEditBaudRate.GetBuffer(MAX_PATH); //m_pControllerDetails[ m_nLastSelection ].m_omStrClock = // m_omStrComboClock; @@ -766,25 +815,54 @@ void CChangeRegisters_CAN_ETAS_BOA::vUpdateControllerDetails() m_pControllerDetails[m_nLastSelection].m_omStrClock = oss.str(); m_pControllerDetails[m_nLastSelection].m_omStrSampling = m_omStrComboSampling.GetBuffer(MAX_PATH); m_pControllerDetails[m_nLastSelection].m_omStrWarningLimit = m_omStrEditWarningLimit.GetBuffer(MAX_PATH); - m_pControllerDetails[m_nLastSelection].m_omStrSamplePercentage = m_omStrSamplePoint.GetBuffer(MAX_PATH); + + CString omSamplePoint; + m_omCtrlSamplePoint.GetWindowText(omSamplePoint); + + m_pControllerDetails[m_nLastSelection].m_omStrSamplePercentage = omSamplePoint;//m_omStrSamplePoint.GetBuffer(MAX_PATH); m_pControllerDetails[m_nLastSelection].m_omStrSjw = m_omStrSJW.GetBuffer(MAX_PATH); m_pControllerDetails[m_nLastSelection].m_bSelfReception = m_bSelfReception; + + CComboBox* pComboBTLCYCL = (CComboBox*)GetDlgItem(IDC_COMB_BTL); + + if(nullptr != pComboBTLCYCL) + { + pComboBTLCYCL->GetWindowText(m_omstrBTL_Cycles); + } + m_pControllerDetails[m_nLastSelection].m_unBTL_Cycles = atoi((LPCTSTR)m_omstrBTL_Cycles); #if BOA_VERSION >= BOA_VERSION_2_0 /*Update CAN FD parameters */ m_pControllerDetails[ m_nLastSelection ].m_unDataBitRate = atoi((LPCTSTR)m_omstrDataBitRate) * 1000; - m_pControllerDetails[ m_nLastSelection ].m_unDataSamplePoint = atoi((LPCTSTR)m_omstrDataSamplePoint); - m_pControllerDetails[ m_nLastSelection ].m_unDataBTL_Cycles = atoi((LPCTSTR)m_omstrDataBTL_Cycles); + + CString omDataSamplePoint; + GetDlgItem(IDC_COMB_DATA_SAMPOINT)->GetWindowText(omDataSamplePoint); + m_pControllerDetails[ m_nLastSelection ].m_unDataSamplePoint = atoi((LPCTSTR)omDataSamplePoint); + + //m_pControllerDetails[ m_nLastSelection ].m_unDataSamplePoint = atoi((LPCTSTR)m_omstrDataSamplePoint); + //m_pControllerDetails[ m_nLastSelection ].m_unDataBTL_Cycles = atoi((LPCTSTR)m_omstrDataBTL_Cycles); m_pControllerDetails[ m_nLastSelection ].m_unDataSJW = atoi((LPCTSTR)m_omstrDataSJW); + CString omDataBTLCycles; + CComboBox* pComboDataBTLCYCL = (CComboBox*)GetDlgItem(IDC_COMB_DATA_BTL); + if (pComboDataBTLCYCL != nullptr) + { + pComboDataBTLCYCL->GetWindowText(omDataBTLCycles); + m_pControllerDetails[ m_nLastSelection ].m_unDataBTL_Cycles = atoi((LPCTSTR)omDataBTLCycles); + } + if ( m_omstrTxDelayCompensationON == defSTR_CANFD_TX_DELAY_COMPENSATION_ON ) { m_pControllerDetails[ m_nLastSelection ].m_bTxDelayCompensationControl = true; + m_pControllerDetails[ m_nLastSelection ].m_unTxSecondarySamplePointOffset = atoi((LPCTSTR)m_omstrTxDelayCompensationQuanta); } else { m_pControllerDetails[ m_nLastSelection ].m_bTxDelayCompensationControl = false; + m_omstrTxDelayCompensationQuanta = ""; + m_pControllerDetails[ m_nLastSelection ].m_unTxSecondarySamplePointOffset = 0; } + #endif } else diff --git a/Sources/CAN_ETAS_BOA/ChangeRegisters_CAN_ETAS_BOA.h b/Sources/CAN_ETAS_BOA/ChangeRegisters_CAN_ETAS_BOA.h index bb2f6a594..690f22bf7 100644 --- a/Sources/CAN_ETAS_BOA/ChangeRegisters_CAN_ETAS_BOA.h +++ b/Sources/CAN_ETAS_BOA/ChangeRegisters_CAN_ETAS_BOA.h @@ -55,6 +55,7 @@ class CChangeRegisters_CAN_ETAS_BOA : public CDialog CRadixEdit m_omEditWarningLimit; CComboBox m_omCombSampling; CListCtrl m_omListCtrlBitTime; + CRadixEdit m_omEditSamplePoint; CRadixEdit m_omEditBaudRate; CString m_omStrEditBTR0; CString m_omStrEditBTR1; @@ -64,7 +65,7 @@ class CChangeRegisters_CAN_ETAS_BOA : public CDialog CString m_omStrComboSampling; CString m_omStrEditBaudRate; CString m_omStrEditWarningLimit; - CString m_omStrSamplePoint; + // CString m_omStrSamplePoint; CString m_omStrSJW; //}}AFX_DATA CString m_omstrBTL_Cycles; @@ -72,7 +73,7 @@ class CChangeRegisters_CAN_ETAS_BOA : public CDialog UINT m_unCombClock; /*CAN FD Parameters */ CString m_omstrDataBitRate; - CString m_omstrDataSamplePoint; + //CString m_omstrDataSamplePoint; CString m_omstrDataBTL_Cycles; CString m_omstrDataSJW; CString m_omstrTxDelayCompensationON; diff --git a/Sources/CAN_ETAS_BOA/ContrConfigETASBOADefs.h b/Sources/CAN_ETAS_BOA/ContrConfigETASBOADefs.h index d6c8c9bbb..41eda10b5 100644 --- a/Sources/CAN_ETAS_BOA/ContrConfigETASBOADefs.h +++ b/Sources/CAN_ETAS_BOA/ContrConfigETASBOADefs.h @@ -75,4 +75,6 @@ #define CANFD_COUNT_TX_COMPATIBILITY_MODES 2 #define CANFD_COUNT_RX_COMPATIBILITY_MODES 4 +// Sample point can range from 0-100, hence considering default as 50 +#define CANFD_SECONDARY_SAMPLE_POINT 50 diff --git a/Sources/FLEXRAY_ETAS_BOA/FLEXRAY_ETAS_BOA.rc b/Sources/FLEXRAY_ETAS_BOA/FLEXRAY_ETAS_BOA.rc index 384b4bc20..a28b859bd 100644 --- a/Sources/FLEXRAY_ETAS_BOA/FLEXRAY_ETAS_BOA.rc +++ b/Sources/FLEXRAY_ETAS_BOA/FLEXRAY_ETAS_BOA.rc @@ -82,7 +82,7 @@ BEGIN DEFPUSHBUTTON "&Remove",IDC_BUT_REMOVE,205,86,44,14 DEFPUSHBUTTON "&OK",IDOK,133,178,50,14 PUSHBUTTON "&Cancel",IDCANCEL,192,178,50,14 - LTEXT "Available CAN hardware",IDC_STATIC,8,5,96,9 + LTEXT "Available FlexRay hardware",IDC_STATIC,8,5,96,9 GROUPBOX "Hardware Details",IDC_STATIC,8,60,189,102 LTEXT "Driver ID :",IDC_STATIC,13,73,34,9 LTEXT "Firmware :",IDC_STATIC,13,86,32,9 @@ -90,7 +90,7 @@ BEGIN EDITTEXT IDC_EDIT_DRIVER_ID,47,73,52,12,ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP EDITTEXT IDC_EDIT_NET_NAME,56,99,135,12,ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP EDITTEXT IDC_EDIT_FIRMWARE,49,86,45,12,ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP - LTEXT "Configured CAN Hardware",IDC_STATIC,257,5,105,9 + LTEXT "Configured FlexRay Hardware",IDC_STATIC,257,5,105,9 CONTROL "______________________________________________________________________________________________",IDC_STAT_LINE3, "Static",SS_LEFTNOWORDWRAP | WS_DISABLED | WS_GROUP,7,162,377,10 EDITTEXT IDC_EDIT_NET_ADDITIONALINFO,15,113,179,32,ES_MULTILINE | ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP diff --git a/Sources/Format Converter/BlfLogConverter/BlfLogConverter.cpp b/Sources/Format Converter/BlfLogConverter/BlfLogConverter.cpp index 0809b978a..5792b128c 100644 --- a/Sources/Format Converter/BlfLogConverter/BlfLogConverter.cpp +++ b/Sources/Format Converter/BlfLogConverter/BlfLogConverter.cpp @@ -170,7 +170,7 @@ HRESULT CBlfLogConverter::GetOutputFileFilters(string& pchOutputDefFilters, stri void CBlfLogConverter::AddFunctionHeader(std::ofstream& stream, WORD day, WORD month, WORD year, WORD hour , WORD mins, WORD sec) const { - stream << "***BUSMASTER Ver 2.6.1***\n"; + stream << "***BUSMASTER Ver 2.6.2***\n"; stream << "***PROTOCOL CAN***\n"; stream << "***NOTE: PLEASE DO NOT EDIT THIS DOCUMENT***\n"; stream << "***[START LOGGING SESSION]***\n"; diff --git a/Sources/Format Converter/CAPL2CConverter/ConstString.h b/Sources/Format Converter/CAPL2CConverter/ConstString.h index ac8303f19..944d8836b 100644 --- a/Sources/Format Converter/CAPL2CConverter/ConstString.h +++ b/Sources/Format Converter/CAPL2CConverter/ConstString.h @@ -28,7 +28,7 @@ #define COPYWRITE_INFORMATION _T("/* This file is generated by BUSMASTER */") #define C_FILE_VERSION _T("\n/* VERSION [1.1] */") -#define BUSMASTER_VERSION _T("\n/* BUSMASTER VERSION [2.6.1] */") +#define BUSMASTER_VERSION _T("\n/* BUSMASTER VERSION [2.6.2] */") #define PROTOCOL _T("\n/* PROTOCOL [CAN] */") @@ -167,6 +167,9 @@ #define defSTR_LogName "log.txt" #define defSTR_SendMessage "SendMsg( %s )" #define defSTR_CAPLWrapperToken "_CAPL" +#define defSTR_CAPLTxErrorCount "errorCountTX" +#define defSTR_CAPLRxErrorCount "errorCountRX" +#define defSTR_CAPLChannel "can" #define defUtils_PrestartDef "void Utils_PreStart()\n{\n" #define defUtils_PrestartDec "void Utils_PreStart();\n" #define defUtils_StartComment "\n/* Start BUSMASTER generated function - Utils_PreStart */\n" diff --git a/Sources/Format Converter/CAPL2CConverter/LexerHandlers.hpp b/Sources/Format Converter/CAPL2CConverter/LexerHandlers.hpp index 01d6f2f1d..781715e47 100644 --- a/Sources/Format Converter/CAPL2CConverter/LexerHandlers.hpp +++ b/Sources/Format Converter/CAPL2CConverter/LexerHandlers.hpp @@ -1842,7 +1842,7 @@ void vHandleCaplEvents() fprintf(yyout, "%s", defSTR_ErrorPassiveStart); g_ouGlobalVariables.g_oucaplEventHandleState = CAPL_EVENT_ERRORPASSIVE; - CString omStrTemp = defSTR_ErrorPassiveHeader; + CString omStrTemp = defSTR_ErrorPassiveStart; omStrTemp.TrimRight(defSTR_FunctionDefinition); omStrTemp = defSTF_Extern + omStrTemp + ";"; @@ -2286,6 +2286,7 @@ void vCnvrtThis() */ void vCnvrtThisData() { + CString val = yytext; if( CAPL_EVENT_MESSAGE == g_ouGlobalVariables.g_oucaplEventHandleState ) {//if message handler CString strVal = yytext; @@ -2297,6 +2298,65 @@ void vCnvrtThisData() fprintf(yyout, strSignal); //fprintf(yyout,"Next"); + } + else if( CAPL_EVENT_BUSOFF == g_ouGlobalVariables.g_oucaplEventHandleState ) + {//if message handler + bool bTokenFound = false; + if(val.Find("this") != -1) + { + val.Replace("this", defSTR_ErrorMsg); + } + if(val.Find(defSTR_CAPLTxErrorCount) != -1) + { + bTokenFound = true; + val.Replace(defSTR_CAPLTxErrorCount, defSTR_TxErrorVar); + } + if(val.Find(defSTR_CAPLRxErrorCount) != -1) + { + bTokenFound = true; + val.Replace(defSTR_CAPLRxErrorCount, defSTR_RxErrorVar); + } + if(val.Find(defSTR_CAPLChannel) != -1) + { + bTokenFound = true; + val.Replace(defSTR_CAPLChannel, defSTR_ChannelVar); + } + if(bTokenFound == false) + { + fprintf(yyout, "%s.%s", defSTR_ErrorMsg, defSTR_ChannelVar); + } + else + { + fprintf(yyout, "%s", val); + } + + } + else if( ( g_ouGlobalVariables.g_oucaplEventHandleState >= CAPL_EVENT_ERRORACTIVE ) && + ( g_ouGlobalVariables.g_oucaplEventHandleState <= CAPL_EVENT_ERRORFRAME ) ) + {//if key handler + bool bTokenFound = false; + if(val.Find("this") != -1) + { + val.Replace("this", defSTR_ErrorMsg); + } + if(val.Find(defSTR_CAPLTxErrorCount) != -1) + { + bTokenFound = true; + val.Replace(defSTR_CAPLTxErrorCount, defSTR_TxErrorVar); + } + if(val.Find(defSTR_CAPLRxErrorCount) != -1) + { + bTokenFound = true; + val.Replace(defSTR_CAPLRxErrorCount, defSTR_RxErrorVar); + } + if(bTokenFound == false) + { + fprintf(yyout, "%s.%s + %s.%s", defSTR_ErrorMsg, defSTR_TxErrorVar, defSTR_ErrorMsg, defSTR_RxErrorVar); + } + else + { + fprintf(yyout, "%s", val); + } } } diff --git a/Sources/Format Converter/DBC2DBFConverterLibrary/DBFConverter.cpp b/Sources/Format Converter/DBC2DBFConverterLibrary/DBFConverter.cpp index af5c654f9..1266540db 100644 --- a/Sources/Format Converter/DBC2DBFConverterLibrary/DBFConverter.cpp +++ b/Sources/Format Converter/DBC2DBFConverterLibrary/DBFConverter.cpp @@ -1197,7 +1197,7 @@ bool CDBFConverter::WriteToOutputFile(fstream& fileOutput) fileOutput << endl; //For easy replacement of version Info #define is not added - fileOutput<< "[BUSMASTER_VERSION] [2.6.1]"<GetProperties(ouFrameProps); @@ -713,6 +714,10 @@ void ScheduleTableDlg::vPopulateSelFrameDetails(int nIndex) ui.tableFrames->item(nSelectedRow, 2)->setText("8"); } } + if(eOldType != omSchedItem.m_eDiagType) + { + memset(omSchedItem.m_chDataBytes, 0, sizeof(omSchedItem.m_chDataBytes)); + } } QVariant qVar; diff --git a/Sources/LIN_ETAS_BOA/LIN_ETAS_BOA.rc b/Sources/LIN_ETAS_BOA/LIN_ETAS_BOA.rc index 349b796b9..4c3ac40a8 100644 --- a/Sources/LIN_ETAS_BOA/LIN_ETAS_BOA.rc +++ b/Sources/LIN_ETAS_BOA/LIN_ETAS_BOA.rc @@ -83,7 +83,7 @@ BEGIN DEFPUSHBUTTON "&Remove",IDC_BUT_REMOVE,205,86,44,14 DEFPUSHBUTTON "&OK",IDOK,133,178,50,14 PUSHBUTTON "&Cancel",IDCANCEL,192,178,50,14 - LTEXT "Available CAN hardware",IDC_STATIC,8,5,96,9 + LTEXT "Available LIN hardware",IDC_STATIC,8,5,96,9 GROUPBOX "Hardware Details",IDC_STATIC,8,60,189,102 LTEXT "Driver ID :",IDC_STATIC,13,73,34,9 LTEXT "Firmware :",IDC_STATIC,13,86,32,9 @@ -91,7 +91,7 @@ BEGIN EDITTEXT IDC_EDIT_DRIVER_ID,47,73,52,12,ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP EDITTEXT IDC_EDIT_NET_NAME,56,99,135,12,ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP EDITTEXT IDC_EDIT_FIRMWARE,49,86,45,12,ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP - LTEXT "Configured CAN Hardware",IDC_STATIC,257,5,105,9 + LTEXT "Configured LIN Hardware",IDC_STATIC,257,5,105,9 CONTROL "______________________________________________________________________________________________",IDC_STAT_LINE3, "Static",SS_LEFTNOWORDWRAP | WS_DISABLED | WS_GROUP,7,162,377,10 EDITTEXT IDC_EDIT_NET_ADDITIONALINFO,15,113,179,32,ES_MULTILINE | ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP diff --git a/Sources/LIN_ISOLAR_EVE_VLIN/LIN_ISOLAR_EVE_VLIN.rc b/Sources/LIN_ISOLAR_EVE_VLIN/LIN_ISOLAR_EVE_VLIN.rc index be8a97c02..2884db6f2 100644 --- a/Sources/LIN_ISOLAR_EVE_VLIN/LIN_ISOLAR_EVE_VLIN.rc +++ b/Sources/LIN_ISOLAR_EVE_VLIN/LIN_ISOLAR_EVE_VLIN.rc @@ -167,7 +167,7 @@ BEGIN DEFPUSHBUTTON "&Remove",IDC_BUT_REMOVE,204,72,44,14 DEFPUSHBUTTON "&OK",IDOK,133,140,50,14 PUSHBUTTON "&Cancel",IDCANCEL,192,140,50,14 - LTEXT "Available CAN hardware",IDC_STATIC,8,5,96,9 + LTEXT "Available LIN hardware",IDC_STATIC,8,5,96,9 GROUPBOX "Hardware Details",IDC_STATIC,8,60,189,64 LTEXT "Driver ID :",IDC_STATIC,13,73,34,9 LTEXT "Firmware :",IDC_STATIC,13,86,32,9 @@ -175,7 +175,7 @@ BEGIN EDITTEXT IDC_EDIT_DRIVER_ID,47,73,52,12,ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP EDITTEXT IDC_EDIT_NET_NAME,56,99,135,12,ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP EDITTEXT IDC_EDIT_FIRMWARE,49,86,137,12,ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP - LTEXT "Configured CAN Hardware",IDC_STATIC,257,5,105,9 + LTEXT "Configured LIN Hardware",IDC_STATIC,257,5,105,9 CONTROL "______________________________________________________________________________________________",IDC_STAT_LINE3, "Static",SS_LEFTNOWORDWRAP | WS_DISABLED | WS_GROUP,7,124,377,10 CONTROL "Master",IDC_RADIO_MASTER,"Button",BS_AUTORADIOBUTTON,15,112,37,10 diff --git a/Sources/LIN_ISOLAR_EVE_VLIN/LIN_ISOLAR_EVE_VLIN.vcxproj b/Sources/LIN_ISOLAR_EVE_VLIN/LIN_ISOLAR_EVE_VLIN.vcxproj index 7a49b3b40..fa1342461 100644 --- a/Sources/LIN_ISOLAR_EVE_VLIN/LIN_ISOLAR_EVE_VLIN.vcxproj +++ b/Sources/LIN_ISOLAR_EVE_VLIN/LIN_ISOLAR_EVE_VLIN.vcxproj @@ -113,7 +113,7 @@ "$(SolutionDir)/BIN/Libs/Release/DataTypes.lib" "$(SolutionDir)/BIN/Libs/Release/Utils.lib" /FORCE %(AdditionalOptions) - C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib\Ws2_32.lib;%(AdditionalDependencies) + Ws2_32.lib;%(AdditionalDependencies) $(SolutionDir)/bin/release/LIN_ISOLAR_EVE_VLIN.dll C:\WinDDK\7600.16385.1\lib\Mfc\i386;C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib;C:\WinDDK\7600.16385.1\lib\ATL\i386;%(AdditionalLibraryDirectories) true @@ -141,7 +141,7 @@ "$(SolutionDir)/BIN/Libs/busmaster_debug/DataTypes.lib" "$(SolutionDir)/BIN/Libs/busmaster_debug/Utils.lib" /FORCE %(AdditionalOptions) - C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib\Ws2_32.lib;%(AdditionalDependencies) + Ws2_32.lib;%(AdditionalDependencies) $(SolutionDir)/bin/busmaster_debug/LIN_ISOLAR_EVE_VLIN.dll C:\WinDDK\7600.16385.1\lib\Mfc\i386;C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib;C:\WinDDK\7600.16385.1\lib\ATL\i386;%(AdditionalLibraryDirectories) true diff --git a/Sources/LIN_PEAK_USB/LIN_PEAK_USB.vcxproj b/Sources/LIN_PEAK_USB/LIN_PEAK_USB.vcxproj index ab0a74ae3..62995e7ff 100644 --- a/Sources/LIN_PEAK_USB/LIN_PEAK_USB.vcxproj +++ b/Sources/LIN_PEAK_USB/LIN_PEAK_USB.vcxproj @@ -191,7 +191,8 @@ MachineX86 daouuid.lib C:\WinDDK\7600.16385.1\lib\Mfc\i386;C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib;C:\WinDDK\7600.16385.1\lib\ATL\i386;%(AdditionalLibraryDirectories) - C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib\Ws2_32.lib;%(AdditionalDependencies) + + $(SolutionDir)/bin/DumpFiles/$(IntDir)/PDB/$(TargetName).pdb diff --git a/Sources/LIN_Vector_XL/LIN_ISOLAR_EVE_VLIN.rc b/Sources/LIN_Vector_XL/LIN_ISOLAR_EVE_VLIN.rc index c96b253ce..fed7c144e 100644 --- a/Sources/LIN_Vector_XL/LIN_ISOLAR_EVE_VLIN.rc +++ b/Sources/LIN_Vector_XL/LIN_ISOLAR_EVE_VLIN.rc @@ -167,7 +167,7 @@ BEGIN DEFPUSHBUTTON "&Remove",IDC_BUT_REMOVE,204,72,44,14 DEFPUSHBUTTON "&OK",IDOK,133,140,50,14 PUSHBUTTON "&Cancel",IDCANCEL,192,140,50,14 - LTEXT "Available CAN hardware",IDC_STATIC,8,5,96,9 + LTEXT "Available LIN hardware",IDC_STATIC,8,5,96,9 GROUPBOX "Hardware Details",IDC_STATIC,8,60,189,64 LTEXT "Driver ID :",IDC_STATIC,13,73,34,9 LTEXT "Firmware :",IDC_STATIC,13,86,32,9 @@ -175,7 +175,7 @@ BEGIN EDITTEXT IDC_EDIT_DRIVER_ID,47,73,52,12,ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP EDITTEXT IDC_EDIT_NET_NAME,56,99,135,12,ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP EDITTEXT IDC_EDIT_FIRMWARE,49,86,137,12,ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP - LTEXT "Configured CAN Hardware",IDC_STATIC,257,5,105,9 + LTEXT "Configured LIN Hardware",IDC_STATIC,257,5,105,9 CONTROL "______________________________________________________________________________________________",IDC_STAT_LINE3, "Static",SS_LEFTNOWORDWRAP | WS_DISABLED | WS_GROUP,7,124,377,10 //CONTROL "Master",IDC_RADIO_MASTER,"Button",BS_AUTORADIOBUTTON,15,112,37,10 diff --git a/Sources/LIN_Vector_XL/LIN_Vector_XL.vcxproj b/Sources/LIN_Vector_XL/LIN_Vector_XL.vcxproj index dc4d33b57..41a71afa4 100644 --- a/Sources/LIN_Vector_XL/LIN_Vector_XL.vcxproj +++ b/Sources/LIN_Vector_XL/LIN_Vector_XL.vcxproj @@ -119,7 +119,7 @@ true MachineX86 C:\WinDDK\7600.16385.1\lib\Mfc\i386;C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib;C:\WinDDK\7600.16385.1\lib\ATL\i386;%(AdditionalLibraryDirectories) - C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib\Ws2_32.lib;%(AdditionalDependencies) + %(AdditionalDependencies) $(SolutionDir)/bin/DumpFiles/$(IntDir)/PDB/$(TargetName).pdb @@ -139,7 +139,7 @@ "$(SolutionDir)/BIN/Libs/busmaster_debug/DataTypes.lib" "$(SolutionDir)/BIN/Libs/busmaster_debug/Utils.lib" %(AdditionalOptions) - C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib\Ws2_32.lib;%(AdditionalDependencies) + %(AdditionalDependencies) $(SolutionDir)/bin/busmaster_debug/LIN_Vector_XL.dll C:\WinDDK\7600.16385.1\lib\Mfc\i386;C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib;C:\WinDDK\7600.16385.1\lib\ATL\i386;%(AdditionalLibraryDirectories) true diff --git a/Sources/NodeSimEx/SimSysTreeView.cpp b/Sources/NodeSimEx/SimSysTreeView.cpp index c6ba9d000..203767bc8 100644 --- a/Sources/NodeSimEx/SimSysTreeView.cpp +++ b/Sources/NodeSimEx/SimSysTreeView.cpp @@ -1684,6 +1684,10 @@ void CSimSysTreeView::OnNewSimsys() //Add to the tree view hInsertAndSelectItem( oCfgFilename, GetTreeCtrl().GetRootItem()); } + else + { + ::MessageBox(NULL, "Simulated System already present. Create with a different file name", "BUSMASTER", MB_ICONINFORMATION | MB_OK); + } } } }