A few weeks ago we announced a new release of CanSee. After running it for quite a bit, it’s now time for a true release. As said in the linked announcement, it is truly significantly faster and more stable.

If you have made your own version, you need to merge the changes, or (after checking with this release) issue a pull request so we can incorporate your changes, that have to be non-breaking and configurable of course.

Warning: this is a geek post pertaining to the CanSee dongle, not CanZE, nor the ELM style dongles.

In the CanSee design we’ve specified the SN65HVD23x chip to translate the micro-controller’s logic levels to the CANbus. The beauty of this series of chips is that it runs on 3.3 volt, thus requiring no level shifting and only one supply rail. As reported earlier we’ve seen many bad chips though. Lately I have been involved in a commercial project and we selected the same chip for the same reason. To make a very long (debugging) story short, faulty chips bit us again, and these were sourced through a reputable PCB manufacturer. I also received a few chips from a friend and again, one was bad. Either there is a huge manufacturing problem, or there is a massive batch of fake chips on the market, or these chips are extremely prone to damage.

This problem has been haunting us for well over a year now and after wasting many, many hours again sifting through chips, re-soldering, messing with the firmware, and countless other botches, the camel’s back has now definitely broken. I am changing the public design to set the DC-DC converter’s voltage to 5V, use that to supply the development board AND the alternative transceiver chip (an NXP TJA1050). I’ll also add two resistors to level-shift the signal from the transceiver to the ESP32.

We’ve made a significant change to the CanSee dongle firmware. Nothing is visible from the outside of course, but internally, the CANbus driver we used earlier has been replaced in it’s entirety with the native driver supplied by Espressif, the supplier of the ESP32 micro-controller used in a CanSee dongle. This solves a problem when using the most recent wafer versions of the ESP32 (v3) with the bus speed, and improves stability significantly.

This change is published in the development branch of CanSee and under test right now. Feel free to grab it and give it a spin. If we don’t encounter issues it will be released to production in a few weeks.

For those of you wanting to delve into the technical nitty gritty of things, here is the explanation. If you are into the ESP32, using it’s CANbus controller, and doing so using the Arduino framework, I would urge you to have a good look at that comment and it’s follow up. It took me way too long and way too much head scratching before I ran into that post and have my “ah-ha” moment.

Growth has slowed down a bit but that doesn’t mean we’re not baffled to find our app on so many devices! This week we broke through CanZE being installed on 9000 devices. Google’s definition is: “The number of active devices that the app is installed on. An active device is one that has been turned on at least once in the previous 30 days”.

If you have copied the code for the Node-Red implementation of the Renault API, be aware that the the kamereon_api key has changed. A few clever people figured out they are distributed using Google Firebase instead of in the code of the app, so decompiling is now useless. However, it’s pretty much all over the internet now, so here is a link to as far as I could quickly follow back.

BTW, there are now many more implementations for Node-Red.

Quick update. Last week saw a huge 3.4% uptake of users, or more precisely, “devices that have been turned on in the last 30 days and have CanZE installed”. This is twice the usual uptake in a month! As a result, we’ve handily past 8.000 users. I have not taken the effort to investigate if there is a specific reason such as a review in a popular channel, but in any case: Thank you!

Allow me to also do a mild vent. Reviews on the Google Play are very often super positive which we of course appreciate a lot, but now and then somebody slips in a 1 point rating with a “It doesn’t work with my car” review. No details, and never a response to a reply (which we always do). I checked, and Google Play does a notification on the device if a reply by the developer is issued. It’s a very frustrating endeavor. So, if you ever run into an issue, please report it on github: we do take pride in ironing out kinks! Feel free though to direct praise to Google Play 😉

Speaking of kinks: almost a full week with zero crashes now. Fingers crossed.