{"id":2912,"date":"2023-04-14T16:44:55","date_gmt":"2023-04-14T15:44:55","guid":{"rendered":"https:\/\/avionicsduino.com\/?page_id=2912"},"modified":"2025-04-24T21:33:13","modified_gmt":"2025-04-24T20:33:13","slug":"teensy-micro-ems","status":"publish","type":"page","link":"https:\/\/avionicsduino.com\/index.php\/en\/teensy-micro-ems\/","title":{"rendered":"Teensy Micro-EMS"},"content":{"rendered":"\n<p style=\"font-size:10px\">(Teensy Micro-EMS: last updated by Benjamin on May 19, 2024)<\/p>\n\n\n\n<p>A Teensy 4.0 board is the heart of this completely redesigned version of the Micro-EMS. This new system provides the same functions as the <a href=\"https:\/\/avionicsduino.com\/index.php\/en\/open-source-avionics-2\/micro-ems-arduino\/\" title=\"Arduino Micro-EMS\">Arduino Micro-EMS<\/a>. Namely RPM measurement, fuel level and flow management, and battery voltage monitoring, with an \u00ab\u00a0Idiot Lamp.\u00a0\u00bb The Arduino Micro-EMS was initially designed as a stand-alone instrument, then evolved with the addition of a connection to the aircraft CAN network. This new version was designed from the outset with an <a href=\"https:\/\/files.stockflightsystems.com\/_5_CANaerospace\/Presentation_OSH_2009.pdf\" target=\"_blank\" rel=\"noopener\" title=\"Integrated modular avionics\">integrated modular avionics<\/a> perspective.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Presentation of the Teensy Micro-EMS<\/h3>\n\n\n\n<p>Therefore, the Teensy Micro-EMS module should be considered an integral part of the Engine Monitoring System, or EMS, whose general architecture is shown in Figure 1. The Micro-EMS occupies the upper part of this diagram. The EMS main unit is at the lower part. There have been several successive versions of the printed circuit board (PCB), and the test flights have made it possible to gradually improve and correct the initial defects, particularly of the rev counter function. The PCB shown on this page is version 4.1. The current software version is 4.04.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1471\" height=\"942\" src=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/Architecture_EMS_02ter.png\" alt=\"\" class=\"wp-image-3297\" srcset=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/Architecture_EMS_02ter.png 1471w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/Architecture_EMS_02ter-300x192.png 300w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/Architecture_EMS_02ter-1024x656.png 1024w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/Architecture_EMS_02ter-768x492.png 768w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/Architecture_EMS_02ter-1200x768.png 1200w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><figcaption class=\"wp-element-caption\">Figure 1: General architecture of the AvionicsDuino EMS<\/figcaption><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">Description of the system<\/h3>\n\n\n\n<p>This new Micro-EMS is mounted in the same MCR Sportster, replacing the previous one (see figures 2 to 7 below). The first Teensy version (PCB v 3.1) was installed in April 2023. Subsequently, the system was extensively flight-tested, which led to its modification and improvement. The current version (PCB v 4.1) is mature and has been in flight since October 2023.<\/p>\n\n\n\n<p>It is more compact. A small 128\u00d7128 monochrome OLED display has replaced previous versions&rsquo; 2.2-inch Adafruit TFT display. This display is actually an accessory display. The 5\u2033 display of the EMS is the prominent display of the system. A rotary encoder has been added to allow navigation in a straightforward menu system. An HC-05 Bluetooth module allows in-flight recordings on a smartphone or tablet with <a href=\"https:\/\/play.google.com\/store\/apps\/details?id=de.kai_morich.serial_bluetooth_terminal&amp;hl=fr&amp;gl=US\" target=\"_blank\" rel=\"noopener\" title=\"Serial Bluetooth Terminal\">Serial  Bluetooth Terminal<\/a>. This last function is incidental. Based on an ESP32 board connected to the CAN bus, the global <a href=\"https:\/\/avionicsduino.com\/index.php\/en\/flight-data-recorder\/\" title=\"Serial Bluetooth Terminal\">flight data recorder<\/a> is much more efficient and reliable.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Photo gallery<\/h3>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"666\" src=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/MicroEMSv4EnVol02.jpg\" alt=\"\" class=\"wp-image-3404\" srcset=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/MicroEMSv4EnVol02.jpg 1024w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/MicroEMSv4EnVol02-300x195.jpg 300w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/MicroEMSv4EnVol02-768x500.jpg 768w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><figcaption class=\"wp-element-caption\">Figure 2: The latest version (PCB v 4.1) of the Teensy micro-EMS in flight. A rotary encoder allows for adjusting the fuel level at the start of the flight and setting the fuel flow K factor. The small OLED display is an accessory display of the EMS system. The main display is shown in Figure 3. It can be seen the green \u201cidiot lamp\u201d and the two switches, one to power the system and the other for selecting the rev counter source.<\/figcaption><\/figure>\n<\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"602\" src=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/EcranEMS.jpg\" alt=\"\" class=\"wp-image-3399\" srcset=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/EcranEMS.jpg 1024w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/EcranEMS-300x176.jpg 300w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/EcranEMS-768x452.jpg 768w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><figcaption class=\"wp-element-caption\">Figure 3: EMS main unit screen: all micro-EMS data is also displayed here.<\/figcaption><\/figure>\n<\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"709\" src=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/PCBmicroEMSteensyv4.jpg\" alt=\"\" class=\"wp-image-3400\" srcset=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/PCBmicroEMSteensyv4.jpg 1024w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/PCBmicroEMSteensyv4-300x208.jpg 300w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/PCBmicroEMSteensyv4-768x532.jpg 768w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><figcaption class=\"wp-element-caption\">Figure 4: Version 4.1 printed circuit board with soldered SMD components. Note the place to solder the connector of the HC-05 Bluetooth module. Only the middle 4 pins of this 6-pin module are used. The module must be previously configured with another microcontroller.<\/figcaption><\/figure>\n<\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"652\" src=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/boitierMicroEMSteensyv4_01.jpg.jpg\" alt=\"\" class=\"wp-image-3403\" srcset=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/boitierMicroEMSteensyv4_01.jpg.jpg 1024w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/boitierMicroEMSteensyv4_01.jpg-300x191.jpg 300w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/boitierMicroEMSteensyv4_01.jpg-768x489.jpg 768w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><figcaption class=\"wp-element-caption\">Figure 5: The printed circuit board positioned in its open aluminum case. The antenna of the Bluetooth module is visible at the bottom of the PCB. Note the shielding of the part that processes the high-voltage analog signal from the variable reluctance sensor and the shielded cable that carries this signal inside the case.<\/figcaption><\/figure>\n<\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"782\" src=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/boitierMicroEMSteensyv4_02.jpg.jpg\" alt=\"\" class=\"wp-image-3402\" srcset=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/boitierMicroEMSteensyv4_02.jpg.jpg 1024w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/boitierMicroEMSteensyv4_02.jpg-300x229.jpg 300w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/boitierMicroEMSteensyv4_02.jpg-768x587.jpg 768w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><figcaption class=\"wp-element-caption\">Figure 6: The powered micro-EMS on the bench.<\/figcaption><\/figure>\n<\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"883\" src=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/boitierMicroEMSteensyv4_03.jpg.jpg\" alt=\"\" class=\"wp-image-3401\" srcset=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/boitierMicroEMSteensyv4_03.jpg.jpg 1024w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/boitierMicroEMSteensyv4_03.jpg-300x259.jpg 300w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/boitierMicroEMSteensyv4_03.jpg-768x662.jpg 768w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><figcaption class=\"wp-element-caption\">Figure 7: The micro-EMS in its closed case. The USB cable allows for making firmware updates without dismantling anything.<\/figcaption><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">Download links<\/h3>\n\n\n\n<p><a href=\"https:\/\/github.com\/bfrmd\/Micro-EMS-AvionicsDuino\" target=\"_blank\" rel=\"noreferrer noopener\" title=\"Download software on GitHub\">Download software on GitHub<\/a>. (The Micro_EMS_V4_06.ino file, or later, must be used with version 4.1 of the PCB. The Micro-EMS_V3_2.ino file is left on the GitHub repository to help the reader who would like to take inspiration from it to implement a graphics TFT display instead of the small 128 x 128 OLED)<\/p>\n\n\n\n<div class=\"wp-block-file\"><a id=\"wp-block-file--media-c2fd41bc-2254-4e95-9404-e6c21eb1fc0e\" href=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/Micro-EMS_V4_1.zip\">Download Teensy Micro-EMS PCB v 4.1 Kicad files.<\/a><\/div>\n\n\n\n<div class=\"wp-block-file\"><a id=\"wp-block-file--media-6e6371c5-be49-48f2-9d0e-c6f0ca98e763\" href=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/Micro-EMS_V4_1_Gerber_and_drill_files.zip\">Download Teensy Micro-EMS PCB v 4.1 Gerber and drill files.<\/a><\/div>\n\n\n\n<div class=\"wp-block-file\"><a id=\"wp-block-file--media-86305647-ce3e-4750-b4c1-743ae437b339\" href=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/Micro-EMS_V4_1_BOM.zip\">Download Teensy Micro-EMS PCB v 4.1 BOM<\/a><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Micro-EMS connections to aircraft circuits<\/h3>\n\n\n\n<p>The connections of the Micro-EMS to the aircraft circuits are shown in Figure 8 (hover the mouse pointer over the image to enlarge it). These connections use a 9-pin D-SUB connector.<\/p>\n\n\n<div class=\"wp-block-image is-style-zoooom\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1412\" height=\"906\" src=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/Micro-EMS_Teensy_Aircraft_Connections.png\" alt=\"\" class=\"wp-image-3421\" srcset=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/Micro-EMS_Teensy_Aircraft_Connections.png 1412w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/Micro-EMS_Teensy_Aircraft_Connections-300x192.png 300w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/Micro-EMS_Teensy_Aircraft_Connections-1024x657.png 1024w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/Micro-EMS_Teensy_Aircraft_Connections-768x493.png 768w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/Micro-EMS_Teensy_Aircraft_Connections-1200x770.png 1200w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><figcaption class=\"wp-element-caption\">Figure 8: <em>Micro-EMS connections to aircraft circuits.<\/em><\/figcaption><\/figure>\n<\/div>\n\n\n<h6 class=\"wp-block-heading\">12-14 volts power supply<\/h6>\n\n\n\n<p>The power supply (D-Sub pin 3) comes directly from the aircraft battery through 2 fuse-links and the <a href=\"https:\/\/avionicsduino.com\/index.php\/en\/current-measurement\/\" target=\"_blank\" rel=\"noreferrer noopener\" title=\"Current measurement\">shunt in position 2<\/a>. A switch on the instrument panel, not shown in Figure 8, allows turning the Micro-EMS ON or OFF. The battery itself is also equipped with a battery disconnect switch. This way of powering the Micro-EMS allows the battery voltage to be monitored without setting the aircraft&rsquo;s master switch to ON. The ground is connected to pin 7 of the D-Sub.<\/p>\n\n\n\n<h6 class=\"wp-block-heading\">Tachometer sources<\/h6>\n\n\n\n<p>Two possible sources (D-Sub pins 4 and 5) for the tachometer function are the variable reluctance sensor of the Rotax engine or the <em>Tachometer <\/em>output of one of the two <a href=\"https:\/\/www.ignitech.cz\/en\/vyrobky\/dccdip2\/dccdip2.htm\" target=\"_blank\" rel=\"noopener\" title=\"Ignitech electronic ignition unit\">Ignitech electronic ignition units<\/a>.<\/p>\n\n\n\n<h6 class=\"wp-block-heading\">Fuel flow sensor<\/h6>\n\n\n\n<p>The <em>Signal<\/em> output of the <a href=\"https:\/\/www.iflyei.com\/wp-content\/uploads\/FT-60-Info-Rev-F.pdf\" target=\"_blank\" rel=\"noopener\" title=\"FT-60 Red Cube fuel flow sensor\">FT-60 Red Cube fuel flow sensor<\/a> goes through the D-Sub pin 6. The pull-up resistor required on this sensor&rsquo;s \u201copen collector\u201d output is included on the Micro-EMS printed circuit board.<\/p>\n\n\n\n<h6 class=\"wp-block-heading\">Fuel sender<\/h6>\n\n\n\n<p>The Micro-EMS is designed to operate with a resistive fuel sender. The one fitted to the aircraft is a 35 cm <a href=\"https:\/\/wema.co.uk\/products\/fuel-sender?variant=41998824020\" target=\"_blank\" rel=\"noopener\" title=\"WEMA S3 fuel sender\">WEMA S3<\/a> high-resolution resistive probe (0 to 190 Ohms). Its resistance varies between 0 ohms with an empty tank and 190 ohms with a full tank. The 29 reed switches of this probe ensure good resolution. Unlike capacitive probes, this probe is insensitive to the nature of the fuel: AVGAS 100LL, MOGAS, or a mixture of the two.<\/p>\n\n\n\n<p>The probe is used in series with a 220 Ohm resistor to form a voltage divider, and this divider is supplied with 5 volts by the D-Sub pin 8. The output of the voltage divider is applied to the D-Sub pin 9. The particularity of this assembly is that this resistor is located in the 3-pin connector of the probe itself so as not to risk killing the Teensy board.<\/p>\n\n\n\n<p>If this resistor were placed on the PCB, powering up inadvertently the system during a maintenance operation with a disconnected probe would directly apply a voltage of 5 volts to an analog pin of the Teensy board, which only tolerates 3.3 volts. A 100\u00b5F capacitor is also placed in this connector to dampen the rapid variations in the voltage at the probe&rsquo;s output linked to the ripples on the fuel surface.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Teensy Micro-EMS schematics<\/h3>\n\n\n\n<p>Figure 9 shows the schematics (hover the mouse pointer over the image to enlarge it). The system&rsquo;s \u201cbrain\u201d is a Teensy 4.0 board.<\/p>\n\n\n<div class=\"wp-block-image is-style-zoooom\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1562\" height=\"1073\" src=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/SchemaCircuitMicroEMSv4_1.png\" alt=\"\" class=\"wp-image-3427\" srcset=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/SchemaCircuitMicroEMSv4_1.png 1562w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/SchemaCircuitMicroEMSv4_1-300x206.png 300w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/SchemaCircuitMicroEMSv4_1-1024x703.png 1024w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/SchemaCircuitMicroEMSv4_1-768x528.png 768w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/SchemaCircuitMicroEMSv4_1-1536x1055.png 1536w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/SchemaCircuitMicroEMSv4_1-1200x824.png 1200w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><figcaption class=\"wp-element-caption\">Figure 9: <em>Teensy Micro-EMS v 4.1 schematics<\/em><\/figcaption><\/figure>\n<\/div>\n\n\n<h6 class=\"wp-block-heading\">5 volts power supply<\/h6>\n\n\n\n<p>The 5-volt source is an LM7805 linear regulator (U2). The current of approximately 200 mA drawn by the Micro-EMS, coupled with the significant voltage drop from 13.7 volts (with a running engine) to 5 volts, leads to substantial heating of this regulator, requiring adequate heatsinking. There are thermal vias under the LM7805 to facilitate thermal transfer to the PCB ground plane and a large aluminum spacer with thermal paste between the PCB and the case to transfer heat from the PCB to the aluminum case.<\/p>\n\n\n\n<h6 class=\"wp-block-heading\">3.3 volts power supply<\/h6>\n\n\n\n<p>The 3.3-volt output of the Teensy board could be insufficient on its own due to the load of the circuits to be powered. Therefore, a <a href=\"https:\/\/www.allaboutcircuits.com\/technical-articles\/how-to-buffer-an-op-amp-output-for-higher-current-part-1\/\" target=\"_blank\" rel=\"noopener\" title=\"How to Buffer an Op-Amp Output for Higher Current\">buffer<\/a> has been added to obtain the needed current without running any risk of a drop in the 3.3-volt reference voltage. Such a drop could disturb specific analog measurements. This buffer consists of an operational amplifier (U5) and a transistor (Q3).<\/p>\n\n\n\n<h6 class=\"wp-block-heading\">Battery voltage measurement <\/h6>\n\n\n\n<p>The voltage is first lowered by an appropriate voltage divider (R2 and R3) and then transmitted to the Teensy analog pin A9 via the operational amplifier U3 set up in the voltage follower configuration to protect A9 and match the impedances.<\/p>\n\n\n\n<h6 class=\"wp-block-heading\">Variable reluctance sensor signal conditioning<\/h6>\n\n\n\n<p>The high voltage analog signal from the Rotax variable reluctance sensor is processed by the specialized MAX9924 circuit (IC3), ensuring noise suppression and conversion to a square signal of 3.3 volts of amplitude with identical frequency. See the page on <a href=\"https:\/\/avionicsduino.com\/index.php\/en\/variable-reluctance-sensors-and-signal-conditioning\/\" title=\"Variable reluctance sensor and signal conditionning\">variable reluctance sensors and signal conditioning<\/a>, where the operation of the MAX9924 is explained in detail. The output signal from IC3 is applied via selector J11-JU1 to Teensy digital input pin 22, the only pin usable with the FreqMeasure library, which measures the signal period.<\/p>\n\n\n\n<h6 class=\"wp-block-heading\">Electronic ignition unit tacho output signal conditioning<\/h6>\n\n\n\n<p>The noisy roughly square signal of approximately 15 volts in amplitude from the Tacho output of the Ignitech electronic ignition unit is processed by a second MAX9924 (IC2) to eliminate noise and ensure conversion to a digital signal of 3.3 volts of amplitude, also applied to the Teensy digital input pin 22, via the J11-JU1 selector.<\/p>\n\n\n\n<h6 class=\"wp-block-heading\">Fuel flow sensor signal conditioning<\/h6>\n\n\n\n<p>A third MAX9924 (IC1) processes the fuel flow sensor signal. The 10k resistor R1 is a pull-up resistor for the open-drain output of the MAX9924. Resistor R18 (4.7k) is the pull-up resistor for the open-collector output of the Red Cube FT-60 flow sensor. The COUT output of the MAX9924 is connected to digital input pin 9 of the Teensy board, the only pin usable with the FreqCount library, which counts the pulses.<\/p>\n\n\n\n<h6 class=\"wp-block-heading\">Idiot lamp<\/h6>\n\n\n\n<p>The Q1 and Q2 MOSFET transistors are configured as switches for the RGB diode used as an idiot lamp. This LED draws a current higher (especially for the red color) than 4 mA, the maximum continuous current recommended for any digital outputs of the Teensy 4.1 board.<\/p>\n\n\n\n<h6 class=\"wp-block-heading\">CAN transceiver<\/h6>\n\n\n\n<p>The CAN transceiver MCP2562 (U1) is connected to the CAN2 controller output of the Teensy board (pins 0 and 1).<\/p>\n\n\n\n<h6 class=\"wp-block-heading\">OLED Display<\/h6>\n\n\n\n<p>The Adafruit OLED 1.5\u2033 128\u00d7128 pixel display with SSD1327 controller (Product ID: 4741) is connected to an SPI bus of the Teensy board. A 150-ohm resistor is inserted in series in each of the 4 SPI lines to reduce the high-frequency harmonics generated by the SPI signals, minimizing the potential risk of electromagnetic interferences with the aircraft radio equipment.<\/p>\n\n\n\n<h6 class=\"wp-block-heading\">Bluetooth module<\/h6>\n\n\n\n<p>Commercially available HC-05 Bluetooth modules have 6 pins (fig. 10), and the two outermost pins are used for configuration (for example, to change the module name or password). The reader is invited to consult one of the countless tutorials available on the Internet for this configuration.<\/p>\n\n\n\n<p>Once setup is complete, only the center 4 pins are used for mounting on the PCB. These four pins must be soldered perpendicular to the module and not in the axis as on all new modules. Therefore, it is necessary to remove the original 6-pin connector. To do this, you must start by cutting the pins and carefully removing the black insulation plastic using a mini Dremel grinder. Then, individually desolder the remaining pin segments with a soldering\/desoldering station, and finally, clean the PCB holes with desoldering braid.<\/p>\n\n\n\n<p>When the micro-EMS is in operation, it transmits its parameters constantly over Bluetooth classic. To save them, pair an Android smartphone or tablet and use the <a href=\"https:\/\/play.google.com\/store\/apps\/details?id=de.kai_morich.serial_bluetooth_terminal&amp;hl=fr&amp;gl=US\" target=\"_blank\" rel=\"noopener\" title=\"\">\u201cSerial Bluetooth Terminal\u201d program from Kai Morich<\/a>.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"511\" height=\"214\" src=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/HC-05.png\" alt=\"\" class=\"wp-image-3419\" srcset=\"https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/HC-05.png 511w, https:\/\/avionicsduino.com\/wp-content\/uploads\/2023\/11\/HC-05-300x126.png 300w\" sizes=\"auto, (max-width: 511px) 85vw, 511px\" \/><figcaption class=\"wp-element-caption\">Figure 10: Newly purchased HC-05 Bluetooth module, with its pins along the axis of the module.<\/figcaption><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">Flight test results<\/h3>\n\n\n\n<p>The battery voltage is always within \u00b10.05 volts compared to a reference measurement made with a Fluke 115 multimeter. The idiot lamp LED is excellently visible, even in direct sunlight.<\/p>\n\n\n\n<p>The RPM is the same \u00b110 rpm as the tachometer of the propeller constant speed controller (Smart Avionics CSC-1\/P) acting as a reference, regardless of the input selected by the jumper on J11. <\/p>\n\n\n\n<p>The fuel calculator works as expected. The display is very stable. At the end of long flights, the remaining fuel levels, either calculated by the micro-EMS or measured manually in the tank (with a perfectly calibrated wooden fuel tank measuring stick), never differ by more than \u00b11 liter. This level is always within the interval of 3 to 4 liters the Wema probe provides, and this interval is always consistent with the systematic check with the wooden stick before and at the end of each flight.<\/p>\n\n\n\n<p>It took a few flights of more than one hour each to adjust the K factor, according to the formula K<sub>adjusted<\/sub> = K<sub>current<\/sub> x Calculated fuel amount used\/Measured fuel amount used. The retained K factor is 21000 pulses for one liter, whereas the theoretical K factor of the Red Cube is close to 18000.<\/p>\n\n\n\n<p>With the Arduino version of the Micro-EMS as well as with a previous MGL Stratomaster FF1 fuel computer (and with the same Red Cube), we also obtained a K factor higher than the expected K factor, which could suggest supernumerary pulses related to the vibrations and the rigid installation of the Red Cube on the firewall. The sensor manufacturer recommends a flexible installation between two hoses instead.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>(Teensy Micro-EMS: last updated by Benjamin on May 19, 2024) A Teensy 4.0 board is the heart of this completely redesigned version of the Micro-EMS. This new system provides the same functions as the Arduino Micro-EMS. Namely RPM measurement, fuel level and flow management, and battery voltage monitoring, with an \u00ab\u00a0Idiot Lamp.\u00a0\u00bb The Arduino Micro-EMS &hellip; <a href=\"https:\/\/avionicsduino.com\/index.php\/en\/teensy-micro-ems\/\" class=\"more-link\">Continuer la lecture<span class=\"screen-reader-text\"> de &laquo;&nbsp;Teensy Micro-EMS&nbsp;&raquo;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"open","ping_status":"closed","template":"","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"class_list":["post-2912","page","type-page","status-publish","hentry"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/avionicsduino.com\/index.php\/wp-json\/wp\/v2\/pages\/2912","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/avionicsduino.com\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/avionicsduino.com\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/avionicsduino.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/avionicsduino.com\/index.php\/wp-json\/wp\/v2\/comments?post=2912"}],"version-history":[{"count":103,"href":"https:\/\/avionicsduino.com\/index.php\/wp-json\/wp\/v2\/pages\/2912\/revisions"}],"predecessor-version":[{"id":4852,"href":"https:\/\/avionicsduino.com\/index.php\/wp-json\/wp\/v2\/pages\/2912\/revisions\/4852"}],"wp:attachment":[{"href":"https:\/\/avionicsduino.com\/index.php\/wp-json\/wp\/v2\/media?parent=2912"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}