GPIO Test Tool unable to see any pins...
I have the new "710S" which is actually an UP-TWL02.
I've successfully installed the latest Up Framework (2026-08-18) (along with VS 2022, MS C++ for x64 and x86), MS SDK 9.0.318 x64, MS .NET SDK 4.7.2, and MS .NET Runtime 8.0.31 x64).
When I build and run the UpNetGPIOTestTool (along with a few extra debugging lines), I see this:
AAEON Technology Inc.
Board Name: UP-TWL02
BIOS Ver: UPTWBM11
Firmware Ver:0
Controller HashCode:-365808231
Controller Struct:Windows.Devices.Gpio.GpioController
{"PinCount":0}
I do notice that the HashCode changes each time I run it, so I'm not sure what exactly that is telling me. But no matter what, I get a PinCount of 0.
I've tried this both with and without the FinTek Device Driver installed and it didn't make a difference.
I tried compiling the UpGIOTestTool but it fails with this error about missing System.Private.CoreLib:
I have run the pre-compiled I2cTestTool and that works perfectly.
Anyone get the GPIO to work on a TWL02? I urgently need to get this to work and greatly appreciate any help.
...Larry
Best Answer
-
Hi @CompuDoc
Due to its different architecture, this board does not use upframework for GPIO control; instead, it uses the fintek tool.
All GPIO pins support interrupts. The following example demonstrates how to configure GPIO00.
Logic Device = LDN09h
Set the IRQ channel to 03h (IRQ3).

Configure GPIO00 as an input.


- GPIO00 IRQ enable


- Configure GPIO00 to detect either a rising edge or a falling edge.
0: Rising edge
1: Falling edge

Please refer to the information above and give it a try.
Best Regards,
Harry Chiu
Answers
-
I should add that the FitGpio.exe tool does work (when the FinTek device driver is installed), so it's not a hardware or BIOS problem...
...Larry
-
And for anyone interested, the FinTek SDK (which only offers read and write for the GPIO) uses 242 (0xF2) as the index for the GPIO pins on the LPC1714 chip.
But I'd still love to use the UpFramework for the GPIO, especially if it enables using a pin as an interrupt (instead of me polling every few milliseconds...). Looking for any advice, thank you!