6

Cut one pin off. Get some wire cutters and position them in the groove between the last and next to last pins in the row. Squeeze. One pin will pop off.


3

As noted by markshancock, you are using an older version of the Adrafruit Motor Shield library meant for the version 1 of the board (you have the version 2.3), and according to their forum they are not compatible (they use different communication protocols) use the newer version of the library https://forums.adafruit.com/viewtopic.php?f=31&p=276888


2

Yes. There's not a lot more to be said really. It's a relay, and they provide a MOSFET and associated circuitry to drive it cleanly. Just connect power and ground to the Arduino, along with the "Signal" pin to the GPIO pin of your choice, and away you go. Note that the relay is a 3.3V relay, so you must power it by the 3.3V pin, not the 5V pin.


2

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 there slave address is different from each other. Some I2C devices are provided with the option to select salve address by setting some pins high and low. If ...


2

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. You say: "John", and when he is aware you continue with message, like "let's go for coffee". This arrangement allows for adding up to 127 devices on one ...


2

Read SparkFun's guide, Serial Peripheral Interface (SPI), especially the multiple slaves section: Multiple slaves There are two ways of connecting multiple slaves to an SPI bus: In general, each slave will need a separate SS line. To talk to a particular slave, you'll make that slave's SS line low and keep the rest of them high (you don't ...


2

Pin 4 on Zero can't be used with attachInterrupt. It is pin PA08 of the SAMD21 and this has NMI as interrupt control function in EIC and can't be used as EXTINT. Adafruit Circuit Playground maps PA28 to pin 4, but the description of the pin is left as for Zero and doesn't declare interrupt capability. In file arduino/hardware/samd/1.6.21/variants/...


2

Possible hardware solution: Consider using 2 battery packs. One connected to the Arduino and the other connected to the motor drive board. Remember to connect the grounds of the 2 battery packs together. Possible software solution: Software is often over looked when solving what appears to be a hardware issue. Consider introducing a short pause between ...


2

I just used a different motor-shield and it works now, thank you all for your replies and research in this!


2

The commands you are using don't match the ones listed for this board. Here is the AF Documentation for the Motor Shield Board V2. Try #include <Wire.h> #include <Adafruit_MotorShield.h> #include "utility/Adafruit_MS_PWMServoDriver.h" Adafruit_MotorShield AFMS = Adafruit_MotorShield(); Adafruit_DCMotor *motor = AFMS.getMotor(2); void setup()...


2

There is no problem with running multiple servers and use multiple clients with the WiFi library of the ESP32 core for Arduino as it is not a problem with most of the WiFi libraries for Arduino (some can't run servers (TinyGsm) or can run only one server (WiFiEsp(AT)). But you don't need a WiFiClient for NTP time. First because NTP runs on UDP and second ...


1

:'( it's a bitter sweet solution. After @majenko's last comment: Ah. So is there something you have to do in that IDE to say "Include the files in lib in the compilation`? I remembered that this issue has bitten me before. Specifically, the issue of including subfolders into a sketch. Normally in programming languages (at least all of the ones I work ...


1

I ended up taking Gerben's suggestion from the comments and ordering the stacking headers (adafruit.com/product/2830) and plugging the ESP32 into that. The reason it works is because the stacking headers (as Gerben mentioned) are thinner and fit down into the breadboard while the female ports on top are big enough for the male pins coming out of the ESP32. ...


1

You are not reading the GPS often enough. The method Adafruit_GPS::read() is documented in the comments embedded in the source code: Read one character from the GPS device. Call very frequently and multiple times per opportunity or the buffer may overflow if there are frequent NMEA sentences. An 82 character NMEA sentence 10 times per second will ...


1

This problem is usual if you are in shortage of RAM. Adafruit's libraries wastes lots of memory. You should be very careful to run their stuff if you are in shortage of memory. I suggest you to try another library which quite old, but uses much lesser memory to read DHT sensor’s data: https://github.com/markruys/arduino-DHT


1

There is a function that invert the colors of your screen, you can pick either black on white or white on black, I have tried it and I have quite experience with your display, I think you should try this piece of code. At the beginning of your Arduino code be sure that you declared the object using the same name. Adafruit_SSD1306 display(SCREEN_WIDTH, ...


1

Seems like whatever code was running on the Flora was corrupted. As soon as I hit the reset button, the board would momentarily pop up in the Arduino IDE, and after doing this a few times, I managed to upload the "Blink" sketch while the board was visible to my system. After that the board started working normally. It reports its name as "Adafruit FLORA" ...


1

You have two possibilities of powering the shield according to the adafruit documentation. A: power the Arduino over the power plug (not the USB plug) of the Arduino and set the VIN jumper. B: Leave the VIN jumper off and power over the power connector of the shield. Don't try other possibilities. They may kill the shield or the Arduino. The reason ...


1

From the description and comments it looks like the problem is HW related. I recommend you to do a relay module test (wthout NodeMCU): Try to switch the relays on/off just by connecting the power source you are using for powering the NodeMCU. Connect VCC–5V, GND–GND and one of the IN channels directly to 5V pin. If the relay switches on, try another ...


1

You seem to compile a sketch from a folder, where more than 1 .ino file is placed. I guess this from the paths, that are mentioned in the error messages. The Arduino IDE supports you to organize your code into multiple .ino files, so that big code can be read way easier. For this it put's together all .ino files in the folder of the main sketch, so that ...


1

Your loop is repeatedly writing and clearing the display, nearly as fast as possible (minus the 1ms delay at the bottom), which is the reason for the flicker you're seeing. If instead, you only update the display when something changes, it will look much smoother. Even a clear-and-rewrite the entire display when something changes (assuming the changes are ...


1

You didn't tell use the size of your QRCode, nor the type of Arduino you are using. So I am just going to guess that your problem is that you may have enough RAM to store the raw QRCode, but not enough to store a scaled bitmap version. The Adafruit tutorial for their thermal printer library suggests printing bitmaps with the method: printBitmap(width, ...


1

Your code looks pretty straightforward, and the fact that everything works properly with the laptop-USB connector makes me suspect that your problem lies with the battery pack. When you said "When the Arduino is connected to my laptop via USB, it works fine.", did you mean that the 4-cell battery pack is still connected to the motor shield as shown, but ...


1

use the C as the line start indicator. if received char is 'C' then do a file.println(); example with output to Serial #include <SoftwareSerial.h> SoftwareSerial mySerial(8,9); void setup() { Serial.begin(9600); mySerial.begin(9600); mySerial.print("C"); } void loop() { if (mySerial.available()) { char c = mySerial.read(); if (c ...


1

is it safe to wire the boost converter directly to the output terminals of the battery/batteries and take the 5V off the +5v pin using a common ground? Yes. That is the normal way of using them. Also, I'm not 100% sure how to go about charging this setup. One option would be to put the batteries in cases and use an external charger with replaceable cells....


1

The general technique for addressing multiple I2C devices is: If the device(s) have only one address: use an I2C bus multiplexer. If the device(s) have two addresses controlled by an addressing pin: use digital output pins from the Arduino to select which device to address, e.g., set the control pin for the selected device low and others high and use the ...


1

So it turns out the problem is that you're using the esp32 1.0.1 library provided by espressif. I'm assuming you're using the Arduino IDE board manager URL: https://dl.espressif.com/dl/package_esp32_index.json To fix this, don't use 1.0.1. Use 1.0.0! Remove 1.0.1 and install 1.0.0. That should get it to compile properly without the uart, app_main errors.


1

The idea of shields is that they (in theory) can be stackable. (In practice they are usually not) This means that technically you can do this: That's why by design every shield connects to every Arduino pin but uses only some of them. That way shield is mechanically well attached to the Arduino, and can pass "unused" pins to the shield above it. Your ...


1

I think your problem is with the way you create the LCD instants. I've always used LiquidCrystal_I2C lcd(0x27, 20, 4); LiquidCrystal_I2C lcd(address, row, col); when I'm using the I2C modules.


1

You have two options. Option 1. Buy a ready made pet tracking device from online market e.g (https://www.aliexpress.com/item/Pets-Smart-Mini-GPS-Tracker-Anti-Lost-Waterproof-Bluetooth-Tracer-For-Pet-Dog-Cat-Keys-Wallet/32887784462.html?spm=2114.search0104.3.1.26793604pFMLma&ws_ab_test=searchweb0_0,...


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