So old to learn? Serious problem - Page 1
Forum section: electronics / projects

author: 001
author_rank: Super Contributor
timestamp: November 20, 2017, 03:13:30 pm
content: Hi!I`m 58 years old electric technitian. I`m not an university grade engineerI can professionaly kraft all kinds of electric distributions at my work and can fix any electronics in my houseI.e. I`m not a newbee with electricity: I can solder and I`m understand how to repair analog radio and TV-sets.But new times come. I see teenagers what can`t fix simple electric troubles but can build some beautiful things from "modern electronic scrap" (actually ten years old routers, pc, etc). They buids some linux-based trakers from coffemachines and it is fantastic for meCan I learn? I want to realise few my simple and funny projects. but how to begin?All info in the internet is not complex/But how schoolboys do it?I see electronix not a circuit design now. I want tounderstandhow to connect PC to any ADCs (for example how to buid PC-based voltmeter and write some simple logger for it)How to convert COM to bluetooth etc. How to read information from COM port and convert it to LCD with microcontroller(Sorry for my english)

author: aiq25
author_rank: Regular Contributor
timestamp: November 20, 2017, 03:26:53 pm
content: I would recommend starting with Arduino. Buy some cheap boards from China (depending on the country your in I suppose). Arduino has tons of examples and community support.The first microcontroller project is always blinking an LED. So try that then read an ADC, serial communication (its simple using an Arduino). That's all you need to read a voltage and display it on a PC.YouTube is also very helpful!I can make projects within hours using Arduino modules versus designing the hardware and writing software which can take days.Plus I just want to say, I really appreciate the value more experienced people have. I'm an engineer but I have a lot from people who have analog experience. Digital circuitry can't replace everything analog.

author: hexreader
author_rank: Frequent Contributor
timestamp: November 20, 2017, 03:28:26 pm
content: If you have plenty of money, I would highly recommend mikroElekctronika products:EasyPIC7 bundle such as maybehttps://shop.mikroe.com/mikrolab-picThen Bluetooth and serial click boards to add on.At least that is what worked for me at current age 59.I know of no cheap way to learn modern electronics in an easy way, but maybe the previous post gives other ideas

author: 001
author_rank: Super Contributor
timestamp: November 20, 2017, 03:33:09 pm
content: Thanx You for quick response!It is not a problem to buy some of this "lego style" electronix kitsBut "bricks" is a sort of "Black box". isnt`it? How to make compete project with bricks? How to trace my own PCB if I can`t see what brick is? I can`t understand this abstraction

author: ogden
author_rank: Super Contributor
timestamp: November 20, 2017, 04:01:02 pm
content: Quote from: 001 on November 20, 2017, 03:33:09 pmMikroLAB/EasyPIC7 seems to be huge overkill for purpose, kind of frustating too. Arduino is de facto #1 choice for beginner. Do some research first - search "arduino projects" on internet - there are tons of information. Find some projects that are doing what you like, preferably with detailed description how it is done (there are many blogs around). Then for starters just copy some projects. After few you will see how to make changes or even create new designs.Get something like this:http://www.elegoo.com/product/elegoo-uno-project-super-starter-kit/Or this (there are many alike, on amazon too):http://www.elegoo.com/product/elegoo-uno-r3-project-complete-starter-kit/10x lower cost and IMHO 10x value than mentioned kinda overpriced PICkit.

author: NivagSwerdna
author_rank: Super Contributor
timestamp: November 20, 2017, 04:25:58 pm
content: I would define a problem... and then solve it. IMHO it is always easier to learn when there is a reason to learn.

author: Gyro
author_rank: Super Contributor
timestamp: November 20, 2017, 04:26:25 pm
content: Quote from: 001 on November 20, 2017, 03:33:09 pmAn Arduino really isn't a Black box in the way you're thinking. If you look at the board, it's only has an Atmel microcontroller IC, a Crystal, voltage regulator, a USB-Serial chip a couple of LEDs and a few Rs and Cs. You could easily make one (or the parts of it that you need) on your own PCB, with a through hole chip you could even do it on stripboard. It's just a convenient board for people prototyping, or Artists etc. who can't solder.You can program an arduino through the USB interface, or take it off and directly connect though a serial port or through an ISP adaptor (also cheap on ebay). You can remove the Arduino bootloader s/w and put you own code if you want to - it's a convenience feature again, but nothing special to make it a Black box.

author: rstofer
author_rank: Super Contributor
timestamp: November 20, 2017, 04:30:56 pm
content: The reason the kids are so smart is that a) they use Google and b) they keep poking at things until they work.You can go a long way using just the Arduino UNO and Google. There are literally thousands of projects (actually, 16,700,000 hits on Google to 'arduino projects').You will need to become proficient at C programming and may need/want to dabble in C++. I skip the C++ bit myself but I'm a lot older. And it isn't necessary (or even useful, in my view) for embedded systems. And that's what we're talking about - embedded systems.Next step is the Raspberry Pi because we can do some low level stuff (UART, SPI, I2C) and push commands off to the Arduino. But we have the power of a full-blown Linux system to take care of high level stuff like networking, GUI, file system, robot vision and so on.Then we head toward ARM chips. My favorite is the original mbed (I like the 'stamp' form factor) or any of a number of STM32F chips/boards. Here we get back to talking directly to hardware (like with the Arduino) but with much more capable chips. When you get to this point, buy "Mastering the STM32" and follow along.https://leanpub.com/mastering-stm32That ought to keep you busy for a while...

author: rstofer
author_rank: Super Contributor
timestamp: November 20, 2017, 04:37:00 pm
content: One reason for using a standard Arduino board, like the UNO R3, is the availability of 'shields' to add functionality. Motor drivers, networking, enhanced IO and so on. It is odd to see the number of non-Arduino boards that come with Arduino headers. It's become a standard interface.One of the Arduino learning kits might not be a bad idea. There are plenty of gadgets to play with.Another advantage of the Arduino is that everything that can possibly be done with an Arduino has already been done and documented on the Internet. Google is your friend!In the end, the ATmega328 chip used on the Arduino boards is a fairly slow processor with limited resources. The Arduino Mega2560 is a much larger chip but the UNO R3 is still the place to start.

author: abraxa
author_rank: Frequent Contributor
timestamp: November 20, 2017, 06:25:16 pm
content: From my point of view, it's easiest to build on top of what you already know and are familiar with. Start there and go in the direction you want to go.For anything digital, it's crucial to understand how logic circuits work. So, if you're an electrician, begin with building simple logic gates: AND, OR, NAND, NOR, XOR with just switches and bulbs. Then, build the same with buttons and LEDs. Learn how to calculate the resistor values you need for the LEDs to work. Then, build the same circuit using a 7400-series IC that has the logic gates inside that you built with switches. Read up how it's done inside (i.e. how transistors work). Then, build the same logic gates using transistors. Learn how flip-flops work and build/use them.Build a simple counter with LEDs. Build a 7-segment countdown timer with only 7400 ICs. When you understand how basic logic circuits work (oscillators, counters, memory, multiplexers, decoders, etc.), you understood the parts that make up any microcontroller and logic IC in general. With that knowledge, you will have an easy time understanding the assembly language because it's easy to see what happens on a hardware level. The Arduino is usually programmed in C but you can also write programs for it in assembly.Once you wrote a few simple programs in assembly (blink a LED connected to the Arduino, a 7-segment clock, whatever) then you can learn C. You'll see that it's more abstract than assembly but still lets you access the hardware directly. Again, write some programs on the Arduino in C. When you did this and you actually know what you're doing, you've reached a major milestone. Knowing C is very good because the concepts used are very common in other programming languages as well. At that point, you can learn other programming languages more easily.My approach is bottom-up: starting with the basic elements and building bigger and bigger things out of them. Other people may suggest going the other way: top-down. That approach would be done by e.g. learning python and using a Raspberry Pi to blink an LED. Sure, you get quick results but you never really understand what you're actually doing. From what you write, it seems that this approach may frustrate you because you can't connect this new knowledge to anything you already know.

author: 001
author_rank: Super Contributor
timestamp: November 20, 2017, 06:31:39 pm
content: Thanx. I`m not engineer but not a total newbie too. I understand how trigger works and can fix TV etc.But using programmable components is so difficult to understand. I read now what the same pin of atmega may be configured to Input or output mode. It is fantastic!

author: cdev
author_rank: Super Contributor
timestamp: November 20, 2017, 06:55:41 pm
content: I would put a vote in for the RaspberryPi 3, which is a real Linux computer which you can then use with its own GPIOs and SPI, i2c, etc. or with Arduino HW connected to them.

author: ogden
author_rank: Super Contributor
timestamp: November 20, 2017, 07:04:50 pm
content: Quote from: cdev on November 20, 2017, 06:55:41 pmI would vote against. RaspberryPi requires so much more (unnecessary for beginner) knowledge of computers and operation systems. RPi is clearly "advanced" tool for someone whoneedsmore than Arduino can do. You start with basics (Arduino),thenproceed further. Before you run - you learn how to walk.

author: cdev
author_rank: Super Contributor
timestamp: November 20, 2017, 07:26:37 pm
content: Research over the past few decades has revealed that the brain is plastic and never stops growing. Old dogscanlearn new tricks. It helps if we improve the permeability of cell membranes and the mitochondria.https://www.ncbi.nlm.nih.gov/pubmed/26481404

author: Mr. Scram
author_rank: Super Contributor
timestamp: November 20, 2017, 07:33:11 pm
content: Quote from: 001 on November 20, 2017, 03:33:09 pmArduino can be a black box, but it's up to you to unbox it. Find a datasheet, pick up a multimeter and see how the ISP header is connected to the chip. Now you can build your own circuit and program an AVR chip via ISP. After figuring out just a few basic things, you can build your own Arduino board. Another route would be to look at libraries and the stuff the Arduino IDE adds to your programs. You don't have to mess with them if you don't want to, but you can and will learn a lot.Some people are happy with the black box Arduino presents, but it's easy to dive deeper and deeper without really having to suddenly dive into the deep end.

author: Mr. Scram
author_rank: Super Contributor
timestamp: November 20, 2017, 07:35:28 pm
content: Quote from: 001 on November 20, 2017, 06:31:39 pmYes, if you're coming from the strictly analogue side of things, you'll need to learn a new way of "thinking". It's great fun to learn, though, and opens up a huge landscape of possibilities if you do.

author: ogden
author_rank: Super Contributor
timestamp: November 20, 2017, 07:36:26 pm
content: Quote from: 001 on November 20, 2017, 06:31:39 pmI had the same feeling when I "discovered" microcontrollers. Thou it was after I got familiar with computers (mainframes at that time) and C programming language. To succeed in modern embedded electronics you need both - understanding of microcontrollers (fluently reading/understanding datasheets/manuals) and knowC language. Apart from electronics as such. Definitely skip assembly if you even consider that. In case you ask about C++ - it's ok, but only when you see that C is too limited for you.

author: 001
author_rank: Super Contributor
timestamp: November 20, 2017, 08:21:51 pm
content: ?? C++? C#?

author: A Hellene
author_rank: Frequent Contributor
timestamp: November 20, 2017, 08:24:07 pm
content: Quote from: 001 on November 20, 2017, 03:33:09 pmI would recommend what exactly abraxa suggested, above: Begin with basics and go all the way up; the only way to master any subject matter! And, all you have to fear is fear itself...For example, try to teach someone, starting with Infinitesimal Calculus and Functional Analysis, and look where it will lead to: Nowhere! Starting with them, however, with the natural numbers and the four basic arithmetic operations you can lead them wherever you wish to. So, for beginning from the basics, you wll have to deal with logic gates and boolean algebra; then, you will realise that these are the building blocks of even the most complex digital microcontrollers.The best possible microcontroller unit to begin with is, in my opinion, the Atmel (now Microchip)AVR ATMega328Pbecause there are countless open (public) projects based on it; it is one of the most powerfull 8-bit ones (see theAVR vs. PIC comparisonora sample of what this little chip can do ALONE!) and one of the easiest one to understand because its instruction-set is very easy to learn, quite comprehensive and its architecture helps in fast execution. Read extensively its data sheet, theAVR Instruction Set Manualand all the assosiated application notes. Then, try to talk to its hardware directly, by learning its assembly language with the aid of the (free but bloated) Atmel Studio and its simulator, because the assembly language is the more efficient way to comprehend what's exactly happening within the chip; then you can choose to move to C language (even though some timing intensive tasks might be needed to be written in assembly, too, even there, in C!). And the best way to learn is to read programs written by other developers. There also is the famous AVR Freaks community to be answering any kind of questions you might ask.The next step would be the even more advanced and powerfull 8-bit AVR XMega family or the 32-bit world of microcontrollers, with the ARM Cortex-M family being my personal recommendation.-George

author: ogden
author_rank: Super Contributor
timestamp: November 20, 2017, 08:37:15 pm
content: Quote from: 001 on November 20, 2017, 08:21:51 pmNot C++ or for gods sake C#. Just plain C. Arduino is based on C. Start with easy to replicate projects and you will become used to C programming language. Sorry, you cannot build modern electronics w/o learning how to code it.http://www.dummies.com/store/product/C-For-Dummies-2nd-Edition.productCd-0764570684.htmlObviously there's ton of more books... and google too.

author: Mr. Scram
author_rank: Super Contributor
timestamp: November 20, 2017, 08:47:40 pm
content: Quote from: ogden on November 20, 2017, 08:37:15 pmBesides, if you understand the basics of one language, you pretty much know the basics of all the languages. The exact syntax, or words used, may change, but the mechanism is the same in almost all of the higher languages. Just like in electronics, there are basic building blocks that get used everywhere. As soon as you understand the concept behind them, learning them in any language is fairly trivial.

author: hermit
author_rank: Frequent Contributor
timestamp: November 20, 2017, 09:04:24 pm
content: Some great advice given above. I read a study once that said memory loss as you age is probably a misnomer. You care less about the details and more about the 'big picture'. That may be where your problem lies. If I want or need to learn something I generally can but getting into the details requires a strong desire of both need and want.I like this page and I think it might help as a starting point. It shows you how to breadboard the basic Aruduino chip and then program it.https://www.arduino.cc/en/Main/StandaloneInstead of the breakout board I used something like this instead:https://www.ebay.com/itm/New-USB-To-TTL-PL2303HX-Serial-Cable-Converter-Adapter-Module-For-arduino-US-/172748865422The Arduino forum is pretty active and a good place to slog through some of the basics with other beginners.

author: Gyro
author_rank: Super Contributor
timestamp: November 20, 2017, 09:13:43 pm
content: QuoteAny of us can sit in the beginners class in a new subject. The only difference is that some of us have more nose and ear hair and find the seats a bit tighter.

author: bson
author_rank: Unknown
timestamp: November 20, 2017, 09:17:11 pm
content: You're never too old to learn, that's just a myth!

author: Mjolinor
author_rank: Frequent Contributor
timestamp: November 20, 2017, 09:18:45 pm
content: Quote from: hermit on November 20, 2017, 09:04:24 pmWell as a fact I can tell you that 10 years ago at 54 years old I could hold 27 moves in a 9x9 sudoku in my head. I could hold a full 6x6 Sudoku without writing anything down for any 6x6. I can now only hold around 17 for a 9x9 and cannot hold all 6X6 though I can do most of them.I don't give a rats ass what research says. I know my brain does not work as well as it did ten years ago. Above is just an example, there are other things I can't do particularly to do with visualisations like vector diagrams / phase shifts etc.

author: Mr. Scram
author_rank: Super Contributor
timestamp: November 20, 2017, 09:24:42 pm
content: Quote from: Mjolinor on November 20, 2017, 09:18:45 pmThat's all true, and science know the brain deteriorates after the age of about 25. You luckily get to compensate that for a long time by experience. However, that doesn't mean you should give up learning new things to being with. Accept it for what it is, then throw yourself at a problem.If it makes you feel any better, a lot of younger people have a memory that's a lot worse.

author: Richard Crowley
author_rank: Super Contributor
timestamp: November 20, 2017, 09:45:34 pm
content: You might want to take a look at the videos on Andreas Spiess' YouTube channel.If you go back and start from the early videos, he makes a nice progression from basic stuff to some pretty nifty IoT projects.Both hardware and software. And using inexpensive parts and gear. Recommended.https://www.youtube.com/channel/UCu7_D0o48KbfhpEohoP7YSQ

author: StillTrying
author_rank: Super Contributor
timestamp: November 20, 2017, 11:06:51 pm
content: I agree an Arduino would be a good cheap start to digital, analogue and programming, and all things being equal, don't worry if you're still totally confused after 2 or 3 weeks because, you'll already have learnt a lot but not realised it yet.

author: bson
author_rank: Unknown
timestamp: November 20, 2017, 11:55:58 pm
content: Quote from: Mjolinor on November 20, 2017, 09:18:45 pmI don't think puzzle solving ability is a particularly good indicator of learning ability. Even if it takes twice as long to learn something it's still only twice as long and isn't much of an obstacle. The major obstacle actually is sitting around complaining how difficult it is - but it wasn't easy at age 20 either, it's just we've forgotten how hard it was then too. The sooner we hop to it, the sooner it's done - and if it's something we gain with age it's the ability to start attacking big problems sooner rather than later, and patiently work them to an acceptable conclusion where many younger give up or shelve it. Apply this persistence to your learning process.

author: cdev
author_rank: Super Contributor
timestamp: November 21, 2017, 12:02:17 am
content: There are physical changes in the brain as people get older, but in some things, people get better as they get older. Some of the deleterious changes are chemical and respond to interventions.I posted a link up a bit higher about acetyl-l-carnitine and the minds of aged beagles.Old dogs can learn new tricks. Part of a long series of research.Also, n-3 fatty acids (DHA, EPA, i.e. fish oil) and many other things, antioxidants like NAC, vitamins C and E, B-complex vitamins, lipoic acid , neurotransmitter precursors like choline, phytonutrients like resveratrol, curcumin, etc. all are good bets for fighting neuroinflammation and preserving or even restoring one's cognitive ability as we age.

author: rhb
author_rank: Super Contributor
timestamp: November 21, 2017, 12:13:06 am
content: @001You have skills the kids don't have. They have skills you don't have. You *can* do anything you want. The only question is how hard you are prepared to work and how many failures you're prepared to endure. The PhD is mostly about learning to accept repeated failures.I heartily agree with the suggestions to get an Arduino. Treat it just as you would any new electronic device. Get the datasheet, study the schematic. Make up a task and try to do it.I'm new to MCUs, but an old hand at computing and programming. I always found computing very easy because long before I ever touched a computer I played with electronics. Not at your level, but enough to understand computers at the level of the wires.Get a cheap Arduino kit and have fun.

author: thermistor-guy
author_rank: Frequent Contributor
timestamp: November 21, 2017, 01:58:08 am
content: Quote from: 001 on November 20, 2017, 03:13:30 pmLearn by doing. Take your simplest project and start there.It's easy to feel overwhelmed by all the stuff you can't do yet and don't understand yet. Don't get overwhelmed. Get started on a project that you want to do. Have a reason - have a *drive* - to try something new.Kids get exposed to so much these days. They grow up with it. I bought my first PC as an adult. My 12y.o. has been using computers since he was 4.Quote from: cdev on November 21, 2017, 12:02:17 amCreatine and Carnitine are neuroprotective, but also promote recovery from physical hard work. Good for muscle tissue and brain tissue (what do they have in common? mitochondria). Everyone over 50 should be on them, unless of course you're a fan of cognitive and physical impairment. Adult athletes of any age should be on them (and are). They work because just about everyone has shortages (unless you're already supplementing).To the original poster: Learn by doing. Get started. Just start.

author: cdev
author_rank: Super Contributor
timestamp: November 21, 2017, 02:27:54 am
content: I agree with you about creatine. Its a good thing to be taking. I wanted to clarify something about Carnitine vs acylcarnitine. - Acetyl-l-carnitine is quite different than plain carnitine.let me see if I can find a good link on it.This will bring up "everything" on pubmed about itToo much..https://www.ncbi.nlm.nih.gov/pubmed/?term=acetyl-l-carnitineI like the series of old dogs new tricks papers on alcar and ALA..I posted the most recent one up above.. there are a bunch of others you will find them on pubmed.Proc. Natl. Acad. Sci. USAVol. 95, pp. 9562–9566, August 1998Medical SciencesAcetyl- L -carnitine fed to old rats partially restores mitochondrial function and ambulatory activityTORY M. HAGEN * † , RUSSELL T. INGERSOLL *, CAROL M. W EHR *, JENS LYKKESFELDT ‡ , VLADIMIR VINARSKY *,JAMES C. BARTHOLOMEW § , M I -HYE SONG *, AND BRUCE N. AMES **Department of Molecular and Cell Biology, University of California, Berkeley, CA 94720; and § Lawrence Berkeley National Laboratory, Berkeley, CA 94720Contributed by Bruce N. Ames, June 3, 1998ABSTRACTMitochondrial function and ambulatory ac-tivity were monitored after feeding old rats acetyl- L -carnitine(ALCAR). Young (3–5 mo) and old (22–28 mo) rats were givena 1.5% (wtyvol) solution of ALCAR in their drinking water for1 mo, were sacrificed, and their liver parenchymal cells wereisolated. ALCAR supplementation significantly reverses theage-associated decline of mitochondrial membrane potential,as assessed by rhodamine 123 staining. Cardiolipin, whichdeclines significantly with age, is also restored. ALCARincreases cellular oxygen consumption, which declines withage, to the level of young rats. However, the oxidant productionper oxygen consumed, as measured by 2*,7*-dichlorof luores-cin f luorescence levels, is '30% higher than in untreated oldrats. Cellular glutathione and ascorbate levels were nearly30% and 50% lower, respectively, in cells from ALCAR-supplemented old rats than in untreated old rats, furtherindicating that ALCAR supplementation might increase oxi-dative stress. Ambulatory activity in young and old rats wasquantified as a general measure of metabolic activity. Ambu-latory activity, defined as mean total distance traveled, in oldrats is almost 3-fold lower than in young animals. ALCARsupplementation increases ambulatory activity significantlyin both young and old rats, with the increase being larger inold rats. Thus, ALCAR supplementation to old rats markedlyreverses the age-associated decline in many indices of mito-chondrial function and general metabolic activity, but mayincrease oxidative stress.So it should be combined with antioxidants like NAC or ALA. (Lipoic acid or its old name is "thioctic acid" Both are thiols.. they contain sulfur)IMHO NAC is preferable.Deficient synthesis of glutathione underlies oxidative stress in aging and can be corrected by dietary cysteine and glycine supplementationhttp://ajcn.nutrition.org/content/94/3/847.fullGlycine will also improve the quality of your sleep.

author: Mr. Scram
author_rank: Super Contributor
timestamp: November 21, 2017, 02:33:28 am
content: How do you guys feel about regularly quitting creatine to prevent dependence versus just keeping at it?

author: Alex Eisenhut
author_rank: Super Contributor
timestamp: November 21, 2017, 02:46:07 am
content: I feel like I'm listening to an episode of Joe Rogan with Dr Rhonda Patrick as a guest.

author: xrunner
author_rank: Super Contributor
timestamp: November 21, 2017, 02:57:59 am
content: Quote from: 001 on November 20, 2017, 03:13:30 pmYep.QuoteGet a new device and play with it. Really. Get an Arduino like others have said and set it down in front of you. You'll look at it and say "WTF do I do now?"You go to a basic tutorial and try the simplest thing first. Read the instructions and try it. You will succeed. Then you will gain confidence. Try the next experiment. One after the other. Young people can do it faster but you can do it at your own pace. Take your time and before you know it you will understand. Keep going from there.You WILL be able to do it!

author: retrolefty
author_rank: Super Contributor
timestamp: November 21, 2017, 03:29:36 am
content: Quote from: ogden on November 20, 2017, 08:37:15 pmActually the Arduino compiler used is the open source gcc C++ compiler.

author: thermistor-guy
author_rank: Frequent Contributor
timestamp: November 21, 2017, 04:01:14 am
content: Quote from: cdev on November 21, 2017, 02:27:54 amI seem to recall (can't find the link) that your body can convert one form of carnitine into other forms. So I prefer to take ALCAR. In principle you could take both.Quote from: Mr. Scram on November 21, 2017, 02:33:28 am.My understanding is that there is no need to cycle Creatine, as there is no dependence mechanism. IIRC, the way dependence works is that high levels of an active substance (e.g. insulin, dopamine) cause its receptors to get down-regulated. So you need to take more and more of the substance to activate fewer, less active receptors. Definitely applies to insulin, hence sugar addiction. Doesn't apply to Creatine, as far as I know.In the case of Creatine, I take 3-5g just after a hard gym workout or aerobics session, along with ALCAR, choline, and whey protein concentrate. Your body is primed to absorb these immediately after workouts. There's a field called recovery nutrition that deals with this. But I've designed my supplement stack so that it has neuroprotective properties as well. A two-fer.We're straying off-topic I guess, but in a way we're not. "Use it or lose it" applies to cognitive and to physical performance. Stay active, physically and mentally. Keep learning, whether that's electronics or olympic lifting (just started).

author: cdev
author_rank: Super Contributor
timestamp: November 21, 2017, 04:06:54 am
content: Whey is the 2nd best source of cysteine besides NAC. So:very good for your redox status.

author: ogden
author_rank: Super Contributor
timestamp: November 21, 2017, 06:38:10 am
content: Quote from: retrolefty on November 21, 2017, 03:29:36 amIndeed. GCC C++ is obvious choice when you are looking for free C compiler and it is very good at compiling C code. One of the best actually. Note that C is subset of C++ (in general).

author: Fungus
author_rank: Super Contributor
timestamp: November 21, 2017, 07:25:27 am
content: Quote from: hexreader on November 20, 2017, 03:28:26 pm"EasyPIC" is a bit of an oxymoron.Quote from: ogden on November 20, 2017, 08:37:15 pmReally? So when I type "Serial.print(x)" or "SPI.begin()", that's C, is it?Quote from: StillTrying on November 20, 2017, 11:06:51 pmYep, and it's far from a "Black Box". An Arduino is just an AVR chip on a breakout board, no mystery there.Quote from: rstofer on November 20, 2017, 04:30:56 pmAnd ... they only show their successes on Youtube, not the failures. You also don't get to mess with the device in person and find all places where it doesn't work so well.

author: Fungus
author_rank: Super Contributor
timestamp: November 21, 2017, 07:29:31 am
content: Quote from: Mr. Scram on November 20, 2017, 08:47:40 pmKnowing the syntax doesn't make you proficient. Each language has a set of features you should use, features you should avoid, coding styles that work better than others, etc.People who think they can code one language using another language's compiler are the source of most of the awful code out there.

author: Mjolinor
author_rank: Frequent Contributor
timestamp: November 21, 2017, 07:40:49 am
content: There is no need to go Arduino or anything else. Just install a C compiler and write some programmes to do stuff.No amount of fancy hardware will get you away from the fact that you need to learn to write software for it, that software is exactly the same on your PC as it is on a million different micros that are available. Buying an Arduino and learning how to power it and learning how to programme it is a lot of steps before you see any results at all. If you write some "hello world" programmes just to run on your PC you are half way there and you will be able to then take the next step by getting some dedicated hardware without getting bogged down in too much at once.

author: Fungus
author_rank: Super Contributor
timestamp: November 21, 2017, 08:08:00 am
content: Quote from: Mjolinor on November 21, 2017, 07:40:49 amI'm fairly sure that "install a C compiler" isn't easier than installing the Arduino IDE.Quote from: Mjolinor on November 21, 2017, 07:40:49 ama) Connect USB cable.b) Upload "Blink"

author: 001
author_rank: Super Contributor
timestamp: November 21, 2017, 10:13:26 am
content: Sorry for stupid question. Well, i'm going to study some arduinos. What "brick" to learn first? I want use my c2d notebook with serial port onboard for this purpose only. And what more suitable for atmel - windows or some linux? I see holywar at kids forums.

author: Mjolinor
author_rank: Frequent Contributor
timestamp: November 21, 2017, 10:47:38 am
content: Quote from: 001 on November 21, 2017, 10:13:26 amThis is why I suggested starting with C only. It is a necessary brick and is probably better being the first brick you address.If you go to Arduino first then you are learning two things at once, if it works that is all fine and good but if you struggle with something your path to finding the problem is at least twice as difficult because you do not know if you are looking at a programming problem or some hardware problem.If I were starting then first step would be an Ubuntu computer and learn C. There are a lot of things you can do after the first "hello world", parse some text files and extract all the X characters for example or count the words, rearrange the words to be alphabetical. You can learn so much that you will need without having to go to external devices and adding another level of complexity.

author: woody
author_rank: Frequent Contributor
timestamp: November 21, 2017, 11:05:46 am
content: Starting with C on a PC has the disadvantage that it remains pretty abstract. There is no substitution (IMO) for a led that does nothing at first and then starts to blink because you made it blink by entering a couple of lines of code. Far more rewarding than yet another palindrome detector written in C.And yes, there are a couple of hurdles to take before you get this led to blink but with all those integrated IDE's and howtos available that seems not a real problem. And if you want to start out in (programmable) electronics, you'll have to take those anyway.

author: tszaboo
author_rank: Super Contributor
timestamp: November 21, 2017, 11:26:44 am
content: Quote from: ogden on November 20, 2017, 08:37:15 pmSerial.print("Hello world.") <- Does this look like C to you, or C++?

author: mjkuwp
author_rank: Unknown
timestamp: November 21, 2017, 11:37:54 am
content: Another Vote for Arduino, specifically UNO or a variant of that. However more important than that board is to choose a project : )slightly off topic but the Arduino libraries are written in C++. Interestingly one doesn't need to know C++ to use the Arduino assuming you read the reference information. When searching for help you are most likely going to want C programming references if you are new to programming.https://www.arduino.cc/reference/en/

author: Fungus
author_rank: Super Contributor
timestamp: November 21, 2017, 12:14:27 pm
content: Quote from: 001 on November 21, 2017, 10:13:26 amArduinos tend to be USB, not serial port. Therearesome serial-only Arduinos (eg. Pro mini) but your serial port won't be able to power them without a +5V line.If it's just for Arduino then the OS doesn't really matter. The official IDE is written in Java and runs the same.

author: Fungus
author_rank: Super Contributor
timestamp: November 21, 2017, 12:16:08 pm
content: Quote from: Mjolinor on November 21, 2017, 10:47:38 amYeah, learning string manipulation is C is sooooo much more fun than (eg.) connecting up 8 LEDs and trying to get them to flash in sequence.Not.

author: Fungus
author_rank: Super Contributor
timestamp: November 21, 2017, 12:17:24 pm
content: Quote from: mjkuwp on November 21, 2017, 11:37:54 amBut it helps.Especially the bit about classes.

author: Howardlong
author_rank: Super Contributor
timestamp: November 21, 2017, 12:34:39 pm
content: Quote from: mjkuwp on November 21, 2017, 11:37:54 amI agree Arduino is the least path of resistance.While Arduino is indeed C++, it's more C with classes than the purist's form of C++, making it far more approachable for a non-computer scientist IMHO. It also makes it reasonably easy to port the plethora of Arduino peripheral libraries to C for bare metal applications ;-)

author: 001
author_rank: Super Contributor
timestamp: November 21, 2017, 01:37:40 pm
content: So many opinionsThanxBut what is the way to learn atmel ICsCOMPLEX?- instal CVAVR- make 5-wire programmator- clone some simplest project- modify firmware- write my own firmwareis it ok?

author: NivagSwerdna
author_rank: Super Contributor
timestamp: November 21, 2017, 01:50:59 pm
content: IMHO Proper AVR development is something you should defer... the tools are a relative PIA compared to some other devices.If you want to blink LEDs, drive a few motors, read a few sensors the Arduino UNO clone of China fits the bill nicely. No debug but the Arduino IDE is perfectly useable.However, if you want to do something a bit more involved... ESP8266, NodeMCU etc allow you to get connected... internet door bell, garage opener etcIf you want to do cameras, video etc then RPi?What is you intention? Are you doing this for fun or profit/employment? If for fun then you need to find a fun project... if for employment... not sure..

author: 001
author_rank: Super Contributor
timestamp: November 21, 2017, 01:56:53 pm
content: See first postI`m sertified electrician and makeelectronixfor fun. It is way to have my brains live.First of my interest is COM port usage, ADC readings and indication with 7-segment or 1602 display

author: Fungus
author_rank: Super Contributor
timestamp: November 21, 2017, 02:52:24 pm
content: Quote from: NivagSwerdna on November 21, 2017, 01:50:59 pmYep. Forget bare chips for a while.Quote from: 001 on November 21, 2017, 01:56:53 pmWhat do you want COM ports for? The Arduino Uno shares COM for uploading sketches so you have to be careful. Arduino Leonardo has two COM ports, Arduino Mega has four of them.

author: ogden
author_rank: Super Contributor
timestamp: November 21, 2017, 04:05:37 pm
content: Quote from: Fungus on November 21, 2017, 02:52:24 pmRight. You shall start with easy lessons first. When you outgrow Arduino -thenmove to advanced class. As bare metal choice I would suggest to skip all the AVRs and PICs but go straight into ARM microcontrollers camp. Maybe using some intermediate step through mbed.org, or maybe not.Quote from: Fungus on November 21, 2017, 02:52:24 pmYet it is still possible to read ADC data through COM port, right?Quote from: Howardlong on November 21, 2017, 12:34:39 pmThank you for explaining. Somehow missed that "C with classes" part completely. I am advising Arduino for beginners w/o actually using it myself - because when I startedembeddedbare metal programming, there was no Arduino. Had to learn it hard way - using pure C and DEC PDP-11.

author: Fungus
author_rank: Super Contributor
timestamp: November 21, 2017, 05:18:21 pm
content: Quote from: ogden on November 21, 2017, 04:05:37 pmThe COM port goes over USB to the PC so there's no problem at all sending data to the PC (eg. ADC).The problem comes when you want to connect an Uno to another RS232 device using the hardware UART. The pins are shared with the PC interface so sketch uploading will fail unless you disable the other device when the Arduino is in a reset state.

author: 001
author_rank: Super Contributor
timestamp: November 21, 2017, 05:28:06 pm
content: Quote from: Fungus on November 21, 2017, 05:18:21 pmThis is my main target

author: Fungus
author_rank: Super Contributor
timestamp: November 21, 2017, 06:08:19 pm
content: Quote from: 001 on November 21, 2017, 05:28:06 pmOptions:a) Use SoftwareSerial and any two other pins (not good for high speed transfers)b) Get an Arduino with more UARTs, eg. a Leonardo or a Mega.

author: ogden
author_rank: Super Contributor
timestamp: November 21, 2017, 06:28:21 pm
content: Quote from: 001 on November 21, 2017, 01:37:40 pmIndeed it is ok. After all many of us did this. Why you need to learn hard way?Actually you can try it all. For cheap. Ebay prices: USBASP (AVR programmer) ~3$, 830-point breadboard + jumper cables ~4$, Arduino UNO (just board, not kit) ~4$. STM32f103 board ~2.1$, ST-Link STM32 programmer ~2.6$

author: rstofer
author_rank: Super Contributor
timestamp: November 21, 2017, 06:56:37 pm
content: The point of most recommendations re: Arduino is that you have to start somewhere. Since everything that can be done with an Arduino has already been done and is documented on the Internet, you have plenty of help both in terms of hardware and programming. Don't dismiss this lightly!Yes, I started on bare iron, the Arduino didn't come along for 40 years or so. If I need something done 'right now', I reach for an Arduino UNO. If I want it to run FAST or I need more hardware features, I grab something else. The original mbed is my #2 choice followed by various LPC2xxx ARM chips. If I have to, I'll use STM32F chips but I'm not proficient.If I were a little more confident of the learning curve, I would join forum user Danadak in recommending the Cypress PSOCs. The programming infrastructure is magnificent. You basically drag and drop gadgets on a sketch and then generate the program. The IDE creates all of the required code to use the devices and they even create main.c. Your job is to flesh out the details but you don't need to worry about the underlying peripheral code. It is already done - you just use the predefined functions and macros. Documentation is outstanding. Cypress has done a terrific job with this product line.I like the PSOC 4s a lot and there are quite a few videos - search for 'psoc video'.Alas, that is probably a step too far at this point. The Arduino is the way to start.

author: cdev
author_rank: Super Contributor
timestamp: November 21, 2017, 09:25:25 pm
content: You can run arduino code on an stm32 board and in the case of the bluepill board its both cheaper and more powerful. See stm32duino.com

author: m98
author_rank: Frequent Contributor
timestamp: November 21, 2017, 09:54:46 pm
content: Maybe you've already seen that page, but if you want to get into Arduino development fast and easy, I'd recommend the following overview page:https://www.arduino.cc/en/Tutorial/FoundationsFeel like going a bit more bare-metal?https://startingelectronics.org/tutorials/AVR-8-microcontrollers/starting-AVR-development/But don't worry, it's not your age that makes it seem complicated. Right now I'm trying to get into FPGA development, I feel just the same way that I've felt when first beginning to program. And getting LEDs to blink got exciting again.

author: jmarkwolf
author_rank: Regular Contributor
timestamp: November 22, 2017, 03:00:22 pm
content: Quote from: NivagSwerdna on November 20, 2017, 04:25:58 pmWell said, and very true.

author: Mr. Scram
author_rank: Super Contributor
timestamp: November 23, 2017, 02:00:29 am
content: Quote from: NivagSwerdna on November 21, 2017, 01:50:59 pmFor the love of dog, unless you know exactly what you're doing, do NOT network things! Securing things properly is far from trivial, catches even the big boys out and can cause lots of mayhem. A botched together garage door opener. What could go wrong?

author: hermit
author_rank: Frequent Contributor
timestamp: November 23, 2017, 04:07:42 am
content: @001. You get talked out of or into this yet?Is the Arduino underpowered and quirky? Yeah. Is it a stupid simple way to start? Yeah. Knowledge transferable? Yeah? Inexpensive to get started? Yeah. I'm sure I'm not the only one that delays way too long trying to make a perfect choice? Just so little downside to starting with the Arduino though.

author: Mr. Scram
author_rank: Super Contributor
timestamp: November 23, 2017, 04:14:08 am
content: Quote from: hermit on November 23, 2017, 04:07:42 amCan you please point me to an accessible microcontroller family that isn't quirky?

author: woody
author_rank: Frequent Contributor
timestamp: November 23, 2017, 08:49:22 am
content: Quote from: Mr. Scram on November 23, 2017, 02:00:29 amI could not agree more. Please put the effort in creating thingamajigs that do what they should do flawlessly. If you have time left, get the bugs out. If you still have time left see if you can minimize the power use of the widget. But don't connect it to a network unless absolutely necessary

author: Fungus
author_rank: Super Contributor
timestamp: November 23, 2017, 08:58:22 am
content: Quote from: Mr. Scram on November 23, 2017, 04:14:08 amOr 'underpowered'.I don't get all the people who dismiss AVR chips because they only run at 16MHz and aren't 32 bits. Most of them usually just write blink level programs anyway.Plus: All those ARM chips run at 3.3V and have trouble lighting up an LED from one of their pins. They also die at the drop of a hat, AVR chips are almost indestructible compared to those things.

author: Mr. Scram
author_rank: Super Contributor
timestamp: November 23, 2017, 09:24:01 am
content: Quote from: Fungus on November 23, 2017, 08:58:22 amYes, you can do quite a lot before running into the 8 bit limit. Better yet, you'll have a better understanding of the capabilities of both 8 and 32 bit chips because of this experience.In most cases, running into a limit indicates you need to sharped your skills, rather than it being a technological limit. That will happen on 32 bit chips too.

author: 001
author_rank: Super Contributor
timestamp: November 23, 2017, 11:25:48 am
content: Awesome posts!Thanx!I`m going with C&AVR

author: hermit
author_rank: Frequent Contributor
timestamp: November 23, 2017, 03:11:19 pm
content: Quote from: Fungus on November 23, 2017, 08:58:22 amI was just being a bit tongue and cheek. The purpose of the post was just to see if the OP had made a decision. But yeah, the 328 is overkill for a few things I have in mind.

author: rstofer
author_rank: Super Contributor
timestamp: November 23, 2017, 03:44:23 pm
content: Ten or twelve years back, I rather enjoyed working with the ATmega128. It's a 64 pin package so it has a ton of IO, the C compiler is full featured (as opposed to what was available for the PIC 16Fxxx) and programming the device with AVRdude was easy to incorporate right into the makefiles.The ATmega128 is still my favorite 8 bit chip.But the original question for this thread was where to start and I took that to mean absolutely zero experience in the arena. The only correct answer today is Arduino because everything is handed to the user on a plate. For the ATMega128, I had to write every single line of code. If I wanted to use a peripheral, I had to do all the User Manual research, set up all the registers and do all the debugging. There was no application library.Still is was doable. It helped that I had been working with uCs since '75, the earliest days of the 8080, Z80 and 8085. I understood what I was reading. I'm not so sure how it would have worked out if I were starting cold. Or, maybe I do!I transitioned to the ARM 7TDMI and started cold. It took a while to get up to speed with the startup code. In that version of the ARM core, the startup code is written in assembly language and it takes a few hours to get the hang of it. And more reading of the User Manual. If I were to start fresh with the ARM processors, the original mbed (LPC1768) and the online toolchain/library would be my platform of choice. Again, much of the peripheral code is provided. Networking (lwIP) is provided. There is still plenty to write but there is a base set of library code and a lot of documentation.I would think that building a project with a bare iron AVR would be many times more difficult than doing it with an Arduino. MANY times more difficult.

author: ogden
author_rank: Super Contributor
timestamp: November 24, 2017, 12:02:08 am
content: Quote from: Fungus on November 23, 2017, 08:58:22 amThere's point indeed. Unless all your projects are led blink - you can run out of AVR (architecture) performance or peripheral capabilities. On the other hand there always will be ARM microcontroller powerful enough for the task, or you need FPGA + ARMWhen you learn ARM - you basically are covered from small cheap low pin count chips up-to big performers. All this with single set of knowledge and tools. Why bother to learn first AVR, then msp430, then DsPIC, then TMS320 and their tools when you can just learn ARM and that's it? Only argument _for_ AVR and Arduino (maybe msp430 too) - steeper learning curve and vast amount of information on internet.

author: Mr. Scram
author_rank: Super Contributor
timestamp: November 24, 2017, 08:53:53 am
content: Quote from: ogden on November 24, 2017, 12:02:08 amThere are plenty of things that are totally undoable on the kind of ARM chips we're talking about. ARM isn't a magic bullet, nor are FPGAs. Why not go x86 right away and forget all these anemic chips?Why start with AVR? Because it's plenty enough for a lot of tasks, it's easy to work close to metal whereas ARM can be very confusing, you'll learn good practices because it's easier to see why, it's cheap to get started and and there is a huge amount of good information available. Why confuse yourself when it's not neccessary?Besides, if you really think AVR is only good for blinking a LED, that shows why you desperately need some experience with the platformYou'll end up being a better developer.

author: 001
author_rank: Super Contributor
timestamp: November 24, 2017, 09:29:46 am
content: Is it some sort of holywar here?

author: Mr. Scram
author_rank: Super Contributor
timestamp: November 24, 2017, 09:34:37 am
content: Quote from: 001 on November 24, 2017, 09:29:46 amYeah, the ARM versus AVR discussion is a common one. Though I couldn't care less, I use both regularly, so I'm just having a bit of fun.

author: Fungus
author_rank: Super Contributor
timestamp: November 24, 2017, 12:09:27 pm
content: Quote from: 001 on November 24, 2017, 09:29:46 amYes.Some people like to carry a cup of water around in a huge bucket because it looks more important.(Or something like that. You'll have to ask them...)Me: 16MHz is plenty and 5V@20mA on the pins is useful in all sorts of ways.

author: ogden
author_rank: Super Contributor
timestamp: November 24, 2017, 01:12:03 pm
content: Quote from: Mr. Scram on November 24, 2017, 08:53:53 amName those plenty of things which are undoable with ARM MCU yet possible with AVRQuoteYou mean Intel Quark? It is not 80186 you are talking about, right?QuoteSure we agree here. You basically repeat myself where I say that AVR is good for learningQuoteDon't put words in my mouth. I just say that by learning ARM you have your hobbyist needs for MCU mostly covered and you can put your efforts into your builds, not into learning new MCU architecture & tools each time you build something more complex than before. On the other hand if your aim is learning and beingbetter developer(basically coder) - then learn it all for gods sake. Just note that electronics is much more than MCU coding.p.s. Just having fun as well.

author: Mr. Scram
author_rank: Super Contributor
timestamp: November 24, 2017, 01:15:04 pm
content: Quote from: ogden on November 24, 2017, 01:12:03 pmCan you name the things undoable with x86, yet possible with ARM? Go big or go home!

author: coppice
author_rank: Super Contributor
timestamp: November 24, 2017, 01:19:32 pm
content: Quote from: Mr. Scram on November 24, 2017, 01:15:04 pmRun for a long time from a small cell?

author: ogden
author_rank: Super Contributor
timestamp: November 24, 2017, 01:43:18 pm
content: Quote from: Mr. Scram on November 24, 2017, 01:15:04 pmI did not bring "things undoable" to the table, not to mention x86. So we can conclude that you gave up answering my question?

author: Mr. Scram
author_rank: Super Contributor
timestamp: November 24, 2017, 01:49:19 pm
content: Quote from: coppice on November 24, 2017, 01:19:32 pmx86 can be remarkably efficient.

author: Mr. Scram
author_rank: Super Contributor
timestamp: November 24, 2017, 01:52:21 pm
content: Quote from: ogden on November 24, 2017, 01:43:18 pmNo, you've just shown that the argument for your platform can also be used against it. I was never talking about that AVR could do plenty of things ARM can't, I was talking about how x86 can do that

author: ogden
author_rank: Super Contributor
timestamp: November 24, 2017, 02:08:53 pm
content: Quote from: Mr. Scram on November 24, 2017, 01:52:21 pmYou can always find more powerful tool/chip/whatever. Not even worth of discussionI hoped that you will come-up with 5V supply and 20mA i/o capability of AVR, so I can remind that ARM uC can do the same in form of ATSAM20/21

author: Mr. Scram
author_rank: Super Contributor
timestamp: November 24, 2017, 02:11:03 pm
content: "You can always find more powerful tool/chip/whatever."Why use AVR? You just explained it.

author: ogden
author_rank: Super Contributor
timestamp: November 24, 2017, 02:19:13 pm
content: Quote from: Mr. Scram on November 24, 2017, 02:11:03 pmNah. You shall use 4-bit microcontrollers as well - for builds where AVR is too powerful.

author: Mr. Scram
author_rank: Super Contributor
timestamp: November 24, 2017, 02:24:58 pm
content: Quote from: ogden on November 24, 2017, 02:19:13 pmYes, because there is an easily available and well supported 4 bit platform which is accessible to anyone.

author: A Hellene
author_rank: Frequent Contributor
timestamp: November 24, 2017, 05:55:22 pm
content: Quote from: 001 on November 24, 2017, 09:29:46 amCome on guys, with themy-CPU-is-fastermentality!Please, stop frightening the OP...Dear001, the following are some of the 8-bit AVRATTiny85andATMega328Pchips capabilities; when someone will need anything faster for a much more demanding project they could just move on to the 32-bit ARM counterparts:Frommy post on AVRFreaks.net in December 29, 2015:This is the measurement of the DDS modulated digital output (Ch 3) startup time since the PTT button (Ch 2) falling edge, while the generated 67.0 Hz sub-tone output sinewave (Ch 1) can be seen, of the ATtiny85 based CTCSS encoder/decoder I am working on.Frommy post at EEVBlog.com on September 25, 2017:Voltage doubler lead-acid batteries desulfator; mind that it is only a preliminary350 Ampere prototype...But, nowadays, I think that I can very well understand why we certainly need an Intel i5 CPU with 2GB DDR3 RAM in order to just blink an LED:Quote from: A Hellene on November 16, 2011, 09:36:57 pm-George

author: ogden
author_rank: Super Contributor
timestamp: November 24, 2017, 07:19:10 pm
content: Quote from: A Hellene on November 24, 2017, 05:55:22 pmWe are just having fun. For example my recent weekend quickbuild was based on msp430f2013. Lovely, breadboardable PGA-enabled 16-bit SD ADC with uC on-boardI have nothing against 8/16 bit uC if some1 for some strange reason though so.

author: Fungus
author_rank: Super Contributor
timestamp: November 25, 2017, 11:40:59 am
content: Quote from: ogden on November 24, 2017, 02:08:53 pmI considered it.Quote from: ogden on November 24, 2017, 02:08:53 pmYeah but nobody's using those. They're all using the cheapo STM things off eBay.

author: IanJ
author_rank: Unknown
timestamp: November 25, 2017, 12:45:36 pm
content: My vote is for Arduino........lotsa scope to do things outside of the 'black box'......in fact it allows you to concentrate on the external hardware and get straight to coding productively and without getting stuck in huge bloated dev systems that require lots of time and effort in themselves if you are coming from scratch.Example:Anyone mention Contextual Electronics........that might be another avenue to learn.https://contextualelectronics.com/course-types/Ian.