As a result of a homework for the specialization I made a USB thermometer that can read the data of OneWire sensors.
The base of the device is an STM32F4 Discovery kit that has a 168MHz Cortex-M4 MCU. My circuit is connected to the kit by the expansion pins. There’s three 7 segment display, two buttons and a buzzer on the PCB. The strict timing and the two-way communication of the OneWire bus was the most challenging part of the project. The software automatically discovers the connected sensors. The user can set an upper limit using the button and if any of the temperatures goes above the limit the buzzer will beep.
The USB communication is based on the ST’s USB library that provides a virtual com port. The data is processed by a MATLAB script which can also draw a chart of the measured values.
As further developments it would be good to filter the values in the MCU and I can imagine a better UI for the sensor then a MATLAB script.

