[ 3 / biz / cgl / ck / diy / fa / ic / jp / lit / sci / vr / vt ] [ index / top / reports ] [ become a patron ] [ status ]
2023-11: Warosu is now out of extended maintenance.

/diy/ - Do It Yourself


View post   

File: 113 KB, 461x845, esp32-pico-kit-v3-layout.jpg [View same] [iqdb] [saucenao] [google]
1329800 No.1329800 [Reply] [Original]

What's your favorite micro controller for small projects?

>> No.1329801
File: 107 KB, 768x1024, dog_with_garlic_on_head.jpg [View same] [iqdb] [saucenao] [google]
1329801

>>1329800
I don't work with micro controllers.

>> No.1329811
File: 535 KB, 1600x1200, DSCN4515.jpg [View same] [iqdb] [saucenao] [google]
1329811

PIC18F4550.

It was the hot new thing when I started using microcontrollers about 15 years ago. I've used hundreds of others professionally since then but I always go back to it for personal projects. I've got the 3000 page datasheet memorized so anything else is more work.

>> No.1329818

>>1329811
what do you do as a profession? what was your favorite to use professionally

>> No.1329822

>>1329818
I'm a computer engineer. My career has mostly been firmware development on little microcontroller driven things.

I can name a couple I've had to work with that really pissed me off because of bad documentation and buggy closed source libraries from the manufacturers, but other than that I've never had a favorite. My preference for PIC18F4550 is really just laziness of wanting to stick to what I know already.

>> No.1329828

>>1329811
Almost the same here.
PIC16F628

Built-in oscilator, dirt cheap (the ones i got were free samples, actually) and perfect for my projects.

I haven't done micro in years, tho. That was 15 years ago.

>> No.1329835

>>1329822
is it intel you're thinking of?
>Galileo
>never release documentation
>end production
>still no documentation
>no training
>no way to learn how to use it
>sign non-disclosure agreements
>request documentation
>intel writes back stating that you must provide a reason for why you are requesting the documentation and provide evidence that you need the super secret docs
>ok
>refused access to documents
>handful of documents get leaked
>still not even useful
>make entire TV series about how cool it is!
>only examples are developed in house by intel engineers
hmm i wonder why we failed in the open source development market?

>> No.1329847

ESP8266-12E ftw

>> No.1329852

I'm normally a Arduino noob, but I have reached the end of its capabilities to often so I'm looking into a raspberry pi with RasPiArduino framework. But after some research into the esp32 I'm really interested in that in combination with this https://github.com/espressif/arduino-esp32..

What is nice about Arduino's is the various libraries that are written for it. What sucks about it are the sucky capacities the off the device's plus the high cost when not going for a Chinese knock off.

>> No.1329853

The Atmega series but am starting to use the STM8 and looking into the STM32 because I don't want to be stuck using one family of kit.

For some reason I never got on with the PIC micro controllers.

>>1329847
I bought a bunch of these but haven't had the time to explore them. None of my work or personal projects are wifi enabled so I've not had the drive to learn more about them.

>> No.1329872
File: 594 KB, 1475x827, 1487253848303.png [View same] [iqdb] [saucenao] [google]
1329872

for C development, STM32 by way of bluepill
for asm development, whichever AVR8 fits the bill
for connectivity, ESP8266 if that's enough
or Orange Pi Zero if I need something more buff

>>1329852
the libraries are what hobble the chip, my dude. learn the AVR bare metal, and maybe an RTOS, and you'll squeeze quite a bit more out of the chips. it's a good series, if modest

>>1329853
the NodeMCU firmware is pretty tasty, actually. there's a certain je ne sais quois to self-hosted development

>> No.1329890

>>1329835
>sign non-disclosure agreements
Qualcomm requires these to get any useful docs. Just why??

>> No.1329892

>>1329800
MSP430
Low power requirements, easy to learn, good amount of online resources. A complete dev kit is $5, but Texas Instruments will just give you one for free if you ask.

>> No.1329902

>>1329800
For very small projects I use attiny85, small footprint, ultra low power consumption with sleep modes, ADC, internal oscillator...

>> No.1329903

>>1329890
because qualcomm is the only player in the mobile market. they actually have proprietary functions.
in b4 xiaomi and samsung clones
they dont count

>> No.1329918

>>1329811
>PIC18F

heh once you know one, you know them all

i go to 2550(?) generally, 4550 if i need more io

>> No.1329922

>>1329801
you gots a onion on your head pupper.
How'd that get there?

>> No.1329930

>>1329903
>they dont count
Why not?
There is also Mediatek and possibly Andes Tech. Qualcomm is not really alone.

>> No.1329932

>>1329872
What microcontroller would a Linux user get?
Open libraries and cheap low spec hardware.
I've been looking at the arduino nano clones with micro usb for simplicity.

Basically something around that physical size would be nice.
Can any of these use python or lisp?
I'd be willing to learn otherwise.
I already mess with embedded ARM/Mips SBC's so I'm not a sheer scrub.

>> No.1329939

>>1329892
>TI will give you one free if you ask
What!? This has to be bait?

>> No.1329945

>>1329932
> open libraries
> python
You don't sound like the kind of person who wants to do embedded. You want a pi or something, plenty abstraction and all the leg work done for you, not the bare metal fast and furious datasheet wrangling of typical microcontroller fun.
Arduino isn't a microcontroller it's an environment.

>> No.1329966
File: 48 KB, 259x194, Micro.png [View same] [iqdb] [saucenao] [google]
1329966

works fine for my little shit projects

>> No.1329969
File: 117 KB, 1000x1000, arduino.jpg [View same] [iqdb] [saucenao] [google]
1329969

>>1329800
Arduino, I blink LEDs with it.

>> No.1330009

>>1329939
https://www.ti.com/sc/docs/sampfaq.htm

>> No.1330019

>>1329939
Not him but some manufacturers subsidise demoboards heavily in order to get acceptance in the market.

>> No.1330034

Depends on how small

I made an UV-exposure timer with a PIC16F628a, I barely managed to fit all the code in the 2 kb flash memory (mikroc, don't know assembler and don't care to learn).

>> No.1330050

>>1330034
How many instructions do you fucking need to set up the oscillator and timer, count to x on interrupt then go to sleep? Does it post on Twitter when it's finished?

>> No.1330053

>>1329811
If you are looking for an upgrade 45k50 is basically the same but you can use intosc for usb and map peripherals to whatever io pin you like.

>> No.1330056
File: 5 KB, 259x194, images-1.jpg [View same] [iqdb] [saucenao] [google]
1330056

>>1329800

This controller

>> No.1330064
File: 1.63 MB, 4160x3120, IMG_20180211_151104.jpg [View same] [iqdb] [saucenao] [google]
1330064

>>1330050
>How many instructions do you fucking need to set up the oscillator and timer, count to x on interrupt then go to sleep?

I really don't know, and, like I said, don't care to find out. It doesn't post to Twitter, but it has a 7 segment display, a single button (which is used for starting/stopping/setting up the time) and a loud buzzer to let me know when it's counting and when it's done counting. How many instructions do I need for that?

>> No.1330111

>>1330056
Nothing worse than an OP that causes confusion and delay, am I right?

>> No.1330112

>>1329811
Dude what's those

>> No.1330113

>>1329922
That's garlic

>> No.1330115

>>1330064
Driving 7 segments directly or using slave ic for decode? Depends on what features i guess

>> No.1330129
File: 21 KB, 462x322, Raspberry-Pi-Zero-462x322[1].jpg [View same] [iqdb] [saucenao] [google]
1330129

Pi zero
Anything else is overkill

>> No.1330156

>>1329969
>Arduino, I blink LEDs with it.
t. loser

>> No.1330172

>>1330112
Controllers for sound responsive LED matrix panels. The ones behind the band here:

https://www.youtube.com/watch?v=A7ECstIAF6k

>> No.1330179
File: 153 KB, 899x716, launchpad-tivac-01.jpg [View same] [iqdb] [saucenao] [google]
1330179

I like my TI Tiva microcontroller. Got it during a lab in college, used it for various things since then

>> No.1330187

>>1330056
> Clearly a macro controller

>> No.1330194

>>1330129
Pi Zero itself is several orders of magnitude more than anything else listed in this thread.

>> No.1330206
File: 365 KB, 1200x900, 364.jpg [View same] [iqdb] [saucenao] [google]
1330206

>>1330179
My man. I made a robotic arm using my launchpad with a bunch of cardboard, dental floss, and 5 servo motors. Felt good.

>> No.1330216
File: 1.47 MB, 2288x2736, MBI.jpg [View same] [iqdb] [saucenao] [google]
1330216

>>1329800
Define "small". :)
I still have a few VB Stamps/chips running about.
Though now I'd probably go with a Pi.
My first Stamp project was a replacement for an environmental control computer at my first job. The boss bet lunch for the whole lab if we could pull it off in two days. We had it working in about two hours. Far as i know it's still working. Built a car alarm, data logger, IR extender/home theater controller, and an fiber adapter/translator for some really old serial based airfield weather equipment.
Though I do miss the days of hands-on logic chips and massively complex state-machines.
Speaking of massively complex machines... pic related

>> No.1330225

I have about 110 pic33f chips. What do with them? Don't even have a pickit

>> No.1330263

>>1329800

I started out with the Motorola 68705 ages ago.

Since Arduino came out, I've been liking the atmega 328 and have gotten into the attiny series a bit too. I really like the attiny 85.

For connected things I've been playing with the esp8266 and the esp32. I hadn't played with freertos before, but I'm liking it pretty much.

>> No.1330270

I use PICs exclusively since it's what I learned on, but don't have any particular favorite. I generally work out the specifics of my project, then pick a microcontroller that meets those needs, like minimum pin count, number of ADC bits, etc... I have this weird thing were I like to use devices that just meet the requirements. If I'm programming something and it only takes up 5% of the available space, I feel like I'm wasting the device on that project.

>> No.1330295

>>1330263
Do you not find the attiny85 too restrictive? What sort of projects do you use it for? I bought some attiny chips to fuck around with but they've just stayed in a drawer gathering dust.

>> No.1330300

>>1330270
>>1330034
>>1329918
>>1329811
To you PIC users, is there any open source way to program them? Both circuit-wise and communication protocol. Or is it required to buy something like a pickit3?

>> No.1330308

>>1330300
How they're programmed is all there in the datasheet; it's just usually a lot easier to buy the hardware than put it together yourself. The programmer itself requires a microcontroller running some code; so it creates a catch 22 scenario.

Some of your options are:

Chinese clone PICkit 2s for about $10 on ebay.
A really simple programmer using the parallel port of an old computer.
Using a kit you put together yourself from Velleman.
Using an arduino or some other microcontroller as the programmer.

>> No.1330325

>>1329903
>t.qualcomm employee
2/8

>>1329932
iirc ESP8266 has a micropython implementation available, also the NodeMCU Lua environment is well-known and -loved

>>1330034
you're right, you don't care to learn PIC asm because PIC asm is a bit retarded due in part to age

>>1330053
>intosc for usb
now I'm thirsty

>>1330064
wild-ass guess, maybe 500-700

>> No.1330330

>>1330308
Can you use the pin outs from a Raspberry Pi? I'm sure everyone has one laying around somewhere.

>> No.1330335

>>1330330
I've seen a program that uses the GPIOs and a small circuit to program most any PIC but it's not FOSS
you need +12.5Vdc or so (depending on model, apparently) to get many of them into programming mode, and the circuitry to switch it. also, the data line for programming is bidirectional and usually requires a couple of transistors to work it. also, programming commands vary widely between models for some ridiculous reason
compared to AVR's basically standard SPI, it's shite

>> No.1330351
File: 119 KB, 640x480, ring.gif [View same] [iqdb] [saucenao] [google]
1330351

For me, it's the Java iButton ring!

>> No.1330373

I ain't fancy no sir, I don't need no big smart microcontroller for my projects so I've got a soft-spot in my heart for the 12F675.
Got a whole bucketful of 'em.

>> No.1330398

>>1330300
A TL 866 is like $50, but it'll do only programming

>> No.1330405

>>1329969
LEDS, not just a LED! More than one LED? Wowee!

>> No.1330429

>>1329811
I use the Motorola 68HC11 for all the reasons you just stated. Love that chip.

>> No.1330453
File: 1.93 MB, 360x640, 024256.webm [View same] [iqdb] [saucenao] [google]
1330453

>> No.1330454
File: 1.50 MB, 640x360, 062.webm [View same] [iqdb] [saucenao] [google]
1330454

>> No.1330489

>>1330300
I don't know, but the PICkit3 is a nice little tool. I think it was 30$, and it programs almost every PIC device and interfaces with MPLab giving you a bunch of options

>> No.1330902

Spend most of my time on esp8266-derivative dev boards since they run micropython. I'm much more familiar with python than C/C+ so I find it easier to parse code examples and write myself. The live interpreter is also fucking awesome as it lets me interface/bugfix the code while it's running which lets me figure problems a lot faster than the old "code/upload/run/guess" using arduino IDE and C.

Libraries aren't as comprehensive though, which is a bummer for a couple things but library coverage is still pretty good.

Some day I'll get around to learning C more so that I can jump back atmega family chips but it's just been such a painful process bodging together arduino code while barely understanding what's going on.

I also have a big attraction to MQTT/IoT microcontrollers so I tend to stick with the ESPs.

>> No.1330908

I just use the best arduino/rpi for the application in development and then port/optimize the code later to fit the smallest controller i have in stock.

>> No.1330913
File: 1.98 MB, 4160x2340, 20171130_223452_HDR.jpg [View same] [iqdb] [saucenao] [google]
1330913

>>1330064
I also made an exposure box with 2k of memory with an attiny2313, I even made my own library for an HD44780 display. Cum on, step it up.

>> No.1330968

>>1330308
Surely one of those ethernet-to-serial or USB-to-serial adaptors would be all you'd need? After that all you'll need is a PCB and a ZIF socket I guess, provided your software knows how to use that serial port.

>>1329932
I'm also a python pleb who wanted micro python for arduino nanos of aliexpress, but I can assure you whatever the fuck I'm writing for the nano is 10 times easier to learn than Java.

>> No.1330976

>>1330968
>implying all serial is async serial
no

>> No.1331555

>>1330913
I wanted to use Attiny2313, but they're more expensive than the aliexpress atmega328, so it's hardly even worth the trouble of getting them

>> No.1331602

>>1330968
>Surely
>all you'd need
>I guess
The guy said exactly what you need to do to program PICs, unlearn whatever assumptions you have about them.

>> No.1331715
File: 326 KB, 1000x1000, ArduinoProMicro_1.jpg [View same] [iqdb] [saucenao] [google]
1331715

Cheap as fuck

>> No.1331905

>>1331602
One of his suggestions was an old computer with a parallel port. Of course I was the moron who misread that as serial, but my point still kinda stands. Since it was implied that using a parallel port could bypass having to use a microcontroller to program the pic in the first place. That is if a USB-to-parallel port will work the same as an old computer's parallel port when it comes to using it with a simple programmer.

>> No.1331975

>>1331905
>usb-to-parallel port
It would very likely work. Google some pic parallel port programmer schematics to see how to put one together.
Personally I just wouldn't bother, because I've done it before and because a $20 pickit3 clone off ebay will do the job with less fuss.
Some friendly advice: don't even bother with socketed programmers. In-circuit serial programming is so much nicer than having to unsocket chips every time you recompile.
Good luck

>> No.1332005

>>1331975
If a pickit3 clone is that cheap then you're right that it's probably the better option of the two. I'm not getting into PICs anytime soon, but someone gave me the same "in-circuit serial programming" advice when it came to converting my arduino nano prototype over to a raw ATMega328p. You're the same anon, aren't you?

>> No.1332013

>>1332005
Was probably me

>> No.1332019

>>1331715
this, love these. >Cheap as fuck
, yeah I saw a deal for 10 of those for like, $15

>> No.1332084

>>1332019
So they're cheaper than the nanos? I know what I'm getting next time I decide to make a permanent prototype.

>> No.1332143

>>1331975
bit-banging parallel ports over USB is slow af. people have tried and people have been disappoint

>>1332019
for just three bucks more you could have 10 STM32 bluepills

>> No.1332229

>>1329932
>>1329945
Beagle, beaglebone / beagleboard whatever the fuck they call it now. TI, its a full linux computer on a board the size of an arduino. Use whatever you want, but most of the shit you see is Python.

>> No.1332233

>>1332229
I was at a demo Jason Kridner (sp) put together a couple of years ago for the BeagleBone Black and it looked like they were pushing Node.js

>> No.1332236

>>1332233
not surprised, but the point is you can use anything. I seen some good .py and C shit

>> No.1332238

>>1332143
>bit-banging parallel ports over USB is slow af
i made a GPIB-usb adapter a long time ago and yeah parallel bit banging is slow as shit

it was cool when i dumped a oscilloscope screen and data, but the waiting sucks

>> No.1333258

>>1329800
I use everything from AVRs, STM32s, ESP8266, even those old 8051 based ones.
AVRs still remain my favorite because i've worked a lot with them, plus they're quite easy to use. ESP8266 are good too, but because of incomplete documentation you have to learn how to drive things yourself. STM32s are godlike, except they're really hard to program if you don't use the HAL or other libraries (frameworks?) provided by STM. Programming them in assembly really hard, in contrast to 8 bit chips

>> No.1333445

>>1333258
Cube is nice, when it isn't being bitchy. I just heard of libopencm3 that purports to be a HAL for many different Cortex-M3 micros that appears to be less verbose than ST's, at the very least
ARM assembly doesn't really look too bad, compared to, say, PIC

>> No.1333512

>>1333445
I couldn't get CubeMX to work even once, every time it spat out some error. In the end i gave up and started using whatever comes with eclipse ARM plugin, it works well, and its surprisingly close to metal too. The only downside is, there is no support for USB, so I'll have to whip out the datasheets for that (and ST isn't the greatest at documentation)

ARM assembly is not bad at all, its one of the better ones i daresay. Its just that 32 bit ARM devices are quite complex, so doing anything in pure assembly is hard because of device specific details like entry point location etc etc

>> No.1333545

>>1333258
I got some nice STM32 nucleos but I couldn't get SPI to work in 8 bit mode. it drove me nuts. I think some of their drivers can be buggy

>> No.1333583

>>1333512
stunning. I got it working well enough under linux by letting it have its accustomed /usr/local/STMicroelectronics directory and making that and all children owned by me. 3/10 fair to poor quality installation, otoh it generated fair to decent USB virtual COM port function code once working
there is some sort of USB driver with that opencm3 package, claiming USB-OTG-FS and USB-OTG-HS support, quality unknown. I'll probably spend some time with it when I pick up some 32f407s
it is true that ARM peripherals tend toward the complex side of things, and setting up alternate pin functions can be a real clusterfuck on any ARM SoC

>>1333545
the errata sheets are your friend

>> No.1333726

How do I learn to use microcontrollers?

>> No.1333730

also what is the best entry level microcontroller to buy to learn to use them??

>> No.1334047

>>1333730
no meaningful answer is available without knowing your current skill level in electronics and programming

>> No.1334048

>>1334047
>no meaningful answer is available without knowing your current skill level in electronics and programming
entry level python and electronics

basically level 0 honestly

>> No.1334049

>>1334048
if you need much hand holding, then lolduino it is. there's heaps of babby level documentation that's not too terrible. also, once you surpass the limits of the lolduino environment you can program the AVR at the bare metal and make better use of the AVR's faculties

>> No.1334050

>>1334049
actually let me ask a different question

what is the cheapest microcontroller that has micro-USB I/O and wifi connectivity

>> No.1334052

>>1333730
At school they often start with 8051 Assembly. It's not the easiest to get exited for, but it does offer a deeper insinght on how those things actually work. If you want to mess around with that stuff the AT89S4051 or 2051 is a nice little Microcontroller to get started. It's pretty much as stripped down as it gets, the datasheet is only 45 pages.
That said, if you want to have fun and do some stuff quick without worrying about the deeper workings of the thing its totally fine to get some arduino board and start out from there. Just remember that there is a world beyond the arduino environment and the shield things that they have.

>> No.1334070

>>1334050
Arduino boards do not have wifi built in, but they do have shields that you can easily plug into them (and copy paste a little code to use with it) to give them wifi. The ESP8266 comes with a kiwi chip and small antenna onboard.

>> No.1334071

>>1334070
*wifi

>> No.1334087
File: 336 KB, 1209x551, 1491757737058.png [View same] [iqdb] [saucenao] [google]
1334087

>>1334050
>cheapest
ESP8266 has an async serial port via micro-USB, a small number of I/O pins, and a comprehensive wi-fi stack. there is also an arduino IDE backend for it and a baseboard with an arduino-shield-like pinout

>> No.1334818
File: 88 KB, 600x600, attiny.jpg [View same] [iqdb] [saucenao] [google]
1334818

>>1329800
I'm new at this and so far the ATTiny84 is my favourite. Easy to program, compatible with Arduino and cheap. I do like the ESP32 quite a bit as well for slightly more demanding projects.

>> No.1336314

>>1329800
no favorites, I just pick whichever is cheapest that does the job
recently used STM8, EFM8 and MSP430 in random projects

>> No.1336479

NodeMCU is great. They're like $2 each from AliExpress, have WiFi capabilities built in, and can be programmed with the Arduino IDE.

>> No.1336525

>>1332084
They're an Arduino rip-off so they're 2-3x cheaper

>> No.1337416

>>1334087
>ESP8266
>>1336314
>MSP430
this

>> No.1337514

>>1329800
Arduino, very easy to use.

>> No.1337515

>>1329811
>PIC18

I miss that. Back in high school i was the last batch to learn Microcontrollers using PIC, after that they moved on to a simpler thing .

>> No.1337611

>>1334052
This anon, don't get stuck in the shield ecosystem of the Arduino, you're better off with trial and error and learning proper leads management from the get-go

>> No.1337810

>>1337611
>don't get stuck in the shield ecosystem of the Arduino
this, it's a fucking tourist trap

>>1334087
also ESP8266 can be programmed in Lua

>> No.1337824

>>1329800
smt ATMega328's with magnet wire leads

>> No.1338009
File: 48 KB, 500x500, Mediterranean-Dip-Chunky-Sundried-Tomato.jpg [View same] [iqdb] [saucenao] [google]
1338009

>>1337810
>>don't get stuck in the shield ecosystem of the Arduino
>plugs thermometer module into arduino uno
>copy-pastes code from adafruit
>it just werks
Man I wish it ran on python!

>> No.1338018
File: 106 KB, 800x450, 1512311434983.jpg [View same] [iqdb] [saucenao] [google]
1338018

>>1338009
>werks
>needing a 10in^2 pc board to do each thing

>> No.1338020

>>1338018
It was a shitpost. A chunky shitpost.

>> No.1338026

>>1329800
The esp8266, only because it's so cheap to get already on a usable board. It's a bit starved for good docs and pins tough, so I guess an atmega and attiny line.

>> No.1338092

The ESP8266 is a great choice and is extremely well-documented - and natively NSA enabled, so you can plug your anal humidity sensor to your coffee maker dosage decider over the invisible pixie mesh

>> No.1338094

Arduino pro 2.11, it has bluetooth capibilitys and has good ports to link off of

>> No.1338134

>>1330300
I recommend byuing PicKit3 off ebay since their circuit is open source and usually great built. Its a couple of bucks and give you great start w/o worries when troubleshooting your first circuits. And you will have tough times when setting your first fuses believe me.

With mplabx and xc8 compiler (free) you have also good IDE with builtin debugging option you can use with PIC18F22K20 or other dirt cheap enhanced mid range cpu.

Good luck

>> No.1338268

>>1338092
Well documented? I thought we were still dealing with calls into a binary blob?

>> No.1340103

>>1338268
The open SDK is looking pretty good these days

>> No.1341637

>>1338268
it can still be well documented even if it isn't entirely open source

>> No.1341790

>>1341637
True. But when I looked last (a year? years? ago) , there were a lot of operations that weren't decomposed, and were making numerous undocumented calls. I'll read up on the new open sdk though

>> No.1341880

>>1329811
Did... did you CNC the circuit boards and solder everything on the same side?

>> No.1341938

Currently I'm learning STM32 using STM32F429 DISCO with small QVGA TFT LCD. I had some previous experiences with AVR Atmega, but switched quickly to STM mostly because all my friends are using them.
I have question. Can someone recommend me some medium level project that will require using STM32? I have problem that I learn how to do certain things like using lcd etc. but cannot come up with any bigger project that will be usefull to me in everyday life. For example building a line follower robot may be fun but lack of use cases in normal life is a huge barrier for me. I'm living in a dorm right now so any home automation and similar stuff is a no go.

>> No.1341977

>>1341880
He might be using the reverse side as a solid ground plane, if that's a thing people do.

>> No.1342037

attiny85

it's like 85 cents

>> No.1342116
File: 177 KB, 610x848, 420.jpg [View same] [iqdb] [saucenao] [google]
1342116

I quite like the Maple Mini

>> No.1342124 [DELETED] 
File: 546 KB, 1600x1200, DSCN4533.jpg [View same] [iqdb] [saucenao] [google]
1342124

>>1341977
Yes. Not bothering with drilling holes and pushing components through them gets things done in half the time.

>> No.1342127
File: 546 KB, 1600x1200, DSCN4533.jpg [View same] [iqdb] [saucenao] [google]
1342127

>>1341880
Yes. It was a rush job. It's faster to do it like this than drilling holes and pushing components through them.

>> No.1342208

>>1342127
Did you use a V-bit on the router? If you could get a rigid enough end-mill to do it then you could carve the traces and drill the holes without swapping bits, but I imagine that's a bit much for 0.6mm-0.8mm.

And how much flux did you use there? I quite enjoy seeing a non-masked board that doesn't have solder covering all its traces.

>> No.1342257

>>1342127
but did you get any "special access" to the talent?

>> No.1342263

>>1342127
While I admire your creativity, I honestly would not accept such a job.

I've worked with a drill-press for PCBs before, and it's pretty quick: place the dot under the laser and press down. Etching is probably faster when you use photo-sensitive PCB .
I doubt you saved much time in total, seeing that you need to bend every single pin into place and hold it while soldering.

tl:dr. would return shipment

>> No.1342289

>>1342263
>probably
how about exposure? laminating? purchasing? having to attend to the boards instead of leaving them on the robot while you're populating the next one using third-hands of your choice?
or the golden rule of 'when hot chicks in panda heads need something in a jiffy, give it to them'?
if you want it on a tight schedule, you're going to accept it and you're going to like it
back, rebbit, back

>> No.1342293

>>1342263
>t. never done an RF board

>> No.1342311

>>1342263
I have worked with a pcb drill and it was awesome, but fucking expensive. I tried pcb drilling on a bench drill and i broke 2 bits without drilling a single hole. Got a phobia of it now.

>> No.1342316

>>1342127
>stocking through-hole parts instead of SMT
>2018

>> No.1342357

>>1342127
I feel like any kind of constant vibration would break off all of your solder pads

>> No.1342411

>>1329800
what fun but challenging projects can I build with a microcontroller? something I want to get into but I can never think of things to make.

>> No.1342799
File: 150 KB, 1920x1080, ohm project challenges.png [View same] [iqdb] [saucenao] [google]
1342799

>>1342411
Anything driving a display of some kind without dedicated chips. I'll be doing that in one of my projects with 3 74HC595 latching shift registers to feed 3 7-seg digits plus 3 LEDs for a soldering iron thermometer. The only slightly challenging thing about this is programming the decimal-to-7seg (I'll probably just have a couple of lists and do it by index) and getting the timing right. If you want more in depth, try something that takes data from online, or something that uploads data like a weather station. IOT devices/automation server stuff can also be a fun project, not that IOT devices are particularly useful. Extracting usable data from sensor inputs (correcting for inverse or exponential relationships) could also be a useful learning experience. Also pic related, and whatever you see on adafruit/make if you're into that.

>> No.1342839 [DELETED] 
File: 528 KB, 1600x1200, DSCN4491.jpg [View same] [iqdb] [saucenao] [google]
1342839

>>1342127
I've never been able to find a CNC bit that can do both the drilling and milling. V shaped ones are good for milling, but then the hole is V shaped and too wide on the copper side. I shaped ones snap when milling. Changing bits isn't even the big issue; drilling the holes takes forever on my slow machine. I used 60/40 lead-tin solder with a 2.2% flux core.

>>1342257
I was already friends with the band I made it for. These were control boards for the LED panels behind them here: https://www.youtube.com/watch?v=A7ECstIAF6k

>> No.1342992

>>1342799
>The only slightly challenging thing about this is programming the decimal-to-7seg (I'll probably just have a couple of lists and do it by index) and getting the timing right.

Timing? You clock the data into the 595s at whatever rate you like and then dump it onto the 7-segment leds. And it's pretty simple to map the segments to the pins on the 595 so you know what to send to draw a particular number.

Granted, you did say "slightly" challenging, but this is actually a great beginner's project, just after she learns how to blink an led, and anyone who struggles much with this should forget about digital design.

>> No.1343077

>>1330351
This uses the 1-wire bus
I've been looking into a buying a couple of them and making that door locking system that I've been planning forever

>> No.1343087

>>1329969
you can the MC datasheet and code more autistic shit with it

>> No.1343092

>>1329800
I've named my microcontroller "mikuru"
Whether its firmware crashes I get a chance to say "mikuru run run"

>> No.1343431

>>1342992
>slightly
Indeed, I am pretty much a beginner about this. What I meant by timing is that I'll be clocking the latch at one freq and the CLK at 24 times that, and I don't really have much of an idea yet how I'd do that while outputting the 7-seg serial, at least something that isn't just a bunch of "on, pause 10ms, off, pause 10ms". Also interrupts or something. But I'm sure it won't be hard to figure out once I look at the project again.

>> No.1343439

>>1343431
>What I meant by timing is that I'll be clocking the latch at one freq and the CLK at 24 times that,

that makes no sense. the avr (arduino) controls two pins on the 595, clock and data. you raise or lower the clock (i forget, look at data sheet), set the data line high or low for the bit you want to clock in, then toggle the clock, and that one bit is clocked in.

24 times what? you are doing something wrong.

>> No.1343444

>>1343439
I need to latch the register (the reason why I'm using a 595 not a 164) to keep the previous temperature value on the display until the 24 bits of the next one are in the right place. Otherwise if I don't latch it at all I'll have a series of random outputs on the display that only converge in an actual number 3 times out of 24. Thinking about it I can probably just have one loop inside another.

>> No.1343653

>>1343077
I know a guy who did that like 15 years ago. it's still possibly worthwhile

>>1343444
one, if you insist on bit-banging, you literally just send the new data as fast as you can and toggle the '595's latch at the end. works fine even with a non-latched '164 if you keep the update rate much lower than the clock rate to keep the loss of contrast down
two, why aren't you just using hardware SPI, the very reason the '595 is beloved by makers

>> No.1343654

>>1343653
*as fast as you can and *pulse* the latch at the end

>> No.1343789

>>1343444

>Otherwise if I don't latch it at all I'll have a series of random outputs on the display

>Thinking about it I can probably just have one loop inside another.

read the datasheet for the 595 again. It does everything for you, once you understand what the three pins do: data, ST_CP, and SH_CP.

1. lower ST_CP

2. send 8 bits for each 595, using the data line and SH_CP to clock them in. THIS HAS NO EFFECT ON THE OUTPUT LINES. <<< UNDERSTAND THIS PART.

3. when you have all the data loaded, raise ST_CP. THIS PUTS THE NEW DATA ON THE OUTPUT LINES. <<< UNDERSTAND THIS PART.

This is one of the simplest digital tasks there is. Work hard to comprehend it. If you can't do this, maybe digital design is not in your future.

>> No.1344141

>>1343789
>If you can't do this, maybe digital design is not in your future
Mate I've barely looked at the project, I wasn't trying to get spoon-fed on how to make it before I've tried myself, though I do appreciate the thought. Since I'm using the same microcontroller for other purposes at the same time, I'm worried about timing in that regard, but I'm sure it's nothing I can't figure out with some time.

>> No.1344363

>>1344141
what about timing worries you? the '595 is static logic, it doesn't care if you hit it too slow and you'll be hard pressed to hit it too quickly. look at the datasheet for the '595, particularly the waveforms and the associated input timing specs. note what has a minimum (most or all), a maximum (none), and how fast your micro can toggle pins on its ports (probably too slow, but to be safe wrt setup time, you can simply refrain from flipping the clock and the data in the same write to the pin register)

>> No.1344378

Attiny85, or Atmega328... Because I've started with Arduino... At this point I am hitting limits of this thing. What next micro you would recommend for me?
And yet sometimes I prefer to make stuff out of simple logic ICs, because it doesn't require programming.
>>1342799
Roll.

>> No.1344384

>>1344378
go with the STM32F103 bluepill, m8
it's a fine, across-the-board upgrade from lolduino for very nearly the same price as a generic lolduino board, and you can get bare chips for $1-$2 each on ali
>faster
>more RAM
>more flash
>more ADC bits, inputs, and samples/second
>more and better timers, more PWM
>native USB
>arduino IDE support if you're into that sort of thing
>FreeRTOS support
>decent third-party support
>passable vendor HAL and init code generation tools
the only real downside is the ST-Link dongle you'll need to program it, but you can also use the dongle for gdb debugging instead of a JTAG pod. and it's only $4

>> No.1344391

>>1344363
Not timing the register, but say I've got my display loop running and it's halfway though clocking all the values into place, but suddenly my thermometer shows a value too high and now I need to shut off my heater. With my current limited code knowledge I can't fix that unless I check for temperature in every sub-loop instance. Any kind of simple try-except statement would leave the display half-clocked and not knowing where to go. I'm not sure how sophisticated "interrupts" that I've heard about are, but worst case scenario I guess I just make a "progress" list and just go off that to see where I need to start clocking the display.

>> No.1344397

>>1344391
When an interrupt completes the code goes back to where it was like nothing has happened (unless you coded the ISR terribly).

You don't need ISRs for a simple project like this though. I don't think you're in the mindset of just how fast even cheap little microcontrollers are. You can run a loop of checking the thermometer, setting the digits, and controlling the heater in half a millisecond. Your not going to miss any important temperature data because the MCU is updating the display.

>> No.1344398

>>1344391
the '595s won't care if you leave them unclocked for a while. remember, static logic, no maximum times. they will latch forever once clocked, until you clock them again

>> No.1344408

>>1344397
Yes I was just thinking that, though it is a very overpowered heater. The shift register will have a maximum delay on the order of 50ns, so I could drive it at 1 MHz and be fine. Of course my switching FET for the heater can't handle that.

>> No.1344442

>>1344408
Why are you worried about sending data to the shift registers as fast as physically possible? You don't need the numbers to update tens of thousands of times a second or to check your thermometer that often.

>> No.1344483

>>1344442
You've made me realise that the temperature display clock doesn't have to be faster than or as fast as the temperature regulation clock, even if the limiting factor would be the heater switching. Because the heater is possibly more than 100W and it's heat capacity is like 3J/K, I'll need to update it quickly, but not that I need anything faster than 100Hz or so for this heater or the display. The 1MHz was just a surprising upper limit, not something I want to do.

>> No.1344532 [DELETED] 

>>1344391
>but suddenly my thermometer shows a value too high and now I need to shut off my heater

Everything you post illustrates how far out of your depth you are.

Unless you are heating a needle with a blowtorch, your microcontroller has a frequency response hundreds or thousands of times greater than whatever you are controlling.

>I can't fix that unless I check for temperature in every sub-loop instance.

sigh. buy an oscilloscope. have your microcontroller raise and lower a pin for every main loop. figure out some way (DAC) to also show the temperature on the scope. Try to make the temperature change REALLY FAST. And note the millions of loops that take place while the temperature changes one degree.

I know I sound hateful, but you are not going to make it in electronic or digital endeavors.

>> No.1344567
File: 23 KB, 800x480, green_ada_yellow_rgb.png [View same] [iqdb] [saucenao] [google]
1344567

>>1344483

When I'm working on a similar project, an invaluable tool is an oscilloscope if your device has one or more spare GPIO pins.

When any routine you are interested starts and ends, even if it's just one instruction, raise and lower a pin that you display on the scope.

If you have a DAC or any way to display that temperature, you might be amazed at how slow it changes relative to how often your main loop executes. An eye-opener for me was how much time a 4x20 LCD display takes to do much of anything.

Anytime you are concerned about interrupt routines and their relationship to ordinary processes, two or more GPIO pins on the scope can tell you many things that are hard to see by thinking about your code.

Pic related is an example where the green trace is high while I'm sending data to 60 RGB LEDs, and the yellow trace includes the time spent calculating that data. The main take-away is how this shows that I could send updates to the LEDs a bit more often, but not much more.

>> No.1345363

I'm pretty average Arduino user and I would like to start "serious" programing. I would like to make small little electronic thingies with ATtiny85.
What would you suggest to me as best source of information for me to learn.
I'm from Czechia and I think there isnt much books about this microcpu.

>> No.1345573

>>1345363
Why do you want to move away from Arduino? Until you find an actual limitation in ecosystem, I suggest you to stick with Arduino to get more familiar with everything

>> No.1345651

>>1345363
you might want to become better than average in lolduino. for example, you can make your own libraries and successfully link them into a sketch. it is also helpful if you can successfully use interrupts within the lolduino environment
at that point you can stop linking in the arduino libraries and not have to worry about them
you should also try to find others' projects done with that chip (in non-arduino C, to start), on github or whatever, and experiment with them
it's a lot of reading, in English, but the family reference manual and the device data sheet are the definitive sources for info on a device

>> No.1345654

>>1329966
Pro micro is my fav.
Sadly official compatibility has been a bit shit for a while...

>> No.1346156

>>1329800
I really like the EFM32 family from silicon labs (energy micro before).
After I had to work on STM32 platform for a uni project and cursed the documentation (or the lack of it) to hell and back my friend recommended it to me and it's glorious.
Great as a first ARM IMO, mostly because of the great documentation and support.

They also have their own guide for "makers" coming from arduino etc. with many examples how to use some common modules together with it (i.e. small cheap LCD screens, some sensors, etc.).
The community forums are bretty gud too.

I cannot recommend it enough, at least as a uC to learn ARM development on.

>> No.1346178

>>1337514
>Arduino, very easy to use.
idiot

>> No.1346187

I've always been interested in this kind of stuff but could never find a useful introductory guide. I have a strong programming background (software developer) and would like to make small projects but I just don't know where to begin, can someone provide me a reference to a useful site? I need to go through the structure of what x/y/z/... is on the board, what its used for, and what would be the best board for me to start with? I don't care to buy an arduino/rasp as those seem like overkill for alot of my projects.

>> No.1346195

>>1346187
>I don't care to buy an arduino/rasp as those seem like overkill for alot of my projects.

arduino boards are about as simple as it gets. they are easy to program in C or assembly. You don't have to use every feature it has, but most of them have ADC, PWM, timers, Analog Comparator, I2C bus, etc.

So if you want to do one simple thing, an Arduino is where I would start. I've been using AVRs (that's in arduinos) since before arduino, always in assembly, and it's a lot of fun.