Skip to main content
15 votes

What is the best technique to design a 20 push button circuit

For 20 buttons you can use a Keypad Matrix arrangement (plenty of examples online) where you would use only 9 pins (5 columns of 4 rows is 5+4 pins). It's slightly more involved that simple 1:1 ...
Majenko's user avatar
  • 105k
6 votes

What power supply should I use?

I am wondering about what voltage my external power will need to be to control all of them at 6v Well that would be 6V then wouldn't it? You're asking the wrong question. The question you should be ...
Majenko's user avatar
  • 105k
5 votes
Accepted

What is this green board?

The green board is probably a custom PCB that controls the vehicle. Unfortunately, the image does not have enough quality to determine much else.
Alex's user avatar
  • 166
5 votes

How do I code delay inside a ISR?

An ISR should be kept as short as possible, since while it runs, no other interrupts can be handled (including the one powering the delay() function. Thus you cannot delay that easy inside an ISR and ...
chrisl's user avatar
  • 16.4k
5 votes

Pulsein() function blocks other tasks from running silmultaneously

It is quite likely due to blocking. The description of the pulseIn() function in the Arduino site's reference section says: Reads a pulse (either HIGH or LOW) on a pin. For example, if value is HIGH, ...
JRobert's user avatar
  • 15.3k
4 votes

How to make an electronic suction cup?

Just a note for those who wonder the same and are in need of a vacuum: In theory, you can use Venturi effect (or Bernoulli's Principle; it's basically the same) to create a vacuum. Or go buy an ...
ArchimedesMP's user avatar
4 votes

Need some Hardware advice with arduino

To process incoming images, voice commands, produce sounds, and also do WiFi is almost certainly beyond the capabilities of any micro computer, like the Arduino (maybe some of the more recent models ...
Nick Gammon's user avatar
  • 38.4k
4 votes
Accepted

Smooth Servo movement for robotic arm: An ongoing answer and soluton

Your original solution uses blocking code (the for loops with delay() calls in them). Surely that works, but it can easily get you in trouble, when extending the project with more functionalities (...
chrisl's user avatar
  • 16.4k
4 votes

What is the best technique to design a 20 push button circuit

The example project below can control 16 switches. If you have a membrane keypad with 5 x 4 or 5 x 5 then you can meet your requirement. I will shortly add an example of using shift registers to have ...
ArduinoFan's user avatar
  • 1,069
4 votes

LM7805 gets very hot with four servo motors

Depending on load, your servos can draw 250ma of current or more when actuated. This means that your 7805 may need to supply >1 amp of current at 5V. In order to get 5V from a 12V adapter the 7805 ...
BobT's user avatar
  • 248
3 votes
Accepted

Can I connect Multiple Devices to One 5V and one GND pin of my Arduino Uno R3

Yes, you can connect multiple devices to GND and +5 V. You may find that you need to bring one wire from the PCB to an external connector or piece of stripboard so that you can make more reliable ...
Transistor's user avatar
3 votes

How do you determine Lead Screw position using Absolute Encoder?

The encoder attaches to the motor (or other) shaft and sends a 10-bit rotational position for a precision of 0.35 deg, and a claimed accuracy of +/- 0.7 degrees. It will be up to the application to ...
JRobert's user avatar
  • 15.3k
3 votes

Need some Hardware advice with arduino

Your main bottleneck here is the camera. If you want to do real time video, I would suggest getting a Raspberry Pi or the equivalent then using it as a master over something easier to code like an ...
Marianne Primeau Breton's user avatar
3 votes
Accepted

Is it possible my ATMega is burnt due to bad wiring?

Smoke is a definite sign something failed. The LED (power indicator)is independent of the microprocessor, it just indicates power is applied in the appropriate direction. Go to the basics, and load ...
Gil's user avatar
  • 1,843
3 votes

Smooth Servo movement for robotic arm: An ongoing answer and soluton

Here are the simulation results of the code from Chrisl The code (same as the other answer) #include <Servo.h> Servo servo1; int set_angle = 0; int current_angle = 90; // setting starting ...
ArduinoFan's user avatar
  • 1,069
2 votes

Multi-threaded Robot

You could also give my ThreadHandler library a try https://bitbucket.org/adamb3_14/threadhandler/src/master/ It uses an interrupting scheduler to allow context switching without relaying on yield() ...
Adam Bäckström's user avatar
2 votes

How can I control 4 DC motors with an Arduino?

Yes, you can do this using 2 L293D motor drivers, each motor driver can run 2 motors and it is very easy to use. You should connect Vcc 1(used to power on the chip) to 5V and Vcc 2 to a power supply ...
roaibrain's user avatar
  • 211
2 votes
Accepted

LiPo batteries with L298N controller

First off, congratulations on entering the world of robotics. I hope you enjoy it as much as I have. You are correct that the L298N has a voltage drop that is between 1.8V and 3.2V (at 1 Amp) or 4....
mwwalk's user avatar
  • 446
2 votes

Precise rotation (steering direction to a given angle) on obstacle avoidance robot

The only way you can know how far you have turned, with any form of accuracy and, more importantly, repeatability, is by employing some form of feedback. In other words, to work out how far you have ...
Majenko's user avatar
  • 105k
2 votes

Rotate Robot head according to Sound level

A couple of years ago, I completed a MOOC on FUN called Binaural Hearing for Robots (it doesn't seem to have run since, but it may be worth keeping an eye on it to see if they open registration again. ...
sempaiscuba's user avatar
  • 1,032
2 votes

Make a Robotic Arm move straight not curved

You need to learn about Inverse Kinematics. In robotics, inverse kinematics makes use of the kinematics equations to determine the joint parameters that provide a desired position for each of the ...
Majenko's user avatar
  • 105k
2 votes

Recording of sensor results but only retain the last 3 sets of data

It depends how big the data is... if one data set is 100 bytes, you can spend 300 bytes of internal SRAM memory. What you also can do if the memory usage is too big, is to add external SRAM, like the ...
Michel Keijzers's user avatar
2 votes

My "avoid car" can't move straight

Likely the two gearbox motors you have are running at slightly different speeds for the same voltage. This is probably within normal tolerances, given that you say it moves slightly to the right or ...
jose can u c's user avatar
  • 6,974
2 votes
Accepted

Out of two logically similar sketches, one works while the other does not

Given that both libraries are the same. The two sketches seem to set up the motorcontroller quite differently. Changing an "input pin" and "enable pin" around, would lead to errratic motor behaviour. ...
aaa's user avatar
  • 2,705
2 votes

How can I hook up multiple MMA8451 accelerometers, (I2C protocol) using one Arduino Mega?

Brief explanation: When you talk to the slave device through I2C you start with (slave) device address. Then you send the message. It is like calling your colleague in an office with many other people....
smajli's user avatar
  • 472
2 votes

How can I hook up multiple MMA8451 accelerometers, (I2C protocol) using one Arduino Mega?

Talking about I2C protocol. The slave Address is of 7 Bits that means one I2c can handle 127 Slave I2C devices of different address. So you can connect 127 devices with Single I2C Port just make sure ...
Vaibhav's user avatar
  • 546
2 votes

Running a robot with 2 front-facing sensors, but it's stuttering

your updateDirection logic doesn't quite work the way you think it does. after a bit of code formatting and comments it looks like this: void updateDirection() { if (distanceInchR < ...
ratchet freak's user avatar
2 votes

Deriving the exact relationship between PWM and steering

Where do I learn more about this feedback mechanism? It depends on the kind of feedback. You can have absolute or relative feedback. Relative would be, for example, to use an encoder on each wheel to ...
Majenko's user avatar
  • 105k
2 votes

What is the best technique to design a 20 push button circuit

you can use a so called shift register. One very common one is a 74HC165 shift register (https://playground.arduino.cc/Code/ShiftRegSN74HC165N/). With one of such IC you can connect 8 buttons, however ...
Michel Keijzers's user avatar
2 votes

are 4AA batteries (6V) power my arduino

I understand you situation completely as I had also previously experienced the same problem. 9 V batteries are not enough to get the job done. Therefore, I suggest you to use two 3.7 V Batteries. ...
vasantha raj's user avatar

Only top scored, non community-wiki answers of a minimum length are eligible