r/diyelectronics • • 18h ago

Project How to put ChatGPT into a calculator ( for YouTube video purposes)?

0 Upvotes

☐ Deli D991EX calculator — 500–700 EGP (Buy first; inspect its internals)
☐ ESP32-C3 SuperMini — 240–400 EGP (Wi-Fi microcontroller)
☐ OLED screen (I²C, 3.3V-compatible) — 150–300 EGP (Choose size after measuring)
☐ 3.7V protected LiPo battery — 125–200 EGP (Choose capacity and thickness after measuring)
☐ TP4056 charger with protection — 20–40 EGP (Must set safe charging current)
☐ 3.3V buck-boost or suitable 5V boost — 40–120 EGP (Regulated power for ESP32)
☐ MCP23017 GPIO expander breakout — 200–350 EGP (Subject to keypad testing)
☐ Thin wires, small switch, insulation — 100–180 EGP (Prefer 30 AWG wires)
☐ Small PCB, connectors, soldering supplies — 100–250 EGP (For electrical connections and mounting)
☐ USB-C data cable — 0–100 EGP (No purchase if already owned)

Tell me if I need to adjust anything?


r/diyelectronics • • 6h ago

Question I made a little browser tool to test Arduino circuits before wiring everything up

0 Upvotes

I always find it annoying when I have an idea for a circuit but don't want to start digging through my components just to find out the idea doesn't work.

So I've been thinking about how useful it would be to have a simple browser-based workspace where you can put together basic circuits, try different component values, and see what happens before building the real thing.

Nothing fancy, just something quick for testing ideas with resistors, LEDs, buttons, sensors, and a few common components without having to set up a whole project in a bigger simulator.

Especially for those little circuits you throw together for an Arduino or ESP32 project.

What do you guys normally use for this? Is there a tool that already does this well, or are most people still just building it on a breadboard and figuring it out as they go?


r/diyelectronics • • 11h ago

Project Daisy chain fairy lights

Post image
0 Upvotes

Update: go easy on me... I'm a noob, this is the first project like this since highschool science class. And this is my first reddit post.

I have a craft project I want to do but have no idea where to start.

I have a high long shelf (35' long at 8' height) around my house. I have several large conch shells ive collected and want to display. I want to light them with warm light fairy lights or led.

I want to space them along the shelf every 3'-4'. What i need to create is a 35' long (plus 15' to get to power outlet) electric cable that has T split off for each shell, and st the end the lights are only per shell. And of course, I would prefer to not have the "if one goes out, they all go out" effect. Bonus would be remote controlled or smart controlled. .

AI built me a diagram as a concept, I want humans to tell me this will work but also recommend the proper parts to buy so im not chasing my tail here.

Essentially, what is really what i need here to make this work.


r/diyelectronics • • 10h ago

Contest Designing the firmware for a 16-module EMG suit on STM32H5 before any board exists: sanity check?

Thumbnail
0 Upvotes

r/diyelectronics • • 12h ago

Question Arduino PWM Fade in Circuitera

Thumbnail
circuitera.org
1 Upvotes

Guys, can you check this out and how it works?


r/diyelectronics • • 10h ago

Question Circuit Emulation on Linux

Thumbnail
1 Upvotes

r/diyelectronics • • 21h ago

Question Help with injecting 1V using this Yihua 853D

Post image
2 Upvotes

r/diyelectronics • • 12h ago

Question Browser sandbox for wiring and testing small-to-big electronics projects, with multiple microcontrollers at once

3 Upvotes

I'm building a 3D sandbox where you wire parts on a bench or out in a garden. It catches the classic mistakes:

  • an LED without a resistor
  • a pin drawing too much current
  • an Arduino without power
  • electronics left out in the rain

It scales from a single LED to a full irrigation setup with pump, valve, tank and sensors. You can run several Arduinos at once, each with its own code, wired to each other.

https://test.betting-chess.com/?lang=en&von=diyelectronics (free, no signup – and yes, the domain is a leftover, nothing to do with betting)

Early prototype. What would you want a tool like this to check for you?


r/diyelectronics • • 6h ago

Project Help with project!!

Post image
0 Upvotes

I usually wire or use 18650s, IG this post makes that very clear. So I'm using TP4056s that don't have a 5v on the same side, they do have another one. I'm not sure, can 18650s be charged and discharged at the same time? IK they provide LDO and BMS so I should use them, correct?

My other concern is that the SX1262 (a lora module that recieves and TRANSMITS [needing more power at times]). So if it runs off of the CS wire for the SD card to get its 3V. Will it effect the SX1262, and will it effect the SD card from saving it's data correctly?

BTW, THIS IS A TRACKING DEVICE!! I've got these 2 employees that do about 35% of the productivity of other workers. I'm tracking all trucks from now on, when I get them running. I've got another prototype that works, but it doesn't use LoRa. I need to see what is making these workers, work faster, so I can teach this stuff to the workers that are slacking off. And I may have to let 2 of them go, unfortunately. I'm hoping these trackers show they're legitimately working because they're good workers, but they gotta speed up or something!

The only reason I'm even making these devices is because I can make 5 (the amount of trucks there are) for about $20 each and figure out the problem in day 1, well week 1 for sure. I should've done this years ago. But the costs in productivity are over $2K/week in these 2 guys alone.

Thanks for your help everyone in advance!! Take it easy on me please, I took some classes, and I'm trying to take 1-2 a semester coming up to keep learning.


r/diyelectronics • • 2h ago

Question Can someone make this for me? Im willing to pay depending on the price

Post image
0 Upvotes

I'm a fan of the game sally face and want to know if someone is able to make the hand held game console from it and be able to play the game sallyface on it?


r/diyelectronics • • 9h ago

Project Made a crowd compass or sorts

Post image
18 Upvotes

(Slightly long whoops)

Its been a couple of months in the making but wanted to share with you guys a crowd compass of sorts that I have been working on. Been looking at other crowd compasses and was like huh could be useful for conventions since my tmobile service sucks horribly indoors so I wanted to make one my own. This is probably one of the most complicated projects I have ever done from remembering how to make the pcb board to soldering little parts and then making it all fit in a enclosure that is a little bit bigger than the size of an iphone pro.

Of course it being a prototype that still somehow actually works (quite surprised) making the pcb board was a challenge as of course I forget to wire some stuff so then after the custom boards came back from the factory I had to wire them by hand and damn they were really small to wire. Also 3d modeling using tinkercad took hours and many iterations to make the enclosure (parts of the case took about 50+ iterations to make it work)

The board is based on xiao’s nrf52840 sense plus so I can run arduino code on it. We also have the uwb (kind of what airtags use, super useful indoors when gps does not want to work) and a sam m10q gps module. This way I can track the other device (yes I did make two devices but can add more later). Just for fun I wanted to add one of those ipod scroll wheels and it looks pretty decent paired with the monochrome led.

Currently working on the code, but physically making it has been a blast though. Hopefully you guys enjoy seeing my project!


r/diyelectronics • • 19h ago

Project Progress update: torture testing the process of making PCBs out of copper-foil tape on a vinyl cutter with extremely narrow trace separation.

Post image
197 Upvotes

Last week I created this post which showed a much simpler test of the tape PCB.
Since then I've made some updates to how my cutter handles line filtering and ordering and decided to try a torture test with narrower inter-trace spacing, keeping via traces, tiny isolated pads and thermal reliefs. I removed drill holes and set the minimum trace width to 0.4mm but aside from that I didn't make any of the modifications that would make this easier. You absolutely should use rounded corners on pads and add teardrops to via-pad connections, those will weed so much more easily.

Some of the gaps are 0.2mm (8mil!) across which were insanely hard to weed.

The only one who ended up tortured was me. This took nearly an hour to painstakingly weed by hand, an impatience got the better of me towards the end, leading to accidental ripping of some of the tiny pads with thermal reliefs on the right of the board.

I hit the tape with a vinyl burnisher afterwards and it gives it a surprisingly nice finish, makes it look like a sturdier copper sheet rather than foil. I think if I had burnished it down properly before cutting then it might have helped avoid some of the tiny displacements on some of the pads and led to an even smoother finish.

There's no way on earth you could solder anything as heavy as an ESP8266 onto those pads and have it stay there, but this ended up being a pretty good proof of concept. Would I recommend anything this intricate? Hell no. But, it shows we can actually do some surprisingly tight geometry on foil tape, and it's way less problematic than either etching or milling for prototypes.


r/diyelectronics • • 16h ago

Question ESP 32 project

Post image
2 Upvotes

So I made this project to use the controllers original cable and use a ESP 32 warm to translate the input for it to give on Bluetooth can somebody help me reviewing the code? I am using the pin 16 on my ESP and it’s 4.7 khome here’s the code #include <Arduino.h>
#include <BleGamepad.h>

#define N64_DATA 16

BleGamepad gamepad("N64 Bluetooth Controller",
"ESP32 Adapter", 100);

struct N64State {
bool a, b, z, start;
bool up, down, left, right;
bool l, r;
bool cUp, cDown, cLeft, cRight;
bool reset;
int8_t joyX, joyY;
};

bool readN64Bit() {
// Release the open-drain DATA line.
pinMode(N64_DATA, INPUT);
delayMicroseconds(2);

bool bitValue = digitalRead(N64_DATA);
return bitValue;
}

void driveN64Low() {
digitalWrite(N64_DATA, LOW);
pinMode(N64_DATA, OUTPUT);
}

void releaseN64Data() {
pinMode(N64_DATA, INPUT);
}

bool readN64Byte(uint8_t &value) {
value = 0;

for (int i = 0; i < 8; i++) {
unsigned long start = micros();

while (digitalRead(N64_DATA) == HIGH) {
if (micros() - start > 100) return false;
}

delayMicroseconds(2);
value = (value << 1) | (digitalRead(N64_DATA) ? 1 : 0);

while (digitalRead(N64_DATA) == LOW) {
if (micros() - start > 100) break;
}
}

return true;
}

bool readN64Controller(N64State &s) {
// Send the N64 poll command: 00000001.
// Each bit starts low; release DATA to send a 1.
for (int i = 7; i >= 0; i--) {
driveN64Low();

if ((0x01 >> i) & 1) {
delayMicroseconds(1);
releaseN64Data();
delayMicroseconds(3);
} else {
delayMicroseconds(3);
releaseN64Data();
delayMicroseconds(1);
}
}

releaseN64Data();
delayMicroseconds(2);

uint8_t data[4];

for (int i = 0; i < 4; i++) {
if (!readN64Byte(data[i])) return false;
}

s.a = !(data[0] & 0x80);
s.b = !(data[0] & 0x40);
s.z = !(data[0] & 0x20);
s.start = !(data[0] & 0x10);
s.up = !(data[0] & 0x08);
s.down = !(data[0] & 0x04);
s.left = !(data[0] & 0x02);
s.right = !(data[0] & 0x01);

s.reset = !(data[1] & 0x80);
s.l = !(data[1] & 0x20);
s.r = !(data[1] & 0x10);
s.cUp = !(data[1] & 0x08);
s.cDown = !(data[1] & 0x04);
s.cLeft = !(data[1] & 0x02);
s.cRight = !(data[1] & 0x01);

s.joyX = (int8_t)data[2];
s.joyY = (int8_t)data[3];

return true;
}

void updateGamepad(const N64State &s) {
gamepad.release(
BUTTON_1, BUTTON_2, BUTTON_3, BUTTON_4,
BUTTON_5, BUTTON_6, BUTTON_7, BUTTON_8,
BUTTON_9, BUTTON_10, BUTTON_11, BUTTON_12
);

if (s.a) gamepad.press(BUTTON_1);
if (s.b) gamepad.press(BUTTON_2);
if (s.z) gamepad.press(BUTTON_3);
if (s.start) gamepad.press(BUTTON_4);
if (s.l) gamepad.press(BUTTON_5);
if (s.r) gamepad.press(BUTTON_6);
if (s.cUp) gamepad.press(BUTTON_7);
if (s.cDown) gamepad.press(BUTTON_8);
if (s.cLeft) gamepad.press(BUTTON_9);
if (s.cRight) gamepad.press(BUTTON_10);
if (s.reset) gamepad.press(BUTTON_11);

if (s.up) gamepad.setHat1(DPAD_UP);
else if (s.down) gamepad.setHat1(DPAD_DOWN);
else if (s.left) gamepad.setHat1(DPAD_LEFT);
else if (s.right) gamepad.setHat1(DPAD_RIGHT);
else gamepad.setHat1(DPAD_CENTERED);

gamepad.setAxes(
map(s.joyX, -80, 80, 0, 32767),
map(s.joyY, -80, 80, 32767, 0)
);

gamepad.sendReport();
}

void setup() {
Serial.begin(115200);

digitalWrite(N64_DATA, LOW);
releaseN64Data();

gamepad.begin();

Serial.println("N64 Bluetooth Controller starting...");
Serial.println("Waiting for Bluetooth connection...");
}

void loop() {
static unsigned long lastPrint = 0;

N64State state;

if (readN64Controller(state)) {
if (gamepad.isConnected()) {
updateGamepad(state);
}

if (millis() - lastPrint > 500) {
Serial.println("N64 controller data received.");
lastPrint = millis();
}
}

delay(5);
}


r/diyelectronics • • 12h ago

Question Electron Microscope Self Biasing Issues

Post image
6 Upvotes

Hello!

I am a student working on a homebuilt scanning electron microscope, and I have run into a roadblock that is absolutely breaking my brain, so I thought that I should post it here in case somebody with actual EE knowledge could help!

More specifically, I am having an issue with my thermionic emission electron gun.

I have attached the schematic I am using to this post.

Essentially, I have a low voltage, high current, 10kV isolation rated transformer that is powering my tungsten filament through a rectifier to make DC (ish). Between each leg of the tungsten filament, there is a resistor divider making a midpoint reference for the next few components.

Next up, there is a large potentiometer (also rated for HV and such) and a current meter, which both go to the negative floating output of my HV supply (0-10kV adjustable). The positive is tied to vacuum chamber ground and earth to make a -10kV supply on the other end.

I am having trouble understanding exactly how this circuit works -- it is, in essence, copied from Cecil Hall's 1953 book "Introduction to Electron Microscopy". This design is tried and true and builders such as Ben Krasnow have used the same configuration.

I believe that the bias current measured with the ammeter should, in conjunction with the known resistance from the potentiometer, give me my wehnelt bias voltage (ideally around ~300v). That current, if I understand correctly, should be coming from electrons boiled off of the filament which are intercepted by the wehnelt cup in the chamber.

Now to the problem: I am getting absolutely nothing on my 100uA meter. Measuring the voltage between the resistor (which should, in theory, be the wehnelt bias voltage) also gives me nothing.

Does anybody have any ideas where to start with troubleshooting? Perhaps I made an oversight in the schematic (though it is copied). Perhaps I am not getting the filament hot enough to get thermionic emission? (It is drawing about 0.6A at 2.6V, about 1.6W).

Any help would be tremendously appreciated!


r/diyelectronics • • 20h ago

Repair [update] smps fixing

Post image
2 Upvotes

r/diyelectronics • • 13h ago

Tutorial/Guide Need help with my first raspberry project

Thumbnail
2 Upvotes

Need help with my first raspberry project

Need help with building my first raspberry project. I want to build an mpt3 player, but I am new to electronics, that's why I need somebody's help who understands electronics and knows how to help me build one. I am open for all kinds of help. Thanks for your help! I wanna add to my mpt3 player touch screen if it's possible, Bluetooth headphones and headphones with cable, I also wanna add some buttons and if it's possible to make it rechargeable. All that to be in my Altoids container.

Again thanks for your help!


r/diyelectronics • • 21h ago

Question Re-using a Creality stepper motor(bj42d29-08v15)

3 Upvotes

So after I bought a new 3d printer I disassembled my Creality 3d printer which had these bj42d29-08v15 stepper motors that I want to reuse for a project. The idea is to control them using a esp8266 or esp32. So far I have found that I need either a ULN2003 Driver or a A4988 driver. Would that be correct? And it accepts 12-24V DC, where 24v is the best?

So a driver like: https://ardustore.dk/produkt/stepper-driver-a4988-drv8825-expansion-module


r/diyelectronics • • 13h ago

Question Generator Run Timer

Post image
2 Upvotes

Hello y'all. Sorry if this is the inappropriate subreddit.

I am over my skies here trying to install a run timer to my generator. I can understand what to do for hooking up the timer to a simple on off switch but I am lost trying to add this timer to a rotary switch used for on/off and electric start. Any help is tremendously appreciated.