Other Technologies General Forum Discussions
Other Technologies General
DC Motors to Variable Speed - Power Stage Made EasyLive Webinar: April 15, 2:00 PM (GMT)DC brush motors are still the choice for many actuators. PWM d...
Show More
DC Motors to Variable Speed - Power Stage Made Easy
Live Webinar: April 15, 2:00 PM (GMT)
DC brush motors are still the choice for many actuators. PWM driven motors enable variable speed applications and more comfort plus higher energy efficiency of the drive.
In cooperation with element14, we will show you various application examples and how to start your design fast and easy.
Featured Topics
More information:
http://bit.ly/DC_Motor_webinar Show Less
Live Webinar: April 15, 2:00 PM (GMT)
DC brush motors are still the choice for many actuators. PWM driven motors enable variable speed applications and more comfort plus higher energy efficiency of the drive.
In cooperation with element14, we will show you various application examples and how to start your design fast and easy.
Featured Topics
- Motor control applicaton examples
- Choosing the right products for your application
- Benefits of integrated bridges (e.g. high-current half-bridges NovalithIC™)
- Quick start with evaluation & prototyping using the DC Motor Control Shield for Arduino with integrated high-current half bridge NovalithIC™
More information:
http://bit.ly/DC_Motor_webinar Show Less
Other Technologies General
We are presenting the live webinar "LED Lighting with XMC - Improve your LED color mixing and dimming performance". Join the live webinar and learn ho...
Show More
We are presenting the live webinar "LED Lighting with XMC - Improve your LED color mixing and dimming performance".
Join the live webinar and learn how Infineon's latest XMC families enrich your LED lighting design with improved quality of light and color mixing.
The webinar has been recorded. Please click on the below picture to view the video of the webcast.
Show Less
Join the live webinar and learn how Infineon's latest XMC families enrich your LED lighting design with improved quality of light and color mixing.
The webinar has been recorded. Please click on the below picture to view the video of the webcast.
Show Less
Other Technologies General
Good news for all microcontroller developer: The next generation of Infineon's programming chain tool DAVE™ is available now! 🙂The free Eclipse based...
Show More
Good news for all microcontroller developer: The next generation of Infineon's programming chain tool DAVE™ is available now! 🙂
The free Eclipse based IDE offers code repository, graphical system design methods, and automatic code generator to guide XMC microcontroller user along the entire process – from evaluation to production (E2P).
XMC Lib (productive) and DAVE™ generated code can be used with other 3rd party tool chains.
Let's look at each component of the development process:
DAVE v4, DAVE SDK v4 and DAVE APPs v4 are released as Beta version. We recommend using them for evaluation and test purposes or adaption in development flow.
Download your free copy of DAVE™ at:
http://bit.ly/DAVE_version4 Show Less
The free Eclipse based IDE offers code repository, graphical system design methods, and automatic code generator to guide XMC microcontroller user along the entire process – from evaluation to production (E2P).
XMC Lib (productive) and DAVE™ generated code can be used with other 3rd party tool chains.
Let's look at each component of the development process:
- DAVE™ IDE – Free Eclipse based integrated development environment (IDE) including GNU C-compiler, debugger, and code generation plug-in
- XMC Lib – CMSIS / MISRA 2004 compliant low level driver library (APIs) for XMC Microcontroller peripherals
- DAVE™ APPs – Graphical User Interface (GUI) configurable application oriented software components using XMC Lib (Low Level Driver); arranged in a library (APIs)
- DAVE™ SDK – Development environment to develop DAVE™ APPs
- EXAMPLES – XMC Lib (Low Level Driver for XMC Miconcontrollers) and DAVE™ APPs composed to applications
- 3rd PARTIES – XMC Lib and DAVE™ APPs are tested with GCC, ARM® and TASKING compilers; Released for following IDE’s Altium, Atollic, ARM/KEIL, IAR, Rowley
- XMC Microcontrollers (MCUs) – A wide portfolio of more than hundred different feature / performance / memory / package options powered by 32-bit ARM® Cortex™–M0/M4F
DAVE v4, DAVE SDK v4 and DAVE APPs v4 are released as Beta version. We recommend using them for evaluation and test purposes or adaption in development flow.
Download your free copy of DAVE™ at:
http://bit.ly/DAVE_version4 Show Less
Other Technologies General
ARM Microcontroller Design Contest in cooperation with ElektorWanna create a smart domestic or industrial device based on ARM Cortex-M processor and w...
Show More
ARM Microcontroller Design Contest in cooperation with Elektor
Wanna create a smart domestic or industrial device based on ARM Cortex-M processor and win up to 5.000 US-dollar? Then register for this cool design competition which will be conducted by ARM Connected Community in cooperation with Keil and Elektor. Learn how to use the Infineon XMC4500 Relax Kit to solve this design challenge.
Submission Deadline
Contest registration by March 31, 2015.
Final prototype designs for the ARM Microcontroller Design Contest must be submitted by June 30, 2015.
More information on ARM Microcontroller Design Contest:
http://bit.ly/ARM-Microcontroller-Design-Contest
More information on XMC4500 Relax Kit from Infineon:
http://bit.ly/XMC45-relaxkit
Show Less
Wanna create a smart domestic or industrial device based on ARM Cortex-M processor and win up to 5.000 US-dollar? Then register for this cool design competition which will be conducted by ARM Connected Community in cooperation with Keil and Elektor. Learn how to use the Infineon XMC4500 Relax Kit to solve this design challenge.
Submission Deadline
Contest registration by March 31, 2015.
Final prototype designs for the ARM Microcontroller Design Contest must be submitted by June 30, 2015.
More information on ARM Microcontroller Design Contest:
http://bit.ly/ARM-Microcontroller-Design-Contest
More information on XMC4500 Relax Kit from Infineon:
http://bit.ly/XMC45-relaxkit
Show Less
Other Technologies General
Embedded World 201524 - 26 February 2015, NurembergVisit us at Hall 5, Booth360.Product HighlightsXMCInfineon has combined its wealth of experience in...
Show More
Embedded World 2015
24 - 26 February 2015, Nuremberg
Visit us at Hall 5, Booth360.
Product Highlights
XMC
Infineon has combined its wealth of experience in microcontroller design for real-time critical applications with all the benefits of ARM® Cortex™-M industry-standard cores to create the XMC microcontroller family. XMC is a unique fit for applications such as motor control, power conversion, factory and building automation, renewable energy, transportation, LED lighting and home appliances.
DAVE™ – Free Eclipse Based Development Platform
The brand-new DAVE™ version 4 is a high-productivity development platform for the XMC microcontroller family to simplify and shorten software development.
In addition, a complete set of development tools and ready to use SW solutions are available for the XMC microcontrollers from various third party tool and SW vendors.
DAVE™ is the application oriented code repository merged with graphical system design methods and automatic code generator to guide XMC microcontroller user along the entire process – from evaluation-to-production.
Join us at the world´s largest tradeshow for embedded technologies and explore our latest products and technologies!
More Information at http://bit.ly/EWorld2015 Show Less
24 - 26 February 2015, Nuremberg
Visit us at Hall 5, Booth360.
Product Highlights
XMC
Infineon has combined its wealth of experience in microcontroller design for real-time critical applications with all the benefits of ARM® Cortex™-M industry-standard cores to create the XMC microcontroller family. XMC is a unique fit for applications such as motor control, power conversion, factory and building automation, renewable energy, transportation, LED lighting and home appliances.
DAVE™ – Free Eclipse Based Development Platform
The brand-new DAVE™ version 4 is a high-productivity development platform for the XMC microcontroller family to simplify and shorten software development.
In addition, a complete set of development tools and ready to use SW solutions are available for the XMC microcontrollers from various third party tool and SW vendors.
DAVE™ is the application oriented code repository merged with graphical system design methods and automatic code generator to guide XMC microcontroller user along the entire process – from evaluation-to-production.
Join us at the world´s largest tradeshow for embedded technologies and explore our latest products and technologies!
More Information at http://bit.ly/EWorld2015 Show Less
Other Technologies General
XMC2GO Design Challenge 2014 Italy – Results ReportAn electronic lock able to open a door (or the activation/deactivation of a device) to whoever owns...
Show More
XMC2GO Design Challenge 2014 Italy – Results Report
An electronic lock able to open a door (or the activation/deactivation of a device) to whoever owns the correct code, just as well as a key lock allows the opening of a "traditional" lock. There are different types of electronic locks, categorized according to the way in which the code is provided. The simplest ones use a keyboard, whereas the more complicated are based on the detection of biometric data (eg, a fingerprint). In the middle are all the locks based on radio frequency technology, which use a badge or a key ring equipped with a transponder. However, all of them require a visible active device (keyboard, biometric reader, and so on) which may be subject to vandalism, or a passive device (badge, key ring, etc.) that could be removed/stolen/lost, or even forgotten. So, why do not implement an electronic lock that can be controlled by an object more easily to bring, such as a watch or a phone? We can use a smartwatch or any smartphone to send via Bluetooth interface the unlock code, made with an Infineon XMC2GO board.
Block diagram
The project can be summarized as follows:
We will analyze each section separately, deepening its operation.
Power supply
Power supply block provides the correct voltage to all other sections. We can use a wall power adapter (5V DC output) with micro USB connector. It is easily available on the market and can power directly the XMC2GO board; this will provide us a power supply of 3.3V that we can distribute to the other stages. For those sections requiring a higher power, such as the actuators module, it is convenient to use directly the 5V DC supply.
Bluetooth interface
The Bluetooth interface will be carried out with a fully integrated module available on the market. This will not force us to approve the radio frequency module, since it was already made by the manufacturer. Moreover, as we will discover, the Bluetooth module will simplify the firmware, which will only take care functional part of the system, without having to take over the management of the radio communication stack.
The XMC2GO (CPU)
The heart of the application is an XMC2GO board. The firmware residing on the microcontroller will manage the operation of the electronic lock, receiving and transmitting data via Bluetooth, and interfacing with actuators.
USB
We can think of using the USB port configured in VCP (virtual serial port) mode to set some operating parameters (eg the relay excitation period, the unlock code, the authorized devices, and so on). Actually, a serial port can be easily connected to a PC running any type of operating system, and it is possible to use COTS applications without having to write a custom software.
Actuators
This module allows the electronic door lock to interact with the environment, activating the electromechanical lock. At first, in the simplest model of lock that can be thought, a relay is enough. We may also use the two LEDs integrated on the board to show some particular conditions. For instance, a LED may flash at fixed intervals to indicate the lock is working, while the other may indicate the activation status of the relay.
Principle of operation
The simplest type of lock we can make has the following characteristics:
The unlock code could be directly hardcoded into the firmware, but this would prevent us from being able to change it without programming the MCU from scratch. By using the USB port, which appears on a PC as a virtual serial port, we could instead send some simple commands using a terminal emulator software (eg TeraTerm, Hyperterminal, and so on) and change the code as often as we want.
A little more complex is the Bluetooth management: the memory resources (especially RAM) provided by the XMC2GO board are not enough to handle both the protocol stack and the application at the same time; moreover we need to approve the device as compatible with the Bluetooth standard, and the payment of the related royalties. To solve this issue we can use the Infineon "SPP eUniStone" module. It is an integrated device that exposes a Bluetooth interface with Serial Port Profile (SPP stands for Serial Port Profile), and can be controlled by the XMC2GO board via serial port using AT-style commands. This allows us to simplify the firmware especially on the communication management side, as well as the smartwatch/smartphone application, which will be limited to sending and receiving data over a serial port. In addition, this simplifying will facilitate the debugging of the firmware, since it will be possible to send commands using a PC equipped with a Bluetooth interface, without having to write the Android App immediately.
The actuator section, in its simplest version, consists in a relay controlled by XMC2GO board through a transistor. The relay activation, as an effect of the reception of a correct unlock code, can be performed for a fixed time, possibly modifiable via USB.
Algorithms
The XMC2GO firmware is structured as follows:
Given the simplicity of the application, we can think of writing a monolithic application that does not use a realtime operating system (RTOS). At power on, the firmware will perform the requested board initialization: clock, active devices, I/O pins (including those used as special devices), internal variables (command queue, actuator status, etc. ) and the Bluetooth module.
After that, the firmware enters a loop where the queues holding the commands received from the devices, (serial port connected to the Bluetooth module and USB virtual serial port) are analyzed. The device internal state is then updated according to the processed commands and the relay is activated or deactivated.
Two interrupt routines are in charge of collecting data from serial ports and inserting it into the command queues for following analysis and processing. In order to achieve accurate timing, it might be useful to enable another interrupt connected to a programmable timer.
Android App
The Smartwatch or Smartphone Android App will be in charge of pairing with the lock via Bluetooth interface. Once pairing has been established, a virtual serial port will be added to the operating system, allowing a bidirectional communication with the firmware on the XMC2GO board. Depending on the safety grade we want to achieve, the application can be written so that it sends the unlock code automatically, or it could show a keypad to enter it.
Future developments
The project may be expanded by adding several features in order to increase both safety and efficiency:
The same application may also be adapted to operate for other purposes, such as switching on/off of loads via Bluetooth (acting as a switched socket). Show Less
An electronic lock able to open a door (or the activation/deactivation of a device) to whoever owns the correct code, just as well as a key lock allows the opening of a "traditional" lock. There are different types of electronic locks, categorized according to the way in which the code is provided. The simplest ones use a keyboard, whereas the more complicated are based on the detection of biometric data (eg, a fingerprint). In the middle are all the locks based on radio frequency technology, which use a badge or a key ring equipped with a transponder. However, all of them require a visible active device (keyboard, biometric reader, and so on) which may be subject to vandalism, or a passive device (badge, key ring, etc.) that could be removed/stolen/lost, or even forgotten. So, why do not implement an electronic lock that can be controlled by an object more easily to bring, such as a watch or a phone? We can use a smartwatch or any smartphone to send via Bluetooth interface the unlock code, made with an Infineon XMC2GO board.
Block diagram
The project can be summarized as follows:
We will analyze each section separately, deepening its operation.
Power supply
Power supply block provides the correct voltage to all other sections. We can use a wall power adapter (5V DC output) with micro USB connector. It is easily available on the market and can power directly the XMC2GO board; this will provide us a power supply of 3.3V that we can distribute to the other stages. For those sections requiring a higher power, such as the actuators module, it is convenient to use directly the 5V DC supply.
Bluetooth interface
The Bluetooth interface will be carried out with a fully integrated module available on the market. This will not force us to approve the radio frequency module, since it was already made by the manufacturer. Moreover, as we will discover, the Bluetooth module will simplify the firmware, which will only take care functional part of the system, without having to take over the management of the radio communication stack.
The XMC2GO (CPU)
The heart of the application is an XMC2GO board. The firmware residing on the microcontroller will manage the operation of the electronic lock, receiving and transmitting data via Bluetooth, and interfacing with actuators.
USB
We can think of using the USB port configured in VCP (virtual serial port) mode to set some operating parameters (eg the relay excitation period, the unlock code, the authorized devices, and so on). Actually, a serial port can be easily connected to a PC running any type of operating system, and it is possible to use COTS applications without having to write a custom software.
Actuators
This module allows the electronic door lock to interact with the environment, activating the electromechanical lock. At first, in the simplest model of lock that can be thought, a relay is enough. We may also use the two LEDs integrated on the board to show some particular conditions. For instance, a LED may flash at fixed intervals to indicate the lock is working, while the other may indicate the activation status of the relay.
Principle of operation
The simplest type of lock we can make has the following characteristics:
- the unlock code is stored inside the microcontroller memory;
- an unlock code, received through the Bluetooth interface, to be compared with the one stored in internal memory;
- the activation of the relay for a predetermined time, in case the two codes coincide.
The unlock code could be directly hardcoded into the firmware, but this would prevent us from being able to change it without programming the MCU from scratch. By using the USB port, which appears on a PC as a virtual serial port, we could instead send some simple commands using a terminal emulator software (eg TeraTerm, Hyperterminal, and so on) and change the code as often as we want.
A little more complex is the Bluetooth management: the memory resources (especially RAM) provided by the XMC2GO board are not enough to handle both the protocol stack and the application at the same time; moreover we need to approve the device as compatible with the Bluetooth standard, and the payment of the related royalties. To solve this issue we can use the Infineon "SPP eUniStone" module. It is an integrated device that exposes a Bluetooth interface with Serial Port Profile (SPP stands for Serial Port Profile), and can be controlled by the XMC2GO board via serial port using AT-style commands. This allows us to simplify the firmware especially on the communication management side, as well as the smartwatch/smartphone application, which will be limited to sending and receiving data over a serial port. In addition, this simplifying will facilitate the debugging of the firmware, since it will be possible to send commands using a PC equipped with a Bluetooth interface, without having to write the Android App immediately.
The actuator section, in its simplest version, consists in a relay controlled by XMC2GO board through a transistor. The relay activation, as an effect of the reception of a correct unlock code, can be performed for a fixed time, possibly modifiable via USB.
Algorithms
The XMC2GO firmware is structured as follows:
Given the simplicity of the application, we can think of writing a monolithic application that does not use a realtime operating system (RTOS). At power on, the firmware will perform the requested board initialization: clock, active devices, I/O pins (including those used as special devices), internal variables (command queue, actuator status, etc. ) and the Bluetooth module.
After that, the firmware enters a loop where the queues holding the commands received from the devices, (serial port connected to the Bluetooth module and USB virtual serial port) are analyzed. The device internal state is then updated according to the processed commands and the relay is activated or deactivated.
Two interrupt routines are in charge of collecting data from serial ports and inserting it into the command queues for following analysis and processing. In order to achieve accurate timing, it might be useful to enable another interrupt connected to a programmable timer.
Android App
The Smartwatch or Smartphone Android App will be in charge of pairing with the lock via Bluetooth interface. Once pairing has been established, a virtual serial port will be added to the operating system, allowing a bidirectional communication with the firmware on the XMC2GO board. Depending on the safety grade we want to achieve, the application can be written so that it sends the unlock code automatically, or it could show a keypad to enter it.
Future developments
The project may be expanded by adding several features in order to increase both safety and efficiency:
- an encryption algorithm such as AES may be inserted into the serial protocol, so as to make indecipherable the commands exchanged between the smartwatch and the lock. PolarSSL (https://polarssl.org/) is a library suitable for this purpose;
- a real time clock (RTC) connected on SPI bus and equipped with backup battery could be useful to manage the time slots of operation, during which unlock is not allowed, or during which it locks or unlocks automatically;
- a E2PROM/FLASH on SPI bus could be useful for storing the MAC addresses of Bluetooth devices considered "trustable", those therefore allowed to send the unlock code; a device not belonging to this list would not be considered and therefore could not perform the lock opening;
- we could handle the lock opening through a rolling code algorithm, so that the unlock code changes after each use; in this case the Android app will automatically send the code to the lock, without no need to enter it manually;
- we could add a second relay as an auxiliary output to achieve different functionalities:
- in case the received code is not correct, or as a result of a number of failed login attempts, it could control the raising of an alarm;
- it might be activated by a second code, for example to control the switching on of the courtesy lights (in this case the period of the relay activation may be different from the first one);
- it could be activated simultaneously to the activation of the first relay, but with a different period (always for switching courtesy lights on, or as a consensus to the video recording performed by a video surveillance system).
- in case the received code is not correct, or as a result of a number of failed login attempts, it could control the raising of an alarm;
- we could add some other (optocoupled) inputs in order to detect additional conditions to the release of the lock, such as the presence of a person at the door (via passive infrared detector or pressure sensor placed on the floor).
The same application may also be adapted to operate for other purposes, such as switching on/off of loads via Bluetooth (acting as a switched socket). Show Less
Other Technologies General
XMC2GO Design Challenge 2014 Italy – Results ReportThe aim of the project is to develop a control system with very compact size, able to be inserted i...
Show More
XMC2GO Design Challenge 2014 Italy – Results Report
The aim of the project is to develop a control system with very compact size, able to be inserted in a conventional keychain. If you whistle, or if the key ring stays away from the owner for more than 10 minutes (approximately), the keychain will start flashing (thanks to the two LEDs integrated on the XCM2GO board) and will play a sound in order to facilitate its localization.
Whistle detection
Software
The are two main suitable solutions for the whistle detection are two: autocorrelation and spectrogram analysis. Both methods can be implemented on the XMC2GO. Spectrogram analysis is the most reliable method for the detection of a well-defined whistle, but is also the most hexose in terms of computing power. XMC2GO allows to perform the sampling of the analog signal up to 40 kHz without any problems, and the processor has enough RAM to run the algorithm with a resolution of 40~70 Hz. The most common algorithms for obtaining a signal Fourier transform, a mandatory task in order to analyze the frequency of the whistle to be detected, are the Cooley-Tukey algorithm and the Hartley algorithm; for our purposes, they are equivalent.
Once the frequencies spectrum has been achieved, a pitch detection algorithm shall be run (this algorithm identifies the fundamental frequency of a given sound). The most suitable is the maximum likelihood algorithm, which makes a simple comparison between the spectrum of a sample stored in memory (the original whistle must be stored during programming into the XMC2GO) and the sound picked up by the microphone. This method offers a good compromise between power consumption (in terms of energy and thus battery life), responsiveness (the time the keychain needs to "identify" the master's whistle and play the sound) and reliability (not to play when the microphone picks up sounds different from the original whistle and react when it picks up the right whistle).
Hardware
In order to capture the audio signal is requested a suitably amplified microphone. MAX4466 is an electrolytic microphone featuring small size and offering an excellent amplification (at least for our purposes).
“Removal” detection
Software
The Bluetooth module programming is quite simple since many Open Source libraries suitable for this purpose are already available on the web. Several apps suitable for interfacing with the chosen Bluetooth module are also available (we will later explain in detail what they serve for). Our board will look for nearby Bluetooth devices every 5 minutes (the frequency was chosen to optimize the battery life) and, in case it did not find our phone, it will start a 5 minutes timer after which it will activate both audible and visual alerts. If the need is to develop a minimal WhistleKey, there is no need to install an app on the smartphone: it is enough to program the XCM2GO so that it saves the names of the first N Bluetooth devices discovered during its first power on. Obviously, only our smartphone with the Bluetooth turned on must be in the keychain area. In case it is not possible to be sure of that, we could control the power level of the received signals, in this way, just the device with the strongest signal can be considered (therefore you will need to keep the key ring close to the phone during the initialization phase).
For instance, by using he Nordic Android nRF UART application it will also be possible to remotely control the keychain making it playing a sound on command, checking the residual battery power, or checking other functionalities (the XCM2GO has 5 free pins that can be used to add functionalities to our keychain).
Hardware
In order to detect the if the owner is far from it, we have chosen the BLE nRF8001 Bluetooth module, which is compact, low power consumption, wide range (in the order of meters) and compatible with iPhone and Android smartphones.
Playing acoustic and visual warning
Software
Depending on the chosen buzzer it is advisable to select the tone that features the highest power and set up the playback to be intermittent. LEDs will also be lit intermittently, choosing an interval between 500 and 200 ms (so as to achieve maximum visibility).
Note: it is important that the microphone is muted during playback of the sound wave.
Hardware
For playing the sound wave a speaker or a simple buzzer directly attached to a pin could be used. The latter solution provides a very powerful sound signal and a minimal power absorption. As regards the visual signal, the LEDs integrated on the XMC2GO are more than enough to generate a good brightness.
Power supply
Hardware
The best solution to achieve a WhistleKey very small in size is to use four 1.2V button cells (Varta MBU20 NiMH) to reach a voltage of 4.8V, able both to power without problems the system and to ensure a very compact design. However, this solution is also the one with less autonomy; you can choose various types of batteries with different size and amperage, voltage reference are 1.2, 2.4 and 4.8 V. By using the most compact solution, the achieved autonomy is approximately 20 hours, but it is easily rechargeable via the built-in XMC2GO microUSB. It would also be possible to use a small lithium cell, but it will need a step-up circuit and a dedicated circuit for battery recharging, thus affecting the overall compactness (but it would ensure a high level of autonomy). Show Less
The aim of the project is to develop a control system with very compact size, able to be inserted in a conventional keychain. If you whistle, or if the key ring stays away from the owner for more than 10 minutes (approximately), the keychain will start flashing (thanks to the two LEDs integrated on the XCM2GO board) and will play a sound in order to facilitate its localization.
Whistle detection
Software
The are two main suitable solutions for the whistle detection are two: autocorrelation and spectrogram analysis. Both methods can be implemented on the XMC2GO. Spectrogram analysis is the most reliable method for the detection of a well-defined whistle, but is also the most hexose in terms of computing power. XMC2GO allows to perform the sampling of the analog signal up to 40 kHz without any problems, and the processor has enough RAM to run the algorithm with a resolution of 40~70 Hz. The most common algorithms for obtaining a signal Fourier transform, a mandatory task in order to analyze the frequency of the whistle to be detected, are the Cooley-Tukey algorithm and the Hartley algorithm; for our purposes, they are equivalent.
Once the frequencies spectrum has been achieved, a pitch detection algorithm shall be run (this algorithm identifies the fundamental frequency of a given sound). The most suitable is the maximum likelihood algorithm, which makes a simple comparison between the spectrum of a sample stored in memory (the original whistle must be stored during programming into the XMC2GO) and the sound picked up by the microphone. This method offers a good compromise between power consumption (in terms of energy and thus battery life), responsiveness (the time the keychain needs to "identify" the master's whistle and play the sound) and reliability (not to play when the microphone picks up sounds different from the original whistle and react when it picks up the right whistle).
Hardware
In order to capture the audio signal is requested a suitably amplified microphone. MAX4466 is an electrolytic microphone featuring small size and offering an excellent amplification (at least for our purposes).
“Removal” detection
Software
The Bluetooth module programming is quite simple since many Open Source libraries suitable for this purpose are already available on the web. Several apps suitable for interfacing with the chosen Bluetooth module are also available (we will later explain in detail what they serve for). Our board will look for nearby Bluetooth devices every 5 minutes (the frequency was chosen to optimize the battery life) and, in case it did not find our phone, it will start a 5 minutes timer after which it will activate both audible and visual alerts. If the need is to develop a minimal WhistleKey, there is no need to install an app on the smartphone: it is enough to program the XCM2GO so that it saves the names of the first N Bluetooth devices discovered during its first power on. Obviously, only our smartphone with the Bluetooth turned on must be in the keychain area. In case it is not possible to be sure of that, we could control the power level of the received signals, in this way, just the device with the strongest signal can be considered (therefore you will need to keep the key ring close to the phone during the initialization phase).
For instance, by using he Nordic Android nRF UART application it will also be possible to remotely control the keychain making it playing a sound on command, checking the residual battery power, or checking other functionalities (the XCM2GO has 5 free pins that can be used to add functionalities to our keychain).
Hardware
In order to detect the if the owner is far from it, we have chosen the BLE nRF8001 Bluetooth module, which is compact, low power consumption, wide range (in the order of meters) and compatible with iPhone and Android smartphones.
Playing acoustic and visual warning
Software
Depending on the chosen buzzer it is advisable to select the tone that features the highest power and set up the playback to be intermittent. LEDs will also be lit intermittently, choosing an interval between 500 and 200 ms (so as to achieve maximum visibility).
Note: it is important that the microphone is muted during playback of the sound wave.
Hardware
For playing the sound wave a speaker or a simple buzzer directly attached to a pin could be used. The latter solution provides a very powerful sound signal and a minimal power absorption. As regards the visual signal, the LEDs integrated on the XMC2GO are more than enough to generate a good brightness.
Power supply
Hardware
The best solution to achieve a WhistleKey very small in size is to use four 1.2V button cells (Varta MBU20 NiMH) to reach a voltage of 4.8V, able both to power without problems the system and to ensure a very compact design. However, this solution is also the one with less autonomy; you can choose various types of batteries with different size and amperage, voltage reference are 1.2, 2.4 and 4.8 V. By using the most compact solution, the achieved autonomy is approximately 20 hours, but it is easily rechargeable via the built-in XMC2GO microUSB. It would also be possible to use a small lithium cell, but it will need a step-up circuit and a dedicated circuit for battery recharging, thus affecting the overall compactness (but it would ensure a high level of autonomy). Show Less
Other Technologies General
XMC2GO Design Challenge 2014 Italy – Results ReportThe project aims to provide an electronic device able to detect the presence of pollutants resultin...
Show More
XMC2GO Design Challenge 2014 Italy – Results Report
The project aims to provide an electronic device able to detect the presence of pollutants resulting from the use of pesticides in agricultural areas (vineyards, orchards, harvest field, etc..). The device will serve as a real accessory for smartphones, connected via micro-USB. Once connected to a smartphone, an Android app implemented on purpose will allow the user to check in real-time mode all the data collected by the sensor, and store them on the smartphone's internal memory. It may also be used in urban areas adjacent to the above mentioned agricultural areas in order to provide a global indicator of an excessive or improper use of those materials in the municipality.
The small size of the Infineon XMC2GO board facilitates the portability of this "accessory" for smartphones and, at the same time, makes it user-friendly for all users.
Pesticides are used in various fields of agriculture. There are different types of pesticides and different quantities to be used depending on the type of agricultural product. Some of these pesticides release residues that are deposited on the agricultural product or inside it; some others release a residue that is deposited in the soil, others still release a residue in the air. The aim of this application is to detect just those elements that pesticides release into the air, using specific gas sensors.
By analyzing the most common low-cost gas sensors available on the market, we have identified the set of substances that can be detected:
In order to provide a device capable of detecting those polluting elements is necessary to build an array of six sensors:
We reserve a more accurate study on pesticide residue to be released into the air, verifying the presence of other pollutants. Pesticides are used in different cultures and can release thousands of substances in the air. Our aim is to find a finite set of elements that lead us back to most pesticides.
Hardware
The hardware design shall take into account the features provided by the board, and provide compatibility with the power supply and interfacing schemes. For this reason we decided to adopt the Infineon XMC2GO board, which well fits the project’s hardware needs. Let's summarize the main features provided by the XMC2GO board:
The XMC2GO features a very small size (just 14 x 38.5 mm), a key factor for this project since it allows achieving a compact system with a small footprint, easily interfaceable with a smartphone. The power supply has been designed for working with 3.3 V voltage level in order to facilitate its connection with a smartphone through the micro-USB interface.
Hardware design
By analyzing board characteristics we can go on with an appropriate hardware design whose main feature is the ability to properly detect the changes in the conductivity of the exploited gas sensors.
A common feature of the majority of the gas sensors is the low selectivity, which means the simultaneous sensitivity to different gases. In order to solve the issue and use these devices in real applications, it is necessary to combine the outputs of many different sensors to obtain, by "pattern recognition" techniques, the selectivity level that a single sensor is not able to provide. It is therefore evident that, in the "electronic noses" field (array of gas sensors), both electronic interface and processing module are extremely important. Moreover, the lack of synergy between sensor and interface does not allow to optimize performance in terms of system resolution capability with respect to different types of gases. Often this limitation is due to the fact that gas sensors are semiconductor devices that perform as resistors whose resistance varies depending on the concentration of the gas, but also as a result of the effects of aging.
The idea behind the front-end sensor reading circuit is based on a Wheatstone bridge which allows to obtain accurate values of the variable resistance, represented by the sensor itself. As mentioned before, in order to achieve a more accurate measure it is possible to adopt an array of gas sensors, in this way we can overcome the cross-sensitivity issue. To ensure greater portability, we suggest to use distributed parameter resistors (SMD resistors).
Furthermore, it is quiet hard to find out sensors that can be powered with voltages inferior to 5V. For this reason, for both the input and output analog readout circuit, we can use a level converter in order to connect a device powered at 3.3V with a 5V powered system. An example is provided by the TXB0108 level converter, which is also bidirectional.
Data processing
As regards the processing of data coming from the device, they will be sent in input to a classifier circuit that, thanks to algorithms properly designed to detect harmful substances, will be able to output exactly the level values of the levels of emitted substances. In order to ensure a certain reliability of the output data, it will be necessary to achieve upstream a training system to recognize individual substances through tools such as artificial neural networks. This will lead to classifiers correctly configured to be implemented at the firmware level.
Firmware and IDE
The firmware read the resistance values of the sensors array and process the data according to the above mentioned Data Processing criteria. The IDE used for firmware development is DAVE, developed by Infineon and designed to be used on the XMC family of microcontrollers.
The App
The App will have a dual function: it will work as a simple viewer of the real-time data collected by the hardware, and will allow the storage of such data into the smartphone flash memory together with, possibly, the GPS position and the current date. In this way, the device may be used for the implementation of a real low cost monitoring network, also facilitating the post-processing of the collected data. Show Less
The project aims to provide an electronic device able to detect the presence of pollutants resulting from the use of pesticides in agricultural areas (vineyards, orchards, harvest field, etc..). The device will serve as a real accessory for smartphones, connected via micro-USB. Once connected to a smartphone, an Android app implemented on purpose will allow the user to check in real-time mode all the data collected by the sensor, and store them on the smartphone's internal memory. It may also be used in urban areas adjacent to the above mentioned agricultural areas in order to provide a global indicator of an excessive or improper use of those materials in the municipality.
The small size of the Infineon XMC2GO board facilitates the portability of this "accessory" for smartphones and, at the same time, makes it user-friendly for all users.
Pesticides are used in various fields of agriculture. There are different types of pesticides and different quantities to be used depending on the type of agricultural product. Some of these pesticides release residues that are deposited on the agricultural product or inside it; some others release a residue that is deposited in the soil, others still release a residue in the air. The aim of this application is to detect just those elements that pesticides release into the air, using specific gas sensors.
By analyzing the most common low-cost gas sensors available on the market, we have identified the set of substances that can be detected:
In order to provide a device capable of detecting those polluting elements is necessary to build an array of six sensors:
- TGS 822 (methane, carbon monoxide, isobutane, hexane, benzene, ethanol);
- TGS 2602 (hydrogen, ammonia, ethanol, toluene);
- MQ2 (hydrogen, LPG, methane, carbon monoxide, alchool, propane, smoke);
- MQ131 (nitric oxide, chlorine, ozone);
- MQ136 (hydrogen sulphide);
- MQ138 VOC (mellow, benzene, aldehyde, ketone, ester).
We reserve a more accurate study on pesticide residue to be released into the air, verifying the presence of other pollutants. Pesticides are used in different cultures and can release thousands of substances in the air. Our aim is to find a finite set of elements that lead us back to most pesticides.
Hardware
The hardware design shall take into account the features provided by the board, and provide compatibility with the power supply and interfacing schemes. For this reason we decided to adopt the Infineon XMC2GO board, which well fits the project’s hardware needs. Let's summarize the main features provided by the XMC2GO board:
- small size: 14 x 38.5 mm;
- CPU: XMC1100 microcontroller based on ARM-Cortex architecture (size: 4 x 4 mm);
- Flash memory: 64 Kb;
- RAM memory: 16 KB;
- frequency: 32 MHz CPU clock, 64 MHz timer clock;
- power supply: through USB Debug Probe (J-Link) or through 3.3 V external power supply;
- connectors: two 8-pin headers.
The XMC2GO features a very small size (just 14 x 38.5 mm), a key factor for this project since it allows achieving a compact system with a small footprint, easily interfaceable with a smartphone. The power supply has been designed for working with 3.3 V voltage level in order to facilitate its connection with a smartphone through the micro-USB interface.
Hardware design
By analyzing board characteristics we can go on with an appropriate hardware design whose main feature is the ability to properly detect the changes in the conductivity of the exploited gas sensors.
A common feature of the majority of the gas sensors is the low selectivity, which means the simultaneous sensitivity to different gases. In order to solve the issue and use these devices in real applications, it is necessary to combine the outputs of many different sensors to obtain, by "pattern recognition" techniques, the selectivity level that a single sensor is not able to provide. It is therefore evident that, in the "electronic noses" field (array of gas sensors), both electronic interface and processing module are extremely important. Moreover, the lack of synergy between sensor and interface does not allow to optimize performance in terms of system resolution capability with respect to different types of gases. Often this limitation is due to the fact that gas sensors are semiconductor devices that perform as resistors whose resistance varies depending on the concentration of the gas, but also as a result of the effects of aging.
The idea behind the front-end sensor reading circuit is based on a Wheatstone bridge which allows to obtain accurate values of the variable resistance, represented by the sensor itself. As mentioned before, in order to achieve a more accurate measure it is possible to adopt an array of gas sensors, in this way we can overcome the cross-sensitivity issue. To ensure greater portability, we suggest to use distributed parameter resistors (SMD resistors).
Furthermore, it is quiet hard to find out sensors that can be powered with voltages inferior to 5V. For this reason, for both the input and output analog readout circuit, we can use a level converter in order to connect a device powered at 3.3V with a 5V powered system. An example is provided by the TXB0108 level converter, which is also bidirectional.
Data processing
As regards the processing of data coming from the device, they will be sent in input to a classifier circuit that, thanks to algorithms properly designed to detect harmful substances, will be able to output exactly the level values of the levels of emitted substances. In order to ensure a certain reliability of the output data, it will be necessary to achieve upstream a training system to recognize individual substances through tools such as artificial neural networks. This will lead to classifiers correctly configured to be implemented at the firmware level.
Firmware and IDE
The firmware read the resistance values of the sensors array and process the data according to the above mentioned Data Processing criteria. The IDE used for firmware development is DAVE, developed by Infineon and designed to be used on the XMC family of microcontrollers.
The App
The App will have a dual function: it will work as a simple viewer of the real-time data collected by the hardware, and will allow the storage of such data into the smartphone flash memory together with, possibly, the GPS position and the current date. In this way, the device may be used for the implementation of a real low cost monitoring network, also facilitating the post-processing of the collected data. Show Less
Other Technologies General
XMC2GO Design Challenge 2014 Italy – Results ReportThe detection of fetal heartbeat is essential during the pregnancy both from the medical point of v...
Show More
XMC2GO Design Challenge 2014 Italy – Results Report
The detection of fetal heartbeat is essential during the pregnancy both from the medical point of view and for ensuring maternal serenity. Unfortunately, the most common and effective devices are based on the Doppler Effect, which may arise some issues potentially harmful to the unborn. The project aimed to the realization of a device that can perform the basic function of Fetal Heartbeat Monitor and have some innovative features. Moreover, this device will be absolutely safe both for the mother and her baby.
The project
The idea is therefore to provide a device able to filter and amplify the signal coming from the fetus. Via a microphone and an appropriate conditioning, the signal will reach an analog to digital converter. Its microcontroller will then digitize the detected audio signal and send it via Bluetooth to a smartphone where a special APP will transmit the data on a cloud platform for possible future analysis. The system shall also be equipped with a headphone socket to ensure a local listening, and with a memory for storing intervals of audio detection. A research has been conducted among the ARM core-based microcontrollers, therefore performing and scalable, with ADC and other internal devices (obviously), but above all with a user-friendly development environment and integrated debugging. In fact, both the time-to-market and the low startup costs were defined as essential requirements.
All these requirements lead us to choose the XMC2GO board by Infineon, which mounts an ARM Cortex M0 (XMC1100) MCU with several peripherals, and a controller specifically designed for professional debugging. All this for just over 5 Euros!
The possibility of having a memory and then transmit the collected data to a doctor who can correctly interpret them, make the device open to medical applications that go beyond the admittedly important tranquility resulting from listening to the fetal heartbeat. In addition, thanks to the ability to save audio samples, we can enable Bluetooth only when we are away from the paunch of the expectant mother. We are working to avoid exposure to ultrasound, and we do not want to irradiate the fetus with the Bluetooth signal! To better understand the project, we can see a block diagram that describes the system in its entirety.
Audio signal amplification
The main idea is to amplify the signal received through a cone, such as the one used in the initial part of the stethoscope. The cone and especially its plastic body, possibly covered with Velcro or with another sound-absorbing material, are an effective solution for an initial amplification and for performing ambient noise reduction. The chosen solution amplifies the received signal using the stethoscope principle, thus improving its characteristics and its employment; at the same time, it ensures its safety: the fetus is never irradiated with any type of signal.
Schematics
The first schematics version has been created to carry out the main provided features having a margin of adjustment through the addition of appropriate testing sections. The fateful wired prototype, today out of fashion, has not been prepared, and a PCB has been directly created. The project will be released Open Source and will include some optional parts for future implementations and for developers needs.
Let's now see together the various sections of the schematics.
Power supply
As usual, power supply is a mandatory section. The device will be battery powered and therefore we have foreseen two button batteries, connected in parallel in order to increase the capacity. U6 (MCP1640) is the DC-DC converter in charge of managing the power supply. In fact, thanks to this IC, the supply voltage will maintain a 3.3V stable value during the battery discharge. It will be just the 3.3V voltage to power all the components on the board. In the power supply section you can also note U2 (TPS62730), an additional DC-DC converter (step-down in this case), ideal for managing the BLE113-A module. Actually, as suggested by its datasheet, the TPS optimizes the power of the Bluetooth module by saving energy through the bypass function. The latter is optional, so in the future we will decide whether to use it or not.
Audio
The audio section is obviously composed by an omnidirectional, high sensitivity microphone (electret). As an optional component, we have also included the possibility to mount a MEMS SMM310 microphone. The microphone signal is then pre-amplified by the NE5534 operational amplifier, single version of the famous NE5532 audio op-amp. However, this stage is optional and dedicated to the MEMS microphone. For use with a condenser microphone, signal arrives directly to a double active filter implemented with a Sallen-Key that in addition to amplify in two different steps, will also implement a low-pass filter tuned on 200Hz (maximum frequency provided by a fetal heart rate. The signal at the end of conditioning will be an input to the AD converter, a device integrated inside the XMC2GO module.The same signal comes also to U3 (LM4881), a specific headphone amplifier that will just make the signal audible from the headphones, connected through the X1 header.
Microcontroller and external memory
The processing task is entrusted to the XMC2GO module that integrates an ARM Cortex M0 microcontroller, which in turn integrates some peripherals, essential for this project: an A/D converter to acquire and digitize the audio signal, an UART to communicate with the BLE module, an SPI to manage the external EEPROM memory and an I2C to manage the accelerometer (optional). The external memory is entrusted to a SST25PF020B 2Mbit SPI EEPROM, more than enough to store audio samples of the fetal heart rate.
Bluetooth
The BLE module is a Bluegiga BLE113 that communicates with the microcontroller through the UART. Later we will evaluate whether to enable the DC-DC dedicated regulator in order to optimize power consumption.
Accelerometer
The digital accelerometer, added for future purposes, is a 3-axis (MMA8451) type. Among the card features there is a button that could be used for many functionalities and two LEDs (in addition to those already present on the XMC2GO board).
Part list (preliminary)
The assembled board
Conclusions
The project will be released as Open Source, both hardware and firmware, both the schematics and the assembly plan to be published in high resolution, the part list, the gerber files, and all the created documents. Show Less
The detection of fetal heartbeat is essential during the pregnancy both from the medical point of view and for ensuring maternal serenity. Unfortunately, the most common and effective devices are based on the Doppler Effect, which may arise some issues potentially harmful to the unborn. The project aimed to the realization of a device that can perform the basic function of Fetal Heartbeat Monitor and have some innovative features. Moreover, this device will be absolutely safe both for the mother and her baby.
The project
The idea is therefore to provide a device able to filter and amplify the signal coming from the fetus. Via a microphone and an appropriate conditioning, the signal will reach an analog to digital converter. Its microcontroller will then digitize the detected audio signal and send it via Bluetooth to a smartphone where a special APP will transmit the data on a cloud platform for possible future analysis. The system shall also be equipped with a headphone socket to ensure a local listening, and with a memory for storing intervals of audio detection. A research has been conducted among the ARM core-based microcontrollers, therefore performing and scalable, with ADC and other internal devices (obviously), but above all with a user-friendly development environment and integrated debugging. In fact, both the time-to-market and the low startup costs were defined as essential requirements.
All these requirements lead us to choose the XMC2GO board by Infineon, which mounts an ARM Cortex M0 (XMC1100) MCU with several peripherals, and a controller specifically designed for professional debugging. All this for just over 5 Euros!
The possibility of having a memory and then transmit the collected data to a doctor who can correctly interpret them, make the device open to medical applications that go beyond the admittedly important tranquility resulting from listening to the fetal heartbeat. In addition, thanks to the ability to save audio samples, we can enable Bluetooth only when we are away from the paunch of the expectant mother. We are working to avoid exposure to ultrasound, and we do not want to irradiate the fetus with the Bluetooth signal! To better understand the project, we can see a block diagram that describes the system in its entirety.
Audio signal amplification
The main idea is to amplify the signal received through a cone, such as the one used in the initial part of the stethoscope. The cone and especially its plastic body, possibly covered with Velcro or with another sound-absorbing material, are an effective solution for an initial amplification and for performing ambient noise reduction. The chosen solution amplifies the received signal using the stethoscope principle, thus improving its characteristics and its employment; at the same time, it ensures its safety: the fetus is never irradiated with any type of signal.
Schematics
The first schematics version has been created to carry out the main provided features having a margin of adjustment through the addition of appropriate testing sections. The fateful wired prototype, today out of fashion, has not been prepared, and a PCB has been directly created. The project will be released Open Source and will include some optional parts for future implementations and for developers needs.
Let's now see together the various sections of the schematics.
Power supply
As usual, power supply is a mandatory section. The device will be battery powered and therefore we have foreseen two button batteries, connected in parallel in order to increase the capacity. U6 (MCP1640) is the DC-DC converter in charge of managing the power supply. In fact, thanks to this IC, the supply voltage will maintain a 3.3V stable value during the battery discharge. It will be just the 3.3V voltage to power all the components on the board. In the power supply section you can also note U2 (TPS62730), an additional DC-DC converter (step-down in this case), ideal for managing the BLE113-A module. Actually, as suggested by its datasheet, the TPS optimizes the power of the Bluetooth module by saving energy through the bypass function. The latter is optional, so in the future we will decide whether to use it or not.
Audio
The audio section is obviously composed by an omnidirectional, high sensitivity microphone (electret). As an optional component, we have also included the possibility to mount a MEMS SMM310 microphone. The microphone signal is then pre-amplified by the NE5534 operational amplifier, single version of the famous NE5532 audio op-amp. However, this stage is optional and dedicated to the MEMS microphone. For use with a condenser microphone, signal arrives directly to a double active filter implemented with a Sallen-Key that in addition to amplify in two different steps, will also implement a low-pass filter tuned on 200Hz (maximum frequency provided by a fetal heart rate. The signal at the end of conditioning will be an input to the AD converter, a device integrated inside the XMC2GO module.The same signal comes also to U3 (LM4881), a specific headphone amplifier that will just make the signal audible from the headphones, connected through the X1 header.
Microcontroller and external memory
The processing task is entrusted to the XMC2GO module that integrates an ARM Cortex M0 microcontroller, which in turn integrates some peripherals, essential for this project: an A/D converter to acquire and digitize the audio signal, an UART to communicate with the BLE module, an SPI to manage the external EEPROM memory and an I2C to manage the accelerometer (optional). The external memory is entrusted to a SST25PF020B 2Mbit SPI EEPROM, more than enough to store audio samples of the fetal heart rate.
Bluetooth
The BLE module is a Bluegiga BLE113 that communicates with the microcontroller through the UART. Later we will evaluate whether to enable the DC-DC dedicated regulator in order to optimize power consumption.
Accelerometer
The digital accelerometer, added for future purposes, is a 3-axis (MMA8451) type. Among the card features there is a button that could be used for many functionalities and two LEDs (in addition to those already present on the XMC2GO board).
Part list (preliminary)
The assembled board
Conclusions
The project will be released as Open Source, both hardware and firmware, both the schematics and the assembly plan to be published in high resolution, the part list, the gerber files, and all the created documents. Show Less
Other Technologies General
2015 ASIA EOS/ESD Symposium and Exhibition Seoul, Korea - July 2-3, 2015. Sponsored by EOS/ESD Association. Co-sponsored by Korea Chapter of ESD Assoc...
Show More
2015 ASIA EOS/ESD Symposium and Exhibition
Seoul, Korea - July 2-3, 2015.
Sponsored by EOS/ESD Association.
Co-sponsored by Korea Chapter of ESD Association.
Infineon Technologies is a corporate sponsor of this event.
Call for Presentations. Abstract Submission Deadline January 29th, 2015.
http://esda.org/documents/AsiaSympCall2015.pdf Show Less
Seoul, Korea - July 2-3, 2015.
Sponsored by EOS/ESD Association.
Co-sponsored by Korea Chapter of ESD Association.
Infineon Technologies is a corporate sponsor of this event.
Call for Presentations. Abstract Submission Deadline January 29th, 2015.
http://esda.org/documents/AsiaSympCall2015.pdf Show Less