[T] Using a microcontroller

A project log for Tetrinsic [gd0041]

A motorised, pressure sensitive and haptic-feedback slide encoder.

kelvinAkelvinA 09/30/2022 at 12:120 Comments


So I'm watching VoidstarLabs' new keyboard build and hear about IO expanders and microcontrollers, and so I go onto digikey to take a look, since I've still got concerns about controlling the MP6543 through an expander. What do I find immediately? RP2040 chips that go up to 133MHz for 88p for a MOQ of 1!!

The issue is that I don't have much board space at all, so the 7x7 package is too large. The current IO expander is a 4x4 package, so I set the relevant filters and found this:

32 bit. 48Mhz. 16K flash. 2K RAM. Near half the cost of the IO expander:


No... no... that can't be right. I wouldn't have picked this if the stock quantity was this low... it... it should've been in the thousands or something!...

Finds a snipaste on the 27th Sep when I first found the chip:

Wha? There were 5K in stock 3 days ago? Wha... what happened??? So I would've had to recalculate either way????

Well... I guess I'll start reading the 280-odd page datasheet then... and hope that 490 is enough to stay in stock without beign enought to get bought out by the local factory or something.

Anyway, I was thinking that the microcontroller could do all the motor control and encoder processing and just ping back to the master every microsecond (1kHz) or so. Every time I think I'm close to having something, I find a new low in limbo (reference to the Limbo Dimension in the Minecraft Dimensional Doors mod).


I'm looking at the £2.54 EFM32PG22 and it could be an option for a microcontroller with built in 16 bit ADC, but the documentation is too sparce to get an idea of if it's a usable alternative to the £3.79 discrete ADC. The £2.95 MSP430I2020 also exists with 2x24b ADCs, but I can't seem to find the 3 or 4x24b options, nor have I determined if 16 IO pins are enough. It might be, but I'm once again still having troube understanding what its ADC can and can't do. 

Those are the 2 options that cost less than ADC + M031 (£5.16). The M031 has a 12bit ADC, meaning I can remove the 2:1 switch chip.

Also, I'm currently reading that strain guages have 10mV of full-scale deflection, so using 16x gain is likely unrealistic for getting usable signals.