GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — Why rename CAN to TWAI? (IDFGH-3645) · Issue #5580 · espressif/esp-idf

Why rename CAN to TWAI? (IDFGH-3645) #5580

New issue
Copy link
New issue
Copy link
Closed
Closed
Why rename CAN to TWAI? (IDFGH-3645)#5580
Copy link
Assignees
Dazza0

Description

@keelung-yang
keelung-yang
opened on Jul 13, 2020
Issue body actions

TWAI(Two-Wire Automotive Interface) is too generic to express CAN(Controller Area Network).
No need to rename a well known term accepted in industry.

Reacted by Collin Kidder, Fabian Peddinghaus, Alan C. Assis, Elliot Woods, Yvon DUTAPIS, Ben V. Brown, Fahad, David Robertson, Christoph Rackwitz, Tomas Mudrunka and 19 more
Reacted by Brian Horakh and ramiws

Activity

  1. github-actions
    changed the title [-]Why rename CAN to TWAI?[/-] [+]Why rename CAN to TWAI? (IDFGH-3645)[/+] on Jul 13, 2020
  2. Dazza0 commented on Jul 14, 2020

    @Dazza0
    Dazza0
    on Jul 14, 2020
    Contributor
    More actions

    @keelung-yang Since the S2 contains a TWAI controller, and future chips will likely contain it as well, the API was changed. However, the CAN API is currently still compatible and will not require any change in your software.

    Reacted by Gordon, Juan Boirazian and ViennaTom
  3. keelung-yang commented on Jul 14, 2020

    @keelung-yang
    keelung-yang
    on Jul 14, 2020
    Author
    More actions

    @Dazza0 Ok then, what's the difference between TWAI contoller an CAN controller? I checked ESP32-S2 Technical Reference Manual v0.5 and found nothing.

    CAN APIs are marked obsolete on latest master(main) branch now. And no mention when will be removed in latest document

    Reacted by Gordon
  4. Dazza0 commented on Jul 14, 2020

    @Dazza0
    Dazza0
    on Jul 14, 2020
    Contributor
    More actions

    @keelung-yang For pretty much all intents and purposes, the TWAI on the S2 is functionally equivalent with the CAN on the ESP32, so you the TWAI API is essentially equivalent to the CAN API. As for when the CAN API will be removed, there are no hard plans as for now, but according to the ESP-IDF versioning scheme, breaking changes are only allowed on major releases. Thus the earliest possible release where the CAN API will be removed will be v5.0

    Reacted by Gordon and Joël Schulz-Andres
  5. keelung-yang commented on Jul 15, 2020

    @keelung-yang
    keelung-yang
    on Jul 15, 2020
    Author
    More actions

    @Dazza0 There still no reason mentioned.
    People will confused for reinventing CAN, but no any inventing actually.
    Renaming is not reinventing.
    CAN should be repected.

    Reacted by nathanRamaNoodles, Fabian Peddinghaus, Elliot Woods, Christoph Rackwitz, Chris Ivarsson, rustyx, moritz bust, Gordon, Zach Zodkoy, Alaining and 12 more
  6. negativekelvin commented on Jul 15, 2020

    @negativekelvin
    negativekelvin
    on Jul 15, 2020
    Contributor
    More actions

    The reason is lawyers and intellectual property, do you want to pay more to call it CAN? I don't

    Reacted by chegewara, nathanRamaNoodles, Yvon DUTAPIS, Brian, Jamie, diverger, glococo, Matthew Kennedy, leeebo, moritz bust and 27 more
  7. Dazza0
    self-assigned this
    on Jul 30, 2020
  8. collin80 commented on Jul 30, 2020

    @collin80
    collin80
    on Jul 30, 2020 via email
    More actions
    Citation needed. I've never seen anyone claim you can't call CAN CAN. The original ESP32 calls it CAN. It's CAN. There doesn't seem to be any reason not to call it CAN. In fact, NOBODY ELSE seems to have ever renamed CAN. Why has Espressif done this? I agree with Keelung that this will do nothing but confuse absolutely everyone. What a horrible decision!
    …
    On Wed, Jul 15, 2020 at 5:23 PM negativekelvin ***@***.***> wrote: The reason is lawyers and intellectual property, do you want to pay more to call it CAN? I don't — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub <#5580 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AAQLWZO72PE3R5TMB6FLDF3R3YM5VANCNFSM4OYIEYQA> .
    Reacted by Ignacio Piera, András Szabó, Gordon, EmbeddedDevver, Joël Schulz-Andres, Robert Saramet, Paulo de Almeida, Dansenmansenhansen, Zachtos, zygimantasmik and 2 more
  9. negativekelvin commented on Jul 31, 2020

    @negativekelvin
    negativekelvin
    on Jul 31, 2020
    Contributor
    More actions

    https://en.m.wikipedia.org/wiki/CAN_bus#Licensing

    Reacted by Krzysztof, Brian Horakh, Fernando Carneiro, Paul Kahler, Brian, Michael, Christoph Rackwitz, Dan Mezhiborsky, diverger, Bktero and 20 more
    Reacted by Brian Horakh, Christoph Rackwitz, Dan Mezhiborsky, diverger, pavellzubkov, Alec Thilenius, markko67, Dinacel, Noak Palander and Nikolai
    Reacted by rustyx and ngzhiyang
    Reacted by Sukesh Ashok Kumar
  10. elasticdotventures commented on Aug 14, 2020

    @elasticdotventures
    elasticdotventures
    on Aug 14, 2020
    More actions

    Additional note - The TWAI controller is not compatible with ISO11898-1 FD Format frames, and will interpret such frames as errors. TWAI is effectively "CAN Classic" not CAN-FD which is what automotive industry & promoters such as STMicroelectronics, Infineon, NXP, Texas Instruments, Kvaser, Bosch, Daimler and GM wouldn't appreciate Espressif referring to their transceiver as "CAN" causing confusion.

    Most 'modern' vehicles produced in 2019/2020 will implement the CAN-FD specification.
    I just watched the defcon 2020 tesla hacking session and it seems the communication between gas pedal, brakes, and door locks were 100% can-bus controlled! However an ESP32 with TWAI transceiver won't plug into that! (** .. without an SPI or I2C CAN-FD 2.0 transceiver!) ... because "Classic CAN can't" lol.

    According to Wikipedia:
    CAN FD (Controller Area Network Flexible Data-Rate) is an extension to the original CAN bus protocol that was specified in ISO 11898-1. Developed in 2011 and released in 2012 by Bosch, CAN FD was developed to meet the need to increase the data transfer rate up to 5 times faster and with larger frame /message sizes for use in modern automotive Electronic Control Units (ECU)s. As in the classic CAN, CAN FD protocol is designed to reliably transmit and receive sensor data, control commands and to detect data errors between electronic sensor devices, controllers and microcontrollers.

    ISO11898-1 CAN FD shares the physical layer, with the CAN protocol as defined in the BOSCH CAN Specification 2.0 can dynamically switch to different data-rate and with larger or smaller message sizes.

    Enhanced features in CAN FD includes the capability to dynamically select and switch to faster or slower data rate, as and when required, and to pack more data within the same CAN frame / message and transport it over the CAN BUS / network in less time. Faster data speed and more data capacity enhancements results in several system operational advantages compared to the classic CAN. Using CAN FD, sensor and control data can be sent and received by the ECU (Electronic Control Unit) software much quicker. Commands issued by the executing ECU software reaches the output controller much faster. CAN FD is typically used in high performance ECUs of modern vehicles. A modern vehicle can have more than 70 ECUs that use CAN FD to exchange information over the CAN Bus when the engine is running or when the vehicle is moving.

    Reacted by dennis-soong, Germán Martín, Rajesh Kumbhakar, Anton Engman, rustyx, András Szabó, existedinnettw, EmbeddedDevver, Philipp Huth, Enrico Lumetti and 15 more
    Reacted by Raphael Pfaller and ViennaTom
    Reacted by Christoph Rackwitz
    Reacted by Waheed Barghouthi, Roman Valls Guimera and Germán Martín
  11. ppisa commented on Nov 30, 2020

    @ppisa
    ppisa
    on Nov 30, 2020
    More actions

    By the way, we can offer open-source, open-hardware CAN FD controller to Espressif http://canbus.pages.fel.cvut.cz/ . It is quite well tested, but it would require significant investment into certification and final round testing before integration. This implementation does not overcome problems of paying fees for these CAN FD patents which has not expired yet. The way to classic TWAI (CAN) is open now, when patents has expired. Problem is that single CAN only controller disrupts all CAN FD communication on the bus. We have modified SJA1000 OpenCores design which is able to detect CAN FD frames and at least ignore them (not cause their breaking). It would worth to extend Espressif TWAI controller to allow enable this feature. We have implemented it ourselves without any prior art consultations during 2017 but it is possible that somebody patented solution which covers used technique. If such claim does not exists or we can prove rearons to invalidate it then even this small enhancement would be really significant step forward for TWAI because it could coexist with CAN FD communication of other devices on the bus and stay in area not covered by BOSCH license.

    By the way, we can offer our older CANopen open-source framework project which could be ported and extended for Espressif environment. I would like to test ESP32-C3 due to its RISC-V base. I have knowledge and trust for RTEMS BSP implementation and I would like to use NuttX on the platform. I have worked on GNU/Linux CAN support before SocketCAN and some SocketCAN algorithms and drivers are reuse and attribute our preceeding LinCAN project. I CAN provide knowledge and coordination for QEMU CAN support which I have introduced with my university and GSoC students.

    Reacted by Dr. Mickey Lauer, Hays Chan, Wei and Sebastian Andersson
    Reacted by Paul Kahler, Brian, berlin4apk, Zachary J. Fields, leeebo, Sukesh Ashok Kumar, pavellzubkov, Paulo de Almeida, melonedo and Yu Yuan
    Reacted by Hamza Sengul
  12. phkahler commented on Jan 11, 2021

    @phkahler
    phkahler
    on Jan 11, 2021
    More actions

    Just because CAN-FD is on a vehicles does not mean every CAN bus is FD. There are multiple busses on a vehicle. Your OBD-II diagnostic port is probably still regular CAN.

  13. projectgus commented on Feb 2, 2021

    @projectgus
    projectgus
    on Feb 2, 2021
    Contributor
    More actions

    Closing as the question asked in the issue has been answered.

  14. projectgus
    closed this as completedon Feb 2, 2021
  15. timsterathome commented on Mar 24, 2021

    @timsterathome
    timsterathome
    on Mar 24, 2021
    More actions

    If it’s a J1939 based system then it’s standard CAN. I’ve never come across a CAN-FD device on any vehicle I’ve come across.

  16. kdschlosser commented on Oct 3, 2021

    @kdschlosser
    kdschlosser
    on Oct 3, 2021
    More actions

    I am not a lawyer and this is not legal advise in any way shape or form. This is for informational purposes and should be used to question the lawyers. I have not dug into the copyright or trademarks and this is what I am seeing from doing a brief look over of what is available on Bosch's website.

    1: TWAI (Two Wire Automotive Interface) as a name doesn't not correctly define the physical characteristics of the type of communications network it can be attached to. GM uses a data interface called SWCAN (Single Wire Controller Area Network), this is a low speed network that utilizes the CAN 1.0 specification and Expressif's TWAI does work with it. That is a naming convention conflict.

    2: Changing the name from CAN to TWAI doesn't change copyright infringement, If I copyright what an orange is and does and also the name "orange" and you decided to sell a repackaged version of it and call it an apple does that make it any less an orange? No it doesn't.

    Bosh has copyrighted the protocol specification along with the name "CAN". so the end game is there is still an issue either way.

    3: Now Bosch has made a blunder I will let you in on.
    http://www.bosch-semiconductors.com/ip-modules/can-ip-modules/can-protocol/
    Look at the location as shown on the webpage where you purchase the license.

    "In-vehicle communication IP".

    Expressif has no knowledge of where their products are being used, could be used in-vehicle or it could be used for comtrolling someone's home automation which places it outside of a vehicle. This then puts the burden of licensing onto the user or company that is using Expressif's products depending on the intended use of it.

    4: By changing the name to TWAI (Two Wire "Automotive" Interface) implies that the intended use of the interface is In-vehicle. Expressif has set themselves up as an easy target for a lawsuit by changing the name to TWAI, where as with it being named CAN it's intended use could be argued.

    5: You also have this possible scenario.
    I do not know what the internal workings of the ESP32 are. Did Expressif reinvent the wheel and design their own interface from the ground up? Or did they buy the technology from say Microchips and build it into the ESP32. If the latter was done then they would be covered under the license (if one has been purchased) the company that built the interface should be holding. If it is a ground up build then Expressif is going to have to purchase a license unless the intended use of the interface can be argued at which time it would then be placed on the company/individual that has purchased the product depending on what the company/individual is using it for.

    Reacted by Robert Saramet, MaksM, Paulo de Almeida, melonedo, alex-toybox, Marcin Anforowicz and eccentricOrange
  17. negativekelvin commented on Oct 4, 2021

    @negativekelvin
    negativekelvin
    on Oct 4, 2021
    Contributor
    More actions

    @kdschlosser An original compatible implementation that is not derived from any of Bosch's copyright IP would only be covered by patents, but they have expired. The name is covered by trademark. I am not sure what kind of dystopia you are living in where you can "copyright what an orange is and does"... well I guess we were there for a while with gene patents.

  18. kdschlosser commented on Oct 4, 2021

    @kdschlosser
    kdschlosser
    on Oct 4, 2021
    More actions

    @negativekelvin

    As of July 21st of 2020 CAN is no longer trademarked.
    https://tsdr.uspto.gov/documentviewer?caseId=sn79086293&docId=MP120210130054511#docIndex=0&page=1

    It is marked as abandoned. If the patents have expired then there is no need to call the interface TWAI and it can be reverted back to CAN.

    Reacted by Roman Valls Guimera, Gordon, Dansenmansenhansen, salman farooqui, melonedo, CraigT, alex-toybox and Marcin Anforowicz
    Reacted by Roman Valls Guimera and Rogério Cassares
  19. Dazza0 commented on Oct 11, 2021

    @Dazza0
    Dazza0
    on Oct 11, 2021
    Contributor
    More actions

    @kdschlosser Patent protects implementation of the protocol (CAN2.0) expired a while back (note FD patent is still in effect). The Trademark has recently expired but can be renewed by Bosch at their discretion (unless your suggesting the Espressif does a defensive registration the CAN trademark). Furthermore, TWAI as already be defensively registered to Espressif.

  20. kdschlosser commented on Oct 11, 2021

    @kdschlosser
    kdschlosser
    on Oct 11, 2021
    More actions

    no they cannot renew the trademark registration.

    Please note that the application is NOT eligible for revival pursuant to 37 C.F.R. §2.66.

    Reacted by alex-toybox
  21. igrr commented on Oct 11, 2021

    @igrr
    igrr
    on Oct 11, 2021
    Member
    More actions

    IIRC there was also this one, valid until 08/07/2029.

    @kdschlosser I appreciate your attempts to make sense of the situation and your valuable comments. While I'm not deeply familiar with all the details of the legal issues involved, all the points you have made so far have been considered by our legal team. If you have and additional feedback for them, the best way would be to reach them directly via [email protected].

  22. kdschlosser commented on Oct 11, 2021

    @kdschlosser
    kdschlosser
    on Oct 11, 2021
    More actions

    I personally do not care what it is called, it can be called "some type of communications" for all I care. I am pointing out the fact that any patents and trademarks to CAN, CAN 1.0 and CAN 2.0 have expired and there is no legal ramifications for using "CAN". That being said, the decision to change to "TWAI" probably took place before the trademark expired and I can understand why the decision was made. There is no reason to remove the use of "CAN" moving forward. I know it has been deprecated and is slated for removal at some point. From a legal standpoint it's actual removal no longer needs to be carried out. That is a decision that Expressif will make. I just wanted to pass along the information.

    Reacted by Sukesh Ashok Kumar, Gordon, Lubos Horacek, Rob, CraigT and trbt
  23. tonton81 commented on Feb 13, 2022

    @tonton81
    tonton81
    on Feb 13, 2022
    More actions

    so we should be looking for TWAI tranceivers now? :)

    Reacted by Paulo de Almeida, Rob and alex-toybox
  24. gril002 commented on Aug 1, 2022

    @gril002
    gril002
    on Aug 1, 2022
    More actions

    Sorry to be the bearer of bad news, but is seems the CAN trademark is not exactly expired. While the trademark seems to be no longer valid for most of the world, it seems to be still valid in Switzerland, Korea, Russia and Ukraine see: https://www3.wipo.int/madrid/monitor/en/showData.jsp?ID=ROM.1048262 . And on top of that the whole EU see: https://euipo.europa.eu/eSearch/#details/trademarks/008516817 . But I'm not a lawyer so that's at least from what I understand. And Bosch still offers to license you the trademark for a fee see: https://www.bosch-semiconductors.com/ip-modules/can-protocol-license/ - "Product benefits: The right to use the CAN trademark...". This of course still prevents anyone that wants to sell their products in those areas unable to use the CAN trademark.

    Reacted by Wei
  25. RufusVS commented on Jan 17, 2023

    @RufusVS
    RufusVS
    on Jan 17, 2023
    More actions

    When I try search for "can" I get way too many search hits that aren't relevant. I look forward to when the search term is "twai" rather than "can"!

    Reacted by ramiws, Juraj Michálek, Olivier 'reivilibre', Dansenmansenhansen, Michael Taggatz, Dinacel, Colin Catlin, ishyesh, Hays Chan, melonedo and 1 more
    Reacted by Wei
  26. janpub commented on Feb 2, 2024

    @janpub
    janpub
    on Feb 2, 2024
    More actions

    Please note a difference between "trademark", "intellectual property", "patent", "trade secret" etc. Under EU laws a protocol, documentation and other similar artifacts can be protected as intellectual property (much like music or computer software), however "interfaces" are not protected - so protocol compatible original implementations should be allowed.

    Reacted by Pythonic1985
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

  • @Dazza0
    Dazza0

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

    You are visitor 01402503 — GeezerVison does not store the pages you look up.
    Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.