There are many projects online that make use of old computers by turning them into servers etc. I wanted to know if it's possible to turn an old pc/laptop into an x86 development board like the Udoo or lattepanda etc. It looks as if the only thing missing is the GPIO pins. Can one make use of ports like USB or thunderbolt etc to add GPIO capabilities?
-
1This is a bit lacking in detail to be answerable. There are of course ways to have a PC interact with the external world, but in legacy free designs many of those (USB, etc) must be mediated by an external microcontroller. Depending on the requirements of the thing to be controlled, particularly with regard to timing and reliability, it can make more sense to close control loops in the external MCU, and have the PC only communicate higher level intentions. Look for example at a 3d printer, where an MCU in the printer executes G-code, and the PC merely drip feeds it in advance of need. – Chris Stratton Nov 11 '20 at 17:13
-
How old? If it has a "parallel port" then you already have your GPIO !!! – Kyle B Nov 11 '20 at 17:42
-
@Kyle B the laptop is from 2015. But I also want to know if a 2020 i7 pc build can be repurposed as a dev board – user221238 Nov 11 '20 at 18:16
-
yes by adding hardware that likely costs as much as or more than a raspberry pi or other mentioned products – old_timer Nov 11 '20 at 18:40
-
1Yes, it's possible. Yes, one can make use of ports like USB to add GPIO capabilities. – Bruce Abbott Nov 11 '20 at 18:44
-
@Bruce Abbott how exactly? The thing is I happen to be working on a project that requires a high end processor capable of virtualization features like vt-x which are not available in any x86 dev board out there. – user221238 Nov 11 '20 at 19:12
-
1You didn't ask how, nor did you tell us what you needed the GPIO pins for or how many etc. If you have specific requirements not met by standard devices that 5 seconds of googling would reveal (eg. https://www.adafruit.com/product/2264) then tell us what they are. – Bruce Abbott Nov 11 '20 at 21:27
-
@Bruce Abbott I found the adafruit product you mentioned to be useful to get the job done. – user221238 Nov 19 '20 at 10:47
-
A description of what am trying to do is here: https://raspberrypi.stackexchange.com/q/118022/103265 So to be more specific am trying to add GPIO pins to something like hp elitedesk (https://www.amazon.com/dp/B07RC1M5W6/ref=cm_sw_r_cp_awdb_imm_t1_W6JUFbM2S64E1?_encoding=UTF8&psc=1) after finding out that no ARM or x86 development board available out there is up for the task at hand. – user221238 Nov 22 '20 at 10:32
2 Answers
You can add a GPIO Extender via I2C to your laptop. I already done this.. get a PCF8574 (or your alternative choice), a Linux-based OS and a empty VGA plug/socket.
you have to locate SDA/SCL, 5V and GND. connect it to your PCF8574, load a module called "i2c-dev" and check using
$ sudo i2cdetect -l
$ sudo i2cdetect -y $your_vga_port_ddc_bus
if a new i2c device is shown, its the gpio expander. you can use Raspberry Pi codes with it. In my case, i use it to drive a HD44780 lcd with my laptop
please note that if you done something wrong, you may kill the VGA port's I2C bus, so be carefull :)
- 51
- 1
- 1
-
1+1. Beside VGA, other interfaces such as DisplayPort and DIMM/SODIMM may also expose I2C busses that can be repurposed in this way. – pericynthion Apr 28 '21 at 02:53
-
-
@pericynthion yes of course, but soldering to DIMM/SODIMM module is a bit scary for me because my soldering is awful sometime – Putra Adriansyah May 02 '21 at 23:44
-
this is a good answer, provided the detail, and amount of variance between various devices. I was able to add an i2c accelerometer by picking up on my laptop's i2c bus via the finger print scanner. – j0h Feb 28 '24 at 17:46
Only by adding extra hardware - phidgets for instance have a range of cards which give IO expansion via USB. The exception is parallel printer port, which, on very old hardware, can be used as IO by writing to some output ports (on a PC).
- 7,012
- 16
- 33