Previous Thread: >>2952647Here we discuss microcontrollers (MCUs), single board computers (SBCs), and their accessories, such as Atmel mega and tiny AVRs (Arduinos), PICs, ARM boards such as blue/black pill STM32, ESP8266/32s, RP2040, Raspberry Pi, and others.For general electronics questions (power supplies, level shifting, motor driving, etc.) please ask /ohm/.>where can I find verified quality microcontrollers and other electronic sensors or partsdigikey.commouser.comarrow.comnewark.com>but that's too expensivealiexpress.com (many parts here are fake, particularly specific parts out of stock in the above sites)lcsc.com>I need a part that does X and Y, with Z specifications. How can I find it?use DigiKey's or Octopart's parametric part search. Then purchase from one of the sellers listed above.>how do I get started with microcontrollers, where should I start?There is no defined starting point, grab a book and start reading or buy an arduino off ebay/amazon and start messing around. There are a plethora of examples online to get started.>resources:https://github.com/kitspace/awesome-electronics>RISC-V microcontroller list:https://codeberg.org/20-100/Awesome_RISC-V/raw/branch/master/RISC-V_MCU_development_boards.pdf
>>2973477The Apple IIe, Commodore 64, and Atari 800 XL only have a single board. That count?How about the Cardputer?
>>2973488>CardputerIt's missing a flashlight and VTech logo.
There was a kit people could use to build a functioning ZX Spectrum from a new PCB, full of new chips, while skipping over a rare part that is not longer manufactured anymore. Apparently the main person that sold the kit has passed away as of December.
>>2973488Those simple early 8-bit computers were partially made for hobbyists to mess about with programming and other computing novelty, and that's all they're useful for now. So the same market as a raspberry pi.
>>2973477Relevant news site:https://linuxgizmos.com/>>2973556>and that's all they're useful for now.This is wrong. About 200 million 6502 cores are made annually.>So the same market as a raspberry pi.Also wrong. Half the RPi volume goes to the embedded market.
>>2973567>This is wrong. About 200 million 6502 cores are made annually.Those are not the Apple 2, Commodore 64, or Atari "single board computer"s that the OP was talking about, in the same way that an x86 dev-board has different uses to an x86 CPU on a PC or industrial terminal, even if they're the same CPU.>Half the RPi volumeFair enough, but what matters is the half of the market of the raspberry pi that's relevant to this general.>6502>the embedded marketAren't the 6502s themselves used for industrial embedded applications in a similar vein to raspberry pis? That just makes them even more similar to one another.
Hell yeah, got the digispark working exactly as intended. It’s David Carne’s ipod TRRS in-line remote protocol, I just took the code and ported it to the tiny85. The details are on archive.org. Just needed a few different pin assignments, and a bit of messing about with the clock frequency and timers. The fast PWM is pretty cool. Anyhow the code uses zero RAM and just 228B of progmem, so let alone a tiny85 it would fit on a tiny13. But I wanted to avoid ICSP and to have something compact to use with a panel-mount USB B socket for power (and ideally programming), soldering USB wires to the 4 pads on a digispark seems like the easiest and cheapest way to go. Since it will also be plugged into my PC, this also gives me the ability to change the programming whenever I want.
>>2973477 What cool new project can I realized with it?
>>2973911The EPROM? A really long-exposure camera.
>>2973921Tell me more, friend.
>>2973923The window in the EPROM chip is used to erase the memory (sets it to all 1s I believe) so if you write all zeroes and expose it to an image, you’ll be able to read the image back from the erasure pattern. You could just do a fixed exposure and read the bits afterwards, but I’d read it continuously to see how long it takes each bit/pixel to change, and use that as brightness information. Arguably you could extract temporal information too, making a video from all of the pixel changes each sample. It will be very slow though.People have done similar things with DRAM chips by removing their lids, but they’re much faster. Because DRAM cells need to be refreshed constantly to keep the data stored, if you shine light on the cells it will cause them to drain light faster, and so flip their bits faster. I think. Probably pretty tough to delid a modern epoxy encapsulated DRAM IC without breaking the bond-wires though, I’m guessing they did it on ceramic or metal hermetic packages, the ones with the gold soldered-on lids.
I am intrigued enough by the new PIC32CM PL10 series from Microchip to have the dev board on order (and I already have some chips but my jtag tooling is old and crappy enough that I need an adapter for SWD) but besides the neat factor of having an M0+ core and AVR peripherals and pinout wth the weirdness of PIC32 branding, I'm not sure who this is really for. If I got stuck with sustaining work on an AVR design and needed to move to a more modern chip, I'd just go to a more modern AVR. If I were doing a greenfield design, I'm not sure I would pick these over SAMD or STM32. But they sure are neat. It's the sort of thing I would have expected in the PIC32 line maybe two years after the Atmel acquisition, not now.
>>2973992Micron made a windowed DRAM chip for basic imaging back in the eighties. It was a thing even earlier than that - I remember seeing the trick in "build your own robot" books from the seventies.
how do I get a job doing this stuff I built the 8-bit breadboard computer I don’t want to build websites anymore that shit is so boring. I’m learning kicad and about programming microcontrollers, and FPGAs. How do I start paying my rent? If I make something like this guy did is that enough to get me a job?https://github.com/Nicholas-L-Johnson/flip-card
>>2974282Learn to write a good cover letter where you basically say that in corporatese. People usually land in embedded in early mid career anyway; they complain the median age in the field is something like 50 but I remember it being that way in 1999. It's always been a bit of a domain of greybeards.In bigger organizations there will be a hardware/software split so you should decide where you want to specialize.
>>2974404>People usually land in embedded in early mid career anywayNot that Anon, but is it common for people to be expected to have prior experience in other fields before applying for embedded jobs?Practically all of the guys whom I went to college with, including me, did their internship in industrial maintenance and/or automation (PLC programming) work. I remember programming microcontrollers in college, and I know some of my professors in college said they had done some embedded systems programming work for large companies (programming PICs, AVRs, x86's and other stuff like that), but I just found it kind of odd I haven't seen many listings for internship positions for embedded systems programmers, and that most listings in my area look for full-time, regular workers with a degree (usually with prior experience in embedded systems programming), rather than for interns.
>>2974655The internships are out there, but it's going to vary a lot by geographical region. In parts of the country with a lot of manufacturing, the modal EE is a PLC jockey, and especially the second and third tier schools are very strongly oriented towards feeding that segment of industry.People wind up in embedded from all kinds of backgrounds.
The AI shortage is officially fucking up my supply chain. A SBC I depend on has been out of stock for month. Contacting the manufacturer resulted in a quote for 3 times the previous price and a 10 week lead time
new to pi's and just found out the zero 2 comes with mini? instead of micro? hdmi like the pi 5 as well as micro usb instead of usb cwish i paid more attention before waiting 3 weeks for them to arrive from aliexpress
>>2975089The extra small form factors are kinda a weird thing. At least from a perspective of whether it gets a place on a desk as an appliance, or whether it floats around like some kind of dongle on a cable. A part of me wants something that simply installs in an ATX case, even if it's mostly empty space inside. I can put other things in there, and I don't have to worry about it getting crushed or lost.
Does anyone have any recommendations for intermediate and advanced FPGA design courses? I'm willing to pay for them if they're good.I can only find stuff that's extremely basic. Like, "blink an LED using verilog! Wow! You did it :)" and "Learn to reduce boolean logic with a karnaugh map! :)"I need courses on like, designing, architecting, and implementing digital systems on an FPGA. How, where, when, why to use things like scatter-gather; practical implementation of fixed point arithmetic DSP, how to properly use a DSP unit on an FPGA, how to properly cross clock domains, how/when/why to use elastic buffers and DMAs... Etc.That level of stuff. I'm trying to do FPGA DSP as a career and the lack of practical implementation guidance is hamstringing me. Yes I know about Gisselquist, but I need more practical guidance.
>>2975479>wants to start a great FPGA career>has no initiative to learn stuff himselfChange that attitude. There's no course which makes you a specialist. FPGAs aren't black magic. Dev boards are overpriced, but still affordable.
>>2975479Get a dev board and they have a bunch of examples. Read the vhdl or whatever code to figure out how it is set-up to do, say, 12-bit wavelet transforms at 1MHz.
>>2973629Ah shit. Despite using the same 17.2k pulldown resistor, the voltage dips a lot more when I pull the mic line down than in David's example. Maybe my phone works different to his old-ass ipod shuffle. Shorting the mic line to ground doesn't pause/play like it should if it were being recognised, and the mic line going high again triggers the recognition circuit.I unplugged the USB from the unit and plugged it into my phone and now the pause/play works. Which is strange, but it's not a solution because the volume control still doesn't work. Maybe I'll have to just solder bodge wires to a pair of sacrificial headphones I bought after all.
>>2975617Ok the resistances required to change volume are also completely different. Managed to get a 220 ohm resistor to decrease volume instead of the 4.7k resistor stated in the original work, but while 510, 500, and 470 ohm resistors all gave about the same voltage drop as the real button, none worked to increase volume. Zooming in on the waveforms, removing the resistor causes a slow rise, while removing my finger from the button causes a fast rise with a bit of modulation, suggesting some digital signalling. Maybe that's just the same ID signalling that happens on plugin, but the fact that the resistances are different suggests it's an entirely different scheme so I'll be cutting my losses.So I'm gonna have to ditch the AVR circuit and just cannibalise a pair of shitty apple-clone IEMs.
What can I do to "industrialize" my design ? Right now, I've got a prototype (waiting for JLCPCB) that I'll be driving with a pico. I'll then pivot to my own RP2040 integration which shouldn't be so hard. I've done it as a student so why not now.I know about power sanitation and ESD protection and reliability. But what about certification ? Is there a way to know this stuff without paying 200USD for a PDF that's going to add one spec to my list ?
>>2975910Total certification is sadly out of reach for small creators. To do it entirely by the book would cost tens, maybe hundreds of thousands of dollars. Personally, I have skipped it and just sell my products without certifications at all. I have been doing so for ten years with no trouble except maybe a 0.5% customs rejection rate.Of course you should make a best effort to be compliant. Have ESD protection on your data lines. Ferrites etc on your power lines. Stuff that you already mentioned. Follow the best practices and recommended support circuits that you'll find in the datasheets of your sensitive components like power supplies and ICs. Only use RoHS-compliant components and PCB manufacturing processes (not leaded HASL).But as far as actually testing and certifying that compliance, that's a whole other beast and that's what you must skip unless your pockets are very deep and you are confident you can make such an investment back.Otherwise, there are some administrative stuff you should do that will make your product easier to sell, especially on third-part platforms like Amazon. Get a GTIN (UPC/EAN) code from GS1. Design packaging with basic information on the box like your brand, contact info and all the other boilerplate stuff. Since Amazon requires this info to be fixed to your box, it's not usually enough to have a simple label that you attach, the info must actually be printed onto the box itself. Custom print suppliers can make such boxes for you. Make a website, make a manual, make a simple datasheet, register a company.
>>2975916Thanks for the information, Anon, but I think my post lacked some.This product is intended for the company I work at. I deal with their current solution on a monthly basis and know very well what's wrong about it, and what could be done better and cheaper. This is not the only company I could sell it too, but I'm looking at at least a ~180 kUSD yearly revenue for my company alone. I'm looking at CE, UCLA and UKCA certification, at least. I just want to be prepared for when I present my MVP.
>>2975650Huh, after adding the inline remote it worked well initially, but after adding extra circuitry it now fails to reliably go down in volume, often it goes up in volume even when I press the down button. I'll experiment with resistors again I guess.
>>2975910What certifications? In the US the sdoc for FCC part 15 unintended radiator is pretty easy to do. The chinese test houses will run the tests for less than a thousand dollars.Full certification on an unlicensed part 15 transmitter, think a chip-down BLE design, can be well under $5K.If you need a UL listing, that depends on the UL standard. Intertek ("ETL") and other nationally recognized test laboratories are equivalent for regulatory reasons and cheaper if your market doesn't specifically require a UL mark.CE markings (etc) are self-declared conformance to "all applicable standards" and it's on you to figure out which ones apply, and to get that right. Yes, that's sort of a trap for the small entrant into the market. But that means it's really going to depend on what standards you need to comply to. You used to be able to buy copies of the IEC standards from the Estonians for cheap, if you need to comply with an IEC standard.
>>2975910I don't know anything about this stuff, but... Depending on what you're making and if you're just going to sell a component to industrial customers, then perhaps you can defer certification to them. You just do some simple measurements to be sure your PCB isn't create anything that rivals a military grade radio jammer, and promise your customers that certification will pass. If they have success, tell that to new potential customers. At least I think that's how our small company does it to keep costs down.
i used to like bvuilding stuff out of electronics, butr anything you can imagine is chinkshit on amazon. Wifi Relays, thermometer displays, all kinds of ideas I have can be purchased for like 10 bucks and so I don't build much anymore
>>2976324make a kilowatt-class GaN motor driver with full field-oriented-control support, high-frequency injection, and can read a variety of analogue and digital encoders
>>2973477please explain how this is not electronics.
>>2976374I have no need for that. I will be rigging up some kind of overload/soft start for my dust collector soon though.
>>2976410Because nuanced questions about programming can easily go on for dozens of posts, which would clog up the electronics general. Discussion about registers and pointers might better fit on /g/, but it’s a speeding cesspit with little knowledge of the peculiarities of embedded development, so /diy/ it is. This is a containment thread.
>>2976410There's overlap, but people who specialize in micros are unlikely to specialize in stuff like analog circuit design and vice versa.>>2976483/g/ has been a steaming pile of shit ever since it got colonized hard by /pol/ and AI shitters. It's hardly moderated and most of the actual smart people left years ago.
can any of these run x86 64 bit yet?
>>2976679What for?
>>2976603The AI stuff is pretty interesting if you do want to run a local model, though I think most uses are generating porn or to “vibe-code”. I just want something to bounce ideas off and to figure out the keywords I don’t know to search, without being a botnet. But you need a fair bit of memory for that sort of general knowledge llm. The linux general and pc building general will always be useful though.
>>2976683I want to run a program called Max MSP on windows on a small portable, possibly pocket sized form factor.
>>2976882Get a RDP client for your favorite phone.
>>2976314UKCA which is CECE, including EMC, RoHS, WEEE.I don't need RF for the current application, but for IP reasons in my country, I probably need to hit consumer market (which will require RF) before, or else my company could argue for scope encroachment and steal my design. So, RF.Also, any US cert to get UL.
>>2973477Does anyone know of SBCs with analog-to-digital converters? Or how to make them sense analog things. I want to make a data logger for some sound measurements. Should I just buy a cheap orange-pi and one of pic-related?
>>2975479Electrical Engineering graduation?Buy a dev board and pirate some books. You start with the basic digital circuits..
>>2973477>reblogged from /ohm/i need to generate anywhere from 0 to 16 PWM signals at a fixed 50% duty cycle at a fixed frequency that might range anywhere from 200 KHz to 2 MHz. for 2 or more active PWM signals, i want them phase shifted to be spaced out equally.>2 channels = 180 degree shift>6 channels = 60 degree shift>13 channels = 27.7 degree shift>etc.the accuracy/precision of this isn't critically important. are there any ICs that can do this, or should i just commit to buying a cheap FPGA and learning how to program FPGAs?>what is this for?an external clock signal on a multi-phase buck converter.
>>2977023I'd check out PIC microcontrollers, there are with some builtin PWM. Some in my drawer have 4 IO pins multiplexed with the PWM circuitry. Mine are quite old and cheap, probably there are newer or versions dedicated for this.>fixed 50% duty cycle and fixed frequencyNot PWM then innit? Just use a ring counter?
>>2977054>ring counterI mean, a shift register.
>>2977054>>2977023https://www.falstad.com/circuit/circuitjs.html?ctz=CQAgDOB0YzCsIBMB2SyWMQDgCx0QMwCMBBAnFiHBAtVQKYC0RRAUEXAgYiGQGy8B-cOHackYSsMRwhAmqwDuIIthWqJlFjzBKQBMDkH7cx3cvQQifCJbN6cWCMNnP5Y2jeM2p80Ry5TYRxHM1ELRDcQO25w6Mj9HUS4qNjhc00VNUjKRBwIDNjVSli8gr0CU2KTIzK41yzKBrrCnjqcpHy4jrrK2q7C0zrmgYq2rsZQltYAJRBJ3ImiEM6CpBAuhDWwSDg9aulJewirLz5ZFS8Mg4Fq5ndlAyNhJ-nrOMcoz7eHkHO5P4Xe6iACSIliUQKuyorAAso0fgjGHwjBBELs4fpDIjXsjUUgMfDvsDiSiROi9vD-ojqXjyRiAPYqMh-fH5ChUKBEERsJkoVkidlNLkqDZISholkQAyiIA
>>2977056This one uses a counter and a demux:https://www.falstad.com/circuit/circuitjs.html?ctz=CQAgDOB0YzCsIBMB2SyWMQDgCx0QMwCMBBAnFiHBAtVQKYC0RRAUAEoiM6WI4TMcOJP3BIQohBGmQ4rIlgSMAbHGVjG+StKSsA7l1XqB6HWA5dTGqyuE7JYmXKLLhjAssouuBMMO8QwlJUIQBmAIYANgDO9OD6Pp4g3twwycYJqRAp-AIEiPEGWT4FtiWFhm75lenSma61XDyN5kXNLgLNfHVF3cnI6ppkBUQDFYwYjUMjyj2GfFPKC6MZRUv+Y9P9q1yTHbvoyUQFrQcFWAJ9F+NXl6Ir41ogZINwx887mtggDZrvDacvpRqn8CtVAU8BG8TvEAPZiAESMAUEJgSBEMRseGICCI-goqTo5LiBTxIABoth circuits divide the output frequency by N so you need a input clock of N*F
>>2977056>>2977057thanks for that. i did think about doing it in hardware but i don't think there's an easy way of handling the variable number of channels without having a mess of a circuit? obviously the circuit looks a lot different if one day i'm running 7 channels with phase offset and the next day i might need 13 channels with phase offset?>this sounds retardedit's for a battery charger that could charge anywhere from 1 battery to 16 batteries simultaneously. each battery has its own buck converter, and i want the buck converters synchronized with phase offsets to reduce the stress on the power source and the input capacitors.
>>2977082Why bother with that fine level of detail? Why not keep one/some of them ON and sweep them at a rate that doesn't cause problems? It'll be slower sure but way simpler.>i did think about doing it in hardwareYou can program something like that with almost arbitrary phase in a FPGA or in a MCU like the PICs I've mentioned. Some of the "dsPIC" series are good for that kind of thing, but I think one with sufficient speed and I/O pins will work too.You can do the adder/mux thing with 74HCxx family of chips, which are super cheap and robust.
>>2977083NTA but I looked into using an MCU’s timer. If you used an MCU with a fast clock (e.g. 133MHz on the RP2040) then at the full 2MHz you wouldn’t get a fine enough phase offset for 15 outputs to be equally spaced to within a decent margin. Say, you’d effectively have a sawtooth-wave counter counting up to 33 and back down to zero to get 2MHz, toggling outputs to turn on and off when they’re equal to certain values. Unless you can run significantly faster internal oscillators, DDS chips like the Si5351 seem to be the way.Or a twisted ring counter with a digital MUX IC to set the size of the ring, you’d get perfect phase offset from that, the question is how accurate and precise you need the frequency to be. A counter output from an MCU would be stable and accurate, while a free-running adjustable RC oscillator could be very finely adjustable, but if you need both of those parameters you might find yourself using a DDS IC like an Si5351 anyway.
>>2977111you can "brute force" with a wave table too.
>>2977082How about writing a program to generate an assembly file with pure instructions to toggle the GPIOs at exact times and filling the time in between with NOPAs long as you don't have to change it on the go
>>2977216>>2977122that is a wavetable sir.
>Looking into getting an ESP32 because Arduino is €6 per Pro Micro and heard they're cheaper>Look at AE>They're just as expensive as Pro Micros
>>2977431If you want native USB like the pro micro, you’ll be paying even more for an ESP32S2 or C6 or whatever. But in return you do get like 500kB of RAM and over 100MHz clock speed, two cores, wifi and bluetooth, and a decent amount of smart home automation library baggage if you want it.
>>2977431>>2977645raspberry pico sirs... cheap as arduino
>>2977749…but has like 100 times the power.
Did anyone find out yet whether the pico can do full USB bandwidth? It only has USB full speed, of course.
I'm gonna make a 0.6W solar panel battery powered device with a LoRa radio, and a shitty camera sensor and then install it on my daily evening walk and program it to randomly take pictures of people and transmit them home (i have a receiver on a pole at my house) How likely is it that i am going to have police called when someone finds my "alarm clock"
>>2977872Photos over LoRa? Sounds slower than SSTV.
>>2977645NTA, but is there a reference charts over the ESP32 devkits (appearance/feature set)?Don't want to get scammed like how some AE shops advertise Arduino Pro Nanos/Mini as Pro Micros.
>have dead benchtop power supply>fixed popped caps, dead transistor, dead diode, current sense resistor>the main microcontroller works enough to receive button inputs and display a value on the seven-segment display>displayed value is all garbled and mcu gets pretty hot>this lines up with a negative voltage spike on its unprotected analog input>it's a holtek HT67F489Because it's working enough I assume the memory is intact, what would it take to read this memory and flash it onto a replacement chip? Seems like there's a third party cheap-ish programmer available, pic related the "e link8 lite" that's still compatible with their old ass HT-IDE3000 IDE, without costing 50USD. But I can't find any information about how one would go about reading back existing flash memory into something like a .hex file, or how to take that .hex file and flash it onto a fresh microcontroller. Any clues?
Been learning embassy-rs.Behold, a Pico 2W outputting to 11 concurrent TCP sockets, each task computing 100 random sums and also doing 20 iterations to compute the golden ratio. Plus a bunch of string formatting. All of that while staying completely responsive. And I haven't enabled the second core or overclocked it yet.
>>2979813Now we only need a language that is to Rust what Rust is to C++.
>>2973477Okay here's the literally flashing issue:I have this bad boy (S3 WROOM-1-N16R8 clone). It used to work nicely but at some point it refused to work - hangs up in boot phase. I don't recall changing any flash setup etc. so I suspect I might've shorted some pins with a wire somehow. How do I diagnose it? What flash options should I use to make sure it's not bricked?
>>2979858No clue, you can bust out a logic analyser and watch the boot pins and programming pins at once to see if it's all according to a timing diagram from a datasheet or appnote if you want. But chances are either the MCU or one of its required supporting components is dead, I'd just swap out the module out, they're just a few dollars.
This is probably second nature to most of you, but I feel like a whole new world of functionality has opened up for me by simply learning how to create my own functions:#define LED LED_BUILTINvoid setup() {pinMode(LED, OUTPUT);}void loop() { blink(100, 5); delay(500); blink(500, 2); delay(500);}void blink(int TIME, int AMOUNT) {for (int i = 0; i < AMOUNT; i++) { digitalWrite(LED, HIGH); delay(TIME); digitalWrite(LED, LOW); delay(TIME);}}This is extremely useful.
I built my own 180 degree servo motor by adding a 1k potmeter to the axis of a stepper motor and then mapped the reading to an angle position. Probably way more accurate than pre-built chinkshit servos.
>>2980075Some of the library functions you find are absolutely trash contributed by internet randos.I find shit that dynamically tests mcu features/model and *then* does something like selects the right register (which maybe changes on the model or version) to bring a pin high or something.What absolutely terrible real-world performance.It’s another reason this shit is hardly ever used for commercial products even though someone found a chinese light bulb using an esp32.
>>2980086Why not use a rotary encoder? It’s the perfect application.I have tons of analog pots that failed and are noisey and I spray in contact cleaner and good for a month so I’m slowly replacing them with rotary encoders but you have to understand the analogcircuitry because you’re usually injecting a voltage with a d/a converter instead of splitting a splitting a voltage with a variable resistor. It’s a pain in the ass.
>>2979813> golden rationThank god it’s memory safe, we can’t have register-based mathematical calculations that are formally verified as correct, with the possibility of crashing!
>>2980160It's arduino garbage, what do you expect.>light bulb using an esp32Is that special? The chip is dirt cheap.
>>2980164You forgot to null terminate your post
>>2980174The Arduino runtime is pretty ugly inside and I could write volumes on why I wouldn't trust it in production. Fortunately there doesn't seem to be a lot of disagreement about that, so there's really no one to convince.But the ESP32 is pretty OK. First-class support with Amazon FreeRTOS and AWS/IoT gets you a long way, and the precertified modules are less in modest volumes than some than their competitors ask for their bare chips. They're used a *lot* in industry, just google on the FCC IDs and look for the FCC statements in manuals.
>>2980160It pisses me off that no one ever posts minimal code for hardware. You're stuck either using some retard's unreadable library that implements every gimmick imaginable or having to read an entire datasheet just to learn about the three registers you actually need to do what you want to do.
i had no idea a 30 cent mcu could be so complicated, but this is a lot of fun learning how they work.
send me your energy anons, I'm about to try running micropython code on both cores of the RP2040 simultaneously
>>2980729Just a tip as someone with some experience on that, it has historically been most stable to use either bytearrays or array.array to share data between the cores.I think as long as the micropython version is from the last couple years it should be pretty reliable. Good luck on your project.
>>2980746That confirms what I already thought, thanks. It shouldn't be too ambitious - one core writing to a single array and the other core reads from it, 8-bit values, so the reads/writes will be atomic.I actually didn't start work on it yet because I was playing Trepang2 instead but I think it makes me motion sick with all the sliding around
>>2980729 (me)Amazingly, it was quite simple to get a separate thread running, so now I have slow calculations on one core and then the other core manages I/O to send data out over SPI. The tricky part seems to be getting both cores to exit cleanly on shutdown.
>>2980785 (me again)I have spoken too soon. Multicore in micropython on the RP2040 is awful and I shall be running everything in a single thread
>>2980827I don't know about micropython, but threading in python is awful in general.
>>2980827Just take the embassy pill.Easy core to core communication with channels, great performances and a huge number of no_std libs are waiting for you. https://rp2040.implrust.com/
>>2980843>Rust
>>2980843> great performancesYes, there are some great performances and theatrics going on with rust.I’d rather use micropython or tinygo than rust.
I am too stupid to understand the math behind signal processing filters
>>2980999https://github.com/openlists/DSPResources/
>>2980999I took an online signals and systems course a few years ago that followed Oppenheim's book. I got a few supplemental books because, um, I'm like that. I mostly used the text, another book called Signals and Systems Made Ridiculously Simple, and Oppenheim's free video lectures. Somewhere between that and revisiting transform methods for ODEs I finally had convolution "click" again after being away from that kind of math long enough I might as well have never learned it.
>>2981148>I finally had convolution "click" againHonestly, implementing a simple time domain audio convolution and playing around with it (like using an IR for reverb or experimenting with different kernels) will probably teach you 99% of what you need. Would recommend.
What's the best way to learn to program directly with HAL for stm32? I can't get stmcube running my my distro, but I do have gcc. Compiling seems fine but I'm lost as a retarded short school bus when it comes to linking.
why's my buck regulator not switching on? >>2981171En pin stays at 0v. no idea if i should just short vin to the en pin and call it a day.
>>2979738knowing the chineze, its memory is most likely locked
>>2981251Fuck, bought the programmer and chip anyway for $30, we'll see. If it's fixable that's a pretty cheap benchtop PSU. If not, eh I tried.
>>2981235Rip that shit out and power with an external 7805
If you could only use one for the rest of your life, which one would it be?
>>2981263If I had experience with them all, probably the Pi Pico. They program via USB without needing a bootloader or USB serial chip, have debugging support using cheap hardware, have native USB, plenty of grunt across two cores, relatively cheap, and have a powerful programmable IO system. Additionally, they are small enough to solder flat onto a permanent project, while being practical to use with headers on a breadboard.The ESP32 with the two USB sockets is pretty good too, but from what I recall they need to have a flag manually set in them before you can program over native USB instead of the integrated USB-serial chip, hence the second port.
>>2981232Look for stm32 projects that use a pure makefile, go from there.
>>2981263Pico or its variants. Pico W would probably be best if I can only pick one.Good all rounder. Powerful, cheap, easily programmable (and basically unbrickable through software), and the IO capabilities are incredible.
>>2981263The rp2350 is a pretty incredible chip for $1.I just wish it came in DIP, had external memory bus, a USB 2 and an Eth PHY, and maybe VGA out would be nice. The propeller can (barely) do VGA.> DIP? Are you crazy?Ditch the GPIO. Besides, gpio is easy to break out with an extra chip (from the memory bus), and has extra robustness and/or optoisolators for real-world use.
>>2981311>USB 2This.
>>2981311High speed synchronous GPIOs are very useful for things like motor driving. A data bus would be 32 pins anyway, no?I'd rather use an adapter to get my microcontroller on a breadboard, than use an adapter to get my microcontroller with a decent number of GPIOs.Instead put it in a PLCC package so you can socket it.>VGAPeople have done HDMI with the pico, surely VGA is easier? 480Mbps USB would be nice though, and so would Ethernet PHY. CAN too.
>>2981371dozens people have done very simple VGA with atmega328p's and posted it online/youtube, it's extremely easy to do
>>2981371VGA is a lot easier to do even with partial hardware support. Just throw us a bone (ramdac)> 32 pinsI think we’re talking about 20 address lines. Then it’s as powerful as a PC AT class machine.The dip version need be the only one to drop most of the gpio and address lines… it already comes in two pinouts, one is the big’un 60-pin with lots of gpio. A nice long-ass narrow dip would be great.The MSP430s come in over 500 variations for comparison.The dip is to compete with msp, pic, and avr.I also think it’s a crime that packagers are afraid of anything longer than a 24 pin DIP. Well, most are.
>>2981434>20 address linesSo what, one clock cycle to present the address, and two to present 16 bits of data at a time? I'd rather have a DIP40, if you can present all 32 from the data bus at once, you can enable single-cycle sequential read operations. You could reconfigure those pins to be GPIOs in software too.Though even a 20-wide data bus at hundreds of MHz is getting a tad scary for routing a PCB, let alone using on perfboard or a breadboard.
By the way, any RPI pico tier MCU that can do USB2? I know some larger SoCs can do it, which would be fine too, but then you have to create your own board instead of using these tiny dev boards any retard (like me) can use.
>>2981311>external memory busIt has a dedicated interface to easily add extra memory, so it's half there>VGATrivial with the PIO and DMA, don't even need to bother the CPU to spit out a video signal. The RP2 family of chips are IO powerhouses.
>>2981463Cypress FX2 chips? Depending on the kind of data you're sending, you could just use something like the FT232H.
>>2981729> suggesting a ftdi chipNot after the ftdi bricking incident using microsoft updates as a vehicle for their malfeasance.Try SiLabs instead. Also you can into 8051 cores like god intended.> ftdi bricking was years agoYeah, it was years ago, but everyone also forgot about the iraq war like it never happened.
>>2982229What happened anyway? For me as Linux user, needing a vendor specific driver for something as simple as USB serial is pretty absurd. There isn't even a reason not to use standard USB class interfaces either.
>>2980827 (me)looks like multicore is back on the menu, boys. It turns out an error I ascribed to multiple cores was actually caused by something else. So now I have one core measuring the frequency of my voltage-controlled oscillator, and the other core controlling the DAC that sends it the control voltage.Look at that beautiful PID response (kill me)
>>2982246Ftdi had competitors.They wrote competitor bricking software into their drivers.Pushed their drivers and a bunch of devices got bricked.Including medical life support systems, and systems—if were unable to communicate—could cause severe economic and environmental catastrophes. (e.g think of control rods on a nuclear reactor).Microsoft let them publish it.Many lessons were learned here, and an unbroken chain of failure prevention mechanisms driven mostly by incompetence and deeply ingrained corporate cultures.
>>2982246Not exactly as >>2982285 described it, as it wasn't "competitors" that were the target. It was outright counterfeit chips they were after. They published a firmware update that basically checked for some vendor-specific info (I don't remember the exact details). If the firmware determined the chip was genuine, it worked normally. If it didn't, it bricked the chip. I think irrecoverably, even.Everyone was livid, obviously, because the overall effect of this was punishing end-users for fraud that they didn't commit. Even a relatively savvy computer user wouldn't know what exactly a USB-to-serial interface did, unless they were specifically into hardware design. Why the fuck are you remotely ruining devices that people paid actual money for when there is no feasible way, at all, for them to ever know that there's counterfeit parts in it? Even major manufacturers and retailers have been bamboozled with fake components. FTDI was, in a fit of absolute corporate lunacy, effectively implying that the consumer should be thoroughly checking the supply chain integrity of every component of everything they buy.The legal justification for FTDI's actions was to basically say "this software is only intended for genuine FTDI devices, and any problems arising from installing it on anything else isn't our responsibility". I don't know if they were ever hit with the gavel, proper-like, but I do know the whole thing was a PR disaster, and they took a major hit to their reputation for it.
>>2982292>If it didn't, it bricked the chip. I think irrecoverably, even.If the driver refuses to work with counterfeit hardware, so what.If it actually bricked it... I want to ask fucking how? Why did the counterfeit chip include self-bricking logic?
>>2982285Medical life support stuff using pirate copies? Now that is a serious violation of all rules. Supply chain and rules for medical stuff is at times even more severe than mil spec stuff. Were people jailed for buying fake chips?
>>2982295More like, that's a good reason to think "things that never akshually happened, but make a good hysterical exaggeration." WHAT IFFFF?
>>2982294>If the driver refuses to work with counterfeit hardware, so whatI went back and looked up the details. The driver exploits the fact that genuine FTDI chips ignore EEPROM write attempts to even addresses, while most fake ones won't (see attached). The result is that fake chips end up with a USB VID/PID of 0, while nothing happens to the real ones.They did not brick the chips outright (wasn't sure about that), but 0 isn't a real ID, so no OS knows what drivers to use. It's fixable, but I'd wager that the vast majority of affected normie users had no idea any of this even happened, much less how to revert the changes.While looking this up, I discovered two things:1.) This happened 12 years ago. Holy shit this was 12 years ago, what happened.2.) FTDI has pulled similar shit multiple times, this was just the most public/visible offense.>>2982298That almost certainly never happened, but, every now and again, even major manufacturers pull a batch of fake chips without knowing. I even have a personal anecdote of buying a genuine SanDisk SD card from a physical Walmart, only to discover it worked like shit because it had fake flash in it. Could have been Walmart that got scammed instead of SanDisk, but, either way, someone you'd think to be a reputable source ended up selling bootleg merchandise. Supply chains for semiconductors are notoriously difficult to keep reliable, especially for commodity parts like memory or common transceiver/interface ICs. Even if nobody died, FTDIs tactics are outright stupid at best, and criminal at worst.
> it wasn't "competitors" that were the targetOthers were affected. I don’t want ftdi drivers fucking around with *any* attached hardware, including the genuine ftdi chips that I already own.They should be providing the communications interface, not malicious probing and bricking logic. Nothing more. No proof was offered for the illegitimacy of those other chips under US law, let alone other countries that it occurred in, nor would ”bricking” have been an allowed remedy under the law.>>2982294> counterfeit chip include self-bricking logic?Not specifically, no. They invested a lot of time in those hacks. Probably why they’re 4x the cost of everything else. Many microcontrollers have OTP fuses and things that can be used to effectively brick them. It’s not unusual.Lesson learned, if they do it once, they’ll probably re-offend. I wouldn’t be surprised if they felt justified in bricking their own chips… say more than 10 years old, so everyone has to buy new ones.
>>2982305> chains for semiconductors are notoriously difficult to keep reliableYeah, the Lebanese are now really good at reverse engineering pagers to make sure there is no bombs in them.
>>2982310> so everyone has to buy new onesThey clearly did that too. Unnecessary writing of the EEPROM in >>2982305 will decrease the lifespan of the device because of the limited write durability (maybe 10,000 writes)So it’s “win-win” from their perspective and “lose-lose” for everyone else.
>>2982282What’s the most efficient way to do a PID loop in software? Z transform stuff like output = input(t-1) - 0.2*input(t) + 0.1*input(t-2) ?>>2982305Did anyone write a driver that worked for the address zero chips? Or a shell script to set the address back to the correct value?
>>2973477I want to install a camera on my property and use it to "spy" on my neighbourhood; recognize faces of people walking by and log who and when was passing my house. Bonus for car plates recognition.What should I be looking for to set it up? There's esp32 cam modules I toyed around with but I suspect they wouldn't stand to this task
>>2982331Pretty sure there are open source programs you can run on an NVR or a raspberry pi that will do this. Jeff Geerling has done a few setups like this, see his videos entitled:>I Spy, with my little Pi>Pretty Fly for a Spy PiThat should give you an overview of both what software and hardware you may need, as well as what roadblocks you might run into. These seem more oriented at using a raspberry pi as a full-on network video recorder, with emphasis on the recording, so you may or may not want something a bit different.I suspect it may be cheaper to use a used optiplex or whatever compared to a pi (not sure on power efficiency though), I'd probably ask /g/'s linux and home server generals where appropriate.
>>2982282it works!!>>2982317I tried to look up what a Z-transform is and did not understand the explanation at all, so I can confidently say that is not the approach I'm taking
>>2982409Z transform is a discrete time version of the Fourier transform, applied to digital signals sample-by-sample. You can describe a PID system in the t or s domain, continuous time or continuous frequency. Bringing it into the z domain is a somewhat simple analytical step from the t domain, and can then be expressed as an output value thats simply a function of the latest three measured input values and the previous output value, and some constants. No hardware division needed. See:https://lecture-notes.tiu.edu.iq/wp-content/uploads/2024/11/DCS-Lect10.pdfThough it would probably be handy to read the previous few lecture slideshows to better understand the terminology. But pic related is the PID equation, where e(i) is the most recent sample, e(i-1) is the previous sample and so on, m is the output, Ts is the sampling period, and Td and Ti and Kp are the PID constants.As you can probably imagine, adding a previous sample to the current sample and outputting it would have an integrating action, also acting as a low-pass filter as we might expect.What algorithm did you end up using?
>>2982409>>2982421Forgot pic.Anyhow what you have just looks like a high-gain proportional controller, which seems to be fine. With a bit of differential gain you could clip those overshoots, doesn’t look like any integral gain is needed, assuming you’re not already using a tiny amount of it.
>>2982421>>2982422I am working in micropython so I just wrote a class that calculates P, I and D terms and sums them. No sophisticated maths. Looking at your equation there makes me realise I am well out of my depth. Being able to replace an entire class with a simple equation sounds very appealing though.
>>2982338That looks like what I was looking for. Thanks, anon
>>2982425Oh, so import math or whatever? Yeah that would be the python way. How often does the DAC get updated?
>>2982476>Oh, so import math or whatever? Yeah that would be the python wayThe DAC is updated about 100 times/second thank you very much
>>2982422I’ve been wondering the best data structure to do Z-transform-based discrete signal processing with. You could definitely make a ring-buffer, either just as long as you need or maybe as long as the nearest power of 2, so the latest data entry would be in the address right after the previous data entry. Maybe with pointers, or maybe just an array, idk I’m a C moron. But is there some kind of data structure where you write memory to the first address, and on the clock pulse the datum at the first address moves to the second, and the second moves to the third, and so on? It wouldn’t make sense to do it solely in software, but if the CPU had chained registers specifically for such a structure it would be faster to execute and simpler to code.I was also wondering about implementing fixed-point numbers for something like a PID loop. If your microcontroller can perform bulk bit-shifts that’s pretty fast, but if it can only do them one-by-one like an AVR it would be faster to split up multi-word numbers into single words. I’ve done that once with janky pointer redefining, but that’s endian dependant. If the compiler could do that from architecture agnostic code it would be much nicer. Apparently GCC supports an ISO draft extending C with fixed-point data types _Fract and _Accum, I’ll have to look into that more.And some DSP chips allegedly have hardware fixed-point support for one or two point positions, probably -1 to +1 for purely fractional values, as is handy for vector calculations.
Hello. I'm trying to implement an fft spectrum analyzer displaying audio frequencies into my Tarduino project. I'm having issues with aliasing I guess.The frequency indicator runs in the opposite direction when the max displayable frequency is exceeded.I tried "oversampling", which kinda works but does not mitigate the issue completely.The display still runs in the opposite direction for some time.I want to do this in software and avoid a low pass if somehow possible.https://pastebin.com/Gnkq6HnQI'll just post this here, not expecting for anyone to read into this mess.TLDR: want to avoid aliasing on an FFT audio spectrum analyzer
>>2982505There is literally no way around aliasing in the digital domain, see Nyquist’s sampling theorem. If you can’t ensure that the input signal will be below your Nyquist frequency, you basically require an anti-aliasing filter of some kind, at which point your out-of bounds signal will just not be detected.You might be able to fudge the math by sampling at randomised intervals, so long as the signal’s frequency is pretty constant over many samples. The same goes for changing between multiple sampling rates, though with this method the calculation is probably far easier than with randomised sampling.What chip are you using? Live audio FFTs are pretty demanding, I’d want an ESP32 at the least, even then it’s pretty marginal in terms of memory if you want proper overlapping windowed STFTs.
>>2982508Ok, a filter it is then.I'm using an LGT8F328P. I guess doing fft with this thing is more of a gimmick. but the display only has to roughly display roughly 20 frequencies to display only a very rough accuracy - which works - kind of - bit noisy
>>2982508The lgt runs at 32Mhz so that gives quite a bit more to work with.'gpt fed me something about putting the ADC to a lower prescaler and then using "oversampling" to only have it read out a fraction of those samples.So I'd put another "oversampling" loop into my sampling loop.It indeed **mostly** stops aliasing at higher frequencies, but the first "octave" above the desired frequency is still visible... [code/] for (int i = 0; i < samples; i++) { // 64 bins = 32 bins of usable spectrum data // Oversampling long sum = 0; const int oversample = 8; for (int k = 0; k < oversample; k++) { sum += analogRead(L_IN); } data[i] = (sum / oversample) / 8; im[i] = 0; // imaginary component }[/code]
>>2982513If you want to reduce aliasing, run the ADC faster. Don’t use analogRead, a function that pauses everything else until the acquisition is done, put your ADC into free running mode and grab samples via interrupt. I assume your data array is 8-bits?
>>2981263
>>2982562>Don’t use analogRead, a function that pauses everything else until the acquisition is doneI've been an arduino kiddie for the past ~3 years I've tinkered around with MCUs. Manually configuring registers etc. seems like magic to a 'duino tard like me.The MCU also has to do a lot of other stuff, notably: communicate with the I2C port expander character display adapter, listen to pin interrupts for a rotary encoder and ideally should also be able to somewhat regularly poll button inputs.Can I still run the ADC in free running mode?
>>2982760The non-trivial part is running multiple interrupt vectors at once, but I assume that's what the arduino code is already doing; just going into a while true loop until the acquisition is finished and the implicit interrupt kicks it back into the main loop. If you can keep everything on interrupts (i.e. there's no problem with things interrupting one another), there isn't really any penalty to using analogRead at all. But if your ADC read finishing or a pin being pulled low might cause havoc with some timing critical thing, you're going to get less reliable. In your case you'll be having that FFT running outside of an interrupt function, so I'd definitely want to cram that brute force processing time in between ADC reads. Mathematical processing like that isn't timing critical at all, so there shouldn't be any issue with stopping every dozen clock cycles to shuffle a new 16-bit number into a second array, while you run the processing script on the first array. Free-running ADC with interrupts to fetch its data will run the ADC as fast as possible, but if you can't process the data fast enough you may have to slow it down. Either way I'd want to ensure the period between samples is always equal, either by a hardware timer that triggers the ADC, or more likely through a clock divider on a free-running ADC. Ideally you can process 40kSps, but to measure to 20Hz that's 4kB RAM right there. If you do use multiple interrupt vectors, you have to check which interrupt you're servicing in the interrupt handling function, to either do the GPIO action or take data from the ADC.Here it would be a good idea to map out how many clock-cyles each task takes. A logic analyser or oscilloscope would help a lot here, just toggle some spare GPIO pins (the fast way with PORTB= or |= instead of digitalWrite) at the start and end of certain tasks running. Serial writing is buffered and quite slow so it can't be used to infer timing.t. arduino-hating arduino tard
im new to pi pico where should i start?
>>2982761Sorry for having wasted your effort post, but I understood only a fraction of what you were saying. This is beyond of my degree of competence, I'm afraid. And I can't dedicate too much time on this one gimmick, having already wasted way too much time on this shitty project.I just thought there might be an "easy" way around having to add an anti aliasing filter. Seems there is not.
hey i got uart on baremetal to work
i feel like i've plateaued. i was able to get some cool sounding things on my breadboard early on but am filtered by making a schematic and designing a pcb
>>2983054I recommend making a bunch of general purpose PCBs (e.g. VCO, VCA, VCF, BBD, PLL, ADSR envelope generator, envelope follower) in quantities like 5 or 10, then messing about on a breadboard with those modules. Then you can just solder them onto some proto-board to make durable prototypes without ordering bespoke boards that may or may not work.
>>2973477I made a simple arduino project that uses a potentiometer, a push button, and a speaker. The potentiometer selects a pitch and the button when pressed makes the speaker play that pitch. If I added a second button and potentiometer, could the speaker play two different notes at the same time? If not, why not? And is there a micro controller that would be better suited for something like this?
>>2983336How are you making the sounds?analogWrite and pwm perhaps?Either way, you can “mix” the outputs with a couple if resistors and an amplifier, or, maybe you have a mixer already.Also, square waves suck. You could use the output pins’ pwm at a high frequency and make a “class d” amplifier back end to smooth out the square waves. You could then also “mix” the two sounds in the arduino by rapidly varying the analogWrite values to simulate both frequencies playing at the same time.
>>2983054I always design my early PCBs with a patch area in case I need to add something or mess around later. Especially if you’ve got a bit of left-over space, might as well add some prototyping pads there instead of wasting your free copper.
here is my tiny project.I wanted something to measure my air quality. I got one of those ENS160 sensor boards.prototype in breadboard showed that the sensor requires steady air stream to work responsive.I was thinking about some kind of tower with a tiny fan. today I had the idea to use my pc as airflow engine. by integrating it in the case behind an air intake would solve hardware work.so I decided to transfer from breadboard to pcb
>>2983590I use an atmega pro-micro board with usb c connector. I really like the boards format as i can use it in sockets. communication is via i2c. nothing special. I used enameled wire for the connections thus the soldering looks bad
>>2983591ready to be glued onto some insulating material, like cardboard
>>2983592I love hot glue.
How do most people program their STM32 Bluepill boards? I usually use my Nucleo board as my SWD programmer, which works failsafe. I once tried uploading an Arduino bootloader onto it, but it had some issues (namely, that I needed to push the reset button while uploading code onto it, and that its output voltage often drops from 3.3V to 2.2V when powering it using the USB port).
>>2983594I mounted it with some velcro to the HDD carrier.I remember programming was a bit icky, as I had to choose between two libraries and one was not working for me.I'm aware that I'm measuring the inside temperature of the enclosure. I don't care. I want reliable air quality data
>>2983596the bay has slits for better ventilation. there is an air path for the lower section to the outside. airflow is possible. I just took the usb cable to the outside and plugged it in. cases with rubber break through are nice
>>2983597I did a test. for this I used a incense stick, which I gnited at the far end of the room. after I saw an upwards trend, I took the stick and brought it nearby the intake. after doing this for 30sec or so, I extinguished it. also I opened the window for good air exchange.
>>2983597Neat stuff, though I’d get an expansion card or other module to add an internal USB socket to your PC.
>>2982409I'm sick of this project and analog electronics
I would like to connect about 20 switches, 24 potentionmeters, and 4 rotary encoders to an ESP32, but it doesn't have enough pins to do that.I know I can get all the switches on an I2C GPIO extender, but how do I do the pots? Can I put those on another extender? Is there a better way?Not sure about the rotary encoders either. Any advice about how to extend the pin count to accomodate them would be appreciated.
>>2983779Multiplex (scan) them in. That’s what keyboards do, and that is what the “scan” codes are related to.You need to use analog switches to switch-in the pots onto a single A/D line. 4066 comes to mind.
>>2983796Sounds good, I will look into that. Thanks.Should the rotary encoders go on the multiplexer too or the GPIO extender? I've found that on reflection I don't actually know much about how they work.
I want to create pull up counter. I'm thinking of some kind of wearable device that will detect movement. What modules should I look into?
>>2983958Accelerometer or IMU. Alternatively, one of those ultrasonic or radar sensor modules might be able to detect your body moving up and down, if mounted above the bar.
>flash STM with DFU for the first time>works>go to flash it again>cant get it into DFU mode>check bootloader pattern>factory state of all the boot bits (except BOOT_LOCK) is 1did... did i just lock myself out of the chip?
>>2973477>>2973477Yo there, sorry to ask, I'm trying to use the adc of one of these esp32 knockoffs, using the arduino ide, but at the moment it compile, breaks with the error, but the thing is I configurated the ide to use the esp32 boards, so it is supposed the RTOS support is already there, I have been using lib manager to look and install any rtos lib, manually downloaded and put it in the project dir inside the sketchbook, and nothing, It always sas the same thing, how can I correct it? Thanks lil'anon>Arduino: 1.8.19 (Linux),>Board: "NodeMCU 1.0 (ESP-12E Module), 80 MHz, ...blablah>sketch_apr03b:11:10: fatal error: freertos/FreeRTOS.h: No such file or directory 11 | #include "freertos/FreeRTOS.h" | ^~~~~~~~~~~~~~~~~~~~~>compilation terminated.,exit status 1>freertos/FreeRTOS.h: No such file or directoryThen what to do?
>>2984089You could try using an up to date version of the IDE, a lot changed in the jump to 2.0. The IDE can get funny around manually inserted files, there's possibly some method of file indexing you're bypassing. If you actually want to do serious programming you probably shouldn't use the arduino IDE in the first place, there's a few alternatives designed specifically around the ESP32, or you could just use platformio, or even just whatever text editor you prefer. Not that I'd know how to get hardware specific synax highlighting on a text editor, but I'm told there's a proper way of doing that.
>>2984095>a few alternatives designed specifically around the ESP32,like what?Thanks by the way.
>>2984096ESPhome is what the IOTbabbies use, while ESP-IDF is the official Espressif one.
>>2984097Thanks I'll give a try!
>>2984097>>2984096>>2984095>>2984089Already tried the arduino 2.x series, the esphome, the esp-idf and platform.io, but they trow the same error.What are the usual directories for FreeRTOS, to install it manually?
>>2984100>What are the usual directories for FreeRTOS, to install it manually?No clue, my idea was to pick an IDE that can actually install it through an integrated method. Never done ESP32 stuff myself, I'm an AVRbabby. I'd ask an ai, they're pretty good at figuring out the kind of development environment bullshit that's hard to google. Otherwise, look for specific FreeRTOS ESP32 tutorials that start at the installation process.
>he needs an IDE