Hello, it has been a little bit! I hope you are doing well.
In this short series of posts, I want to discuss the design of a new board, focusing on component selection, how it works, and other critical parts of the initial design. The reason for this focus is because these early stages are quite time-consuming and because they form, in my opinion, the basis of a design.
So, let’s get to it. The idea for this project is a board that can measure the current of a microSD card during write and read operations. This may seem like a very niche idea, but it will play an especially useful role for some other projects (hint: they involve sensors!). I wanted to design a device to measure the microSD’s input voltage because I thought it would be interesting to see how it changes during read and write operations as current demand varies. This will allow me to assess the difference between different microSD cards from various manufacturers and evaluate which one is best for low-current devices.
To execute these read and write operations, the board will feature an STM32 microcontroller with built-in USB and SDIO interface support. SDIO (secure digital input/output) is the interface that I plan to use to allow communication between the microSD and the STM32. Alternative protocols can be used, such as SPI; however, such protocols are not natively supported on the STM32 for use with microSD cards. The USB protocol allows the STM32 to communicate with the host computer, to send the current and voltage values. I can also program the STM32 over USB, which is cool as well.
I have found that listing the criteria of a hopeful design allows for better results. As such, the criteria for the design include:
- microSD current consumption sampling rate higher than 100 Hz
- microSD voltage bus sampling rate greater than 100 Hz
- Current measurement resolution less than 0.25 mA
- Voltage measurement resolution less than 250 mV
- Power Supply able to supply a maximum of 500 mA to MicroSD
The rationale behind the requirements of low resolution is to allow for a better perspective on the current and voltage changes during different operations, and thus to permit better analysis. The reasoning for the sampling rates over 100 Hz is simply because microSD cards are blazingly fast. A simple write operation of 64 bytes could take less than an exceedingly small fraction of a second, so the higher the sampling rate, the more detail provided about current consumption during these operations.
The next part of the series focuses on the principle of current measurements, how I plan to measure it on the board, and voltage measurements.
Bye for now, and I will see you in the next post!