Українською
  In English
Open Electronics
AnalogAI picks SST’s memBrain SAGE IP for its Edge AI processors
AnalogAI has selected the memBrain
Synaptic Analog Generative Engine (SAGE) neuromorphic hardware intellectual property (IP) from Silicon Storage Technology (SST®), a subsidiary of Microchip Technology, for its real-world edge AI processors. The analog edge AI processors feature a proprietary hardware-aware algorithm designed to train and simultaneously run inference on AI models in real-world environments.
AnalogAI uses SST’s memBrain SAGE IP to deliver high levels of analog compute-in-memory (aCIM) performance at or below one watt for ultra-low-power edge applications. Leveraging the robust SST memBrain SAGE silicon IP, based on SST SuperFlash®, AnalogAI is developing new capabilities for real-world inference applications such as robots, drones, vehicles and humanoids that adapt to their environment.
Statements from Microchip and AnalogAI“AnalogAI is pursuing innovative, co-optimized solutions for edge AI inference that let edge devices adapt in real time to sudden changes in the environment,” said Mark Reiten, senior vice president of the Intelligent Compute business unit at Microchip. “As the central inference engine for AnalogAI’s first products, SST memBrain SAGE IP delivers the compute performance needed together with the energy efficiency AnalogAI requires to reach its application goals. We are pleased to welcome AnalogAI as a new licensee of our SST memBrain IP, joining our rapidly expanding ecosystem.”
“AnalogAI selected SST’s memBrain SAGE intellectual property after extensive industry-wide research into the available offerings, and determined that the memBrain SAGE intellectual property allowed us to shorten development times while still achieving the ultra-low power and high performance required in our market segment,” said Jaejun Lee, chief executive officer of AnalogAI. “Analog compute-in-memory is a rapidly emerging field, and at AnalogAI we are innovating new features for edge AI devices that require real-world adaptation.”
Features of SST memBrain SAGE IP- memBrain Tensor In-Memory Logic Element (TILE)
- memBrain solution with optimized ESF3 bitcell storing up to 8 bpc at nanoampere level
- custom memBrain solution array, decoders and driver circuits
- optimized DACs and ADCs
- summing-bias and high-voltage circuits
- nanoampere-level bitcell control logic
- proprietary memBrain test circuits
- SST memBrain technology documentation and simulation models
- full IP integration service and support
SST’s memBrain SAGE IP has been developed and delivered in 40 nm and 28 nm production processes using production-ready SuperFlash memory. The current technology roadmap includes the development of memBrain SAGE IP at 22 nm. Designed to provide reliable, high-performance, low-power non-volatile storage directly on chip, SuperFlash memory is widely used in applications that require fast access times, high endurance and data retention without the need for external memory components.
Pricing and availabilityCustomers interested in SST’s memBrain IP solutions and SuperFlash technology can visit the dedicated SST website or contact a regional SST sales executive through the contact page for more details.
ResourcesHigh-resolution images are available through Flickr or editorial contact (images free to publish): Application image.
The post AnalogAI picks SST’s memBrain SAGE IP for its Edge AI processors appeared first on Open Electronics.
Microchip expands its Single Pair Ethernet portfolio with new 10BASE-T1S devices
Microchip Technology is expanding its 10BASE-T1S portfolio with the arrival of the LAN8679 and the LAN8680 10BASE-T1S PMD transceivers, together with the LAN8660X/1X/2X endpoint family with integrated transceivers. Designed to support next-generation zonal architectures, these solutions offer flexible, space-efficient connectivity that extends Ethernet all the way to the edge of the network.
Scalable edge connectivity for automotive and industryAs automotive, industrial and robotic systems evolve toward fully Ethernet-based networks, designers face growing demand for simplified architectures, lower wiring complexity and efficient integration of edge nodes. Microchip’s latest 10BASE-T1S devices address these challenges and are designed to meet the AEC-Q100 and ISO 26262 functional safety standards, building on Microchip’s VelocityDRIVE
portfolio with additional multidrop connectivity solutions featuring an optimised interface.
It provides a standardised Open Alliance 3-Pin (OA3P) interface in a compact 8-pin VDFN package, supporting space-constrained edge nodes while reducing pin count and design complexity. The LAN8680 builds on these capabilities by integrating System Basis Chip (SBC) functions, including power management, wake/sleep system control and watchdog supervision. Both devices are designed to improve reliability and safety in demanding environments such as automotive and industrial applications.
The statement from Charlie Forni“Microchip’s latest 10BASE-T1S portfolio strengthens our commitment to enabling scalable, all-Ethernet network architectures,” said Charlie Forni, corporate vice president of the networking and connectivity business unit at Microchip. “By combining the simplicity of the OA3P interface with integrated endpoint features, these devices give designers the flexibility to build efficient and reliable systems while significantly reducing complexity at the edge.”
LAN8660X/1X/2X endpoints with integrated transceiverComplementing these devices, the LAN8660X/1X/2X endpoint family integrates a PMD transceiver into a single-chip Remote Control Protocol (RCP) solution. This approach lets designers implement compact, fully integrated edge nodes for applications such as control systems, lighting and audio without the need for external PHY components.
Multidrop topology and lower system costLeveraging the 10BASE-T1S multidrop topology, Microchip’s solutions allow multiple nodes—typically eight or more—to share a single bus line. This reduces wiring weight, lowers system cost and eliminates the need for gateways, making it easier to connect sensors and actuators directly at the edge of the network.
Applications and availabilityMicrochip’s expanded Single Pair Ethernet portfolio targets a wide range of applications, including automotive zonal architecture, industrial automation, robotics and aerospace and defence systems. The products align with industry trends toward consolidated networks and simplified connectivity frameworks, letting designers implement efficient and scalable all-Ethernet architectures. For more information on Microchip’s Single Pair Ethernet solutions, visit the dedicated website.
Pricing and availabilityThe LAN8679, LAN8680 and LAN8660X/1X/2X are available in limited samples. For more information, contact a Microchip sales representative.
ResourcesHigh-resolution images are available through Flickr or editorial contact (images free for publication).
Application image.
The post Microchip expands its Single Pair Ethernet portfolio with new 10BASE-T1S devices appeared first on Open Electronics.
Environmental Monitoring with STM32 and FreeRTOS: A Testable Multitasking System
A real-time environmental monitoring system on the STM32 Blue Pill, using STM32Cube HAL and FreeRTOS. Four quantities are under control: temperature, humidity, ambient light and motion. The data ends up on an SSD1306 OLED display, the pages are scrolled with a rotary encoder, and a buzzer warns when the temperature leaves the configured range. Behind the scenes there are five FreeRTOS tasks exchanging data through queues and an event group, plus 13 unit tests that run on a PC without touching the hardware.
The interesting part is not the sensor itself, but how the firmware is organised. The application logic stays separate from the hardware, so it can be tested with Unity before even connecting a board. On top of that, cppcheck performs static analysis on the code. The test result speaks for itself: 13 tests total, 13 passed, 0 failed.
Five FreeRTOS tasks, priorities and queuesSensorTask reads the DHT22 and the photoresistor roughly every 2000 ms via vTaskDelayUntil(), then sends the values to DisplayTask and AlarmTask through a FreeRTOS queue. MotionTask, on the other hand, watches the PIR sensor and signals motion with an event group. StateTask consumes that event and decides the state of the system.
InputTask handles the rotary encoder and sends the selected page to DisplayTask with a dedicated queue. DisplayTask owns the SSD1306 display and shows four pages: Temperature, Humidity, Light and Motion. AlarmTask receives the temperature data from the queue and drives the buzzer according to the evaluateTemperature() function. The configured normal temperature range goes from 18 °C to 30 °C.
The state machine has two conditions: ACTIVE and INACTIVE. If no motion is detected for about 15 seconds the system switches to INACTIVE, and motion detected by the PIR automatically brings it back to ACTIVE. As a result, the behaviour changes without any manual intervention.
What you need to rebuild it and how to test itThe component list is short: a board with an STM32F103C8T6 microcontroller, the board with the STM32F103C8T6 microcontroller, then a DHT22 for temperature and humidity, an LDR photoresistor, a PIR sensor, a rotary encoder, an SSD1306 OLED display and a buzzer. The DHT22 is the module with DHT22 temperature and humidity sensor with a single-wire serial interface, easy to connect.
- STM32 Blue Pill with STM32F103C8T6
- DHT22 sensor for temperature and humidity
- LDR photoresistor for ambient light
- PIR sensor for motion
- Rotary encoder for changing page
- SSD1306 OLED display
- Buzzer for the temperature alarm
The development environment is PlatformIO inside Visual Studio Code, with Git and GitHub for versioning. The simulation runs on Wokwi, so the logic can be tried without building anything. The 13 unit tests break down like this: 5 for the temperature alarm logic, 4 for the display navigation, 4 for the system state logic. All 13 pass, none fail. The complete code, with the tests and the configuration, is in the Rie07 repository on GitHub.
For anyone who wants to get started, the advice is to follow the order of the tasks: first SensorTask and DisplayTask, then AlarmTask, and finally MotionTask and StateTask. That way you see something on the display right away and add the rest one piece at a time. In particular, keeping the alarm logic in a separate function such as evaluateTemperature() makes testing immediate.
Source: https://github.com/Rie07/bca182-freertos-multisensor
Related productsThe post Environmental Monitoring with STM32 and FreeRTOS: A Testable Multitasking System appeared first on Open Electronics.
ESP32 Demoboard: a Prototyping Board for Sensors and Actuators (Part 1)
Let’s explore the many application angles of one of the most widely used WiFi modules, through a prototyping board that can host and manage sensors and actuators, all testable with firmware we wrote specifically for the purpose. First instalment.
Modules based on the Espressif ESP32 SoC are highly regarded by designers of applications connected over a WiFi wireless interface, and that is why we have seen them in use for years, and use them ourselves in various projects. Precisely because of their importance and the strong demand from developers and experimenters, we decided to build a demoboard that makes it possible to create firmware both to test a wide range of sensors and to learn how to program the ESP32 and build connected applications, first and foremost in the Internet of Things space.
The board we will use has at its core a wireless module based on the ESP32, and also provides a whole set of headers (connectors) for plugging in various breakout boards and modules that act as its peripherals, namely pressure, ultraviolet, air quality, lightning and gesture sensors plus an NFC-compatible RFID reader. Completing the board is a user interface made up of an OLED display, a set of buttons and LEDs, all configurable to achieve a specific interfacing mode.
Let’s see right away what it is, analysing the board in detail before moving on to the description of the corresponding circuit diagram.
The boardOur demoboard is based on the Board with ESP32 (code YB555), fitted with a MicroUSB connector that is used for programming but can also supply power to the whole demoboard, provided the current required does not exceed a certain value that the ESP32 board can deliver. Alternatively, 12V can be supplied to the PWR power plug, and then it is the demoboard’s regulator U2 (code MP1584ENDCDC) that produces the 5V for the rest of the circuit. In Fig. 1 you will find the pin-out of the ESP32 module in question.
The following modules can be hosted on our demoboard:
- Air quality sensor code SGP30CO2 (U3)
- Lightning sensor code FT1324M (U4)
- Gesture sensor code APDS9960BOUT (U5)
- UVB sensor code GYLM8511 (U6)
- Pressure sensor code BMP280 (U7)
- NFC/RFID reader code PN532 (U8)
- 0.96″ OLED display code OLED096C or code OLEDGVSCSD (OLED1)
- 5V relay (RL1)
- Red LED (LD1)
- Green LED (LD2)
- 5 buttons (P1, P2, P3, P4, P5)
- BreadBoard
- Provision for connecting 3.3V SPI devices (SPI)
- Provision for connecting other 3.3V I²C devices (I²C)
Fig. 1 Pin-out of the ESP32 module
Beyond what is already provided above, other devices can be connected by making use of the free pins of the ESP32 board. The pins with no connection are D1/TX0, D2, D3/RX0, D34, plus the SPI pins that are not used for connection to any breakout board.
As for the connectors intended for connecting breakout boards and sensors external to the board, we have provided these elements:
- Liquid turbidity (clarity) sensor code TORBISENS (CNU9)
- PIR sensor code PIRMOD / code MINIPIRMOD (CNU10)
- Servo motor, for example code SERVO206 (CNU11)
All the codes given in brackets refer to products for quicker identification. In any case, let’s take a look at the board’s circuit diagram, shown in full on the page next to this one.
Circuit diagram
Circuit diagram of the ESP32 demoboard
The circuit, as you can see, is centred on the ESP32 board, designated U1, which receives its main power through the Vin pin; its internal regulator provides a stabilised 3.3V that powers the interface boards that can be fitted to the demoboard and run on that voltage, that is, all those that can be hosted on-board except U6.
The Vin contact of U1 is powered with the 5V that the main power supply derives from the input voltage applied to the PWR DC power jack; the input voltage is first filtered by capacitors C1 and C2 and then stepped down to 5V by regulator U2, which is an MP1584ENDCDC DC/DC step-down module, capable of delivering 3A of current at a stabilised 5V: enough to run all the breakout board modules supported by our demo board.
The 5V output (suitably filtered by C3, C4 and C11 to knock down the switching residue of the switching module) powers the modules that run at that voltage (the UVB module) and the connectors for the servo (CNU11), PIR (CNU10) and external turbidity sensor (CNU9), as well as the relay coil, which is switched by the NPN transistor T1 under the command of the ESP32 module’s D32 I/O line. From RL1 (whose coil has been fitted with an antiparallel diode to protect the collector junction of T1 when it turns off) we make the three changeover contacts available, so as to handle various types of load and various operating conditions; the relay is an actuator peripheral that can be associated, for example, with the sensors detecting that certain thresholds have been exceeded, or with the reading functions of the RFID/NFC module.
OLED display and I²C communicationThe display on the board is a small OLED that can be interfaced over the I²C bus, used several times in our projects for its versatility, its low cost and the availability of dedicated Arduino libraries for driving it. It is the OLED096C: a module with a 128×64 pixel blue OLED (Organic Light Emitting Diode) display, I²C interface, SSD1306 graphics controller, viewing angle of about 180°, Arduino compatible.
The library provided for the graphics controller has a modular structure and some modules can be excluded from compilation to reduce the use of Flash memory space. It requires very little RAM and supports, besides I²C bus communication, SPI as well: in the first case it runs a software implementation (Wire library, AVR Twi, Linux i2c-dev) and in the second a 4-wire SPI implementation (Arduino SPI library, AVR Spi, AVR USI module).
The controller allows you to create primitive graphics functions (lines, rectangles, pixels, bitmaps) and text printing (using characters of different sizes; you can use GLCD Font Creator to create new characters).
The display is managed by module U1, through the I²C bus shared with other on-board units such as modules U3 (air quality sensor), U4 (lightning detector), U5 (gesture detector), U7 (pressure sensor), U8 (RFID/NFC module), and brought outside through the connector labelled I2C, to interface the demoboard with external units. In the circuit diagram you can see that OLED1 is powered through two three-way jumpers that must be set one complementarily to the other; the purpose is to allow the various versions available on the market to be fitted, since they may have the + and – power pins (1 and 2) swapped; so if pin 1 is positive, you close jumper J1 on +3V3 and J2 on GND, while if it is negative, you do the opposite (J1 on GND and J2 on +3V3).
SPI bus, LEDs and buttonsOur ESP32 module also implements a 4-wire SPI bus (MISO, MOSI, SCK and CS), useful for interfacing the demoboard with SPI devices (in this case the connector of the same name is used) and various sensors; on that point it should be said that although the on-board sensor U4 supports bidirectional SPI/I²C bus communication, we preferred to interface it to U1 over the I²C bus already described, which uses the ESP32’s D21/SDA and D22/SCL lines. The complete SPI bus, on the other hand, uses the ESP32’s I/O lines D13 (MOSI), D12 (MISO), D14 (SCK) and D15 (CS-Chip Select), and on the relevant connector we also bring out GND and the +3.3 volt supply.
Besides the connectors and modules described so far, the demoboard carries two multifunction LEDs driven by the D25 and D26 lines of module U1 (in USB communication they indicate the switching of the data channel) and manageable by firmware according to the desired application; to complete the circuit we have provided five normally open single-pole buttons that can be used, for example, to set values or thresholds, or to navigate on-screen menus; not by chance, the keys have these functions associated with them:
- P1 = OK
- P2 = UP
- P3 = DOWN
- P4 = LEFT
- P5 = RIGHT
And their arrangement on the printed circuit board somewhat echoes that of a classic joypad. If you intend to use the buttons for other functions, you are free to do so (by modifying the example firmware that will be proposed from time to time among the examples) and rename them according to your needs.
To complete the demoboard we added a small 170-contact breadboard in the centre, which can be used either to wire up breakout boards using Arduino jumpers and the SIL contacts or connectors of the on-board modules, or to connect active and passive components to specific parts of the circuit, for building small circuits of your own.
Building it in practiceGood, at this point we have described the demo board, so we can move on to the construction side: building the demoboard starts with the double-sided printed circuit board on which all the necessary components will sit. To make the project more accessible to makers, these are all THT, that is through-hole or traditional mounting, if you prefer. So once you have the printed circuit board, you can build the board with a minimum of equipment: just an electronics soldering iron, some solder wire and a pair of side cutters to trim the leftover component leads.
Once the board for photo-etching is ready (that is, after you have obtained it from the PCB manufacturing service, starting from the two copper-side traces available for download), you can move on to the actual assembly.
Start by placing and soldering the lowest-profile components, so resistors, LEDs, non-polarised capacitors, pin strips and female strips for the connections and for the modules that will be hosted on board, then the LEDs, the buttons and the electrolytic capacitors, and finally the power jack. Then fit the breadboard, which is simply glued in the position shown by the assembly drawing, using double-sided tape because it has no pins or leads. For polarised components (semiconductors and electrolytics) you must scrupulously respect the insertion direction shown in the assembly drawing you will find in these pages.
Don’t forget to pay attention to the polarity of the OLED display’s power contacts and to set the corresponding jumpers J1 and J2 accordingly (as already explained a few paragraphs back) so that power is applied with the correct polarity.
To power the board you need to use a supply source (not necessarily stabilised) that delivers a DC voltage of 8 to 12 volts and a current of at least 1A (in reality the current depends on how many modules you fit and which ones).
Remember that although the photos in these pages show the demoboard fully populated, you don’t actually need to fit all the modules, only the ones you will be working with at any given time; it goes without saying that two must always be present: the DC/DC (U2) and of course U1, that is the module containing the ESP32 SoC.
Component list:
- C1, C4, C6, C8, C10, C11: 100 nF ceramic
- C2, C3, C5, C7, C9: 100 µF 16 VL electrolytic
- D1: 1N4148
- LD1: 5 mm red LED
- LD2: 5 mm green LED
- P1, P2, P3, P4, P5: Microswitch
- R1, R2: 330 ohm
- R5: 6.8 kohm
- R6: 3.3 kohm
- R3: 4.7 kohm
- R4: 10 kohm
- RL1: 5V relay, 1 changeover
- T1: BC547
- U1: ESP32-WROOM-32 breakout
- U2: 5V/3A step-down module
- U3: SGP30 air quality module
- U4: AS3935 lightning sensor
- U5: PDS-9960 gesture module
- U6: UVB sensor module
- U7: pressure sensor module
- U8: NFC/RFID module
- OLED1: 0.96″ OLED display
Miscellaneous:
- 2-way male pin strip, 2.54 mm pitch (4 pcs.)
- 3-way male pin strip, 2.54 mm pitch (5 pcs.)
- 4-way male pin strip, 2.54 mm pitch (1 pc.)
- 6-way male pin strip, 2.54 mm pitch (3 pcs.)
- 7-way male pin strip, 2.54 mm pitch (1 pc.)
- 15-way male pin strip, 2.54 mm pitch (2 pcs.)
- 2-way female pin strip, 2.54 mm pitch (4 pcs.)
- 4-way female pin strip, 2.54 mm pitch (2 pcs.)
- 5-way female pin strip, 2.54 mm pitch (1 pc.)
- 6-way female pin strip, 2.54 mm pitch (2 pcs.)
- 7-way female pin strip, 2.54 mm pitch (1 pc.)
- 15-way female pin strip, 2.54 mm pitch (2 pcs.)
- 4-way female pin strip, 2.54 mm pitch, 90° (1 pc.)
- Jumper (2 pcs.)
- 3-way terminal block, 5 mm pitch
- 170-contact breadboard
- Power plug
- S1632 printed circuit board (140×110 mm)
Once you have completed your demoboard at the hardware level, you can focus on the software side, which covers creating the applications and programming the ESP32 module.
First of all you will need to install the ESP32 board so that it can then be programmed from the IDE. To do this, open the IDE, then from the “File > Preferences” menu enter the string https://dl.espressif.com/dl/package_esp32_index.json in the Additional Boards Manager URLs box (Fig. 2).
Fig. 2 Adding the third-party driver search path
Having done that, from the “Tools > Board” menu you must issue the “Boards Manager” command and select your ESP32 board, that is type ESP32 in the text box at the top and proceed with installing the ESP32 by Espressif Systems board package (Fig. 3).
Fig. 3 Installing the ESP32 package
Now, again from the “Tools > Board > Boards Manager” menu, choose the “DOIT ESP32 DEVKIT V1” board as shown in Fig. 4.
Fig. 4 Selecting the board in the Arduino IDE
Everything is ready for programming, so from this point on you can write the code needed to manage the breakout board you are interested in. On that note we have already made available a set of example sketches for each breakout, so you will always have a starting point that certainly simplifies developing custom code. The folders with the sketches available for download are the ones shown in the screenshot in Fig. 5. In each individual example’s folder you will find the library paired with it, where the code requires one. Also, in every folder there will be an “info.txt” file that briefly explains the purpose of the example.
Fig. 5 The folders containing the example sketches provided
For almost all the examples you will need to have the 0.96″ OLED display module fitted; on that note, remember that on board you can use either OLED displays with the GND/VCC/SCL/SDA pinout, or those with a VCC/GND/SCL/SDA pinout, simply by configuring the two jumpers J1 (for pin 1) and J2 (for pin 2) so that GND rather than VCC is brought to pin 1 or 2 of the display, depending on the display installed.
First application: water sensorThis application example consists of reading the “turbidity” value of water using the specific sensor that can be connected to strip CN9.
This connector can also be used to read a voltage of up to 5V, since there is a divider at the input that lowers the voltage to a maximum of 3.3V; this reduction is necessary because the corresponding ESP32 input tolerates a normal voltage of 3.3V and a maximum of 5V, beyond which the ESP32 module is damaged.
The sensor used is the 9145-TORBISENS (Fig. 6) and it consists of the actual sensing element, to be partially immersed in the water whose clarity or turbidity you want to detect, and a signal conditioning and interface board, which will provide a digital or analogue signal and which you must connect to connector CNU9.
Fig. 6 The water quality sensor (top right) with its cables and the interface board (bottom right)
The sensor is able to detect particles suspended in water (or another liquid, as long as it is not chemically aggressive or a solvent) by measuring light transmission and the dispersion rate, which changes with the total amount of total suspended solids (TSS) in the water. As the TSS (Total Suspended Solids) increases, the liquid’s turbidity level rises. It has an analogue and a digital output.
When using this sensor, it is worth remembering that only the transparent plastic part with the two “prongs” should be immersed, because the upper part of the probe (the one where the cable connects) is not watertight. The temperature of the liquids in which the sensor can be immersed must be between +5°C and +90°C: bear this in mind when using it.
Once the sensing part has been introduced into the water, the sensor provides the corresponding value in a time of the order of 500 ms. If the output is set to analogue, it provides a voltage from 0 to 4.5 V inversely proportional to the liquid’s turbidity; if instead it is set to digital, the turbidity threshold can be adjusted using the dedicated trimmer on the interface board (0=turbid; 1=clear).
The sketch we suggest you upload to use the water turbidity sensor is the one shown in Listing 1.
Listing 1
/**************************************************************************
This is an example for our Monochrome OLEDs based on SSD1306 drivers
This example is for a 128×64 pixel display using I2C to communicate
3 pins are required to interface (two I2C and one reset).
Adafruit invests time and resources providing this open
source code, please support Adafruit and open-source
hardware by purchasing products from Adafruit!
Written by Limor Fried/Ladyada for Adafruit Industries,
with contributions from the open source community.
BSD license, check license.txt for more information
All text above, and the splash screen below must be
included in any redistribution.
**************************************************************************/
#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#define SCREEN_WIDTH 128 // OLED display width, in pixels
#define SCREEN_HEIGHT 64 // OLED display height, in pixels
// Declaration for an SSD1306 display connected to I2C (SDA, SCL pins)
// The pins for I2C are defined by the Wire-library.
// On an arduino UNO: A4(SDA), A5(SCL)
// On an arduino MEGA 2560: 20(SDA), 21(SCL)
// On an arduino LEONARDO: 2(SDA), 3(SCL), …
#define OLED_RESET -1 // Reset pin # (or -1 if sharing Arduino reset pin)
#define SCREEN_ADDRESS 0x3C ///< See datasheet for Address; 0x3D for 128×64, 0x3C for 128×32
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
#define NUMFLAKES 10 // Number of snowflakes in the animation example
#define LOGO_HEIGHT 16
#define LOGO_WIDTH 16
const int Sens = 33;
void setup()
{
Serial.begin(9600);
// SSD1306_SWITCHCAPVCC = generate display voltage from 3.3V internally
if(!display.begin(SSD1306_SWITCHCAPVCC, SCREEN_ADDRESS)) {
Serial.println(F(“SSD1306 allocation failed”));
for(;;); // Don’t proceed, loop forever
}
// Show initial display buffer contents on the screen —
// the library initializes this with an Adafruit splash screen.
display.display();
delay(2000); // Pause for 2 seconds
// Clear the buffer
display.clearDisplay();
display.setTextSize(2); // Draw 2X-scale text
display.setTextColor(SSD1306_WHITE);
display.setCursor(5, 0);
display.print(“** Test **”);
display.setCursor(20, 30);
display.print(“ Analog “);
// Show the display buffer on the screen. You MUST call display() after
// drawing commands to make them visible on screen!
display.display();
delay(2000);
// display.display() is NOT necessary after every single drawing command,
// unless that’s what you want…rather, you can batch up a bunch of
// drawing operations and then update the screen all at once by calling
// display.display(). These examples demonstrate both approaches…
/*
// Invert and restore display, pausing in-between
display.invertDisplay(true);
delay(1000);
display.invertDisplay(false);
delay(1000);
*/
pinMode(Sens,INPUT);
}
void loop()
{
int val_adc = 0;
float val_tens;
String txt_msg;
val_adc=analogRead(Sens);
val_tens = float(500)/float(4096);
val_tens = float(val_tens) * float(val_adc);
val_tens = float(val_tens) / float(100);
txt_msg=””;
txt_msg = String(val_tens,4) + “V”;
Serial.println(txt_msg);
OLED_Message(“5V max for CNU9-OUT”,txt_msg);
delay(500);
}
void OLED_Message(String text_display1, String text_display2)
{
int lunghezza = 0;
display.clearDisplay();
display.setTextSize(1); // Draw 2X-scale text
display.setTextColor(SSD1306_WHITE);
display.setCursor(0, 20);
lunghezza = text_display1.length();
lunghezza=21-lunghezza;
lunghezza=lunghezza/2;
for (int i=0;i<lunghezza;i=i+1)
{
display.print(“ “);
}
display.print(text_display1);
display.setCursor(0, 40);
lunghezza = text_display2.length();
lunghezza=21-lunghezza;
lunghezza=lunghezza/2;
for (int i=0;i<lunghezza;i=i+1)
{
display.print(“ “);
}
display.print(text_display2);
display.display();
} As for the connection between the sensor, the supplied interface board and the demoboard, the wiring diagram shown in Fig. 7 applies; in the image, the wire colours are red for +5V, black for ground (GND) and blue for the signal.
Fig. 7 Wiring of the liquid turbidity sensor to the demoboard
Well, with this first example of use we end our overview of the ESP32 demoboard; in the next instalment we will present new sketches and new applications involving both the on-board sensors and modules and modules that can be connected externally through the side connectors.
The demoboard presented in these pages was created to develop and prototype “connected” applications that exploit the WiFi wireless interface to publish or transfer data relating to the sensors and readers present on board or connected externally through the connections it provides; the same parameters can be partly managed and displayed, as a monitor, by the on-board OLED display.
The rich set of sensors makes the board an ideal candidate for the development and prototyping of applications in the IoT field, precisely because of its function as a bridge between sensor data and the Internet or a local wireless connection. With a few extra lines of code it is also possible to perform a minimum of Edge Computing so as to aggregate data from several sensors and save bandwidth in transmission to the Network.
Related productsThe post ESP32 Demoboard: a Prototyping Board for Sensors and Actuators (Part 1) appeared first on Open Electronics.
PaperFlux: the thermal receipt printer that prints your GitHub activity
PaperFlux is a small connected object that once a week prints a summary of the user’s GitHub activity on thermal paper: stars, followers, commits from the last seven days, languages and main repositories. The board downloads a black-and-white PNG image generated by a server over HTTPS and sends it to a 58 mm thermal printer. The project is by Alban Petit and covers the period from October 2024 to September 2026. It is a complete example of a connected object that brings together custom electronics design, embedded firmware, a production web service and mechanical modelling.
The board measures 33.55 × 50.05 mm and has four M2 mounting holes. The total PCB thickness is 1.58 mm, with an ENIG finish. The routing counts a little over 300 segments on the front side, around thirty on the back and about a hundred vias. The heart is an Espressif ESP32-C3-MINI-1, flanked by a Diodes AP33772S controller in a WQFN-24 package with 0.5 mm pitch and I²C address 0x52.
USB-C PD power and the 3.3 V railThe board is connected to a USB-C Power Delivery charger and negotiates a voltage of 9 V, with 5 V as fallback, which powers both the electronics and the printer. The AP33772S controller talks to the charger on the CC1 and CC2 lines, where the pull-down resistors R4 and R5 are 5.1 kΩ. It also measures current through the R6 shunt of 5 mΩ and monitors temperature via the NTC1 thermistor.
Once the voltage is established, the AP33772S closes the two MOSFETs Q1 and Q2, both DMN3009SFG. The ESP32-C3 is powered through the AP33772S switch: if a protection trips and cuts the output, the microcontroller shuts down together with the printer. The AP63203 converter produces a 3.3 V rail with current up to 2 A, using a Würth WE-MAPI 3015 inductor of 3.9 µH. The connector is a JAE DX07S016JA1R1500. A TI TPD4E02B04 also comes into play for line protection and, on the I²C bus, a TI PCA9306 level shifter.
The ESP32-C3 firmware and PNG streaming to the print headThe firmware connects to Wi-Fi, synchronises the clock via NTP and checks every minute whether it is time to print a receipt; by default the receipt is due once a week. When the time comes, the board calls the web service endpoint. The server collects the GitHub statistics, lays out an HTML template in a headless Chromium and converts the screenshot into a black-and-white PNG exactly as wide as the print head. The PNG generated by the server is 384 px wide and in 1-bit format.
The firmware decodes the PNG on the fly and sends it to the printer line by line. The DP-EH400/2 thermal printer has a print width of 384 dots and a TTL interface, with a UART connection at 9600 baud. The project uses KiCad for the schematic and layout, PlatformIO with Arduino on ESP32-C3 for the firmware, and on the server side Ruby 3.3 with Sinatra, Ferrum, ImageMagick, Kamal, Docker and GitHub Actions. Mechanical modelling is done in FreeCAD.
- Espressif ESP32-C3-MINI-1, the microcontroller with Wi-Fi
- Diodes AP33772S, the USB-C Power Delivery controller with I²C address 0x52
- 2 × DMN3009SFG, the MOSFETs that close the output
- Diodes AP63203, the converter that produces the 3.3 V rail up to 2 A
- Würth WE-MAPI 3015 of 3.9 µH, the converter inductor
- TI PCA9306, the I²C level shifter
- TI TPD4E02B04, the line protection
- JAE DX07S016JA1R1500, the USB-C connector
Anyone who wants to rebuild the project will find the full account of the work, from the KiCad schematic to the web service, on the maker’s site. The text contains precise numbers: the 33.55 × 50.05 mm board, the 5 mΩ shunt, the 384 px PNG, the UART at 9600 baud. These are all figures that matter to anyone who has to replicate the same chain, from the USB-C connector to the thermal print head.
For assembly you need a USB-C PD charger capable of negotiating 9 V, a USB-C to USB-C data cable and a thermal printer compatible with the DP-EH400/2 format. For those starting from scratch with the ESP32-C3, a mini ESP32-C3 module is the simplest starting point to try the firmware before soldering the final board.
Source: https://albanpetit.com/post/paperflux/
Related productsThe post PaperFlux: the thermal receipt printer that prints your GitHub activity appeared first on Open Electronics.
KryonOS: a JavaScript operating system for the ESP32
KryonOS turns an ESP32 from a device with fixed firmware into a reusable platform. The open source operating system by Haris16-code brings a desktop-style graphical interface and a JavaScript runtime to the ESP32 and ESP32-S3. You install it once and never reflash again: applications are written, installed and exchanged as on a small computer. The runtime is at version v2.0.0 with API Level 2, and apps have roughly 90 KB of usable RAM available.
At its heart is Duktape, an ECMAScript 5.1 JavaScript engine with some more recent features. Applications run inside that engine, so nothing needs to be recompiled. The system also offers a launcher, a file manager, an App Store and cloud services. Anyone who wants to get their hands on the code will find everything in the Haris16-code repository.
The multi-board HAL and supported displaysA multi-board HAL abstracts the hardware and holds together very different configurations. The list of supported boards includes:
- ESP32-S3 DevKitC-1, with 16MB of Flash and 8MB of Octal PSRAM
- ESP32 DevKit v1 with WROOM-32, 4MB of Flash
- M5Stack Cardputer v1.1, 8MB of Flash with dual OTA
- LilyGO T-HMI, 240×320 ST7789 display on 8-bit parallel
- ESP32-CYD-28, the Cheap Yellow Display
On the display side the HAL handles ILI9341 at 240×320 over SPI, ST7789V2 at 240×135 over SPI and XPT2046 touch. The Cardputer adds a physical 56-key matrix keyboard. There is also support for multi-bus SD cards and for parallel displays. Anyone who wants to start from a ready-made base will find in the catalogue a TFT display with resistive touch and SD slot, useful for building a complete panel without wiring the touch by hand.
KryonOS running on an M5Stack Cardputer
The graphics use double buffering with mini-sprite support, so rendering produces no tearing or flicker. On top of that sits Kryon3D, the 3D engine that handles wireframes, shaded polygon meshes, camera, lights and fog. For the maths there is FastMath with a precomputed 360-degree LUT.
The JavaScript APIs give direct access to the hardware: GPIO, scanning and transfers on the I2C bus, high-frequency PWM tone generators, cryptographic hashing and hardware AES, battery monitoring via ADC. The filesystem is LittleFS. An application can therefore read a sensor, drive a speaker or write to memory without dropping down into C code.
Wireless OTA updates are anti-rollback and use two-level manifests, update.json. Flashing proceeds in 4KB chunks with MD5 integrity verification and automatic bootloader recovery. As a result, an interrupted update does not leave the board mute. For development, PlatformIO and esptool.py are used, with flashing at 921600 baud; alternatively there is the ESP Flash Download Tool.
Around the system, KryonCloud, the App Store cloud marketplace, Kryon.ai and System.ai, and the KryonBeam mesh messenger have grown up. Everything remains open source, so anyone who wants to study how a JavaScript runtime is built on a microcontroller starts from readable code.
Source: https://github.com/Haris16-code/KryonOS
Related productsThe post KryonOS: a JavaScript operating system for the ESP32 appeared first on Open Electronics.
Vector and SCSK simplify embedded development on Renesas RL78/F2x
Vector and SCSK Corporation have developed a joint evaluation bundle to simplify the development of sensor and actuator applications based on Renesas RL78/F2x microcontrollers. By combining Vector’s MICROSAR IO with SCSK’s QINeS-Lite platform and drivers, the bundle offers a pre-integrated software base that reduces integration effort and speeds up configuration and evaluation. SCSK is a leading Japanese provider of IT services and automotive software solutions.
Joint evaluation bundle for embedded software developmentThe jointly developed evaluation bundle is aimed at developers who are evaluating or building embedded applications on resource-constrained microcontrollers. By combining Vector’s MICROSAR IO with SCSK’s QINeS-Lite platform and drivers for Renesas RL78/F2x microcontrollers, the solution provides a ready-to-use software base and supports initial evaluation activities while reducing configuration and integration effort. Customers can request the joint MICROSAR IO evaluation bundle for Renesas RL78/F2x from Vector via www.vector.com/pr-bundle-microsar-io.
A lightweight software base for sensor and actuator applicationsMICROSAR IO was developed specifically for sensor and actuator applications and provides a lightweight software platform for microcontrollers with limited hardware resources. The solution helps reduce software complexity, cut development effort and shorten time-to-market. QINeS-Lite is SCSK’s lightweight automotive software platform for small ECUs. It supports edge ECU applications that require high-speed communication, over-the-air software updates, cybersecurity and diagnostic capabilities. The drivers provided by SCSK are based on the open Chiisai specification and complete MICROSAR IO with the hardware abstraction layer needed for the Renesas RL78/F2x platform.
Reducing integration effort for Software-Defined Vehicle architecturesWith this joint offering, Vector and SCSK provide an accessible development base for sensor and actuator applications on Renesas RL78/F2x microcontrollers. The collaboration helps customers improve software reusability and prepare efficient edge ECU solutions for future Software-Defined Vehicle architectures. More information at: www.vector.com/microsar-io.
The post Vector and SCSK simplify embedded development on Renesas RL78/F2x appeared first on Open Electronics.
Mouser Ships Nearly 70,000 YAGEO Group Products
Mouser Electronics, an authorised global distributor with the widest selection of semiconductors and electronic components, is shipping a broad range of new products and solutions from the YAGEO Group, a leading global manufacturer of passive components. With more than 300,000 parts available to order and almost 70,000 YAGEO Group products in stock — including YAGEO, KEMET and Pulse Electronics — Mouser offers a complete portfolio of the latest YAGEO Group products and solutions.
KO-CAP capacitorsYAGEO Group KO-CAP capacitors are tantalum capacitors with an organic polymer, designed for applications that demand hold-up protection and maximum circuit energy efficiency in small spaces. The conductive polymer cathode of these solid electrolytic capacitors delivers very low ESR and high capacitance retention at high frequencies. Unlike liquid electrolyte capacitors, KEMET polymer capacitors offer a very long operating life and high ripple current capability, making them ideal for solid-state drives (SSDs), enterprise storage, networking and servers.
SCFx and SCTx common mode inductorsThe YAGEO Group SCFx and SCTx high-performance common mode inductors offer a rated current of up to 22 A for the single-phase version and up to 110 A for the three-phase version. The SCFx series is built around a nanocrystalline core, while the SCTx series uses a proprietary Mn-Zn ferrite core. Thanks to their very high inductance and permeability, these inductors suit audio-video equipment, office automation equipment, industrial equipment, air conditioners, home appliances, digital devices and power supplies.
CE X5R multilayer capacitorsThe YAGEO Group CE X5R multilayer ceramic capacitors are Class 2 embedded capacitors designed for compact module assembly, with capacitance values from 10 nF to 220 nF. Their construction, a rectangular ceramic dielectric with interleaved metal electrodes, provides high capacitance per unit volume while reducing parasitic inductance. The capacitors support customisation of thickness and termination dimensions for embedding under ICs, ensuring excellent electrical bonding and advanced resonance.
HXE1 high-voltage isolation modulesThe YAGEO Group HXE1 10 kV high-voltage isolation modules are designed for 100Base-TX applications and are available in single-channel or single-port (dual-channel) versions. The HXE1 modules support IsoSPI for BMS solutions and 100Base-T1 for industrial STPE. These high-voltage isolation modules comply with the IEEE 802.3u 100Base-TX standard.
Content and resources for designersBesides offering a wide selection of YAGEO Group products, Mouser is proud to work with YAGEO Group to produce engaging content for design engineers and purchasing professionals, such as an automotive content stream and eBooks. In the eBook Powering the New Automotive Era with Smart Passive Solutions, industry experts explore how passive electronic components are evolving to meet the needs of increasingly electrified automotive systems.
To learn more about the YAGEO Group products available from Mouser, visit the site. For further Mouser news and the latest new product introductions, visit the site.
As an authorised global distributor, Mouser offers the widest selection of the latest semiconductors, electronic components and industrial automation products. Mouser customers can count on 100% certified, genuine and fully traceable products from each of its manufacturer partners. To accelerate customer designs, the Mouser website hosts an extensive library of technical resources, including a Technical Resource Centre, along with product datasheets, supplier-specific reference designs, application notes, technical design information, engineering tools and other useful information.
Engineers can stay up to date on exciting new products, technologies and applications through Mouser’s free electronic newsletter. Subscriptions to Mouser’s email news and references can be customised to the unique and changing design needs of customers and subscribers. No other distributor gives engineers this level of customisation and control over the information they receive. To learn about emerging technologies, product trends and more, you can sign up today.
The post Mouser Ships Nearly 70,000 YAGEO Group Products appeared first on Open Electronics.
An Open Source Tricorder with Thermal Imaging and Spectroscopy
Picture a portable box full of scientific sensors, designed to explore environments and make discoveries in the field. Dr. Peter Jansen’s open source tricorder does exactly that: it is a prototype built around a Clockwork Pi UConsole that integrates thermal imaging, visible spectroscopy, magnetic imaging, radiation spectroscopy and environmental sensors. All in a handheld format.
The UConsole uses a Raspberry Pi compute module, so it runs Linux and has about 4 GB of RAM. That lets it handle a user interface written in Python and analyse the data coming from the sensors. What’s more, the project is completely open: anyone who wants to study it or derive a personal version will find all the files available.
The tricorder’s sensors and their numbersThe heart of the device is its sensor suite. Each one covers a different measurement band, so the tricorder can observe the environment from several points of view at the same time.
- Waveshare Long-wave IR Camera: 80×62 pixel thermal imaging
- Waveshare IMX378 12MP: 12 megapixel visible camera
- Hamamatsu C12666MA: spectrometer with 256 spectral channels between 340 nm and 780 nm, effective resolution of about 15 nm
- SparkFun Magnetic Imaging Tile 8×8: 64 pixel magnetic camera, up to about 20 kHz
- Pomelo Spectroscopic Radiation Detector: radiation detection
- Sensirion SPS30: particulate matter measurement
The magnetic camera deserves a section of its own. Its 64 pixels may seem few, but the acquisition rate reaches about 20 kHz, that is 20,000 frames per second. So it can follow fast magnetic phenomena that a traditional camera would not see. The Hamamatsu spectrometer, on the other hand, covers the whole visible band with 256 channels and a spectral resolution of about 15 nm.
ESP32 firmware and JSONL packets to the UConsoleNot all the sensors speak the same language. Some connect directly to the UConsole over USB. The others are polled periodically by firmware on an ESP32, which collects the measurements and sends them to the UConsole over a USB-to-Serial connection. The data packets are in JSONL format, so the software on the UConsole can parse them easily.
The sensors are wired up in different ways. The Hamamatsu spectrometer, the magnetic imaging tile and the environmental sensors go through dedicated breakouts. The back plate hosts the environmental sensors with the Sparkfun mounting pattern, which measures about 25×25 mm, and the QWIIC hub. That way the wiring stays tidy and every sensor has its place.
For anyone who wants to rebuild the project, Dr. Peter Jansen’s code repository collects the ESP32 firmware, the Python interface, the EAGLE 9.6.2 project files with schematics and board, and the OpenSCAD models with the .scad sources and the exported STLs.
3D printing, M4 screws and press-fit insertsThe enclosure and the sensor mounts are 3D printed. The main body replaces the back of the UConsole and is fastened with four M4 screws at the corners. The press-fit inserts used are mainly M2.5, with some M2 and M3. So anyone who wants to replicate the assembly has to get hold of these inserts and the matching screws.
The cost of the components is not trivial. The UConsole, the CM4 compute module and the HackerGadgets expansion boards probably cost between 300 and 400 dollars. Adding the sensors and the build, the complete cyberdeck comes to around 1000 dollars. Even so, the project remains open and anyone who wants to can start from a reduced configuration and add the sensors later.
If you need a board for another computing project, the catalogue offers the Raspberry Pi 400 computer with Italian keyboard layout, which integrates a 4 GB Raspberry Pi 4 board. For more recent applications there is also the Raspberry Pi 5 with 2 GB of memory, with a quad-core Broadcom BCM2712 processor at 2.4 GHz.
Source: https://github.com/tricorderproject/cyberdeck
Related productsThe post An Open Source Tricorder with Thermal Imaging and Spectroscopy appeared first on Open Electronics.
Samtec backs the SGeT oHFM.c standard with high-performance interconnects
Samtec, Inc., a leader in connector services, announces a new product range designed for the SGeT oHFM.c standard. These connectors are based on Samtec’s proven AcceleRate® HD and AcceleRate® HP families, known for their high density and high performance.
What oHFM isoHFM
, short for Open Harmonized FPGA Module, is the world’s first open modular standard for FPGAs. It tackles the common challenges of unique pinouts, custom form factors and proprietary thermal concepts in FPGA and SOM development by providing a unified, scalable architecture. Ready-made blocks and clear design rules cut engineering time for a faster time-to-market.
SOMs based on connectors defined by the oHFM.c standard are optimised for compact high-speed interfaces, mid-range and high-end FPGAs, and field upgrades using Samtec connectors with a 5 mm or 10 mm stack height.
Samtec’s oHFM.c connectors feature high-density channels on a 0.635 mm pitch with performance targets of 64 Gbps PAM4 or 112 Gbps PAM4. Within each connector, the narrow edges of the Edge Rate® contact system are aligned with the connector body to reduce broadside coupling and crosstalk, optimising signal integrity. The Edge Rate contact system also has a smooth, wide milled mating surface that reduces wear and increases durability for high-cycle applications. Samtec’s IPC Class 3 compliant solder column termination technique is used to secure the connectors to the printed circuit board. The solder column termination offers superior solder joint reliability and excellent insertion loss and return loss performance.
Designed to meet the evolving needs of FPGA-based computing platforms, Samtec interconnect solutions enable scalable, flexible and reliable system architectures for next-generation embedded and edge applications.
Ordering and more informationSamtec SGeT oHFM.c connectors are available from stock and can be ordered directly from Samtec or through authorised distributors. For more information on Samtec interconnect solutions for SGeT oHFM.c applications, visit samtec.com/oHFM.
The post Samtec backs the SGeT oHFM.c standard with high-performance interconnects appeared first on Open Electronics.
Bel Fuse launches XRCM200 and XRCM300 converters for rail
Bel Fuse Inc., a worldwide manufacturer of reliable components, systems and solutions for mission-critical applications in the industrial, medical and data solutions markets, has announced the XRCM 200 and 300 series, the second generation of DC-DC converters with an ultra-wide input voltage range. Designed for the most demanding rail and transportation applications, the new converters combine a compact form factor, an ultra-wide input voltage range and high efficiency to help engineers simplify system design while meeting the strict reliability and safety requirements of the rail sector.
“Rail operators and system designers need power solutions they can rely on, and that is at the heart of our work at Bel,” said Silvan Mueller, Business Development Manager for Rail Power Products. “This new generation of the XRCM series was designed to simplify installation, combining support for a wide input voltage range, a reduced footprint and the protection features technicians need to build resilient transportation systems.”
Key featuresThe dual-output XRCM 200 converter delivers 200W at ±15V and is a more compact and cost-effective option with low power consumption. The single-output XRCM 300 converter delivers 300W at 24V and offers an extended temperature range for continuous operation at an ambient temperature of up to 85°C. Both feature high power density, low inrush current and full protection against overheating, overvoltage, overcurrent and short circuits. Both are also designed to meet the latest safety standards, including EN 50155, EN 50121-3-2 and AREMA.
The XRCM series DC-DC converter, with connectors and identification labels, designed to meet the EN 50155, EN 50121-3-2 and AREMA safety standards.
The converters were presented at the Bel Fuse booth (Hall 17, Stand no. 310) at InnoTrans 2026 in Berlin, held from 22 to 25 September, together with other power conversion solutions designed for modern rail and transportation systems. Both converter families support DC input voltages from 16.8V DC to 137.5V DC and are compatible with all the most common rail battery systems, allowing OEMs to standardise on fewer power platforms across multiple vehicle architectures.
Together, the XRCM200 and XRCM300 converters give engineers versatile power conversion solutions that reduce integration effort, improve system reliability and support the evolving needs of modern rail electronics.
Summary- Product series: XRCM
- Applications: rail sector
- Distribution availability: to be defined
For more information on the XRCM series, visit the dedicated DC-DC Converters page. Other product lines are available on the Bel Fuse website.
The post Bel Fuse launches XRCM200 and XRCM300 converters for rail appeared first on Open Electronics.
JBR-001: the open source desktop robot that recognizes objects
JBR-001 is an open source desktop robot that sees and recognizes the objects in front of it, then reacts with movements, sounds and animations. It was created by syntheticAIdata and built around the Arduino UNO Q 2GB. Inside there are three servos, a camera, a distance sensor, a buzzer and an animated display. So it is not yet another blinking ornament: it is a platform for experimenting with robotics, computer vision and edge AI on a workbench.
Assembly starts from a body of 3D-printable parts that house the board and the rest of the electronics. The head contains the camera, mounted so that it looks straight ahead of the robot. On the back of the same head sits a Modulino Distance, which continuously measures the distance to nearby objects. The arms and the rotation of the head, on the other hand, come from three servos. The mechanics are therefore easy to replicate for anyone who already has a 3D printer at home.
Overview of the hardware project
The three servos split the tasks: one rotates the head, the other two control the arms. In the code the pins are HEAD_SERVO_PIN = 9, LEFT_ARM_SERVO_PIN = 10 and RIGHT_ARM_SERVO_PIN = 11. The rest positions are all at 90 degrees, so HEAD_CENTER = 90, LEFT_ARM_CENTER = 90 and RIGHT_ARM_CENTER = 90. The servos also use a separate external power supply instead of drawing power from the UNO Q: a forced choice when three motors start at the same time.
The distance sensor decides when the robot should notice someone. In the code the detection threshold is DETECTION_DISTANCE = 200.0, while the reset one is RESET_DISTANCE = 250.0. The units are not specified in the project material, so they should be checked on the bench before trusting them. The margin between the two thresholds prevents the robot from switching on and off continuously when someone stays right on the boundary.
Heartbeat on the display, a greeting in notes and the vision modelThe robot’s responses go through three different channels. The LED matrix display is driven with bitmaps of 8 rows by 13 columns, the two used for the small and large heart. In the heartbeat animation the delays are 120, 100, 160 and 700 milliseconds, and the last long gap gives the sense of the pause between one beat and the next. The sound greeting playHello instead uses the notes 523 Hz (C5), 659 Hz (E5), 784 Hz (G5) and 1047 Hz (C6), that is a C major arpeggio rising by one octave.
The most interesting part comes from the camera mounted in the head. It connects through a USB-C hub and gives the robot a front view of its surroundings. The captured images can be processed on the UNO Q with a trained computer vision model: this way JBR-001 does not just understand that something is nearby, but identifies the object and uses the result to decide how to react. Consequently the same hardware can turn its head, move its arms, change the image on the display or play a short sequence.
- Arduino UNO Q 2GB as the robot’s brain
- Modulino Distance for continuous distance measurement
- Modulino Motors for motion control
- Modulino Buzzer for sound sequences
- Arduino USB-C Hub (8 in 1) to connect the camera
- Three servos for head and arms
- Camera mounted in the head
- 3D printer for the body parts
On the software side you need Arduino App Lab and the JBR-001 source code, plus a trained computer vision model for object recognition. The project has 1805 views and 2 respects. Anyone who wants to rebuild it starts here: the maker syntheticAIdata’s site, where the code and the instructions to replicate the build are. For the servos, an RC servo control module simplifies the wiring when the channels to drive grow. The project’s distance sensor is a Modulino, and as an alternative you can consider a ToF laser sensor for close-range measurement. The board everything runs on is the 2GB version, while the catalogue also lists the Arduino UNO Q 4GB in a complete kit: same family, more memory for vision models.
Related products- Arduino shield for RC servo control
- ToF Laser Distance Sensor with VL53L3CX
- Arduino UNO Q 4GB – Complete kit with accessories
The post JBR-001: the open source desktop robot that recognizes objects appeared first on Open Electronics.
Arrow Electronics Offers Digital Test Drive for NXP’s Ara240 AI Accelerator
Arrow Electronics has announced global access for customers who want to remotely evaluate NXP® Semiconductors’ discrete Ara240 neural processing unit through the Digital Test Drive capability, giving engineers the chance to get early access to advanced AI models and technologies for computer vision, generative AI and multimodal systems, and letting them assess performance and start a project before investing in hardware.
The importance of edge AIAs AI adoption accelerates across industrial, robotics and intelligent vision applications, developers increasingly look to implement more sophisticated AI workloads closer to where data is generated. Working with AI locally at the edge can help reduce latency, improve data privacy and limit dependence on cloud-based processing, particularly in time-sensitive applications.
Features of the NXP Ara240 DNPUDesigned to support these requirements, the NXP Ara240 DNPU delivers up to 40 tera eTOPS (equivalent operations per second), supporting workloads that include LLMs (large language models), VLMs (vision language models), transformers and CNNs (convolutional neural networks). With LPDDR4 memory support up to 16 GB, this device makes it possible to run larger and more complex AI models directly on edge and embedded systems, without having to rely on cloud resources.
Arrow’s Digital Test Drive platformTo help those who want to explore these capabilities, Arrow has made NXP’s Ara240 solutions available through the Digital Test Drive platform, often described as a “digital test platform”: a cloud-based, Arrow-managed remote hardware testing and development environment that lets you evaluate physical embedded boards over the web, without having the hardware on your desk.
This makes it possible to remotely access live systems based on NXP i.MX applications processors paired with the Ara240 DNPU, in order to evaluate real AI applications such as computer vision, large language model inference and vision language AI, without having to rely on specifications or benchmark data. This gives a better understanding of system performance and of a project’s suitability, before committing to hardware investments or architecture decisions.
What the key players say“Developers need a hands-on way to understand how advanced AI technologies will behave in real applications,” said Justin Mortimer, senior director of product marketing, Secure Connected Edge, NXP Semiconductors. “By providing access to NXP’s Ara240 DNPUs through Digital Test Drive, Arrow lets designers evaluate real edge AI performance more quickly and make design decisions more knowingly.”
“At Arrow we are committed to helping customers accelerate their AI journey by removing the barriers between innovation and implementation,” said Shelby Schnurrenberger, vice president of global semiconductor management and suppliers at Arrow Electronics. “By integrating NXP’s Ara240 AI accelerator into our Digital Test Drive platform, designers can immediately evaluate advanced edge AI workloads, gaining the necessary hands-on experience with the technology before investing in hardware. Together with NXP, we are enabling them to move faster from initial idea to production and to unlock new opportunities in intelligent edge applications. Digital Test Drive extends global access to NXP’s AI portfolio, making it possible to evaluate performance, explore use cases and shorten development cycles anywhere in the world. This collaboration strengthens our commitment to making edge AI more accessible, scalable and practical for customers working in industrial, robotics, computer vision and emerging intelligent systems sectors.”
Availability and accessThe NXP Ara240 evaluation environment is now available through Digital Test Drive, which simplifies early-stage testing by removing common obstacles such as kit availability, shipping delays, setup complexity and software installation.
For more information, visit Digital Test Drive – Remote Hardware Testing.
The post Arrow Electronics Offers Digital Test Drive for NXP’s Ara240 AI Accelerator appeared first on Open Electronics.
Farnell Widens Access to Emerson’s NI Nigel AI for Test
Farnell is widening access to NI Nigel
AI from Emerson, an AI technology designed specifically for test and measurement. The new enhancements, now available through Farnell, evolve the technology from a simple AI assistant into a true AI author, thanks to new code generation and automated test development capabilities across the entire NI software portfolio. These improvements help make Emerson’s AI-driven test capabilities accessible to even more engineers worldwide, accelerating development without compromising the rigour, control and validation that modern test and measurement environments demand.
As increasingly software-defined and connected engineering systems become more widespread, test engineers face growing pressure to manage ever more complex development and validation flows without sacrificing quality or extending development times. Unlike general-purpose AI tools, NI Nigel AI was developed by Emerson specifically for engineering test environments and offers contextual assistance able to understand code and engineering workflows, existing test systems and application data.
AI-assisted authoring featuresIntegrated directly into NI software, Nigel AI helps engineers speed up tasks such as code generation, debugging, sequence development and system comprehension. With the latest updates introduced by Emerson, Nigel AI moves beyond simple operational support to offer AI-assisted authoring features, including prompt-based code generation in NI LabVIEW
and automatic sequence generation in NI TestStand
. This lets engineers move more quickly from design to validation while retaining full control over the review, validation and deployment of their work.
During NI Connect 2026, Emerson engineers demonstrated the concrete impact of Nigel AI by reducing a task that, using conventional AI coding tools, had taken around 20 hours of work spread over two weeks, to a workflow completed in about 20 minutes, with working results on the very first attempt.
StatementsAndy Weatherill, Global Head of Product and Technology at Farnell, said: “AI has enormous potential to improve engineering productivity, but its real value emerges when it integrates naturally with the way engineers work every day. By making Emerson’s NI Nigel AI available through Farnell, we help customers adopt an artificial intelligence designed specifically for the sector, capable of enhancing engineering expertise, accelerating development and supporting the high standards of quality and validation required by modern test environments.”
Siddarth Sethi, Vice President and General Manager, NI Test and Analytics Software, Test & Measurement, Emerson, added: “The future of AI in engineering is not about replacing engineers, but about improving the way they work. Nigel brings artificial intelligence directly into the systems, workflows and data engineers rely on every day, combining speed and rigour and helping teams confidently tackle increasingly complex challenges.”
An AI-ready NI platformBuilt on the AI-ready NI platform, Nigel AI connects hardware, software, data and engineering workflows to provide intelligent assistance across the entire test lifecycle. Rather than operating as a standalone AI tool, Nigel AI integrates into existing engineering environments, supporting development, validation, troubleshooting and deployment, while helping to reduce repetitive tasks and simplify the most complex workflows.
Global access through FarnellThrough Farnell’s global distribution network, engineers can more easily access the latest NI innovations and products, enabling organisations of any size to adopt AI-based test technologies within the workflows and tools they already use and trust. (https://uk.farnell.com/sc/ni-emerson/software-campaign?ICID=I-SF-NI-QUARTERLY-SOFTWARE-FEB26-WF4836310)
The post Farnell Widens Access to Emerson’s NI Nigel AI for Test appeared first on Open Electronics.
Indoor Air Quality Meter: Keeping CO2 and TVOC Under Control
Display the concentration of CO2 and TVOC in the air of an enclosed space, such as a school classroom or an office, and signal through LEDs whether the air quality is good or poor.
Why monitor air qualityIn recent years, unfortunately, the quality of the air we breathe has become a problem that cannot be ignored. It has been one for indoor environments for a long time, especially in winter, when we stay shut in with many people in a poorly ventilated room, but also outdoors, especially in cities, whose air is increasingly contaminated by the polluting emissions of motor vehicles, heating systems (let us not forget that natural gas is not pure methane, but contains other gases plus additives for odour and for colouring the flame…), factories and thermal power plants, and so on; and where the scarcity of greenery does not help the oxygenation of the air, which therefore has a low oxygen content and does not favour the natural processes of the human and animal body.
In indoor environments, air quality is compromised by elements such as the carbon dioxide we exhale, but also by fine dust and possible pathogens that we can emit by breathing or coughing; think for example of COVID-19 infection, by now a long-standing problem we live with, for which the air in enclosed spaces is one of the main transmission vehicles. The spread of this virus, like others, in enclosed spaces is essentially a problem linked to air quality: the more “stale” the air, the greater the concentration of droplets (droplets of saliva and organic liquids from the mucous membranes) potentially carrying pathogens, capable of spreading disease. The solution to mitigate contagion is obviously to carry out an air exchange, to reduce the concentration of these pathogens.
But when should you do it, given that, both in summer and in winter, we tend to keep the windows closed to reduce the consumption of air conditioning and heating systems?
Well, in this article we propose a simple device that, by reading a CO2 and TVOC sensor (that is, the concentration of organic particles suspended in the air, also known in Italy by the acronym COV – Volatile Organic Compounds), lets us get an idea of the air quality in a room and, through LEDs, signals when it is time to carry out an air exchange, allowing us to keep air quality under control and minimise energy losses.
The hardware of the projectTo build the device we have introduced so far, we decided to use a Heltec WiFi Kit 32 module as the control unit, a Sensirion SGP30 sensor as the element that detects the concentration of carbon dioxide and TVOC, and two common LEDs (one red and one green) as the signalling elements. The conceptual diagram of the system is shown in Fig. 1.
Fig. 1 Concept of the air quality measurement and signalling system
The Heltec WiFi Kit 32 module, which is ultimately the heart of our system, is a small electronic board that integrates an ESP32 microcontroller and a 0.96-inch OLED display; you can see it in Fig. 2. The hardware features of the WiFi Kit 32 module, with which we will work in this project, are:
- 0.96″ blue OLED display;
- 32-bit Tensilica LX6 dual-core microcontroller;
- Clock frequency up to 240 MHz;
- 520 kB internal SRAM;
- 32 MB flash memory;
- Integrated 802.11 b/g/n Wi-Fi transceiver;
- Integrated dual-mode Bluetooth (classic and BLE);
- Power supply: 3.3V to 7V;
- 28 GPIOs (some used to drive the OLED display);
- Integrated lithium-polymer battery charger;
- Operating temperature: -40°C to +90°C.
Fig. 2 The Heltec WiFi Kit 32 module
This module is perfect for our purpose, since it already integrates an OLED display that we will use to show the air quality readings and user messages, as well as several GPIO channels that we need to control our signalling devices; in this first version we plan to use only 2 LEDs, but the number of available GPIOs (28 in total) would easily let us add other elements, such as a buzzer for acoustic alerts.
Besides these features, the module has 520 kbytes of on-board RAM and a full 32 Mbytes of flash, characteristics that let us rest easy in terms of memory resources for our control software. In addition, the module carries a standard 802.11 Wi-Fi transceiver, which we can use for future evolutions of this device (for example to publish the data on CO2 and TVOC concentrations directly on a web page, or to send any alarms via Telegram), as well as a Bluetooth radio, which we can use to interface with external devices such as smartphones and PCs, which we could eventually use to configure the device itself.
Finally, the board also integrates an on-board LiPo charger, which would let us connect a single-cell battery, very useful for guaranteeing power to the device even when mains voltage is absent. Fig. 3 shows the pinout of our module.
Fig. 3 Pinout of the WiFi Kit 32 module.
To obtain the concentration of carbon dioxide and TVOC in the air, we decided to use a breakout board based on the Sensirion SGP30 sensor. This tiny sensor lets you know the concentration of carbon dioxide (so as to tell us how stale the air in an enclosed space is) and the TVOC (Total Volatile Organic Compounds), that is, the concentration in parts per billion of suspended particles. An image of the breakout board is shown in Fig. 4.
The detailed hardware features of the breakout board are these:
- sensor: Sensirion SGP30 (TVOC and CO2);
- TVOC (Total Volatile Organic Compounds) detection: 0 to 60,000 ppb (parts per billion);
- CO2 detection: 400 to 60,000 ppm (parts per million);
- Sampling frequency: 1 Hz;
- Interface: I2C (address 0x58)
- Power supply: 3.3V or 5V.
Fig. 4 The breakout board for the SGP30 sensor
Let us now see how to build our apparatus in practice, starting from the physical construction and therefore from the wiring of the components. The connection between the sensor board and the LEDs is quite simple, so much so that it can be done with male-female jumper wires like those used for Arduino, or by resting on a breadboard, as you can see in these pages.
The SGP30 sensor is a breakout board interfaced via an I²C bus, so it needs a total of four connections, because in addition to the clock (SCL) and data (SDA) lines of the I²C bus, we also have to connect the two power lines (GND, that is the negative, plus the 3.3V positive).
The two LEDs, on the other hand, are interfaced through two standard GPIOs of the WiFi Kit 32 module; these LEDs cannot be driven directly from the board’s lines, to avoid overloading the GPIOs, but rather the appropriate current-limiting resistors must be placed in series with them, which we calculated at 220 ohms each.
To make the connections easier for you, on the next page we propose the wiring diagram to use if you want to interconnect the various elements with soldered wires or male-female jumpers. In addition, Table 1 lists the connections between the WiFi Kit 32 module and the SGP30 breakout board. Table 2, instead, lists the pins of the WiFi Kit 32 module used for the two signalling LEDs.
Table 1 Connections between the WiFi Kit 32 and the SGP30 breakout
Table 2 LED connections
After looking at the hardware details of our system, let us move on to the software. For the development of the control software we decided to use MicroPython, and specifically the port for the ESP32. MicroPython is a powerful system for software development of applications for modern, IoT-oriented microcontrollers such as the ESP32, and moreover the large number of existing libraries for managing sensors, actuators and interfaces greatly simplifies this phase of development.
Installing MicroPythonTo use MicroPython on the WiFi Kit 32, the first thing to do is install the interpreter, since the WiFi Kit 32 does not include it by default. To do this you first need to get a version of the binary to flash from the following web address: https://micropython.org/download/esp32/. The version used for the development of this application is v1.19 (2022-06-18). Download the binary and save it in a folder on your PC.
At this point you also need esptool, a tool used to flash the ESP32’s flash memory and distributed free of charge by Espressif (the company that makes the ESP32 and the ESP8266). You can download esptool from the following web address: https://github.com/espressif/esptool. At this point you have to erase the device memory and then “flash” (load into the Flash Memory) the MicroPython binary.
Erasing the memoryFirst, connect the WiFi Kit 32 to your PC with a micro USB cable. A virtual COM port should be assigned to the device (for example COM3, but the exact number depends on how many ports you already have on your system).
Now put the board into programming mode by pressing and holding the PRG button and pressing and releasing the RST button. Now all you have to do is use the esptool.py script to erase the memory. You can add the script’s path to your system path, or work directly from that folder and erase the memory with the following command (valid in a Windows environment):
python esptool.py –port <port_numb> erase_flash Replace <port_numb> with the virtual COM port assigned to your device (for example COM3).
Flashing the MicroPython interpreterAt this point you can flash MicroPython (on the ESP32 the interpreter must be flashed at address 0x1000). You can use the following console command, again under Windows:
python esptool.py –chip esp32 –port <port_numb> –baud 460800 write_flash -z 0x1000 esp32.bin As before, replace <port_numb> with the virtual COM port assigned to your device and esp32.bin with the name (and possibly the path, if it is not the same one you are working from) of the binary downloaded earlier. Fig. 5 shows the result of this operation.
Fig. 5 Windows console output after flashing MicroPython
At this point we can move on to managing the control software for our board. As we mentioned, what we want to do is acquire the data relating to the CO2 and TVOC values provided by the SGP30 sensor, display this data on the OLED display; read the user thresholds for the CO2 limit values (with their hysteresis) from the file system. Manage two indicator LEDs (red and green) to show whether the CO2 level is above the maximum permitted threshold.
To implement this software we first of all need suitable drivers for managing the OLED display and the SGP30 sensor. Fortunately both drivers are available, developed by Adafruit. You can get them by downloading them from the following web links: for the OLED display driver: https://github.com/adafruit/micropython-adafruit-ssd1306/blob/master/ssd1306.py; for the SGP30 driver: https://github.com/alexmrqt/micropython-sgp30.
The architectural diagram of the software we intend to build is shown in Fig. 6. The complete project therefore consists of these three files: Air_quality.py (main application file); Ssd1306.py (OLED display driver); Adafruit_sgp30.py (sgp30 sensor driver).
Fig. 6 Software architecture
As the development IDE for this application we will use Thonny, one of the most widely used IDEs for Python, which lets you develop both standard Python applications and MicroPython ones. Thonny can be downloaded freely from the following link: https://thonny.org/.
Interfacing with MicroPython is very simple: after connecting the WiFi Kit 32 board to the PC’s USB port, open Thonny and click on the bottom right corner: in the drop-down menu that opens after clicking, among the various available interpreters select “ESP32”, as shown in Fig. 7.
Fig. 7 Configuring the MicroPython port for ESP32 in Thonny
If the interpreter is not present, select “Configure Interpreter…” and manually specify the interpreter and the COM port to use, as shown in Fig. 8.
Fig. 8 Manually setting the interpreter and COM port in Thonny
Let’s now look at the details of the application software, contained entirely within the air_quality.py file, which is divided into two distinct phases: System Setup and Main Loop. The first phase, as you can easily guess from the name, is the system initialisation phase, while the second is the main loop in which the measurement takes place, along with printing the values on the OLED display and indicating the status via the LEDs.
The first phase, whose code is shown in Listing 1, has the task of initialising all the system peripherals, such as the LEDs, the two I²C buses (one used for interfacing the OLED display, the other for managing the SGP30 sensor), and retrieving from the file system the SGP30 sensor baseline values and the user-set CO2 threshold. These files are text files that the software expects to find in the file system. The sensor baseline values are calibration values that improve reading accuracy and are automatically created by the software if they are not present. The files containing the alarm threshold for the CO2 value, on the other hand, must be created by the user, and if they are not present the default values are loaded. To set this threshold you need to create the following two files: co2eq_th.txt = contains the alarm value for the CO2 reading, in ppm (parts per million); hist_th.txt = contains the hysteresis of the previous threshold, again in ppm.
Listing 1 – System initialisation
# ————————————————- # – SYSTEM INIT # ————————————————- # LEDs led_green = Pin(2, Pin.OUT) led_red = Pin(17, Pin.OUT) led_green.on() led_red.off() # Initialize I2C buses s_i2c = I2C(scl=Pin(18), sda=Pin(19), freq=100000) d_i2c = SoftI2C(scl=Pin(15), sda=Pin(4), freq=100000) # OLED enable pin oled_sts = Pin(16, Pin.OUT) oled_sts.on() # OLED initialization oled_width = 128 oled_height = 64 oled = ssd1306.SSD1306_I2C(oled_width, oled_height, d_i2c) # Air quality sensor init sgp30 = adafruit_sgp30.Adafruit_SGP30(s_i2c) # Initialize SGP-30 internal drift compensation algorithm. sgp30.iaq_init() # Wait 15 seconds for the SGP30 to properly initialize user_message(‘Sensor Init…’) time.sleep(SENS_INIT_DELAY_S) # User threshold for LEDs indication get_user_threshold() # Sensor Calibration get_sensor_baseline() # Store the time at which last baseline has been saved baseline_time = time.time() Creating these files is very simple: in the Thonny environment, with the board connected via USB, select the file-shaped icon or File > New. Repeat this operation twice, to create two files, and write the values inside them (for example 450 in the co2eq_th.txt file and 10 in the hist_th.txt file, so as to have a CO2 threshold of 450ppm and a hysteresis of 10ppm).
Now click on the floppy disk-shaped icon (or select File > Save) and in the pop-up that appears, select “MicroPython Device”, as shown in Fig. 9.
Fig. 9 Accessing the device memory from Thonny
This operation lets you access the device’s file system and save the files you created earlier. In this way you can set the CO2 threshold value for your case. Once the initialisation phase is complete, the software moves on to the main loop, shown in Listing 2.
Listing 2 – Main Loop
# ———————————————— # – MAIN LOOP # ———————————————— while True: # Get CO2 and TVOC data co2eq, tvoc = sgp30.iaq_measure() # Print values on Display oled_data(co2eq, tvoc) # Manage LEDs if (co2eq > co2eq_th): led_green.off() led_red.on() elif (co2eq < (co2eq_th – hysteresis)): led_green.on() led_red.off() # Update sensor baseline update_sensor_baseline() # Wait for the new sampling time time.sleep(SAMPLING_TIME_S) Here the following operations are performed in sequence. Through the iaq_measure() function of the adafruit_sgp30 library (sgp30_iaq_measure()), the CO2 and TVOC values are acquired and saved respectively in the two variables co2eq and tvoc.
At this point, on the next line, the values are printed on the OLED display through the oled_data() function. Then, through a series of if…elif statements, the indicator LEDs are handled. In particular, if the value stored in the co2eq variable is higher than the co2eq_th threshold set by the user, the red LED turns on and the green LED turns off; otherwise, if the value is lower than the threshold minus the hysteresis (co2eq_th – hysteresis), then the red LED turns off and the green one turns on. Once this phase is complete, the update_sensor_baseline() function is called to update the sensor baseline.
To ensure optimal sensor operation, the software updates the baseline for the first time after 12 hours of operation and then once every hour, as stated in the SGP30 manufacturer’s datasheet. At this point the loop pauses for 60 seconds before running a new data acquisition cycle.
The complete software project for this application, together with a description and all the required MicroPython libraries, can be downloaded from the following GitHub repository: https://github.com/ffich/IndoorAirQuality.
To test the software you will need to save the two files containing the drivers into the memory of the WiFi Kit 32 board, using the same procedure described for saving the user files, taking care to keep the same file names and not to forget the .py extension. The main file can be run directly from Thonny, or saved to the device memory under the name main.py, which is necessary if you want the device to work in standalone mode, that is, not connected to the PC (in fact main.py is the file the MicroPython interpreter automatically looks for at boot).
Fig. 10 shows a photo of the device wired on a breadboard while it acquires air quality data and drives the LEDs.
Fig. 10 The prototype wired on a breadboard for testing
The software also offers a few configuration options that the user can change, all of them found in the air_quality.py file. In particular, you can:
- change the default values of the CO2 alarm threshold and its hysteresis by editing the two parameters co2eq_th and hysteresis, set by default to 450 and 10, as shown in Listing 3 (by acting on the default values there is no need to save these two parameters to the file system);
- change the initial wait time for sensor stabilisation and the sampling time (SENS_INIT_DELAY_S and SAMPLING_TIME_S), set by default to 15 and 60 seconds, as also shown in Listing 3 (we recommend leaving these settings unchanged).
Listing 3 – Configuration parameters
——————————- # – USER TH DEFAULT VALUES ——————————- co2eq_th = 450 hysteresis = 10 ——————————- # – TIMING CONST # ——————————- SAMPLING_TIME_S = 60 SENS_INIT_DELAY_S = 15
ConclusionsIn this article we have described in detail how to build a device for air quality monitoring. By reading an air quality sensor (SGP30), the device can show the CO2 and TVOC concentrations on a display. Moreover, by reading a user file that contains the tolerance threshold for the CO2 concentration, it can give a visual indication through an LED that the room needs to be aired out.
Given the wealth of additional peripherals on the platform used, this device can be expanded with IoT features, such as a web page that lets you check the data remotely and alerts by e-mail or Telegram notification.
Related productsThe post Indoor Air Quality Meter: Keeping CO2 and TVOC Under Control appeared first on Open Electronics.
Mouser and Amphenol CDI Sign Global Distribution Agreement for RF Connectors
Mouser Electronics, Inc., the authorised global distributor of the newest electronic components and industrial automation products, announces a new global distribution agreement with Amphenol CDI. Customers can now buy Amphenol CDI’s rugged RF connectors, high-performance RF cable assemblies, aerospace interconnect solutions and more through Mouser’s global distribution network. Mouser now stocks products from more than 60 Amphenol divisions.
RF connectors for defence applicationsAmphenol CDI’s RF connectors for defence applications feature a compact design engineered to optimise assembly density. These connectors are built to meet stringent industry standards, letting designers improve electrical performance while minimising overall system complexity. Designed for robustness and high tolerance to radial and axial misalignment, Amphenol CDI’s military-grade RF connectors deliver reliable blind-mate performance. Thanks to their durability and reliability, these connectors withstand frequent mating cycles without compromising signal integrity, providing dependable performance in demanding defence and aerospace environments.
Right-angle RF connectors with swept outputAmphenol CDI’s right-angle RF connectors with swept output are designed for high-frequency applications that demand low loss and high signal integrity. The right-angle design simplifies cable routing while ensuring reliable RF connectivity in the most critical designs. Typical applications for these connectors include aerospace, defence and space systems, as well as industrial platforms where durability and signal integrity are essential.
RF cable assemblies for defence applicationsAmphenol CDI’s RF cable assemblies for defence applications are a high-performance alternative to traditional semi-rigid coaxial solutions, delivering comparable electrical performance with greater installation flexibility. Designed for RF and microwave systems with high component density, these hand-formable cable assemblies can be easily routed inside enclosures and connected to external equipment while preserving signal integrity. Their construction combines a tinned copper braid, an inner layer of rugged metallic foil shielding, and a high-precision dielectric and centre conductor. A flexible outer jacket allows tight bends, excellent shape retention and fast, efficient field installation.
Precision RF adapters up to 110 GHzDesigned for frequencies up to 110 GHz, Amphenol CDI’s precision RF adapters offer low insertion loss and reliable performance in demanding RF environments. The many interface and mounting options, including solder-mount and field-replaceable versions, let designers optimise PCB layouts and signal paths. Available in side-entry, vertical, angled and narrow-body configurations, these adapters support optimal RF transitions and efficient integration into systems. Precision manufacturing, controlled-impedance design and high ruggedness ensure stable performance in aerospace systems, semiconductor test equipment, advanced instrumentation and other high-frequency applications.
To learn more about the Amphenol CDI products available from Mouser, visit the Amphenol CDI page.
For more news about Mouser and our latest product releases, visit the Mouser newsroom.
Mouser technical resources and supportAs an authorised global distributor, Mouser offers the widest selection of semiconductors, next-generation electronic components and the newest industrial automation products. Mouser customers can count on original, 100% certified and fully traceable products from every one of its partner manufacturers. To help speed up customer designs, Mouser’s website hosts a vast library of technical resources, including a Technical Resource Centre, and offers product datasheets, supplier-specific reference designs, application notes, design technical data, engineering tools and other useful information.
Thanks to Mouser’s free newsletter, engineers can keep up with the latest news on products, technologies and applications. Mouser’s email news and reference resource subscriptions can be customised to match customers’ and subscribers’ specific and changing project needs. No other distributor gives engineers this level of customisation and control over the information they receive. Discover emerging technologies, product trends and much more by signing up today.
Mouser offers thousands of industrial automation products, available in stock and ready for immediate shipment. From predictive maintenance devices and control panels to a full range of industrial power, sensor and safety products, Mouser’s portfolio is there for customers to help them design, build and maintain complete automation solutions. For more information, visit the industrial automation solutions page and follow Mouser on social media.
For more information about Mouser Electronics, visit mouser.it.
The post Mouser and Amphenol CDI Sign Global Distribution Agreement for RF Connectors appeared first on Open Electronics.
Microchip and Marelli: Open-Standard Display Connectivity for Software-Defined Vehicles
Microchip Technology and Marelli have announced a new solution that allows graphics and video generated by the vehicle’s central computer to be accessed directly from the displays via ASA Motion Link (ASA-ML), an open standard for automotive video connectivity. The demonstrator of this solution helps vehicle manufacturers simplify display architectures, optimise system costs and increase sourcing flexibility, while supporting the transition to software-defined vehicles (SDVs).
ASA Motion Link: an open standard for video connectivityASA Motion Link is an open standard for automotive video connectivity and SerDes (serializer-deserializer) communication, defined by the Automotive SerDes Alliance (ASA), a global consortium of vehicle manufacturers, Tier 1 suppliers and semiconductor companies. By enabling secure, high-speed video and graphics transmission between products from multiple technology vendors, the standard supports greater compatibility across the automotive ecosystem and offers a scalable alternative to proprietary video transmission technologies.
As a founding member of ASA, Microchip is driving the automotive industry’s transition from proprietary connectivity technologies to open, interoperable standards, and has demonstrated broad interoperability with its camera solutions, now extending these solutions to enable display connectivity.
The joint solution for centralised architecturesAs vehicle architectures evolve toward centralised computing and software-defined vehicles (SDVs), vehicle manufacturers are looking for connectivity solutions that can support growing performance demands while reducing complexity, controlling costs and enabling scalable vehicle electronic architectures. In the joint demonstration solution, graphics and video content generated by the vehicle’s central computer is processed and transmitted through Microchip’s ASA-ML VS7000 chipset over a standardised high-speed link.
Marelli is a pioneer in display-side integration of the technology, enabling configuration and optimisation of the ASA-ML deserializer to decode standardised video streams directly on the display. This ensures accurate reception, synchronisation and distribution of centrally generated content, including camera feeds, navigation maps, infotainment graphics and vehicle control interfaces, while enabling simplified electronic architectures on the display side.
What the protagonists say“The transition to software-defined vehicles is fuelling demand for more open, flexible and scalable electronic architectures,” said Kelei Shen, president of Marelli Electronics Business. “As an integrator within the automotive ecosystem, Marelli brings together best-in-class technologies from different partners to deliver complete solutions to vehicle manufacturers. This collaboration highlights how open standards can accelerate innovation while delivering the interoperability needed for the next generation of vehicles.”
“Open standards play a fundamental role in accelerating innovation by reducing dependence on proprietary technologies,” said Kevin So, Vice President of Communications Business Unit at Microchip. “Our collaboration with Marelli demonstrates how ASA Motion Link gives automotive manufacturers a secure, interoperable and scalable connectivity solution that simplifies integration across the ecosystem.”
Technical strengths- Open interoperability enabling seamless connectivity between cockpit systems and displays from different technology vendors.
- Greater supplier flexibility thanks to open protocol specifications supported across the automotive ecosystem.
- Built-in security with link-level authentication and encryption integrated into the communication channel.
- Robust data transmission with lossless communication and high immunity to electromagnetic noise.
- Scalable performance supporting data rates up to 16 Gbps to meet a range of display needs.
- Optimised efficiency made possible by integrated Time Division Duplex (TDD) functionality and simplified Forward Error Correction (FEC), helping to lower power consumption.
- Paths toward progressively more Ethernet-centric architectures that contribute to ever lower power consumption.
The collaboration demonstrates how open-standard connectivity supports the vehicle’s on-board network and electronics by enabling secure communication between centralised computing systems and displays. It also reflects Marelli’s broader commitment to adopting open standards that help simplify development, optimise system costs and foster a more open automotive ecosystem.
For more information on Microchip’s ASA-ML solutions, visit the dedicated website.
The post Microchip and Marelli: Open-Standard Display Connectivity for Software-Defined Vehicles appeared first on Open Electronics.
ESP32-C5 with 3.5-inch touch display: the Waveshare devkit for voice AI
Waveshare has put together a devkit built around the ESP32-C5-WROOM-1U module and a 3.5-inch capacitive touch IPS display. It is the largest ESP32-C5 board with a touch display seen so far, and it is meant for building voice and visual interfaces that talk to large online AI models. The 32-bit RISC-V processor runs at up to 240 MHz, with 384 KB of SRAM, 320 KB of ROM, 8 MB of PSRAM and 32 MB of Flash. The low-power RISC-V core, meanwhile, runs at 40 MHz.
The radio covers dual-band Wi-Fi at 2.4 GHz and 5 GHz, Bluetooth 5 LE and IEEE 802.15.4 for Zigbee 3.0 and Thread. So the board is not limited to classic connectivity: it can join a Matter or Thread home automation network without extra modules. Anyone who wants to start from a simpler base can still find an ESP32 development board with Wi-Fi and Bluetooth for their first experiments.
Display, touch and sensors on the I2C busThe capacitive IPS panel measures 3.5 inches, has a resolution of 320 x 480 pixels and supports 262K colours. The ST7796 driver drives the display over SPI, while the FT6336 touch chip answers on the I2C bus. The board also integrates a six-axis QMI8658 IMU, a PCF85063 RTC and an SHTC3 temperature and humidity sensor. For storage there is a TF card slot, handy for logs and multimedia files.
10: ES8311 codec; 11: PCF85063 RTC; 13: AXP2101 PMU; 15: camera connector; 19: QMI8658 IMU
The audio section relies on the ES8311 codec and the NS4150B amplifier, with microphone and speaker already on board. The board can therefore record voice, play audio and handle a conversation with a remote assistant. The factory firmware is based on ESPBrookesia, while the tutorial for the XiaoZhi AI voice assistant shows how to connect to online AI model platforms. The manufacturer collects examples and instructions on the Waveshare maker site.
AXP2101 power and expansion pinsPower management goes through the AXP2101 chip. The optional 3.7 V lithium battery is charged through the MX1.25 connector or from the USB Type-C port. The board measures 95.11 x 63.67 x 14.10 mm and offers a 32-pin expansion connector with 2.54 mm pitch, so it can be plugged into a breadboard without adapters.
- ESP32-C5-WROOM-1U: 32-bit RISC-V up to 240 MHz, 384 KB SRAM, 320 KB ROM, 8 MB PSRAM, 32 MB Flash
- Display: 3.5-inch capacitive touch IPS, 320 x 480 pixels, 262K colours, ST7796 driver over SPI
- Touch: FT6336 chip over I2C
- Sensors: six-axis QMI8658 IMU, PCF85063 RTC, SHTC3 temperature and humidity
- Audio: ES8311 codec, NS4150B amplifier, microphone and speaker
- Power: AXP2101 PMU, 3.7 V lithium battery, USB Type-C or MX1.25
- Optional camera: BF3901 at 320 x 240 pixels
On the software side you can choose between ESP-IDF, Arduino IDE and Visual Studio Code with the Espressif IDF plugin. For anyone who wants to add external memory to the project, the catalogue also offers a microSD card reader with SPI interface, useful when the 32 MB of Flash are not enough for audio files.
Prices for the development kit range from 31.99 to 35.99 dollars in the manufacturer’s online store, from 37.99 to 43.99 dollars on AliExpress and from 43.99 to 47.99 dollars on Amazon, depending on whether you choose the version with or without camera and battery. Finally, anyone who wants to measure the environmental conditions around the board can add a module with a DHT11 sensor on the 32-pin connector.
Source: https://docs.waveshare.com/ESP32-C5-Touch-LCD-3.5
Related products- ESP32 – 32 GPIO development board with WiFi and Bluetooth
- MicroSD Card Reader module with SPI interface
- DHT11 Temperature and Humidity Sensor Board
The post ESP32-C5 with 3.5-inch touch display: the Waveshare devkit for voice AI appeared first on Open Electronics.
Open Electronics at Maker Faire Rome 2026: Come and Meet Us
Futura Elettronica, the company behind Open Electronics, and its Italian magazine Elettronica In are Technical Partners of Maker Faire Rome again this year. The fair is the yearly meeting point of the European maker community.
23 to 25 October at the Gazometro OstienseThe 2026 edition takes place from 23 to 25 October, once again at the Gazometro Ostiense in Rome. In recent years this striking industrial venue has proved a perfect home for three days dedicated to makers.
Find us at stand M15Look for stand M15, where you can talk to the Futura Elettronica team about your projects, ask for technical advice and see the products up close.
Starter kits, boards and books at the fairFutura Elettronica will bring a large part of its range to Rome: starter kits, boards, components, tools, the Elettronica In magazine and books (the latter two are in Italian). The catalog counts about 6,000 products, so we cannot bring all of them. If there is a specific product you would like to see in person, let us know before the fair and we will try to have it with us.
Tickets and the full programme are available on the official website, makerfairerome.eu.
The post Open Electronics at Maker Faire Rome 2026: Come and Meet Us appeared first on Open Electronics.
Littelfuse Expands Omnipolar TMR Switch Family with TO-92 Option
Littelfuse is expanding its family of omnipolar TMR switches with the new TX00AT314AMA sensor, which brings the proven performance of the TX00 platform into a TO-92 package with wire leads. The device offers high sensitivity, ultra-low power consumption and omnipolar detection, along with a diversified sourcing option thanks to its South Korean origin.
A new format for the TX00 platformLittelfuse, Inc., a diversified industrial technology manufacturer that creates solutions for the safe and efficient transfer of electrical power, today announced the TX00AT314AMA omnipolar TMR switch sensor, the latest addition to the TX00 TMR switch family. The TX00AT314AMA delivers the same proven performance as the TX00AS314TRA SOT-23-3 — high sensitivity, ultra-low 1.5 µA power consumption, omnipolar detection and switching speeds up to 1 kHz — in a TO-92 package with wire leads and with South Korea as the country of origin, giving design teams a new form-factor option and a diversified supply chain.
Technology and technical featuresThe TX00AT314AMA integrates a precision TMR (Tunnel Magnetoresistance) sensing element with CMOS signal processing circuitry, including an integrated voltage generator, a low-noise amplifier, a comparator and a Schmitt trigger, to ensure accurate switching, strong noise immunity and excellent thermal stability. Like its SOT-23-3 counterpart, it has an X-axis (in-plane) magnetic sensor for detecting fields parallel to the sensor surface, offering greater flexibility in mechanical design. The device operates with a typical supply current of just 1.5 µA and supports high-speed detection up to 1 kHz.
Like all members of the TX00 family, the TX00AT314AMA features omnipolar detection, which lets it respond to both North and South magnetic poles without polarity alignment constraints. Its precise operate and release thresholds, combined with built-in hysteresis, ensure clean, bounce-free switching even in electrically noisy environments.
Statement from Bavly Obaid“The TX00AT314AMA gives design engineers a new way to access the proven performance of the TX00 platform,” said Bavly Obaid, Global Product Manager, Sensors at Littelfuse. “The TO-92 package supports through-hole assembly and prototyping-friendly integration, while the South Korean origin gives our customers a concrete option for supply chain diversification — two things that matter greatly in today’s design environment.”
Key features and benefits- Ultra-low power consumption (1.5 µA typ.) extends battery life in always-on systems
- High sensitivity (~14 Gauss) enables reliable detection with small magnets
- Omnipolar detection simplifies design and reduces alignment requirements
- Fast response (up to 1 kHz) supports dynamic and rotational detection
- Integrated signal conditioning and hysteresis improve noise immunity and switching stability
- TO-92 package with wire leads supports through-hole assembly and prototyping-friendly integration
The TX00AT314AMA is designed for applications that require low power consumption, high reliability and flexibility from prototype to production, including:
- Home automation (smart meters with tamper detection, position and limit sensing)
- Industrial automation (proximity detection)
- Consumer electronics (appliances, power tools, battery-powered IoT devices and wearables)
- Utilities (gas, water and heating metering)
By combining the proven performance of the TX00 with a through-hole form factor and diversified origin, the TX00AT314AMA helps engineers design smaller, smarter and longer-lasting products while reducing maintenance needs and improving system reliability.
The TX00AT314AMA expands the packaging and sourcing options within Littelfuse’s TX00 TMR switch family, giving design teams greater flexibility without compromising the performance characteristics engineers already rely on.
Frequently asked questions about the TX00AT314AMA omnipolar TMR switch sensorWhat makes TMR technology better than Hall-effect sensors?
TMR sensors offer higher sensitivity and significantly lower power consumption than Hall-effect devices. This enables reliable detection with smaller magnets while extending battery life in always-on applications.
What does omnipolar detection mean for designers?
Omnipolar sensors detect both North and South magnetic poles, eliminating the need for precise magnet orientation. This simplifies mechanical design and reduces assembly complexity.
How does the TX00AT314AMA compare with the TX00AS314TRA?
The TX00AT314AMA shares identical electrical and magnetic characteristics with the TX00AS314TRA, including 1.5 µA supply current, 14 Gauss sensitivity and 1 kHz switching speed, but in a TO-92 package with wire leads and South Korea as the country of origin. It is the right choice when through-hole mounting, prototyping-friendly assembly or supply chain diversification is a priority.
What kinds of applications benefit most from this sensor?
Applications that require continuous operation, compact size and high reliability — such as smart meters, proximity switches and portable electronics — benefit most from its performance.
How does the device maintain reliable switching in noisy environments?
An integrated Schmitt trigger and precise hysteresis ensure stable switching behavior. This prevents false triggering and guarantees clean output signals even in electrically noisy systems.
What are the main distinguishing features of the TX00AT314AMA within the TX00 family?
Two things set the TX00AT314AMA apart from others in the TX00 family: its TO-92 package with wire leads, which enables through-hole printed circuit board assembly and easy prototyping, and its country of origin, South Korea, which offers a non-Chinese sourcing option for customers managing supply chain risk. Its performance specifications are identical to those of the TX00AS314TRA.
Why does the country of origin matter for the TX00AT314AMA?
The TX00AT314AMA is produced in South Korea, making it one of the first Littelfuse TO-92 magnetic switches with non-Chinese origin. For customers facing tariff exposure, trade policy risk or internal supply diversification requirements, it offers a qualified alternative with performance identical to the TX00AS314TRA without requiring a redesign.
AvailabilityThe TX00AT314AMA is available in a TO-92 package, supplied in ammunition-style packaging. Sample requests can be submitted to any authorized Littelfuse distributor worldwide. For a list of Littelfuse distributors, visit Littelfuse.com.
For more information, the product page for the TX00AT314AMA omnipolar TMR switch sensor is available.
The post Littelfuse Expands Omnipolar TMR Switch Family with TO-92 Option appeared first on Open Electronics.



