Our team of 4 EEE majors at Arizona State University are working with the Teensy 4.0, with two electret condenser microphones with LM386 amplifiers to line-inputs of the Audio Shield Rev D, to build an affordable noise and echo cancellation system. Two of us have a lifetime of experience wearing hearing aids and have been personally annoyed by persistent problems in noisy environments or with feedback when high gain is required. Hearing aids have come a long way in the last 15 years or so but are currently expensive for most wearers. Our current test setup is shown below:
Our team chose the Teensy 4.0 for a variety of reasons and think it has tremendous potential for our project. We have worked through the Audio Tutorial Workshop to get acquainted with the system, with the help of the Audio System Design Tool and Arduino IDE. This has proven to us that the Teensy 4.0 is likely a great choice, but we have work to do! While these tools are extremely helpful for a variety of projects, we have envisioned from the start (since the beginning of last semester) having algorithms developed in MATLAB/Simulink. We are somewhat biased to use these tools since they are seemingly commonplace these days in the EE field and emphasized throughout our educational training. We have not been successful with a variety of approaches we have tried to integrate the Teensy 4.0 with Simulink. So far, it has been a puzzle for which a variety of components are not well understood by our team.
Right now, we have divided our algorithm-to-hardware integration into 4 parts:
• Build a custom target in MATLAB from scratch. We are stuck at the activation of deployment features step.
• Start from embedded coder add-on by testing integration of Arduino Uno first. The add-on was designed for the Leonardo but is said to be adaptable for other Arduino hardware. If we learn the "tricks," progress here may translate to the Teensy 4.0, but we are not sure.
• Arm compiler & MATLAB integration. This approach disregards the Teensy 4.0 integration with Arduino IDE and will require ArmDS IDE.
• Implement CMSIS-DSP using Arduino IDE. This approach would likely move away from the modeling done using Simulink and MATLAB, needing to be coded manually using C++ syntax.
We think that considering each approach will move us forward, but we prefer focusing our efforts if we can prove any option is not viable. We are at the point that we need help. Has someone attempted any of the above for a similar project? Does anyone know if the Teensy 4.0 can be adapted to be coded with Simulink (ideally in real-time with HIL) and which approach sounds most promising? We appreciate any advice you can give. Thanks for reading this and thanks for your time!
Our team chose the Teensy 4.0 for a variety of reasons and think it has tremendous potential for our project. We have worked through the Audio Tutorial Workshop to get acquainted with the system, with the help of the Audio System Design Tool and Arduino IDE. This has proven to us that the Teensy 4.0 is likely a great choice, but we have work to do! While these tools are extremely helpful for a variety of projects, we have envisioned from the start (since the beginning of last semester) having algorithms developed in MATLAB/Simulink. We are somewhat biased to use these tools since they are seemingly commonplace these days in the EE field and emphasized throughout our educational training. We have not been successful with a variety of approaches we have tried to integrate the Teensy 4.0 with Simulink. So far, it has been a puzzle for which a variety of components are not well understood by our team.
Right now, we have divided our algorithm-to-hardware integration into 4 parts:
• Build a custom target in MATLAB from scratch. We are stuck at the activation of deployment features step.
• Start from embedded coder add-on by testing integration of Arduino Uno first. The add-on was designed for the Leonardo but is said to be adaptable for other Arduino hardware. If we learn the "tricks," progress here may translate to the Teensy 4.0, but we are not sure.
• Arm compiler & MATLAB integration. This approach disregards the Teensy 4.0 integration with Arduino IDE and will require ArmDS IDE.
• Implement CMSIS-DSP using Arduino IDE. This approach would likely move away from the modeling done using Simulink and MATLAB, needing to be coded manually using C++ syntax.
We think that considering each approach will move us forward, but we prefer focusing our efforts if we can prove any option is not viable. We are at the point that we need help. Has someone attempted any of the above for a similar project? Does anyone know if the Teensy 4.0 can be adapted to be coded with Simulink (ideally in real-time with HIL) and which approach sounds most promising? We appreciate any advice you can give. Thanks for reading this and thanks for your time!