I am new to this forum so forgive me if I am posting in the wrong area but based on available topics it appeared most appropriate. I have researched my question to exhaustion and can find no solid answer nor guidance as to where to start which led me to post here.
My question is this:
I have a SOC that has buttons on the board it is mounted on. Buttons are physical but basically they short 2 pins on the SOC. There is NO detectable amperage nor voltage on the 2 pins to the SOC so I am assuming it is a sort of a "soft button". Based on the block diagram it triggers a transistor internally and it looks to be a ground and not a positive volt trigger.
I am effectively trying to get the Arduino to short 2 pins to trigger a function on the board. I programed a PWM input so I can control a camera shutter on the board using an Arduino Pro. Also added I2C option for alternate input.
My issue is I can not figure out how to trip the switch without the use of a transistor or relay. Space is an issue. The easiest way of course would be to have the Arduino short (or bridge rather) 2 pins internally but I can find no mechanism in which to do this. I have seen many forum topics on people trying to switch things and even some without a relay but nothing similar to this. All examples I found were people trying to switch with voltage and draw involved so the questions tended to die with the inevitable "if it is possible you will blow up your board" kind of answer..
What I am asking may not be possible but I thought I would at least ask. If there is a way to bridge pins and attempt to trigger the function on the SOC I am willing to try. I understand the risk of harming the board but this is development and I have about 50 of each so I am not concerned with doing any damage. It is worth a try if I can bridge 2 pins on the Arduino or find another way without additional circuitry.
Another idea I had was since the Arduino and SOC share a power source I could use PWM to pull an output pin to ground but again I am not finding anything on this.
Thanks in advance for any information anyone may have on the subject.
What is this SOC you are talking about? Please post a link (a proper link, one you can click on).
Based on the block diagram it triggers a transistor internally and it looks to be a ground and not a positive volt trigger.
What block diagram? We are not psychic!
Of course it triggers a transistor internally. All chips are made of transistors!
It's quite normal for a switch to be connected between a chip's pin and ground. There will be a voltage/current when the button is pressed. Might be hard to measure it with a multimeter, a 'scope might be needed for that, but it will be there.
If you don't know what you're dealing with, a relay is the safest way to go. A relay is an electrically-operated electrically-isolated switch.
An Arduino can drive a connection high or low. But, if shorting the switch pins to +5V or ground doesn't work the Arduino isn't going to work. If the switches are wired as a matrix, that's not going to work. (I don't see how PWM would be of any use in this application.)
Thank you for your question. The answer is space. We have a custom board that must fit in a specific space and the Arduino is already pushing it being flat as it is. Future revisions will have direct PWM on the SOC as it supports it but in the meantime I am going for POC. I thought of having the Arduino outside the mechanism but the issue is the cable chase. there are three functions and cabling is an issue so I am trying to do what I inquired about.
PaulRB:
What is this SOC you are talking about? Please post a link (a proper link, one you can click on).
What block diagram? We are not psychic!
Of course it triggers a transistor internally. All chips are made of transistors!
It's quite normal for a switch to be connected between a chip's pin and ground. There will be a voltage/current when the button is pressed. Might be hard to measure it with a multimeter, a 'scope might be needed for that, but it will be there.
I appreciate your reply and thank you for your time but a couple of things. 1. It doesn't answer the basic question as to the function of the "Arduino" (not the SOC since it really has noting to do with what the Arduino is capable of independently) and 2. The specifics of the SOC nor clairvoyant abilities are in question. I am not sure how whatever I am connecting it to impacts if the Arduino can or can not do something it was either made to do or not do. No matter what I connect the Arduino to it doesn't change the base functionality of the I/O (as in the device is capable of what it is capable of right?).
A good point I am glad you brought up; it is common for ground type connections. I agree that there must be some current but if my FLUKE 789 is not picking up on it then it is probably not enough to damage an Arduino...
That being said. The question is:
Can the Arduino effectively bridge 2 output pins (on an input and output) OR can it drop an output to a common ground from a neutral state.
I guess it is my fault for adding context of what I am doing as it appears to have confused the purpose of the question which is If the Arduino can preform either of the functions please let me know if you know and if you do indeed know the answer can you point me to a source so that I may research it and become familiar with the method?
DVDdoug:
If you don't know what you're dealing with, a relay is the safest way to go. A relay is an electrically-operated electrically-isolated switch.
An Arduino can drive a connection high or low. But, if shorting the switch pins to +5V or ground doesn't work the Arduino isn't going to work. If the switches are wired as a matrix, that's not going to work. (I don't see how PWM would be of any use in this application.)
Thank you so much This is for a custom gimbal. I believe adding context to what I am doing may have convoluted the question. We had a SOC and sensor made for us based on a Novatek design and a Sony sensor (hence why I have 50 of them) and it is on a very small board since it is for a UAV 4K (interpolated) FPV HD system. PWM is to control the shutter, mode and other settings - I need the Arduino (for now) as the bridge between the PWM controls from the remote control system and the SOC. A redesigning of the board was needed due to a miscommunication. None of the GPIO pins were connected on the chip therefore I have physical mode, shutter and cycle buttons. I need those switched by remote hence the PWM.
Shorting to ground does indeed trigger the event but I am suspecting I may have to use my work station and some SMT transistors. I was hoping to avoid doing this on 50 units since we obviously can't waste all of them. Much quicker to solder 2 wires as opposed to fitting the transistor in place of the switch but it is better than nothing.
The switches of the device could be matrixed, so you can't detect the short pulse on the lines with a DMM.
Opto couplers can be used for this (like the ones found on relay boards).
Connect the opto transistor across the switch of the device, and drive the opto LED (with current limiting resistor) from an Arduino pin. LED current can be small. Try a 1k CL resistor.
Leo..
Wawa:
The switches of the device could be matrixed, so you can't detect the short pulse on the lines with a DMM.
Opto couplers can be used for this (like the ones found on relay boards).
Connect the opto transistor across the switch of the device, and drive the opto LED (with current limiting resistor) from an Arduino pin. LED current can be small. Try a 1k CL resistor.
Leo..
Great point and a fantastic idea!!! That would be a simple implementation. Thank you!
Analogue switches can only switch signals that are within their supply range.
That usually means grounds have to be shared, and switch supply always needs to be equal or higher than what they switch. Could be a problem if you don't know the exact circuit.
Leo..
Analogue switches can only switch signals that are within their supply range.
Very true, Leo.
But Opto's have a minimum voltage drop across their output when switched on ( a darlington transistor or diode) , which may be too large for the application.
A LED with a LDR wouldn't have this problem. Slow, but maybe adequate.