openvehicles / Open-Vehicle-Monitoring-System-3

Open Vehicle Monitoring System - Version 3
http:///www.openvehicles.com/
Other
588 stars 225 forks source link

Bolt EV - swcan needed #704

Open kallisti5 opened 2 years ago

kallisti5 commented 2 years ago

I'm not sure of the details to set this up.. but the Bolt EV is need of the swcan? The ODB2 port goes to "sleep" after a while and doesn't respond to commands.

kallisti5 commented 2 years ago

https://github.com/mjuhanne/OVMS-SWCAN seems to be what folks are talking about. Information is limited, but it sounds like swcan needs to be wired to the private GMLAN bus?

I plan on trying to fully remove my Onstar module at some point (and wiring the microphone to restore bluetooth microphone support) Guessing the OnStar module would have unrestricted GMLAN access?

kallisti5 commented 2 years ago

I found some documentation of the OnStar connectors online from the Bolt EV... Looks like GMLAN low and high speed is readily available at the Onstar box...

X1 X2

kssmll commented 2 years ago

SWCAN(Low speed GMLAN) is on pin 1 of the OBD2 connector.

kallisti5 commented 2 years ago

SWCAN(Low speed GMLAN) is on pin 1 of the OBD2 connector.

I think in the Bolt EV you can't access the whole set of GMLAN commands however. There is a gateway between the OBD port and the ECU to prevent access to door lock control , etc.

kssmll commented 2 years ago

First of all, you need swcan for car's wake up. And GM cars do not use gateways. What set of GMLAN commands you talking about?

kallisti5 commented 2 years ago

First of all, you need swcan for car's wake up.

And GM cars do not use gateways. What set of GMLAN commands you talking about?

The Bolt might be different than the Volt. Check below:

https://www.chevybolt.org/threads/can-bus-commands-to-remote-start-the-bolt.33637/#post-544035

Either the Bolt is firewalling those specific messages if they come in over the OBD port (unlike the Volt), or the Bolt requires a few additional messages and I haven't figured out what they are yet.

Msbog commented 2 years ago

Hello, I want to confirm that sending commands via SWcan located behind the mirror of the camera connector ( black wire : GND and green wire : SWCAN) works and can start air conditioning, heating, unlocking, locking, etc. Tried!

kallisti5 commented 2 years ago

Hello, I want to confirm that sending commands via SWcan located behind the mirror of the camera connector ( black wire : GND and green wire : SWCAN) works and can start air conditioning, heating, unlocking, locking, etc. Tried!

Yup. The mirror and the OnStar module are two places you can get a hold of GMLAN not behind the OBD firewall on the Bolt EV.

Now... we just need to get a reliable source for the SWCAN module for the OVMS

markwj commented 2 years ago

I am willing to build SWCAN modules in the same way we do the KLINE modules today.

Just need a circuit design. Presumably the single SWCAN wire can be brought out onto the DB9 in the same way.

Regards, Mark

On 25 Mar 2022, at 5:32 AM, Alex von Gluck IV @.***> wrote:

Hello, I want to confirm that sending commands via SWcan located behind the mirror of the camera connector ( black wire : GND and green wire : SWCAN) works and can start air conditioning, heating, unlocking, locking, etc. Tried!

Yup. The mirror and the OnStar module are two places you can get a hold of GMLAN not behind the OBD firewall on the Bolt EV.

Now... we just need to get a reliable source for the SWCAN module for the OVMS

— Reply to this email directly, view it on GitHub https://github.com/openvehicles/Open-Vehicle-Monitoring-System-3/issues/704#issuecomment-1078403821, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAGCUTTZJA2BBGHK5PL4UYDVBTNNFANCNFSM5P6VDMLQ. You are receiving this because you are subscribed to this thread.

Msbog commented 2 years ago

I made my own module with esp32 and sim800l, which communicates via mqtt with my Home assistant server. The space under the camera cover is large and everything fits normally. I'm wondering if there is information on the swcan bus about SOC, temperature, remaining distance, etc. . My idea is if only the SWcan bus can be used. I also see that there is information from the GPS data, but I don't know how to decode it?

kallisti5 commented 2 years ago

@markwj I'd love a SWCAN module for OVMS. The only reference I see is this one: https://github.com/mjuhanne/OVMS-SWCAN

However, it is oddly a 4 layer board, and only includes gerbers :-(

kallisti5 commented 2 years ago

@Msbog have you published any of the source or hardware for your creation anywhere? I'd imagine a lot of people would be interested.

markwj commented 2 years ago

@markwj I'd love a SWCAN module for OVMS. The only reference I see is this one: https://github.com/mjuhanne/OVMS-SWCAN

However, it is oddly a 4 layer board, and only includes gerbers :-(

There is a PDF schematic there. Doesn't sound overly complicated to simplify this and do it the same way as the K-Line board. But are we sure there is sufficient quantity for this to make it worthwhile? Has anybody looked at SWCAN on the Bolt-EV?

kallisti5 commented 2 years ago

I wanted to look at SWCAN on the Bolt EV which is why I wanted one :-)

markwj commented 2 years ago

Regarding the SWCAN board, given component vs board manufacturing cost, it seems simplest to combine this with the existing k-line option board, to produce a new ‘combo’ option board containing both K-line and SWCAN (DIP switch selectable one or the other, not both).

We are currently working on the design of this board, and discussions are ongoing on the developers mailing list.

melaz commented 1 year ago

Regarding the SWCAN board, given component vs board manufacturing cost, it seems simplest to combine this with the existing k-line option board, to produce a new ‘combo’ option board containing both K-line and SWCAN (DIP switch selectable one or the other, not both).

We are currently working on the design of this board, and discussions are ongoing on the developers mailing list.

Is there any updates on this board? I really like my OVMS, but on volt it is not much fun :)

kallisti5 commented 1 year ago

Yeah, i'd love a combined swcan + k-line board. Hell, just open source the design and i'll manufacture it myself. I ended up pulling OVMS out of my car because it was lacking a lot of functionality without the add-on board

markwj commented 1 year ago

Status update: Some prototype boards are being produced now so we can start to work on firmware support and confirm the design. The board provides K-line, SWCAN, and high speed CAN, software selectable.

cavram commented 1 year ago

Do you want a Holden Volt tester?

On Thu, 20 Oct 2022, 7:04 pm Mark Webb-Johnson, @.***> wrote:

Status update: Some prototype boards are being produced now so we can start to work on firmware support and confirm the design. The board provides K-line, SWCAN, and high speed CAN, software selectable.

— Reply to this email directly, view it on GitHub https://github.com/openvehicles/Open-Vehicle-Monitoring-System-3/issues/704#issuecomment-1285109051, or unsubscribe https://github.com/notifications/unsubscribe-auth/AD2QX26HCZZRXWQCBFRSYVTWED4HPANCNFSM5P6VDMLQ . You are receiving this because you are subscribed to this thread.Message ID: <openvehicles/Open-Vehicle-Monitoring-System-3/issues/704/1285109051@ github.com>

kallisti5 commented 1 year ago

@markwj i'd be available to test on a 2019 Bolt EV (and would even toss some money in for it)

As of my latest changes, here's the BoltEV during Level 2 charging:

I (3550249) ovms-server-v3: Transmit all metrics
I (3550249) ovms-server-v3: Tx metric ovms/bolt/metric/m/egpio/input=0,1,2,3,4,5,6,7,8,9
I (3550249) ovms-server-v3: Tx metric ovms/bolt/metric/m/egpio/output=3,4,5,6,7,8,9
I (3550249) ovms-server-v3: Tx metric ovms/bolt/metric/m/freeram=3480512
I (3550249) ovms-server-v3: Tx metric ovms/bolt/metric/m/hardware=OVMS WIFI BLE BT cores=2 rev=ESP32/3; MODEM SIM7600
I (3550249) ovms-server-v3: Tx metric ovms/bolt/metric/m/monotonic=3547
I (3550249) ovms-server-v3: Tx metric ovms/bolt/metric/m/net/mdm/iccid=XXXXXXREMOVED
I (3550249) ovms-server-v3: Tx metric ovms/bolt/metric/m/net/mdm/mode=LTE,Online
I (3550249) ovms-server-v3: Tx metric ovms/bolt/metric/m/net/mdm/model=LE20B03SIM7600M21-A
I (3550259) ovms-server-v3: Tx metric ovms/bolt/metric/m/net/mdm/netreg=NotRegistered
I (3550259) ovms-server-v3: Tx metric ovms/bolt/metric/m/net/mdm/network=AT&T Hologram
I (3550259) ovms-server-v3: Tx metric ovms/bolt/metric/m/net/mdm/sq=0
I (3550259) ovms-server-v3: Tx metric ovms/bolt/metric/m/net/provider=XXX
I (3550259) ovms-server-v3: Tx metric ovms/bolt/metric/m/net/sq=-77
I (3550259) ovms-server-v3: Tx metric ovms/bolt/metric/m/net/type=wifi
I (3550259) ovms-server-v3: Tx metric ovms/bolt/metric/m/net/wifi/network=xxx
I (3550259) ovms-server-v3: Tx metric ovms/bolt/metric/m/net/wifi/sq=-76.7
I (3550259) ovms-server-v3: Tx metric ovms/bolt/metric/m/tasks=17
I (3550259) ovms-server-v3: Tx metric ovms/bolt/metric/m/time/utc=1669497042
I (3550259) ovms-server-v3: Tx metric ovms/bolt/metric/m/version=3.3.003-156-g2b63300f/ota_1/edge (build idf v3.3.4-849-g6e214dc335 Nov 26 2022 10:54:44)
I (3550259) ovms-server-v3: Tx metric ovms/bolt/metric/s/v2/connected=yes
I (3550259) ovms-server-v3: Tx metric ovms/bolt/metric/s/v2/peers=0
I (3550259) ovms-server-v3: Tx metric ovms/bolt/metric/s/v3/connected=yes
I (3550259) ovms-server-v3: Tx metric ovms/bolt/metric/s/v3/peers=0
I (3550259) ovms-server-v3: Tx metric ovms/bolt/metric/v/b/12v/voltage=13.8
I (3550269) ovms-server-v3: Tx metric ovms/bolt/metric/v/b/12v/voltage/ref=12.6
I (3550269) ovms-server-v3: Tx metric ovms/bolt/metric/v/b/c/temp=15,15,16,18,16,15
I (3550269) ovms-server-v3: Tx metric ovms/bolt/metric/v/b/c/temp/alert=0,0,0,0,0,0
I (3550269) ovms-server-v3: Tx metric ovms/bolt/metric/v/b/c/temp/dev/max=-0.83,-0.83,0.17,2.17,0.17,-0.83
I (3550269) ovms-server-v3: Tx metric ovms/bolt/metric/v/b/c/temp/max=15,15,16,18,16,15
I (3550279) ovms-server-v3: Tx metric ovms/bolt/metric/v/b/c/temp/min=15,15,16,18,16,15
I (3550279) ovms-server-v3: Tx metric ovms/bolt/metric/v/b/consumption=0
I (3550279) ovms-server-v3: Tx metric ovms/bolt/metric/v/b/p/temp/avg=15.83
I (3550279) ovms-server-v3: Tx metric ovms/bolt/metric/v/b/p/temp/max=18
I (3550279) ovms-server-v3: Tx metric ovms/bolt/metric/v/b/p/temp/min=15
I (3550279) ovms-server-v3: Tx metric ovms/bolt/metric/v/b/p/temp/stddev=1.07
I (3550279) ovms-server-v3: Tx metric ovms/bolt/metric/v/b/p/temp/stddev/max=1.07
I (3550279) ovms-server-v3: Tx metric ovms/bolt/metric/v/b/p/voltage/stddev/max=0
I (3550279) ovms-server-v3: Tx metric ovms/bolt/metric/v/b/range/ideal=345
I (3550289) ovms-server-v3: Tx metric ovms/bolt/metric/v/b/soc=83
I (3550289) ovms-server-v3: Tx metric ovms/bolt/metric/v/b/temp=16
I (3550289) ovms-server-v3: Tx metric ovms/bolt/metric/v/b/voltage=382.2
I (3550289) ovms-server-v3: Tx metric ovms/bolt/metric/v/c/charging=yes
I (3550289) ovms-server-v3: Tx metric ovms/bolt/metric/v/c/climit=32
I (3550289) ovms-server-v3: Tx metric ovms/bolt/metric/v/c/current=30
I (3550289) ovms-server-v3: Tx metric ovms/bolt/metric/v/c/kwh=10
I (3550289) ovms-server-v3: Tx metric ovms/bolt/metric/v/c/mode=standard
I (3550289) ovms-server-v3: Tx metric ovms/bolt/metric/v/c/pilot=yes
I (3550289) ovms-server-v3: Tx metric ovms/bolt/metric/v/c/state=charging
I (3550289) ovms-server-v3: Tx metric ovms/bolt/metric/v/c/substate=onrequest
W (3550489) websocket: WebSocketHandler[0x3f82b89c]: job queue overflow detected
W (3550489) websocket: WebSocketHandler[0x3f82b89c]: job queue overflow resolved, 28 drops

Overall that seems "sane" for level 2. I know DCFC isn't detected correctly for some reason, so that's a big improvement that I need to work on more.

melaz commented 1 year ago

Hi, is there any updates on this? Almost a year passed.

markwj commented 1 year ago

Hi, is there any updates on this? Almost a year passed.

We identified two SPI CAN driver ICs that could support our new expansion board's requirements, but both have been subject to extreme chip shortages (as have many higher-end automotive chips). Distributors were quoting lead times of 2024 or later, and what few chips were on the market were 100 times the normal price and likely fake/faulty anyway.

Thankfully, that seems to be resolving now. The MCP2517fd is now available in small quantities, and that is the older obsolete version of the MCP2518fd that we had identified as one of the options. But both are pin compatible, and probably close to software driver compatible as well. The other (better, imho) alternative is TCAN4551 or TCAN4550, but those are still not reliably available (expecting some versions in summer 2023, but normal availability unlikely until summer 2024).

So, we are building prototypes around MCP2517fd, and we will see if that can meet our needs. Most distributors are showing wider availability now, and production quantity late summer/autumn 2023.

kallisti5 commented 1 year ago

@markwj if you share the PCB, I can try building one myself. I'm afraid i'm going to be getting rid of the Bolt EV at some point in the next few months... so my time to debug / test is short.

markwj commented 1 year ago

@markwj if you share the PCB, I can try building one myself. I'm afraid i'm going to be getting rid of the Bolt EV at some point in the next few months... so my time to debug / test is short.

Prototype design schematic attached. The idea is to unify all our expansion options (K-Line, SWCAN, CAN4, etc) into one board. As we have only two full GPIOs (plus a few spare expansion ones), we would use 74HTC4052 chips to switch between expansion options (only one being usable at any one time, but software switchable).

OVMS_Unified_Expansion_Prototype.pdf

Design is not finalised, but used for prototype boards only at the moment.

knumat commented 1 year ago

@markwj I am a software developer and Bolt EUV owner, so I'd love to help with testing this and possibly a few minor development tasks. I just signed up for the developer mailing list.

IBUSOL commented 1 year ago

So this board: https://www.pcbway.com/project/shareproject/SWCAN_adapter_for_OVMS_b002c070.html doesn't work?

kssmll commented 1 year ago

So this board: https://www.pcbway.com/project/shareproject/SWCAN_adapter_for_OVMS_b002c070.html doesn't work?

Works (as of Nov 24, 2022) with this fix https://github.com/kssmll/Open-Vehicle-Monitoring-System-3/commit/e278043f148742d941c157ed0e0f2c4cf56997a2 https://github.com/kssmll/ovms-swcan-board

IBUSOL commented 1 year ago

Nice!

Noob question: how can I change OVMS this lines? Can't find a file edit option in OVMS. Just got my OVMS for a week and also bought the SWCAN adapter.

melaz commented 1 year ago

Where have you got SWCAN from?

IBUSOL commented 1 year ago

Sorry, bought should be: build The SWCAN adapter is built by PCBWAY. I'm unsure if this works. The minimum order quantity is 5, so I have 4 boards left.

melaz commented 1 year ago

Sorry, bought should be: build

The SWCAN adapter is built by PCBWAY.

I'm unsure if this works.

The minimum order quantity is 5, so I have 4 boards left.

Where are you located, can you sell me one?

IBUSOL commented 1 year ago

Netherlands, selling is no problem. Still not sure if the board is working. Hopefully @kssmll or someone else can tell me how i can change the code.

kssmll commented 1 year ago

Netherlands, selling is no problem. Still not sure if the board is working. Hopefully @kssmll or someone else can tell me how i can change the code.

You need to build your own configuration with the swcan module enabled (check swcan in configuration). See help for developers. Also, the code for your car must be use the swcan module. See Chevorlet Volt for example. Now swcan compilation is broken, so you need the fix from my fork.

IBUSOL commented 1 year ago

Netherlands, selling is no problem. Still not sure if the board is working. Hopefully @kssmll or someone else can tell me how i can change the code.

You need to build your own configuration with the swcan module enabled (check swcan in configuration). See help for developers. Also, the code for your car must be use the swcan module. See Chevorlet Volt for example. Now swcan compilation is broken, so you need the fix from my fork.

Can somebody help me with that? So a firmware file with SWCAN enabled and script changes? I will test the changes ;-)

IBUSOL commented 1 year ago

Just got a file form @kssmll (many thanks) Look very good!

Now I can:

Not working:

IBUSOL commented 11 months ago

If someone interested, contact me: i n f o @ b u i t e r o n l i n e . n l I have 4 left

melaz commented 10 months ago

If someone interested, contact me: i n f o @ b u i t e r o n l i n e . n l I have 4 left

Sent an email to you. Btw, remind, does your car has onstar?

noideas4thisname commented 7 months ago

Any updates on this? I just went through the experience of GMs app locking important functions behind a paywall and I want to replace everything. If there is a functional board for the Bolt EV, I'd be keenly interested in getting OVMS set up and working.

brocktice commented 7 months ago

I got the board from ibusol, just ordered the rest of the kit for my 2017 bolt ev. Once I have it and start wrapping my head around this I will post an update.

kallisti5 commented 7 months ago

Sorry, I can't be any more help on this one (Bolt EV has been sold). I definitely don't need my OVMS for my new vehicle (Rivian makes great software :wink: )

Good luck!

IBUSOL commented 7 months ago

Only 1 SWCAN unit available. For me: no reason to post something, it just works.

rbray89 commented 4 months ago

@brocktice

2017 bolt ev

Which kit did you order? And from what vendor?

rbray89 commented 4 months ago

@IBUSOL

Just got a file form @kssmll (many thanks) Look very good!

Did you have to modify the OVMS hardware or cabling?

IBUSOL commented 4 months ago

Last print is also sold. No SWCAN units left anymore.

horstt commented 1 month ago

Just bought an Ampera-e, would love to make it more connected! What is the current status, how useful is OVMS for the Ampera-e (Bolt) at the moment?