As you probably noticed, a lot of work is being done. We’re gearing up for a new release again.

  • Added total kWh and charge counts in the (experimental) Charging history screen. Very useful if you are checking out a used ZOE.
  • Several bug fixes and internal improvements.
  • Some appearance cleanup.
  • Deleted Dutch language.

Some other announcements and tidbits

  • The usage of CanZE is growing more than 33% per 6 months.
  • Because of the frankly staggering numbers we’re now focusing more than we used to on usability, consistency and stability.
  • Largest countries (by far) are Germany, the UK and France, together more than 50% of the installs.
  • As a result, German, English and French are the installed default languages on over 70% of the CanZE users phones (meaning Android languages, not CanZE languages)

We are planning on discontinuing all but English, German and French language support and are in an active process of finding committed, tool based language maintainers for those. So if you want to become such a language maintainer (the named ones or another one), please contact us through the CanZE Github page.

After this release, it might be quiet for a while: while we urge anyone with even mild tinkering skills to build the CanSee dongle and dump the commercial one, we realize that over 99% of the users actually use and will keep on using those. We’re in a process of research and change to massively improve the stability of the ELM based dongles and we’re pretty sure most users will be very pleased when it’s done. However, it will take considerable time.

Quite a while ago I did a strictly theoretical calculation on ZOE’s acceleration. You can find the post here. The end result was 8.9 seconds. I think in reality it is somewhere between 11 and 13; I should really do a test for fun but I don’t have a free runway available for that.

Anyway, I did the calculations again for the R110 under the exact assumptions, and in addition assumed that the maximum power level during acceleration was 88 kW. I have no idea if this comes close.

Car starts it’s accelerates exactly like the Q210/R240/R90 models: 5.0 m/sΒ², but the R110 hits it’s (higher) power limit a bit later (2.36 seconds) and a bit faster (11.9 m/s). The remainder of the acceleration is at full power, reaching 100km/h (27.8 m/s) after a total of 7.6 seconds, roughly 14% (1.3 seconds) quicker. That 14% is probably pretty close to the real world difference.

It’s only been an week, but we feel the need for some changes to be rolled out

  • Fixed negative numbers in Trip (Driving)
  • Much faster startup if you use the new, fast CanSee dongle
  • Fixed an issue that mostly produced wrong numbers in miles mode
  • Implemented a “news” bar on the main screen we can use to alert users
  • Moved Leak currents to Technical and made it more reliable
  • Fixed values not displaying in the experimental BCB screen

The trip function basically gives you a “Trip C”. Reset it by tapping it’s value area. It relies on trip B values supplied by the car so if you reset Trip B in the car, Trip C needs to be reset.

BCB and Leak Currents are helpful tools to assess charging problems. Note that HF Leak currents should not exceed 300 mA (preferably significantly lower), and that Ground resistance cannot exceed 150 or 200 ohms depending on model, and again, should preferably be significantly lower. On my home charger it is 11 ohms.

At this moment two rather serious discussions are going on in the issues section for CanZE to which I’d like to draw your attention and invite to participate.

First is the multi-language functionality. We, the current developers decided we are not willing and able to maintain the current language versions. Basically our stance is: own or remove. We maintain the app in English, but almost all strings are stored in separate, language sensitive XML files. I have maintained the Dutch version, but a quick check in the Dutch ZOE forum didn’t show any interest so we will ditch it in the next release. For the other languages (FR, DE, SL and ES), we need owners who are willing and able to maintain the language file, in XML and using GIT for version management. From our side, we can postpone anything but “crash” releases by say a week for language updates. Without a serious and committed owner for each language, we will remove it and keep doing so in the future. The app will default to English. To be honest, we see this as a one way street. Please comment if you want in the specific issue thread only.

Second is online data logging. We have written about our stance several times, but the truth is, it is a recurring issue in the comments, in some fora and also a few times in actual development. I have written my personal thoughts about it in the open issue here. This is not cast in stone, but it hints how far I am willing to go myself in terms of development effort and preference regarding architecture. Serious input is appreciated, also on the issue thread on github please.

Thanks for your input.

Today I’ve been building two more CanSee dongles. As the case is slightly different than the one of my development build, the screws don’t fit, so I needed to tape the cases, but the dongles do work, despite of the tape πŸ˜‰

These two babies are definitely test builds, meaning that I experimented a lot on how to put the different elements together, putting them in the wrong order, placed them upside-down and all that kind of stuff that occurs while experimenting.

But they are operational πŸ˜‰

Anyone interested in getting one?

Just be warned: I’m not a professional and doing this just for fun, so the risk is fully yours! Although I’ve tested them in my car (which did not blew up … uff) I give no warranty and will not be responsible of whatever you do with the dongle.

The next release of CanZE for Android will be released in the next few hours. I won’t be bothering you with with the usual bug fixes and small improvements, major internal cleanup, nor with the polished up support for the CanSee Dongle, about which we’ve teased you already so much. Though it is worth mentioning that using that dongle made a few things go so fast we had to tweak a few things to avoid the proverbial drinking from a hose. A few things are notable though.

Our friends in the UK will hopefully find our miles support vastly improved, especially in the consumption and driving screen.

After years of head scratching and lacking the means to find the issue, we can now finally get to the BCB and pry out all of it’s DTCs. As the BCB contains charging failure information, we’re really happy with this result. The issue was, as usual, completely trivial and implemented in maybe an hour so, but that’s always in hindsight.

We already announced TPMS. If you have a TPMS enabled car, get the IDs now before you have the tyres changed and then immediately again. The writing function is slightly under-tested with ELM dongles, so tread carefully. Feedback appreciated.

More is in the pipeline, which I think you will like.

While looking for some stretched screen, I came up with one of these new dash camera devices (1280×400 pixels). OK, the camera in itself doesn’t really interest me, because I only want to use it to make CanZE run on it, which is actually quite easy to do.

The only thing on that device that I do not like at all, is that the USB connector seams to be used only for power, so I can’t use it as development device out of the box but need to compile and transfer the app package in order to be able to install and run CanZE. πŸ™

But at least the PlayStore is available out of the box and all underlying Android settings can be reached easily …

Micro introduction: A CANbus, which is used to connect all computers in the car, can only carry chunks of 8 bytes plus an ID, called frames. All data used to actually operate the car, such as switch positions, speed, and hundreds of other parameters are stuffed into unique frames and send out freely, almost always at fixed timed intervals. This is why we call them free frames. There is zero standardization among car makers on the meaning of the ID and the bits inside. Commercial dongles are not really designed to pick these up and have a lot of trouble doing so reliably or at all. (hint: “Timeout on ATMA” anyone?)

To actually diagnose the car, far larger “messages” are required. Even a VIN doesn’t fit in one frame, let alone i.e. the data for the voltage heatmap. For this purpose there is a protocol called ISO-TP which allows you to send longer messages. A software layer chops it up in frames, adds some synchronization data and sends it on. Exactly the same happens for long answers. ISO-TP formatted messages are almost exclusively of the query-response type. One participant (say the dongle or the dealers diagnostics tool) requests something, a computer on the bus answers. Even entire firmware up- and downloads are performed this way.

Why is this relevant? The ELM327 based dongles have basic support for ISO-TP. It’s a pain to set up, but it works and it’s actually what they are designed to do. The caveat being it only works for receiving long messages. We never gave this a lot of thought as the queries we put to the car always fit one single frame. Until the TPMS requirement came up. Writing the valve ID’s requires sending a long message. We implemented “long message ISO-TP” from the get go in the CanSee DIY dongle, so after tedious debugging, we knew setting TPMS worked, but now we had to tweak the driver for the ELM327 dongles to support long messages.

Luckily we were not the first. This nut was already cracked by Cedric Paille, the hero who made DDT4All. By carefully going through the logs of DDT4All, we could modify our ELM327 driver to now also send long messages.Thank you Cedric! The crazy thing is that if you use a commercial dongle, it does quite a bit of the ISO-TP hard work for receiving frames, but for sending quite a bit more is done CanZE and suddenly it is timing-relevant. This is what actually held up a new CanZE release.

Teaser: we have more things up our sleeves regarding not just the CanSee DIY dongle but also for the good old ELM’s. But first: a few final test and then release. As always, stay tuned.

Too impatient to wait for the ODB2 cases to arrive, I reused my ELM732 WiFi dongle I didn’t use anyway, to build a second CanSee dongle.

LED’s have been put into a new order and the interior is somewhat cleaner. There is no second transceiver in yet, but a placeholder is present.

So stay tuned πŸ˜‰