10 votes

Two Arduinos Send data via Analog Pin?

This answer provides both Arduino specific knowledge and general electrical knowledge - both are necessary for a good solution (unfortunately). Summary To carry out Arduino analog to analog transfer:...
10 votes
Accepted

Difference between /dev/ttyACM0 and /dev/ttyS0 (Arduino IDE ports under Linux)

/dev/ttyACM0 is a USB communication device (CDC) of sub-type "abstract control model" (ACM). That is what the Arduino is. /dev/ttyS0 is a hardware serial port - the (typically) 9-pin D connector on ...
  • 104k
7 votes

Does data coming in on Arduino serial port store for some time?

Yes. The serial port uses a ring buffer (also known as a circular buffer) for storing the incoming data until you want it. That buffer is 16 bytes in size on the smaller Arduinos and 64 bytes in ...
  • 104k
7 votes

Multiple Wire.write() not working for Arduino Nano I2C

Important information: Wire.write() does NOT send anything over the I2C lines. It just puts the data into the libraries internal buffer. The actual transmission is then done by Wire.endTransmission(). ...
  • 15.2k
6 votes
Accepted

RS485 Multimaster Communication with collision avoidance

Collision avoidance is a tricky subject. You can never completely avoid collisions - all you can do is work out how to a) detect them, and b) recover from them. There's many different ways of doing ...
  • 104k
6 votes
Accepted

Arduino Serial library (Synchronous or Asynchronous?)

The Arduno 101 doesn't communicate to the PC using a UART. It uses CDC/ACM over USB, which looks like a UART to the PC. But it isn't. USB sends packets of data, not individual characters It only ...
  • 104k
5 votes

How do I interface two Arduino boards so they act as one with double the code space?

There is no simple way to combine multiple boards into a unified system. What you will need to do is delegate certain tasks to each board and then have them communicate via SPI, I2C, or UART between a ...
5 votes
Accepted

Arduino sending data over MAX485

How would the wiring look like? I was unable to find any dumb-proof tutorial online. I found this tutorial to be pretty usefull. There really isn't much to it, I suggest trying a short range ...
  • 2,703
5 votes

How to pad an ascii number with leading zeros?

This is the kind of situation where printf() comes handy: printf("%03d", number); prints the number in the format you described. Alas, printf() is not part of the standard Arduino API. But you can ...
  • 39.7k
5 votes

RS485 Multimaster Communication with collision avoidance

There is a ready out the box solution documented in https://github.com/MichaelJonker/HardwareSerialRS485/wiki (This wiki describes the library you referred to). The problem is quite complex: ...
5 votes

Difference between Wire.setClock() method and TWBR method for changing I2C Frequency

They are both one and the same. One is easier to remember though (I'll let you work out which). Wire.setClock(frequency) just (ultimately) does: TWBR = ((F_CPU / frequency) - 16) / 2; You can set ...
  • 104k
5 votes

Serial Communication between ESP8266 and Arduino Uno

Since you are Arduino Uno, it has only one Serial. This Serial can be used to transmit data in USART mode to another Serial Device as well as see any Debug data in the Serial terminal. However, both ...
5 votes
Accepted

Sending string over serial to nodejs app. Why does it get chunked?

It seems I needed to add a parser to SerialPort nodejs module, in order to specify how the input should be treated. I changed my code to this: var SerialPort = require('serialport') var Readline = ...
5 votes
Accepted

Is the arduino hackable when using communication shields?

You should be pretty safe, at least as long as your code handles the incoming data properly. When you upload a new sketch through USB, the USB-to-serial interface uses the Arduino pins TX0, RX0 and ...
  • 39.7k
5 votes
Accepted

Why is the IDE not able to find the board despite it being clearly seen and selected?

The SAMD boards connect to computer over native USB support of the MCU. The handling of the USB is done by Arduino core functions linked at build to your sketch. A consequence of using the native USB ...
  • 17.1k
5 votes
Accepted

Bi-directional UART communication on single data wire, possible?

You can have bidirectional communication over a single wire by using open-collector outputs. For this, you could add a circuit like this on each side of the link: simulate this circuit – ...
  • 39.7k
5 votes
Accepted

How to send multiple data over serial in one byte?

You should learn how to use bitwise operators. These are needed to do what you want. We can save the state of each switch in one bit each. For this we first define our global variable that will hold ...
  • 15.2k
4 votes

How to change i2c address for mpu9250?

Might be a little late, but you can string more than two of these on one I2C bus, with a little ingenuity. You connect the AD0 pin of each MPU to a different I/O pin of the processor, then take low ...
4 votes
Accepted

Shift registers. What, how and why?

You can chain as many shift registers as you want. Most commonly, these displays are multiplexed. Only one digit is lit at a time, cycling though all the digits fast enough, so the eye can't tell. ...
  • 11.2k
4 votes

MQTT client on Arduino + SIM900

MQTT Library for SIM800 GSM Modem is available at ElementzTechBlog, ElementzGithubRepository Functionalities: Auto connect Automatically connect to TCP and to MQTT server. connect function This ...
4 votes
Accepted

Sending a value from one arduino to another

You could have the LCD Arduino be an I2C master and all the weighing Arduinos be slaves. There's an example of master/slave communication and wiring here: https://www.arduino.cc/en/Tutorial/...
4 votes
Accepted

Arduino radio communications

There are three basic factors that control long distance communication: Transmitter Power Receiver Sensitivity Signal Directionality The more transmission power you have the "louder" your signal is ...
  • 104k
4 votes
Accepted

Difference between Wire.setClock() method and TWBR method for changing I2C Frequency

Whats the difference between the 2 methods? The difference is that one is more portable than the other. The "direct register set" will not work very well on an Arduino Due. There is no speed or ...
  • 7,929
4 votes

Hacking old car dvd monitors with arduino

I realize this is an ancient question, but just in case someone else has one of these things, I'll share what I know. I have one of these Sharp LCDs that I typically use as a monitor for a Commodore ...
4 votes
Accepted

433 MHZ connection between two Arduino (nano,uno) fails after some time

Regarding the hardware problem, there are some advices in the comments. As you wrote, the solution is to reduce the bitrate at 2000 bps. The remaining question is why the receiver always truncates ...
4 votes
Accepted

Communicating to arduino as fast as real-time

Going over USB will add about a millisecond of jitter to your data in both the sensing and command directions. Using a part with direct USB rather than then needing to go through a serial link from ...
4 votes
Accepted

I change ESP8266 baudrate and now it doesn't work

Have you tried setting the web editor's baud rate to both the old and the new values? I ask because the CIOBAUD command has been obsolete for a while now so, depending on the age of your device, it ...
  • 14.8k
4 votes

Missing character when introducing delay in the code

If serial data is coming in, and your code is doing a delay, the incoming data is stored in a buffer (of 64 bytes). But if you wait too long, the buffer will fill-up. Once it's full, any further ...
  • 11.2k
4 votes

How to automatically reset the NRF24L01 module

This is a known problem with those chips (especially Chinese clones). It is caused when a chip gets stuck in TX mode waiting for an ACK that never arrives back. The chips don't have a "reset", but ...
  • 104k
4 votes
Accepted

how can I accurately recieve potentiometer values over the USB port?

There are a few issues at play here. One is that the Arduino resets every time you open the serial connection on the PC side. You can prevent this by putting a 1 µF (or more) capacitor between 5V and ...
  • 39.7k

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