While we’re certainly not done untangling the ZOE ZE50 and new ZE40 (together called ZOE Ph2), we’re pretty confident we’ve cracked the basics fairly well.

ZOE Ph2 is a significantly different car than the old models and required additional code to access the car’s computers. We had to make changes in the CanSee dongle and the ELM327 (KONNWEI) dongle driver has much improved, also performance wise. And once again, lots and lots and lots of testing in cold winter nights on driveways, city streets and even road trips. While all this was going we’ve also been doing some internal refactoring to facilitate the different models in a less cluttered way, together with an improved process to do our research, read, finding the fields we need to make CanZE do it’s thing. All this despite the modest outside looking the same, so maybe we’re more impressed than you are!

Having said all that, our short term effort is clawing back on decreased stability that was introduced by all the code changes made in the last few months. Crashlytics which anonymously provides post-mortem information is a huge help and as I write this, all known crashes are tackled either in the current production release or ready for the next release, so please do update if you haven’t already. You, the thousands of end users are the heroes doing the cold harsh field testing. Thank you for that.

So what’s the speculative part? Well, with the Twingo EV now on the market we’ve had a bit of time to take a look and we can possibly make it work. This is not a promise: history taught us we couldn’t make the ZE50 work until enthusiastic and knowledgeable team members actually owning these cars were co-developing. But with above changes and already one enthusiastic tester in the field, we might just crack it. Still, it’s a tough cookie with slower research cycles. But who knows? If it works we could maybe add say a Twizy the same way? Even more speculation!

We’ve just released 1.55 to production which pushes a lot of dongle handling improvements already tested in beta1 and beta2, kinks out a few annoying crashes and bugs and adds or improves a few features.

We also did a lot of under-the-hood work to use the latest dependencies and improve readability and test-ability.

Finally a big thank you to GitHub user “landswellsong” for updating the Ukrainian and Russian translations.

As expected, many, mostly small issues emerged after 1.54 release. Over 30 commits have been made since. We just uploaded 1.55beta1 in the open beta track. The most important changes are:

  • A fix for getting DTCs for pre ZE50 cars
  • CCS charging for the ZE50!!
  • An Android compliant and much improved settings screen
  • Several KONNWEI optimizations
  • Many small fixes, including the pilot current for newer firmware in pre-ZE50 cars
  • Increased font size in graphs

As you can see, we’re not forgetting about the pre-ZE50 car drivers.

We’re very excited and would love to push this to the production track as soon as possible, so give it a spin.

It’s past midnight as I write this. After a few evenings virtual-team-testing and virtual-team-debugging mostly dormant ELM issues that sprang to life while working on ZE50 support, we now have a limited, though “official” production release with ZE50 support.

Please report issues to GitHub as usual, while our virtual team will sink away in virtual booze 😉

Pushing ourselves alsong, we’re far from done but will release in the production channel soon, even if far from all fields working for the ZE50.

Unfortunately, things area bit bumpy wen using the already slow KONNWEI 902 dongle. As we need to keep the gateway open, we hardly see three functional requests per second coming through. We might be able to optimize that further in a later stage, but success is not a given there, and it’s irritating. So if you are an electronics tinkerer, building a cansee dongle is more advised than ever. If not, we’re also investigating if we can finally make a jump to a branded, better, cheap, more potent dongle, possibly even on BLE. This will take time of course.

For those of you on the beta channel, you must have noticed the insane update speed. Things have been progressing at such a rate, it was useless to add blog entries. All ECU’s have now been added and you can play around with the firmware and alldata screens. Many regular fields have already been “ZE50-ified”, but there are still a lot to do. And there are a bunch that are simply not there anymore, so we might have to downscale a few things in CanZE for the ZE50, yet upscale others. Stay tuned, and if you are on the beta and running a ZE50, do contact the team on github to share! https://github.com/fesch/CanZE/issues

Thank you for your patience, and a very well deserved thank you to the new, relentlessly hard working new team members.

Late PS: if you are running a cansee dongle, you need to update it again. There was another bug found & fixed.

I am very happy and proud to announce that a small team of ZE50 owners with tons of technical talents coalesced the last week or so from all over Europe to take up where we left off what feels like ages ago on the ZE50. Leopold Baillard, Frederick Sommerfeld and Roberto Sonzogni caught up on the code in no time and started testing tons of fields on their ZE50’s. I can relate to the constant back and forth and sitting crammed with a laptop and cables in the cold, cold car.

We did some code cleanup and already added fields like the SOH. The pace is really high, and I just release our work in progress in the open beta. Feel free to punish it hard. Not much use yet in reporting “hey, this field doesn’t populate”, trust us, we know 😉 But fields that give weird values of course need to be addressed. As always, please use the issue tracker https://github.com/fesch/CanZE/issue if you do.

Google has changed it’s storage model starting Android 10. Starting the next production release and also Beta1.53-3, we will be following their lead, which means log files, TPMS set files and the _Research.csv file will all be stored in Android > data > lu.fisch.canze > files now.

Note: We will not transfer old files to the new folder, so if you want to maintain your TPMS IDs, you need to do some copy-pasting yourself, or simply (re)type the IDs and hit Save.

The new storage model has a strange quirk that is relevant for the _Research.csv file only. On some, if not all phones, a file can be written through a copy, can be deleted, but not overwritten. Best practice at this moment is to maintain your file on your PC, and when needed on the device, delete the old file there, then paste the new version.

Long time no see.

Given that CanZE does not support the Ph2 cars, I am pleasantly surprised to see uptake still grow albeit more slowly. The last year saw an average growth of 22.5% or roughly 1.7% per month. It makes sense I guess as the pool of “Ph1” cars is now (very) slowly going down, but the technically inclined or more daring number of drivers is probably going a bit up.

Speaking of daring, this brings me to my second point. Somehow the “Force crash” option, only there to test Google Crashlytics behavior, made it in production by mistake. While there is a warning, it seems everybody wants have a go at it at least once: in the last 30 days, it was done 123 times by 77 users, go figure! Pretty daring indeed because who knows, maybe it would have crashed the car 😉 Anyway, it has affected crash statistics pretty badly and we’re way over what Google deems “bad behavior”. However, if I take that cause out, it’s down 85%. I am not going to do a new release over this one, but if you can resist, it’s appreciated.

Stay healthy, stay safe.