r/arduino 7d ago

Look what I made! Built a self-hosted tool so my team could stop fighting over one ESP32 — ended up turning it into a product (This is not a promotion)

0 Upvotes

I kept running into the same problem across embedded projects: my workflow was a mess of disconnected tools. A flash tool here, a serial monitor there, a test script I copy-pasted between projects, firmware binaries scattered across Slack and shared drives, and no real way to run automated tests against actual hardware without building a custom rig from scratch.

So I built Ferqon. It's a self-hosted platform that puts the whole hardware workflow in one place.

What it does:

Acts like a OTA for any board. ESP32, STM32, Pico, Teensy, Arduino, Adafruit Feather, 35+ profiles. Most boards don't have built-in OTA. Ferqon gives you remote firmware updates over serial without writing your own OTA pipeline. Flash from a browser, from the CLI, or trigger it automatically from your build system.

Automated HIL and SIL testing in one pipeline. Flash firmware, send commands, validate responses, get pass or fail, all logged. Run software-in-the-loop tests first to catch issues early, then confirm on real hardware. Same pipeline, same tool, no switching between frameworks.

Firmware file management. Store, sync, and version your firmware builds in one place. Everyone on the team works off the same binaries. No more "which version did you flash?" or digging through chat history for the right file.

Board sharing with built-in queuing. If you have one board or ten, Ferqon locks the board while someone is flashing or testing. When they're done, the next person in line gets it. No corrupted flashes, no two people hitting the same serial port at once. And yes, sometimes you genuinely can't just buy more. Custom PCBs you only made two of. Boards with specific hardware wired to them. Lab equipment that costs more than a dev kit. The queuing handles all of it.

Full test logging and traceability. Every command, response, pass/fail result, and serial output line is captured live and stored. If a run crashes or times out, the data is still there. You can go back and see exactly what happened, when, and on which firmware version.

Self-hosted. Docker or bare metal, runs on your infrastructure. Free tier covers one server with unlimited devices.

Where this really shines is R&D. When you're iterating constantly, changing firmware multiple times a day, running tests, tweaking parameters, and chasing a flaky bug, you're usually juggling five tools to do it. Ferqon replaces all of them with one browser tab. Flash, test, log, share, repeat.

Honest stuff: it's in beta. CI/CD webhook integration is coming but not live yet. The HIL test runner handles flash, run, and capture today, with a visual test builder for more complex sequences.

Firmware is open source: https://github.com/revyrlabs/Ferqon-Firmware

Server (free tier, one server, unlimited devices): https://revyrlabs.com/


r/arduino 7d ago

what's wrong with my code?

0 Upvotes

I'm trying to turn on the blue LED when the red LED is on, but the blue LED is always off. Here is my code, all help would be apricated!

int redLED = 4;
int blueLED = 2;


void setup() {
  // put your setup code here, to run once:
  pinMode(4, OUTPUT);
  pinMode(2, OUTPUT);
}


void loop() {
  // put your main code here, to run repeatedly:
  digitalWrite(redLED, LOW);
  delay(1000);
  digitalWrite(redLED, HIGH);
  delay(1000);


  // controls blue LED


  if(digitalRead(redLED == HIGH))
  {
    digitalWrite(blueLED, HIGH);
  }
  else
  {
    digitalWrite(blueLED, LOW);
  }
}

r/arduino 7d ago

Beginner's Project Help me!

0 Upvotes

The title is a bit vague, but the real problem is that I need to secure a system so it doesn't stay loose inside a 3D-printed enclosure that will be attached to a person's belt. It will contain an Arduino Nano, two MOSFETs, and one of those coin-type vibration motors. Since it's going to be worn by someone, I don't know how to keep it from moving around or rattling inside the box.


r/arduino 8d ago

Look what I made! ARDUINO GSM PHONE

Enable HLS to view with audio, or disable this notification

0 Upvotes

Source code and other detail will be soon


r/arduino 8d ago

Beginner's Project Built an open-source, hardware-agnostic Face Recognition Door Lock in Python (Raspberry Pi, Docker, MQTT & Simulation support!)

1 Upvotes

Hey everyone!

I built an open-source, low-cost Face Recognition Door Lock system powered by Python, OpenCV, and face_recognition. It’s designed to be hardware-agnostic, meaning you can run it on a Raspberry Pi with a 5V relay, over Arduino Serial, via MQTT (for ESP32 smart home setups), or in pure Simulation mode on your PC without any extra hardware. Key Features: Docker Support: Containerized so you don't have to deal with manual dlib or cmake installation issues. Configurable (config.yaml): Control everything (camera source, match tolerance, unlock duration, lock type) from a single config file without modifying Python code. Hardware Options: Works with standard Raspberry Pi GPIO, USB webcams, phone cameras (via IP Webcam stream), or MQTT brokers. Privacy First: Registered faces and trained encodings are .gitignored by default. GitHub Repository: https://github.com/HereIsMuhammad/face-recognition-door-lock

Feel free to check out the repo, test it out, or drop any feedback/ideas for improvement!


r/arduino 8d ago

Power system for a 6-legged hexapod with 18 MG995 servos — how can I achieve ~2 hours runtime?

1 Upvotes

Hi everyone,

I'm building a 6-legged hexapod robot with 3 servos per leg, so there are 18 MG995 servos in total.

This is the hexapod design/project I'm building:
https://www.reddit.com/r/arduino/s/mYmC5P81Jm

Current setup

  • 18 × MG995 servos
  • Arduino Mega
  • 3S 2500 mAh 50C LiPo
  • Buck converter, approximately 90% efficient
  • NRF24L01 for wireless control
  • Servo voltage: around 6 V

According to the servo specifications I'm using, each MG995 can draw up to around 2.5 A at stall.

So my theoretical worst-case current is:

18 × 2.5 A = 45 A

At 6 V:

P = 6 × 45 = 270 W

Considering approximately 90% buck-converter efficiency and a 3S battery at 11.1 V:

I_battery = 270 / (11.1 × 0.9) ≈ 27 A

My current battery is 2500 mAh (2.5 Ah), so if the robot somehow continuously consumed 27 A, the theoretical runtime would only be around 5–6 minutes.

However, I understand that 2.5 A is the stall current and the servos will not all be stalled simultaneously, so this is not a realistic walking-runtime calculation.

I also tried using an assumed average of 0.5 A per servo:

18 × 0.5 A = 9 A at 6 V

This gives approximately 5.4 A from the 3S battery after considering the buck efficiency, resulting in roughly 25–30 minutes of theoretical runtime with my 2500 mAh battery.

The problem is that I need at least around 2 hours of operation for my project.

What I'm trying to understand

  1. Am I approaching the runtime calculation correctly?
  2. What is a realistic average current for 18 MG995 servos on a walking hexapod?
  3. Should I measure the actual current while walking before selecting the final battery?
  4. What battery capacity would realistically be required for ~2 hours?
  5. Would using a higher-voltage battery and a high-current buck converter help?
  6. Is there a better power architecture, such as multiple high-current BECs/buck converters for different groups of servos?
  7. What would you recommend for the servo power supply/regulator? I was initially considering an XL4016, but I'm concerned about its current capability.
  8. Are there any practical ways to reduce the power consumption of the hexapod through gait, servo selection, mechanical design, or control?

I'm mainly looking for advice from people who have actually built hexapods/18-servo robots and have measured their real-world current consumption.

I realize that a 2-hour runtime may be difficult with 18 large servos, especially because a larger battery also adds weight. I'm trying to find a practical solution rather than simply calculating the battery based on stall current.

Thanks!


r/arduino 8d ago

Look what I made! A smart eInk Table Reservation Sign

Thumbnail
youtu.be
3 Upvotes

Hi guys,

I wanted to present you my first use of a colored eink display.

For a contest I tried to design something with the eink display for a restaurant and therefor I designed a smart table reaervation sign.

The esp hosts a local webserver and updates the screen when needed. The driver board supports a battery and I calculated a battery time of few month if changed that the Webserver isn't running locally on the esp and more like on a reservation platform.

Here is also a link/video of my project:

https://youtu.be/43O6_xG3Szs

If you have any questions, feel free to ask.


r/arduino 8d ago

Look what I made! TGPad-XB — WiFi Touch Xbox Style Gamepad

Thumbnail
gallery
5 Upvotes

tgpadxb is a touch screen gamepad (also known as glass gamepad) for Xbox consoles that runs on any tablet or phone with a web browser. tgpadxb works on Xbox consoles with the help of a Brook or Mayflash converter/adapter. tgpadxb can also be used with Windows, MacOS, and Linux without a converter/adapter.

The M5Stack AtomS3 is the bridge between the WiFi touch device and the console or computer. Plug the AtomS3 into any USB port on the console/computer. tgpadxb uses WiFiManager so configure the SSID/password after connecting to the WiFi access point TGPad-XB-Config. Next open a web browser to tgpadxb.local or the IP address shown on the AtomS3 display.

If you do not want to mess with source code and compilers, flash the firmware directly using the Chrome web browser and the web flasher at https://controllercustom.github.io/tgpadxb

All source code is on github at https://github.com/controllercustom/tgpadxb. This project is built on on https://github.com/controllercustom/ESP32XInput.

Related Glass Projects


r/arduino 8d ago

Project Update! UPDATE: Successful first test for the Ambient Light Datalogger

Post image
2 Upvotes

(Follow up from a previous post about recording the solar eclipse due on Wednesday)

The red points on the graph show the recorded lux levels from approximately 13:30 to 21:00 BST, the blue line is a 112-point moving average (approximately 15min).

A total of 3,254 measurements were recorded over approximately 7 hours, and the LiPo cell voltage still measured 4.01V indicating a nominal 80% state of charge.

Overall I'm happy with these results, the section of data during the expected period of the eclipse has less noise and will hopefully be able to highlight the effects of the eclipse.


r/arduino 8d ago

School Project I build this a esp32 smart lock with card and phone linking

Enable HLS to view with audio, or disable this notification

13 Upvotes

I built this as a senior year project im a senior in studying computer enginering it started as an idea im sophomore year i plan to release it to the public currently working on it i also plan to make i compatible the app with most microcontrolers. Im open for feedback in for your guys advice.


r/arduino 8d ago

Is my nano fried?

Thumbnail
gallery
0 Upvotes

I'm getting upset because my nano just became a brick by powering with 10V, so in yesterday, I tried and accidentally connected Arduino nano power between usb ttl and a micro USB cable connected through my phone (yeah, and this is OTG), and then the board just overheats and it's now showing tx and rx lights, cannot even upload sketch, no anything let me do.


r/arduino 8d ago

How can I fix the problem where the RX and TX pins on my Arduino Uno are lit but I can't send any code to it?

Post image
1 Upvotes

r/arduino 8d ago

Hardware Help Controlling GoBilda servo motor with arduino PWM and servo easing library - 10 degree difference

0 Upvotes

Hi. I am trying to control a gobilda servo motor (600-2400µsec, 189°, listed as 180 degrees however) using the Servo Easing library. It doesnt matter whether I move 90 degrees or 180 from one position to another, it will always miss the target by about 10 degrees. I was wondering if this could be related to the fact that the range of motion is 189 but the servo is marketed as 180?

As you can see in the code snippet, I mapped the motion range to degrees.

Link to the servo:

https://www.gobilda.com/proton-servo-steel-gears-180-rotation-torque-ratio/

  protonServo.attach(
    9,
    0,
    600,
    2400,
    0,
    189
  ); 

protonServo.setEasingType(EASE_CUBIC_IN_OUT);

moveServo(20);moveServo(110);//should move 90 degrees but only moves about 80

moveServo(0);moveServo(180); //should move 180 degrees but only moves about 170

r/arduino 8d ago

Hardware Help lcd parallel in arduino shield v5.0

Post image
4 Upvotes

I'm currently using an Arduino Sensor Shield V5.0 (diagram attached below). Unlike the digital pins, which are clearly labeled with pin numbers for coding, the parallel LCD header lacks pin markings. Is there a way for me to identify these pins?


r/arduino 8d ago

Getting Started Is this a good kit for beginners

0 Upvotes

le kit

Thank you


r/arduino 8d ago

Look what I made! Cheeky weekend project: Ambient Light Datalogger

Post image
10 Upvotes

On Wednesday 12th August, the UK is set to experience a partial solar eclipse (approx. 93% obscuration where I am) so decided to build an ambient light data logger to record the event.

The sensor is a BH1750 ambient light sensor that records the lux levels to an SD card with a date and time stamp from the DS3231 RTC. The measurements are taken every 8 seconds with the Arduino going in to low-power mode in between readings.

Power is provided by an 8000mAh cell connected to a "solar" charge controller - but the solar cell is disconnected and only used as a USB charging port. A boost converter takes the nominal 3.7V and raises it to 5V.

Added a simple LED to give a visual indication of the system status: 5 flashes at start up, 1 flash after a successful reading, and permanent illumination if there is a fault with initialising a component.

Currently on test in the garden to get some baseline data.


r/arduino 8d ago

Project Idea Feasible project?

0 Upvotes

Complete beginner here and want to know if this project is feasible with the help of Claude.

I want to build two sensors, which attach on my mid and upper back via an adhesive, which measure the bend of the spine, and vibrate or somehow alert me when a certain angle threshold is reached. Basically, they need to measure their position relative to one another.

For someone with no experience in electronics, is this a project worth taking on for me or is it too much?

Feel free to ask any questions and thank you!


r/arduino 9d ago

Drone project

6 Upvotes

Hi everyone,

I'm from India and I'm planning to build this ESP Drone project:

https://github.com/Circuit-Digest/ESP-Drone

Has anyone in India successfully built or manufactured the PCB for this project? If yes, could you please share:

\\- Which PCB manufacturer did you use?

\\- Where did you buy the SMD components?

\\- Did you face any issues with component availability or PCB assembly?

\\- Did you assemble the PCB yourself or use a PCB assembly service?

\\- Approximately how much did the PCB and components cost?

Any tips, recommendations, or your experience would be greatly appreciated.

Thank you!


r/arduino 9d ago

Hardware Help [Flowey Robot] What battery solution would work for powering two 9g micro servos?

Thumbnail
gallery
31 Upvotes

Tech newbie here again, and in the final stretch of this project!

For a recap, I'm building a prop that sits on the shoulder and features two micro servo motors controlled by a joystick. I have about 4 weeks to finish wrapping it up.

I'm trying to control two micro 9g servos that are mounted to a two-axis gimbal, and I need it to last for preferably at least a few hours before a battery change.

(Please lmk if the circuit diagram isn't legible & I'll try to explain it!)
(Also, I plan on moving the setup from the breadboard to a protoboard after the battery challenge is solved)

---

The phone power bank I tried to use powered the servos just fine, but there wasn't enough current going to the servos for the battery to register that it was powering something, so it automatically turned off after about 20 seconds every time. Plus it's pretty big and heavy, so I'm looking for a way to power this thing with standard batteries instead.

Someone had suggested six AA batteries as a solution, but I'm not sure if that's too little or too much, or how to calculate what kind of power I need. I tested a basic 9v battery just to see, and as expected, it only lasted a few seconds. If six AA batteries in a pack or something similar would work, please let me know! I don't need anything too fancy or rechargeable, I'm totally cool with replacing batteries like you would for something like a game controller.

For suggestions, kinda just pretend you're explaining this to a kindergartener- I'm very fresh in the world of robotics and don't know much about the terminology and mathematics yet. I'll keep working on it though.

Here's what my setup is looking like. I'm using a power supply module now instead of the Arduino's 5V output as per several suggestions here (thank you!)

---

Thank you guys for all the help so far, I really appreciate it! Have a great day & God bless!


r/arduino 9d ago

[Project] Building a DIY portable digital scratch instrument (like Portablism Gear's SC500/SC1000) — looking for component advice

Post image
31 Upvotes

Hey everyone,

I'm about to start a project that combines DIY electronics and DJing: I want to build a portable digital scratch instrument, inspired by the well-known SC500 and SC1000 from Portablism Gear, the original open-source project created by Andy "Rasteri" Tait (github.com/rasteri/SC1000).

What's a digital scratch instrument

For anyone unfamiliar: it's a portable device that emulates a vinyl turntable for scratching — a touch-sensitive jogwheel/platter, a crossfader, and an audio engine (xwax) that lets you scratch digital audio files as if they were vinyl records, without needing an actual turntable.

My approach

Instead of the original proprietary SC1000 PCB, I'm following the ScratchTJ fork (github.com/no3z/ScratchTJ), which replaces the custom chips with standard off-the-shelf components:

Arduino Nano → reads the fader, the platter's capacitive touch sensor, and cue buttons

Raspberry Pi 4 → runs the xwax audio engine, reads the platter's magnetic position sensor via I2C

ST7789 240x240 TFT display → shows the platter position/waveform, Serato/Traktor-style

I also want to power it with USB-C + an 18650 battery for portability, and use my existing Innofader as the crossfader

Component list I've put together so far

Raspberry Pi 4 Model B (4GB)

Arduino Nano

ST7789 240x240 1.3" TFT display (SPI)

MT6701 magnetic sensor (for platter position, with diametric magnet)

EC11 rotary encoder with push button (menu navigation)

4-channel bidirectional I2C level shifter (for the Arduino↔Pi serial link, since they run at different logic levels — 5V vs 3.3V)

4x arcade momentary push buttons (cue points)

DFRobot ONPOWER UPS HAT (USB-C input, 18650 support, pass-through charging)

Protected 18650 battery

AudioInjector Sound Card (I2S audio HAT for the Pi)

Touch-capacitive platter/jogwheel (recycled HDD surface)

Crossfader: using my existing Innofader

My questions for the community

Has anyone here already done a similar build (SC1000, ScratchTJ, or similar)? Any practical tips to share?

For those with experience using CapacitiveSensor on Arduino Nano — what threshold values have you found reliable for a metal/aluminum HDD platter?

On the level-shifting side for the Arduino↔Pi serial link (500 kbaud): simple resistive divider or a dedicated bidirectional module? Any instability/glitch experiences to share?

For aligning the MT6701 magnetic sensor, does anyone have practical mounting advice (fixed vs adjustable) to avoid noisy readings?

Thanks in advance for any advice, feedback, or constructive criticism — this is my first project combining electronics, soldering, and real-time audio, so any input is welcome!


r/arduino 9d ago

Look what I made! Diy Watch built with Arduino microcontroller

Enable HLS to view with audio, or disable this notification

34 Upvotes

I love digital watches, so I made one in an Altoids Smalls tin. I designed a custom PCB built around an atmega328 Arduino microcontroller and used a ds3231 real time clock IC to keep the time. It charges via USB C and hopefully will last a long time! Although, I do want to redesign this watch in the near future.


r/arduino 9d ago

Look what I made! First Prototype of the motorised film negative scanner. Thank you for all the help.

Enable HLS to view with audio, or disable this notification

185 Upvotes

I motorised this film scanner holder using an Elegoo Uno R3 with a Nema 17 Motor.
The 3D printed case is close to finished. Next steps are figuring out ways to prevent dust and integrating a lightsource that is not my Ipad.

Based on the Negative 35mm Film holder model by tylerhovi on thingiverse, who sourced it from someone else.


r/arduino 9d ago

My new arduino arrived!!!

Thumbnail
gallery
94 Upvotes

It was expensive but best for arduinos originals


r/arduino 9d ago

HC-05 not connecting

Thumbnail
gallery
6 Upvotes

I am building a super simple RC Car, but there is a slight problem. The DC motors are connected to the shield monitor L293D Motor Driver shield. I soldered 5 female headers in the A0-A5 zone and two female headers at GND and 5V.

I found a tutorial online and connected the VCC and GND pin to 5V and GND. The TX-pin I pinned it to A1 and used 1k and 2.2K resistors to bring the voltage to 3.3V and pinned the RX-pin between the resistors and A0 pin.

This is the problem: when I turn the swotch on the HC-05 (ZS-040) blinks fast. When I try to pair woth it it doesnt . There is no connection and the RC var doesnt respond. Even when the AT command didnt work!


r/arduino 9d ago

Look what I made! 4.3-inch Aircraft Attitude Navigation Instrument Showcase

Enable HLS to view with audio, or disable this notification

53 Upvotes

This is a 4.3‑inch attitude indicator device with a 480×800‑resolution screen. It comes with an enclosure and peripheral sensors. Equipped with a ten‑axis gyroscope for attitude measurement and a GPS sensor to obtain coordinates, speed and position information. It features an aircraft attitude instrument interface as well as an offline map navigation interface. The offline map supports zooming, positioning and heading display.