collin80 / GVRET

Generalized Vehicle Reverse Engineering Tool - firmware for Arduino Due based boards
99 stars 32 forks source link

GVRET Compile Error - EVTVDue #21

Closed vsskanth closed 6 years ago

vsskanth commented 6 years ago

I am trying to compile GVRET for the EVTVDue in order to use it with SavvyCAN. Some files were initially missing but I was able to get over that error using MCP2515 libraries (in addition to the ones in readme) at: https://github.com/macchina/mcp2515 https://github.com/macchina/Single-Wire-CAN-mcp2515

Now I get this compile error.

Arduino: 1.8.4 (Windows 7), Board: "Arduino Due (Native USB Port)"

C:\Work\GY_Hardware_Docs\EVTV CanDue Board\GVRET\GVRET.ino: In function 'void loop()':

GVRET:639: error: no matching function for call to 'MCP2515::GetRXFrame(CAN_FRAME&)'

     if (SysSettings.dedicatedSWCAN && settings.singleWire_Enabled && SWCAN.GetRXFrame(incoming))

                                                                                               ^

C:\Work\GY_Hardware_Docs\EVTV CanDue Board\GVRET\GVRET.ino:639:95: note: candidate is:

In file included from C:\Users\A418842\Documents\Arduino\libraries\Single-Wire-CAN-mcp2515\src/MCP2515_sw_can.h:34:0,

                 from C:\Work\GY_Hardware_Docs\EVTV CanDue Board\GVRET\GVRET.ino:37:

C:\Users\A418842\Documents\Arduino\libraries\mcp2515\src/MCP2515.h:67:7: note: bool MCP2515::GetRXFrame(Frame&)

  bool GetRXFrame(Frame &frame);

       ^

C:\Users\A418842\Documents\Arduino\libraries\mcp2515\src/MCP2515.h:67:7: note:   no known conversion for argument 1 from 'CAN_FRAME' to 'Frame&'

GVRET:885: error: 'class MCP2515' has no member named 'sendFrame'

                     if (out_bus == 2) SWCAN.sendFrame(build_out_frame);

                                             ^

exit status 1
no matching function for call to 'MCP2515::GetRXFrame(CAN_FRAME&)'

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
collin80 commented 6 years ago

Try the version of mcp2515 from my repos. Also pick up can_common if you haven't already. Unfortunately many of the CAN libraries are currently in a state of flux as things get implemented and move to a common interface for all the CAN libraries.

vsskanth commented 6 years ago

I am now able to compile GVRET and upload to EVTVDue. Thanks!

Just for future reference, I used MCP2515 libraries at: https://github.com/collin80/mcp2515