In dell edge gateway how we can change the gpio
pin from digital to analog? It has Ubuntu core as OS. It has 8 gpio
pins only some of them I want to make digital and some of them analog. I have checked the Dell edge gateway 3001
manual but they have not given anything about it though they mentioned we can make a gpio
pin either digital or analog.
2 Answers
Not sure if you found the answer you were looking for, but thought I'd actually sign up and give you some pointers since I've just been down this path myself.
The tool you need is 'dcc.cctk' which can be used to view and change the mode of each GPIO.
For example, the following command would show the current mode of GPIO0
dcc.cctk --adimodechannel1
You can also change the mode with one of the following options (unused|adcinput|dacoutput|dacandadc|gpio), e.g.:
dcc.cctk --adimodechannel1=adcinput
Note: You must use 'sudo' or login as root to issue these commands, and you must also reboot the Dell once you have changed the mode before it takes effect.
To change the mode of other GPIO pins, you need to use 'adimodechannelX' where X is the channel number between 1-8. GPIO0 is 'adimodechannel1', GPIO1 is 'adimodechannel2', etc.
If you need to print help and usage instructions to screen, then use:
dcc.cctk -h
or for more specific help with this method:
dcc.cctk -h --adimodechannel1
Hope this helps.
Without Dell giving you the full documentation, it's going to be difficult, but still we can have a shot.
As per the Dell Manual for 3001 Edge Gateway, they are using AD5593R
IC for GPIO. This is an Analog Devices' IC with 8 GPIOs which can act as an ADC, DAC and Digital I/O. As per the AD5593R Docs, the IC is configured using an I2C interface. You can read the AD5593R
to understand the configuration in full. Beyond this, you will have to refer to the Linux Kernel's official Docs on GPIO to communicate with and configure the GPIO.