{"id":18346254,"url":"https://github.com/infineon/tli4971-current-sensor","last_synced_at":"2025-04-06T08:33:20.215Z","repository":{"id":53720798,"uuid":"207770237","full_name":"Infineon/TLI4971-Current-Sensor","owner":"Infineon","description":"C++ library of Infineon's Magnetic Hall TLI4971 Current Sensor","archived":false,"fork":false,"pushed_at":"2024-06-17T11:12:50.000Z","size":739,"stargazers_count":6,"open_issues_count":0,"forks_count":5,"subscribers_count":9,"default_branch":"master","last_synced_at":"2024-06-17T12:39:15.426Z","etag":null,"topics":["arduino","arduino-library","makers","prototyping"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Infineon.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-09-11T09:07:54.000Z","updated_at":"2024-06-17T11:12:53.000Z","dependencies_parsed_at":"2024-06-17T12:54:29.810Z","dependency_job_id":null,"html_url":"https://github.com/Infineon/TLI4971-Current-Sensor","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Infineon%2FTLI4971-Current-Sensor","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Infineon%2FTLI4971-Current-Sensor/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Infineon%2FTLI4971-Current-Sensor/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Infineon%2FTLI4971-Current-Sensor/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Infineon","download_url":"https://codeload.github.com/Infineon/TLI4971-Current-Sensor/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223245058,"owners_count":17112572,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["arduino","arduino-library","makers","prototyping"],"created_at":"2024-11-05T21:10:58.655Z","updated_at":"2024-11-05T21:10:59.496Z","avatar_url":"https://github.com/Infineon.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# TLI4971-Current-Sensor\n\n[![Build Status](https://travis-ci.com/Infineon/TLI4971-Current-Sensor.svg?branch=master)](https://travis-ci.com/Infineon/TLI4971-Current-Sensor)\n\nC++ library of Infineon's **Magnetic Hall TLI4971 Current Sensor**\n\n 1. [Overview](#ovw)\n 2. [Supported Hardware](#s-hw)\n 3. [Software Requirements](#sw-req)\n 4. [Library Usage](#lib-usage)\n 5. [References](#refs)\n\n\u003ca name=\"ovw\"\u003e\u003c/a\u003e\n\n## 1. Overview\n\n### TLI4971 Description\n\nTLI4971 is a high precision miniature coreless magnetic current sensor for AC and DC measurements with analog interface and dual fast over-current detection outputs.\nInfineon's well-established and robust monolithic Hall technology enables accurate and highly linear measurement of currents with a full scale up to ±120A. All negative effects (saturation, hysteresis) commonly known from open loop sensors using flux concentration techniques are avoided. The sensor is equipped with internal self-diagnostic feature.\n\nTypical applications are electrical drives (up to 690V), current monitoring, chargers, photovoltaic, general purpose inverters, power supplies, overload and over-current detection. The digitally assisted analog concept of TLI4971 offers superior stability over temperature and lifetime thanks to the proprietary digital stress and temperature compensation. The differential measurement principle allows great stray field suppression for operation in harsh environments. The integrated primary conductor (current rail) with very low insertion resistance minimizes the power loss and enables miniaturization of sensing circuitry. A small 8mm x 8mm leadless package (QFN-like) allows for standard SMD assembly. \nTwo separate interfae pins (OCD) provide a fast output signal in case a current exceeds a pre-set threshold. The sensor is shipped as a full calibrated product without requiring any customer end-of-line calibration.\n\nThe high configurability enables customization for a wide variety of applications. All user-programmable parameters such as OCD thresholds, blanking times and output configuration mode are stored in an embedded EEPROM memory. Programming of the memory can be performed in-situ through a Serial Inspection and Configuration Interface (SICI).\n\n\u003cimg src=\"docs/img/tli4971-ic-package.png\" height=\"110px\"\u003e \n\n### TLI4971 Features \n\n* Smallest form factor, 8x8mm SMD, for easy integration and board area saving\n* Single supply voltage, 3.1V to 3.5V\n* High accurate, scalable, DC \u0026 AC current sensing\n* Full scale up to ±120 A\n* Bandwidth greater than 120kHz enables wide range of applications\n* Low phase delay (\u003c 48° at bandwidth frequency) for easy closed loop control\n* Very low sensitivity error over temperature (2.5%)\n* Excellent stability of offset over temperature and lifetime.\n* Integrated shield provides high robustness to voltage slew rates up to 10V/ns\n* Galvanic functional isolation up to 1150V peak VIORM. Partial discharge capability of at least 1200V.\n* Differential sensor principle ensures superior magnetic stray field suppression\n* Two independent fast Over-Current Detection (OCD) pins with configurable thresholds enable protection mechanisms for power circuitry (typical \u003c 1.5μs)\n* Ratiometric and non ratiometric analog output\n* Precalibrated\n\n### TLI4971 Applications\n\nThe TLI4971 is suitable for AC as well as DC current measurement applications:\n* Electrical drives\n* Current monitoring\n* Chargers\n* Photovoltaic \u0026 general purpose inverters\n* Power supplies (SMPS)\n* Overload and over-current detection\n\n\u003ca name=\"s-hw\"\u003e\u003c/a\u003e\n\n## 2. Supported Hardware\n\n### TLI4971 Shield2Go\nThe library has been customized for the **TLI4971** modular Shield2Go and the Arduino environment. \n\n\u003cimg src=\"docs/img/tli4971-s2go.png\" width=\"200px\"\u003e\n\nThe complete documentation as schematic and pinout diagram of the boards is included in the **Quick Start Guide**:\n* [TLI4971 S2Go](https://www.infineon.com/dgdl/Infineon-TLI4971_S2Go_Arduino_Quick_Start-GettingStarted-v01_00-EN.pdf?fileId=5546d46270c4f93e0170f36156157dfc) \n\n### Verified Hardware Platforms\n\nThe library examples have been built and successfully executed on the following hardware platforms:\n\nMCU Platforms |\n---           |\n[XMC 2Go](https://www.infineon.com/cms/en/product/evaluation-boards/kit_xmc_2go_xmc1100_v1/) | \n[XMC1100 Boot Kit](https://www.infineon.com/cms/en/product/evaluation-boards/kit_xmc11_boot_001/#ispnTab1) |\n[XMC4700 Relax Kit for 5V Shields](https://www.infineon.com/cms/en/product/evaluation-boards/kit_xmc47_relax_5v_ad_v1/) |\n[Arduino Uno Rev3](https://store.arduino.cc/arduino-uno-rev3) |   \n\nThe Shield2Go form factor is designed to be stacked directly into the XCM 2Go microcontroller board. The [MyIoT Adapter Shield](https://www.infineon.com/cms/en/product/evaluation-boards/my-iot-adapter/) can be used to attach the Shield2Go with any Arduino UNO hardware compatible boards. \n\n\u003cimg src=\"docs/img/xmc2go.jpg\" height=\"70px\"\u003e\u003cimg src=\"https://www.infineon.com/export/sites/default/media/products/Microcontrollers/devel_tools_SW/XMC1100_Boot-Kit.jpg_620533323.jpg\" height=\"120px\"\u003e\n\nThe firmware pin allocation is configured for the usage of **Socket 1** of the MyIoT Adapter Shield. The **Socket 2/3 configuration is not available**.\n\n\u003cimg src=\"https://www.infineon.com/export/sites/default/_images/product/evaluation-boards/Shield2Go_Adapter_board_top_view.jpg_1889680109.jpg\" width=\"150px\"\u003e\n\nCheck the [Quick Start Guide](https://www.infineon.com/dgdl/Infineon-quick_starter_guide-Shield2Go_MY_IoT_Adapter-GS-v01_00-EN.pdf?fileId=5546d462677d0f460167bbdbd8521af9) for the complete information and pinout diagram of the MyIoT adapter.\n\n#### Additional hardware platforms \n\nThe library is meant to be directly compatible with any other Arduino UNO platforms. Any new validated hardware platform will be added to the MCU Platforms list above.\n\nFor any other custom configuration, please check the specific PCB documentation. The information about the IC components can be found in their respective datasheets [TLI4971](https://www.infineon.com/dgdl/Infineon-TLI4971-A120T5-E0001-DataSheet-v01_00-EN.pdf?fileId=5546d462700c0ae6017034d731621b09), and the overall Infineon´s [Current Sensors documentation](https://www.infineon.com/cms/en/product/sensor/current-sensors/) on the Infineon website. \n\n\u003ca name=\"sw-req\"\u003e\u003c/a\u003e\n\n## 3. Software Requirements\n\n### Supported Toolchain Software \n\nThe library examples has been built successfully with the following toolchain software:\n\nFramework | IDE         | Versions                    | MCU Platform Core Libs        | Versions  \n---       | ---         |---                          | ---                           |--- \nArduino   | Arduino IDE | 1.8.9                       | [XMC for Arduino](https://github.com/Infineon/XMC-for-Arduino)     | 1.2.1     \nArduino   | PlatformIO  | Home 2.0.2·Core + 4.0.0a8   | [Infineon XMC](https://github.com/Infineon/platformio-infineonxmc) | 1.1.2 \n\n### Software Dependencies\n\nThe official Arduino UNO platform, the library [One Wire](https://github.com/PaulStoffregen/OneWire) is required. Please install it before using the TLI4971 library. \nFor XMC microntroller platforms, no other dependencies than the **MCU Platform Core Libs** exist (check how to install them in the Library Usage [section](#lib-usage)).\n\n\u003ca name=\"lib-usage\"\u003e\u003c/a\u003e\n\n## 4. Library Usage\n\n### Source Code Documentation\n\nFind the source code documentation in **Doxygen** format on the following [link](https://infineon.github.io/TLI4971-Current-Sensor/).\n\n### Arduino IDE\n\nIf you are new to Arduino IDE, please [download](https://www.arduino.cc/en/Main/Software) and install it first.\n\nThe official Arduino Boards are already available in the IDE, but other third party boards as the Infineon XMC MCU based need to be explicitly included. Follow the instructions in the [link](https://github.com/Infineon/XMC-for-Arduino#installation-instructions) to add the XMC board family to Arduino. Once installed, you can select the one of the supported board from the menu *Tools \u003e Board:...* and configure its parameters.\n\nThen we simply need to install the library to use it in your project:\n\n1. **Install the library**. Download this library as a .zip file (get the latest release version [here]()). Install the library in the Arduino IDE in the menu *Sketch \u003e Include Library \u003e Add .ZIP library*.\n\n2. **Include it in your sketch**. With the library installed in the Arduino IDE, you can include it from the menu \"Sketch \u003e Include Library \u003e TLI4071-Current-Sensor\". The header ``` #include \u003cTLI4971.h\u003e ``` will be added to your sketch. You can also open and test one of the examples provided in  *File \u003e Examples \u003e TLI4971-Current-Sensor* (find an example in the [Demo Application Example](#demo-ex) section).\n\n### PlatformIO \n\nIf you are new to PlatformIO, download and install first Visual Studio Code and the PlatformIO plugin. Please follow the instructions on the [official website](https://docs.platformio.org/en/latest/ide/pioide.html). Then go through [this tutorial](https://diyprojects.io/install-ide-platformio-extension-visual-studio-code-vscode-windows-32-bit-linux/#.XOVQP44zYnI) to get started with PlatformIO in VSCode and create a new project. \n\nWith the project created, now the library and its dependencies can be configured in the ***Platform.ini* Project File**. This file, located in the project root folder, includes one (or several) building environments *[env:__]*. In the *environment* section, the platform, board, and framework are specified. PlatformIO will take care of downloading and installing all dependencies.\nIn the following example, we use the XMC 2Go Evaluation Kit (only available for Arduino):\n\n```\n[env:xmc1100_xmc2go]\nplatform = infineonxmc\nboard = xmc1100_xmc2go\nframework = arduino\n\nlib_deps =\n# Using a library name\nTLI4971-Current-Sensor\n    \n# Using the repository URL\n    https://github.com/Infineon/TLI4971-Current-Sensor.git#master\n```\n\n\u003ca name=\"refs\"\u003e\u003c/a\u003e  \n\n## 6. References\n\n### Related Products\n\n* [TLI4971](https://www.infineon.com/cms/en/product/sensor/current-sensors/tli4971-a120t5-e0001/)\n* [TLI4971 S2Go](https://www.infineon.com/cms/en/product/evaluation-boards/s2go_cur-sense_tli4971/)\n* [XMC 2Go](https://www.infineon.com/cms/en/product/evaluation-boards/kit_xmc_2go_xmc1100_v1/) \n* [XMC1100 Boot Kit](https://www.infineon.com/cms/en/product/evaluation-boards/kit_xmc11_boot_001/#ispnTab1) \n* [XMC4700 Relax Kit for 5V Shields](https://www.infineon.com/cms/en/product/evaluation-boards/kit_xmc47_relax_5v_ad_v1/) \n* [Arduino Uno Rev3](https://store.arduino.cc/arduino-uno-rev3) \n\n### Related Repositories\n - [Infineon Github](https://github.com/Infineon)\n - [XMC for Arduino](https://github.com/Infineon/XMC-for-Arduino)\n - [Infineon XMC Platformio](https://github.com/Infineon/platformio-infineonxmc)\n\n### Useful Links\n - [Infineon for Makers](https://www.infineon.com/cms/en/tools/landing/infineon-for-makers/)\n - [Arduino](https://www.arduino.cc/)\n - [PlatformIO](https://platformio.org/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finfineon%2Ftli4971-current-sensor","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Finfineon%2Ftli4971-current-sensor","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finfineon%2Ftli4971-current-sensor/lists"}