You don't need to buy a dedicated ISP programmer, you can use an Arduino Uno (or any other Arduino type) as an ISP programmer. Just load a sketch named "ArduinoISP" from "File" -> "Examples", connect your wires as described in the sketch and you can program an Atmega chip. It is also possible to burn Arduino bootloader, or even omit the bootloader and burn your sketches directly to the Atmega microcontroller. This gives you the full program space of the chip, because the bootloader does not take any memory.
Awesome video as always! The whole setup of these videos are excellent with showing packages, showing features and ideas you have for the product, then showing the price and where you bought it from. It's all awesome! :) Looking forward to the Arduino tutorials in the future when you get it all working as you want :) Keep up the good work!
The 10 pin ISP header is actually the standard for ISP and used on most professional atmel development boards. 6 pin is simply the compact variant. Oh. Most of the ebay USBASP boards have the original firmware on them which does have a genuine bug in it which allows them to program some chips reliably still while throwing AVR dude errors (and completely fail on some programs). You simply need to upgrade the firmware version on them which is usually done by closing a jumper and then ISP programming them over their existing ISP connector, had to throw mine on the university stk600 boards.
Now in 2017 you can buy 'em on AliExpress for just over £2! Great Christmas pressies for all the family and when they throw them back at you then you've got loads to play with. Happy Arduino days!
Julian, I want to thank you for making such informative videos. I was having issues getting the USBtinyISP, but this video helped me to get my program loaded.
Your post man must love you! I built a circuit to light a series of 16 lights. A display for my son. I priced up using a "boarduino". A nano pro mini worked out much cheaper. I see the point if building a project that requires custom board or a commercial product. But for permanent home projects, the nano pro mini wins out for me.
Hi Julian, thumbs up on the tutorials for Arduino programming, loading the bootloader... I just picked up some Uno's and I'm interested in learning how to get started... Also, from the previous postbag, Texas Instruments makes some smart charging chips for USB to negotiate the proper charge current. Have a look at their datasheets to learn more. I suspect your USB wattmeter utilizes or implements a similar function. Cheers and Happy New Year!
I have been picking up some of your post bag items from the same sellers so I can try some of these neat tricks at home... Thanks for the seller info too, and cant wait to see the tutorials on programming the chips!
... I just so happen to frequent her on eBay, she/they have always delivered no issues and quickly too. Just coincidentally we had the same items coming in at the exact same time...
Hi Julian. Eric Williams just uploaded a postbag covering "electric imps" thought you might be interested. They are similar to the WiFi enabled "yun killer" from your last postbag. Love the videos, excited to learn how to burn bootloaders at last!
Julian, you need some load-capacitors on that xtal for it to work correctly. You may be getting away without using the breadboard, as the capacitive loading of the contacts may be enough, but if you make it a "real" board, it will not work correctly. The size of the capacitors is stated on the datasheet for your xtal. If you do not have that (obviously not) - 22pF is a good value.
If he wants to do an bog-standard arduino, he needs the 22 pFs and the 16Mhz crystal, or 8Mhz if running at less than 3.8v. Otherwise you can use an the internal clock (8Mhz again) and forgo the crystal and load caps.
Can't get over the incredible price of that Arduino!! I thought I was doing well last year when I backed the "$9 Arduino" Kickstarter! :) Might have to score some for my Maker School kids.
Great Video as always and cant wait to see the next ones. I still stick with my clone pro minis @ $4 shipped. They also have a raw power pin on them which saves money.
+Ross Gardiner was talking about Eric Williams, but I think he meant Eric William watch?v=4CYPhWSZgGQ Ross has disabled replies for his account, so I'm not able to reply to his message.
At around 15:20 you mention you fixed it by upgrading the Arduino IDE but I noticed that on the old ISP you had changed the header around to get the double blink to work I can see later you discussed swapping the header around, but that’s when you talked about the new header I don’t understand why these headers aren’t like, say, the old PC IDE cables where they had a notch meaning you can only plug them in one way.
This was pretty interesting. I also watched how you DIY'd the Uno with a USB to serial, but have you showed us how you did the ISP header? I'd like to see that if possible.
Hi Julian. I am going to ask a really stupid question, as I am new to microcontrollers I hope you'll forgive me, so "Is it possible to change a bootloader once it's been burnt?"
Julian, have you ever found a use for all those cheap Arduinos? I've had one for several years and never found anything for it to do! What about paralleling thousands of them to build a super computer?
Very informative video. Thanks! I also noticed that at 11:45, when you started having problems with USBtinyISP you connected the cable differently to what you are showing at 15:00. So probably, that was the problem, but not the version of IDE?
Certainly with cable the wrong way round, it could never have worked. But the problems with IDE1.5.8 were intermittent. Both the USBtinyISP programmers worked flawlessly with IDE 1.0.6
Julian, i´m also having problems with USBASP and fixed it by adding he missing header for slow sck... and other error messages by uploading sketches manually using avrdude: avrdude.exe -p m8 -c usbasp -C conf.tmp -P usb -U flash:w:"Blink.hex":i "m8" is because im using a atmega8.
Cool video Julian, I use the USBasp for programming ATTinys and i see "cannot set sck period" every time, but I've never had one fail to upload, so I just ignore it. It's disconcerting a first but you get used to it after a bit.
@@JulianIlett yes I just spent 6 hours cleaning up my usbasp to have the latest firmware and deal with setting fuses on my 328Ps as the default communication speed was faster than the processor could deal with in its default settings. Using a VR dude with -B 10 and setting the default fuses did the trick. I did find that I was getting verification errors periodically before the firmware update to usbasp. I also noticed at the beginning that you had put the programmer plug in incorrectly. The red wire on the ribbon cable is pin 1 and pin one is marked on the Uno though not very clearly. Thank you for the video.
Great Video Julian, Out of curiosity given the Arduino limitations are you considering some raspberry pie tutorials or other micro-processor systems for focus upon I think people will agree your video format is comfortable viewing and following as a stand alone or a series of, is easy going look forward to what the future may hold cheers Sean
Hi Julien ! I need your help. In some videos you use that blue pen to adjust voltage and current on boost converters. I'd like to get one of these - how are they called so i can look for this on ebay ?
Julian, Thank you for this Arduino special. Very helpful. Unfortunately the "Micro USB Tiny AVR ISP 5v ATtiny44 USBTinyISP Programmer For Arduino Bootloader" does not ship to the US for some odd reason. Too bad. I guess the UK has better relations with China, or perhaps easier shipping?
looking for cheap arduinos myself but they must be the throughhole version. now i'm lost, i have a project board and all components to build a device, it uses a 328p throughhole chip which is the only component i don't have, i was just going to buy a cheap uno plug in the usb put the program on it then pull the chip put it in my device, this is a one off i dont use arduino so no programmer, but now i dont know if that will work, if the uno needs a bootloader before i can program it i might as well buy the bare chip and a cheap programmer even though i will only use it once.
Hi Julian! I saw you mentioned how cheap the NHduino uno was, but i recently spent 3.69 GBP for an "R3 board" with the atmel MEGA16u2 chip for the usb interface, and with a removable ATMEGA328P chip that looks EXACTLY as an arduino uno R3 (front and back) and is working perfectly! The only issue was that it wouldn't run at all when i first got it, but i shorted 2 ICSP pins togeather and it brought it back to life. Are you intrested? (Free worldwide shiping from China by the way)
+Myke oh gosh I didn't see the notification and I only saw it now that I accidentally loaded the video up again, really sorry :( here it is: m.ebay.com/itm/141679582436?_mwBanner=1
Julian I love your video's we both share the same approach to purchasing electronics used for experimental design purposes . I have tried so hard to share the cost effective and logical thought process with others. My philosophy is find the lowest priced component that produces or excedes the level of accuracy/rating and longevity for it's intended purpose. On a few occasions I have been able increase the level of a components accuracy by tweaking OS software; which may never occurred without the contribution of others. I always buy at least one Official Arduino Board to both support the movement and as a control to test against clones. When I first got into programming MCU's, using the Arduino Platform I got a kit from Makers; it fell far short of my expectations. I immediately saw how there marketing plan was stacked and rigged; so I began to do my homework. Long Story Short there are many excellent sources for high quality imports, unfortunately the amount of bogus suppliers gives the entire lot a reputation so horrible people would rather get railroaded by a handful of companies who pay to have their name incorporated with everything Arduino. Luckily you have done a much better job than I informing the masses, how to acquire loads of components that many beginners will not become overly frustrated and give up when they end up reversing the polarity, miscalculate a design, do a horrible solder job on etc. This is all part of the learning process and the DIY OS moment is the force behind expediting awesome gadgets to reach the consumer level faster at a reasonable price. Unfortunately my ability to effectively get my message across via video needs some serious work, but I will continue to contribute to the movement in other areas. The last thing UA-cam needs is more content that someone forgot to flush and I sure wish someone would cause it's floating everywhere!
Boy am I glad I use Linux. No need for Drivers and at least to me it seems to have a better way of handling serial USB devices. Just a matter of preference I guess.
Wow, a $5 uno - pity it lacks a socketed, removable processor - which I need when I'm using the uno as a serial programmer fro my non USB arduinos (pro minis, etc.) (Whihch I have to do after FTDI buggered the drivers again for the FTDI programmers again.)
Wow. I've programmed Arduini with a Mac and with a Linux box. I normally use the ArduinoISP to burn bootloaders and program non-arduino AVRs. I'm appalled at how hard that is to get working on windows. That's why I don't use windows :P (Of course, I can only do that because I'm weird and don't play games :P )
Using Atmel Studio to program the Arduino is like using a sledge hammer to drive home a tack. It is very big and heavy and far more tool than required. It also adds another layer of complexity and learning which for a beginner can be formidable. I agree the Arduino IDE is very limited in its editing capabilities. Ideally what is needed is a more advance text editor like Notepad++ that will transparently use and control AVRDude like the Arduino IDE.
Rob B yes it's big, but you got a chip simulator in the program, and a autocomplete that works. As for special function registers, if you want to know the hardware; it's better to actually deal with it. You actually compare the avr toolkit vs the toolkit + a lot of extra stuff (arduino). Also stepping the asm-code helps if you want to figure out the timing.
Rob B there is actually a plugin to integrate the arduino IDE to Atmel Studio. I prefer using plain old C now anyway rather than the arduino abstraction. At least for me in my mind, learning how to directly manipulate DDR, PORT and PIN registers for I/O was not difficult. Yet, last night I did an alternating LED blink program on an MSP430 launchpad. Or more accurately, I did it twice, once under TI's code composer studio in plain C directly manipulating registers and once under Energia (fork of arduino IDE supporting TI chips). Simple really, green LED lights up, then switches for the red LED and repeats. Came to just 300 bytes under CCS with all optimisations off, almost 700 under Energia (best attempt to reduce code size short of direct register manipulation again which still bought it to 500 bytes, energia has optimisations enabled). For the newcomer. Arduino/Energia/Chipkit/Maple is certainly easier to understand, alot easier. But it really does bloat code size hugely. In the arduino ecosystem the approach is to upgrade to the bigger board when you run out of flash or ram, half the time, can probably just ditch some of the arduino abstractions and save a huge amount of space that way.
Probably a stupid question - did you change the programmer when trying to use the USBtinyISP and USBasp? That still doesn't explain why it was using the serial port - the AVRisp mkII you had selected at 11:28 is still a USB rather than USB-serial based unit so it shouldn't have been trying to use a serial port at all?!? I've been using the beta version in tandem with the stable branch for a while now, and haven't had any issues with the ISP yet, but my main machine is still Win7, so that may have some bearing on the issue. As far as the bootloader is concerned, when you use a ISP programmer, you overwrite the bootloader, so that won't be an issue if your chips already have bootloaders anyway. What may happen if they haven't been programmed is that you will need a different crystal on them so you change change the fuses - I bought some blank Atmega328Ps about 12 months ago and went around in circles for a while as they won't program normally - the fuse settings were Arduino unfriendly. I think they were set to use a 8mhz crystal, but it's a bit hazy now :) The USBasp error message is simply that the clock frequency can't be set. A feature that is not supported by the firmware that most of these USBasps ship with... they don't seem to ship with the latest version... even though it was published in May 2011!! It it only becomes an issue if you want to program chips that need slow frequencies. The instructions you posted are wrong in one aspect, the usbasp.2011-05-28 archive from Fischl's website does have the compiled hex files in the bin\firmware folder. I use AVRDUDESS by Zak Kemble instead of fiddling with the command line avrdude - it's a nice GUI frontend for it. I don't remember changing the fuse settings at all. In the case of the two new USBasps I got recently (I got some 3/5V selectable as I only had 5V ones prevously), I just loaded the new firmware with another usbasp, and held some pliers on the self-program jumper after clicking 'go' to program the new hex file!! Love the direction you're going, and I look forward to seeing you do some beginners guides for Arduino - you have a excellent style for presenting information that is easy to understand for newcomers!
Actually, I just did a quick search, and I seem to think it didn't want a clock at all - and supplying a crystal actually stuffed things up. I think this was the page that got it working for me in the end (3g1l.com/blog-burn-bootloader-blank-atmega328atmega328p-arduino-uno)
Peter Feerick Hi Peter. Yes I did change the programmer setting each time, although I think I had both USBtinyISP units connected at the same time for a while. Not sure what Windows and the Arduino IDE would have made of that.
Peter Feerick I don't think upload-using-programmer overwrites the bootloader. It's in a protected area of the program memory, protected by fuse settings. To overwrite the bootloader, I would imagine the fuses have to be changed to unprotect the memory, the bootloader written, then the fuses changed again.
Julian Ilett It did overwrite the arduino bootloader on my mega 2560, the arduino bootloader is not a true atmel AVR bootloader and doesnt reside in the protected memory as far as I am aware.
Yes, that is the case. The standard Arduino uses 2k of the flash memory, the optiloader bookloader uses 1k IIRC, and there's others that simulate a USBasp to self-program. Tricky stuff. This is the reason the bootloader option is present in the IDE... it sets the fuses and loads the new bootloader if one is specified in the boards.txt file.
Great video, and look forward to the 'build your own' one... You can also use the Arduino itself to burn the bootloader: arduino.cc/en/Tutorial/ArduinoISP, without a separate ICSP programmer, providing it's a recent board with an ATmega328. Be interested to see if this works on the CH340/clone boards!
spoonymccheese Yes, that's the "Arduino as ISP" option in the programmer list. I notice there's also now a programmer called the ArduinoISP - details here: arduino.cc/en/Main/ArduinoISP
My arduino isn't working: I can load programs into it, but the arduino don't execute them (for exemple, the flashing LED program that is pre-installed) I don't know why it's doing that but I don't believe it has something to see with burning the bootloader. (which I don't know how)
Hello Julian! as a matter of coincidence my USBasp also arrived today. After some hours of googling + trial and error I was able to get it to work properly. You gotta solder a jumper between the 2 holes next to the led and miso port. Than follow the link you you posted to update the USBasp to the lastest version. After that you disconnect the jumper and you will be able to use it just fine to upload sketches to your aruinos and attinys, but if you try to upload a bootloader it will not work. As I change the bootloaders of my attinys a lot between 1Mhz, 8Mhz and 16Mhz , there I was spending more time at google. Than I found this at the arduino forums: Go to the arduino\hardware\tools\avr\etc\avrdude.conf and edit the line around line number 319 : from # default_bitclock = 2.5 to default_bitclock = 10 That sets avrdude to low clock rate. Now I'm able to upload sketches and also the bootloaders!! Greeting from Brazil.
Out of the factory the atmega is running at 1mHz. So you must set the ISP clock speed to a lower value. I've always used the commandline to change the fuses, to have it run at 8mHz (internal oscillator). After that I can just use the arduino IDE.
Julian Ilett Hi Julian I have finally got around to ordering an Arduino like the one you showed in this video, the clone from Alice on fleabay. Not sure what I am going to do with it yet, but I like your videos, so I am sure I will play with it and think of something
Not to be snarky, but I honestly don't understand: Why would I do a DIY Arduino? Don't get me wrong, this has educational value which I am not disputing and I enjoyed the video. But it seems that when it's done, it has at least the volume of a Nano clone and seeing that Nano clones start at 2 GBP, you are not saving more than maybe 50p, even if you ignore your time setting up the DIY Arduino where the Nano is plug and play.
There is at least one other very good reason to make an Arduino from base parts. Once you have a project developed ( Aduino is primarily a development board) you can then go to the next step and make a final integrated project. The larger DIP version of the AT Mega also tends to be a little more rugged and is easily replaced should you have a blonde moment which is why the original Arduino entry level boards tend to use the DIP version.
hey' Julian i've been watching your video's for while and you do a great job in your reviews and your builds. I LIKE YOU SHOWING WHERE AND HOW MUCH YOU PAY. Great job Julian. sign: James Kennedy
Somewhere in china there is a exhausted worker that ends his 14 hours days of labor and getting paid 1 Eur for it, whom says: cheap is a point of view sir ! Slavery is slavery, even if you are in denial !
Nobody makes these by hand or any electrical components by hand. They are mass produced and you can get these components for less than 10cents a component if you buy in bulk. Sometimes there is a surplus and sometimes they make clones thats why its so cheap, even for 5$ for one of these Arduino clones the seller can make up to 100% profit on one of them...
My wife hates these rather anonymous orange/black/blue packages that dump into the mailbox several times a week.
+SirArghPirate lol
pro trick: you can watch movies at Flixzone. Been using it for watching all kinds of movies these days.
@Ezra Forrest Yup, I've been watching on flixzone} for months myself :)
You don't need to buy a dedicated ISP programmer, you can use an Arduino Uno (or any other Arduino type) as an ISP programmer. Just load a sketch named "ArduinoISP" from "File" -> "Examples", connect your wires as described in the sketch and you can program an Atmega chip. It is also possible to burn Arduino bootloader, or even omit the bootloader and burn your sketches directly to the Atmega microcontroller. This gives you the full program space of the chip, because the bootloader does not take any memory.
Awesome video as always! The whole setup of these videos are excellent with showing packages, showing features and ideas you have for the product, then showing the price and where you bought it from. It's all awesome! :) Looking forward to the Arduino tutorials in the future when you get it all working as you want :) Keep up the good work!
Chris Fredriksson Many thanks Chris
The 10 pin ISP header is actually the standard for ISP and used on most professional atmel development boards. 6 pin is simply the compact variant.
Oh. Most of the ebay USBASP boards have the original firmware on them which does have a genuine bug in it which allows them to program some chips reliably still while throwing AVR dude errors (and completely fail on some programs). You simply need to upgrade the firmware version on them which is usually done by closing a jumper and then ISP programming them over their existing ISP connector, had to throw mine on the university stk600 boards.
SixSixSevenSeven Simply, hmm. I did try the firmware upgrade, but avrdude in command line mode isn't much fun. It failed.
Now in 2017 you can buy 'em on AliExpress for just over £2! Great Christmas pressies for all the family and when they throw them back at you then you've got loads to play with. Happy Arduino days!
Hi Julian. Today was "PostBag" day to me xD. I remebered your channel while opening the bags xD. Thank you for this channel.
Julian, I want to thank you for making such informative videos. I was having issues getting the USBtinyISP, but this video helped me to get my program loaded.
Your post man must love you!
I built a circuit to light a series of 16 lights. A display for my son.
I priced up using a "boarduino". A nano pro mini worked out much cheaper.
I see the point if building a project that requires custom board or a commercial product.
But for permanent home projects, the nano pro mini wins out for me.
Aaargh! The chips supplied in what looked like normal foam. I'd rather stuff like that was supplied in antistatic packaging.
bigclivedotcom It is a bit naughty - black foam preferred.
Hi Julian, thumbs up on the tutorials for Arduino programming, loading the bootloader... I just picked up some Uno's and I'm interested in learning how to get started... Also, from the previous postbag, Texas Instruments makes some smart charging chips for USB to negotiate the proper charge current. Have a look at their datasheets to learn more. I suspect your USB wattmeter utilizes or implements a similar function. Cheers and Happy New Year!
I have been picking up some of your post bag items from the same sellers so I can try some of these neat tricks at home... Thanks for the seller info too, and cant wait to see the tutorials on programming the chips!
Ray M You know that intercepting someone's mail is an offence, right?
😜😂
he just means ordering the items from the the same seller
... I just so happen to frequent her on eBay, she/they have always delivered no issues and quickly too. Just coincidentally we had the same items coming in at the exact same time...
@@eridanusii268 it was a joke m8
Watching this (again) in 2019 hoping Julian picks up a duino again soon!
Tnx! Strugglin around with my NANO, too! Gonna try next time to prg the UNO!
Julian - You are truly the master of ebay purchases :) - I look forward to seeing how the DIY arduinos work out. Cheers!!
Hi Julian.
Eric Williams just uploaded a postbag covering "electric imps" thought you might be interested. They are similar to the WiFi enabled "yun killer" from your last postbag.
Love the videos, excited to learn how to burn bootloaders at last!
Julian, you need some load-capacitors on that xtal for it to work correctly. You may be getting away without using the breadboard, as the capacitive loading of the contacts may be enough, but if you make it a "real" board, it will not work correctly. The size of the capacitors is stated on the datasheet for your xtal. If you do not have that (obviously not) - 22pF is a good value.
I've got those, 2x 20pF. I forgot to show them. :(
If he wants to do an bog-standard arduino, he needs the 22 pFs and the 16Mhz crystal, or 8Mhz if running at less than 3.8v. Otherwise you can use an the internal clock (8Mhz again) and forgo the crystal and load caps.
Julian Ilett I usually cheat and get the 3 pin ceramic resonators. No capacitors needed. You can usually get them for a few p each.
Hi Julian, the AMS1117 is a 3.3v regulator
Can't get over the incredible price of that Arduino!! I thought I was doing well last year when I backed the "$9 Arduino" Kickstarter! :)
Might have to score some for my Maker School kids.
Great Video as always and cant wait to see the next ones. I still stick with my clone pro minis @ $4 shipped. They also have a raw power pin on them which saves money.
+Ross Gardiner was talking about Eric Williams, but I think he meant Eric William watch?v=4CYPhWSZgGQ
Ross has disabled replies for his account, so I'm not able to reply to his message.
The USBasp has a firmware on it... try updating that to get rid of the error;) worked for me
Why not just solder femaile pinheaders onto the TinyISP (facing downwards), so that you can directly plug it in?
At around 15:20 you mention you fixed it by upgrading the Arduino IDE but I noticed that on the old ISP you had changed the header around to get the double blink to work
I can see later you discussed swapping the header around, but that’s when you talked about the new header
I don’t understand why these headers aren’t like, say, the old PC IDE cables where they had a notch meaning you can only plug them in one way.
Ooooooh it must be time to try a duino!!
This was pretty interesting. I also watched how you DIY'd the Uno with a USB to serial, but have you showed us how you did the ISP header? I'd like to see that if possible.
Hi Julian. I am going to ask a really stupid question, as I am new to microcontrollers I hope you'll forgive me, so "Is it possible to change a bootloader once it's been burnt?"
Treereaver Jones These days, yes. Program memory in the microcontroller is flash memory which can be re-programmed a large number of times.
Treereaver Jones Thanks for a very helpful, and rapid, reply.
Treereaver Jones i
The only stupid questions are the one we dont ask and the answer is ua-cam.com/video/9HAnr___gkI/v-deo.html
I am excited! In your opinion, do the alternative Arduino devices provide the same functionality as an Arduino?
Julian, have you ever found a use for all those cheap Arduinos? I've had one for several years and never found anything for it to do! What about paralleling thousands of them to build a super computer?
have you looked at aliexpress.com? they have Arduino Uno(s) for £1.70
Very informative video. Thanks! I also noticed that at 11:45, when you started having problems with USBtinyISP you connected the cable differently to what you are showing at 15:00. So probably, that was the problem, but not the version of IDE?
Certainly with cable the wrong way round, it could never have worked. But the problems with IDE1.5.8 were intermittent. Both the USBtinyISP programmers worked flawlessly with IDE 1.0.6
Julian, i´m also having problems with USBASP and fixed it by adding he missing header for slow sck... and other error messages by uploading sketches manually using avrdude: avrdude.exe -p m8 -c usbasp -C conf.tmp -P usb -U flash:w:"Blink.hex":i "m8" is because im using a atmega8.
Pin 1 is always the coloured on the ribbon cable :-)
Cool video Julian, I use the USBasp for programming ATTinys and i see "cannot set sck period" every time, but I've never had one fail to upload, so I just ignore it. It's disconcerting a first but you get used to it after a bit.
reggiebacci Thanks, this is what I'm hearing. The firmware on the USBasp can be updated to fix this error, but it's not absolutely necessary.
@@JulianIlett yes I just spent 6 hours cleaning up my usbasp to have the latest firmware and deal with setting fuses on my 328Ps as the default communication speed was faster than the processor could deal with in its default settings. Using a VR dude with -B 10 and setting the default fuses did the trick. I did find that I was getting verification errors periodically before the firmware update to usbasp. I also noticed at the beginning that you had put the programmer plug in incorrectly. The red wire on the ribbon cable is pin 1 and pin one is marked on the Uno though not very clearly.
Thank you for the video.
Great Video Julian, Out of curiosity given the Arduino limitations are you considering some raspberry pie tutorials or other micro-processor systems for focus upon I think people will agree your video format is comfortable viewing and following as a stand alone or a series of, is easy going look forward to what the future may hold cheers Sean
Hi Julien !
I need your help.
In some videos you use that blue pen to adjust voltage and current on boost converters. I'd like to get one of these - how are they called so i can look for this on ebay ?
Hello, I'm little confused about the tiny USB programer, is it the same that a CH340 adapter?
Julian, do you mind trying out an Attiny85?
hello sir question about arduinos, are they can be use in audio implications ?
The Arduino Uno can be used as an ISP programmer; what would be the advantage of using other hardware such as the Micro Tiny AVR ISP?
Julian,
Thank you for this Arduino special. Very helpful.
Unfortunately the "Micro USB Tiny AVR ISP 5v ATtiny44 USBTinyISP Programmer For Arduino Bootloader" does not ship to the US for some odd reason. Too bad. I guess the UK has better relations with China, or perhaps easier shipping?
looking for cheap arduinos myself but they must be the throughhole version.
now i'm lost, i have a project board and all components to build a device, it uses a 328p throughhole chip which is the only component i don't have, i was just going to buy a cheap uno plug in the usb put the program on it then pull the chip put it in my device, this is a one off i dont use arduino so no programmer,
but now i dont know if that will work, if the uno needs a bootloader before i can program it i might as well buy the bare chip and a cheap programmer even though i will only use it once.
Hi Julian!
I saw you mentioned how cheap the NHduino uno was, but i recently spent 3.69 GBP for an "R3 board" with the atmel MEGA16u2 chip for the usb interface, and with a removable ATMEGA328P chip that looks EXACTLY as an arduino uno R3 (front and back) and is working perfectly!
The only issue was that it wouldn't run at all when i first got it, but i shorted 2 ICSP pins togeather and it brought it back to life.
Are you intrested? (Free worldwide shiping from China by the way)
I am
+Myke oh gosh I didn't see the notification and I only saw it now that I accidentally loaded the video up again, really sorry :( here it is: m.ebay.com/itm/141679582436?_mwBanner=1
MC fill
thanks for the reply.
Julian I love your video's we both share the same approach to purchasing electronics used for experimental design purposes . I have tried so hard to share the cost effective and logical thought process with others. My philosophy is find the lowest priced component that produces or excedes the level of accuracy/rating and longevity for it's intended purpose. On a few occasions I have been able increase the level of a components accuracy by tweaking OS software; which may never occurred without the contribution of others.
I always buy at least one Official Arduino Board to both support the movement and as a control to test against clones. When I first got into programming MCU's, using the Arduino Platform I got a kit from Makers; it fell far short of my expectations. I immediately saw how there marketing plan was stacked and rigged; so I began to do my homework.
Long Story Short there are many excellent sources for high quality imports, unfortunately the amount of bogus suppliers gives the entire lot a reputation so horrible people would rather get railroaded by a handful of companies who pay to have their name incorporated with everything Arduino.
Luckily you have done a much better job than I informing the masses, how to acquire loads of components that many beginners will not become overly frustrated and give up when they end up reversing the polarity, miscalculate a design, do a horrible solder job on etc. This is all part of the learning process and the DIY OS moment is the force behind expediting awesome gadgets to reach the consumer level faster at a reasonable price.
Unfortunately my ability to effectively get my message across via video needs some serious work, but I will continue to contribute to the movement in other areas. The last thing UA-cam needs is more content that someone forgot to flush and I sure wish someone would cause it's floating everywhere!
Is it possible to proramm the board through usb? Like blinking, etc
yup
Please make a tutorial on programming atmel other AVR like Atmega32A
Boy am I glad I use Linux. No need for Drivers and at least to me it seems to have a better way of handling serial USB devices. Just a matter of preference I guess.
Wow, a $5 uno - pity it lacks a socketed, removable processor - which I need when I'm using the uno as a serial programmer fro my non USB arduinos (pro minis, etc.) (Whihch I have to do after FTDI buggered the drivers again for the FTDI programmers again.)
It's called Arudino now.
Can that tiny programmer be used as essentially a small arduino?
I get to watch you have all the fun! Lol. Thank you!
No power and ground rails on that breadboard? That's unfortunate.
I wasn't able to get the UBSTinyISP to work still.
Turn the cable
Wow. I've programmed Arduini with a Mac and with a Linux box. I normally use the ArduinoISP to burn bootloaders and program non-arduino AVRs.
I'm appalled at how hard that is to get working on windows. That's why I don't use windows :P
(Of course, I can only do that because I'm weird and don't play games :P )
Also check atmel studio, it's quite well made.
Using Atmel Studio to program the Arduino is like using a sledge hammer to drive home a tack. It is very big and heavy and far more tool than required. It also adds another layer of complexity and learning which for a beginner can be formidable.
I agree the Arduino IDE is very limited in its editing capabilities. Ideally what is needed is a more advance text editor like Notepad++ that will transparently use and control AVRDude like the Arduino IDE.
Rob B yes it's big, but you got a chip simulator in the program, and a autocomplete that works.
As for special function registers, if you want to know the hardware; it's better to actually deal with it.
You actually compare the avr toolkit vs the toolkit + a lot of extra stuff (arduino). Also stepping the asm-code helps if you want to figure out the timing.
Rob B there is actually a plugin to integrate the arduino IDE to Atmel Studio. I prefer using plain old C now anyway rather than the arduino abstraction. At least for me in my mind, learning how to directly manipulate DDR, PORT and PIN registers for I/O was not difficult.
Yet, last night I did an alternating LED blink program on an MSP430 launchpad. Or more accurately, I did it twice, once under TI's code composer studio in plain C directly manipulating registers and once under Energia (fork of arduino IDE supporting TI chips). Simple really, green LED lights up, then switches for the red LED and repeats. Came to just 300 bytes under CCS with all optimisations off, almost 700 under Energia (best attempt to reduce code size short of direct register manipulation again which still bought it to 500 bytes, energia has optimisations enabled).
For the newcomer. Arduino/Energia/Chipkit/Maple is certainly easier to understand, alot easier. But it really does bloat code size hugely. In the arduino ecosystem the approach is to upgrade to the bigger board when you run out of flash or ram, half the time, can probably just ditch some of the arduino abstractions and save a huge amount of space that way.
pin 13 VCC not soldered on correctly, that NANO is fried
Probably a stupid question - did you change the programmer when trying to use the USBtinyISP and USBasp? That still doesn't explain why it was using the serial port - the AVRisp mkII you had selected at 11:28 is still a USB rather than USB-serial based unit so it shouldn't have been trying to use a serial port at all?!? I've been using the beta version in tandem with the stable branch for a while now, and haven't had any issues with the ISP yet, but my main machine is still Win7, so that may have some bearing on the issue.
As far as the bootloader is concerned, when you use a ISP programmer, you overwrite the bootloader, so that won't be an issue if your chips already have bootloaders anyway. What may happen if they haven't been programmed is that you will need a different crystal on them so you change change the fuses - I bought some blank Atmega328Ps about 12 months ago and went around in circles for a while as they won't program normally - the fuse settings were Arduino unfriendly. I think they were set to use a 8mhz crystal, but it's a bit hazy now :)
The USBasp error message is simply that the clock frequency can't be set. A feature that is not supported by the firmware that most of these USBasps ship with... they don't seem to ship with the latest version... even though it was published in May 2011!! It it only becomes an issue if you want to program chips that need slow frequencies. The instructions you posted are wrong in one aspect, the usbasp.2011-05-28 archive from Fischl's website does have the compiled hex files in the bin\firmware folder. I use AVRDUDESS by Zak Kemble instead of fiddling with the command line avrdude - it's a nice GUI frontend for it. I don't remember changing the fuse settings at all.
In the case of the two new USBasps I got recently (I got some 3/5V selectable as I only had 5V ones prevously), I just loaded the new firmware with another usbasp, and held some pliers on the self-program jumper after clicking 'go' to program the new hex file!!
Love the direction you're going, and I look forward to seeing you do some beginners guides for Arduino - you have a excellent style for presenting information that is easy to understand for newcomers!
Actually, I just did a quick search, and I seem to think it didn't want a clock at all - and supplying a crystal actually stuffed things up. I think this was the page that got it working for me in the end (3g1l.com/blog-burn-bootloader-blank-atmega328atmega328p-arduino-uno)
Peter Feerick Hi Peter. Yes I did change the programmer setting each time, although I think I had both USBtinyISP units connected at the same time for a while. Not sure what Windows and the Arduino IDE would have made of that.
Peter Feerick I don't think upload-using-programmer overwrites the bootloader. It's in a protected area of the program memory, protected by fuse settings. To overwrite the bootloader, I would imagine the fuses have to be changed to unprotect the memory, the bootloader written, then the fuses changed again.
Julian Ilett It did overwrite the arduino bootloader on my mega 2560, the arduino bootloader is not a true atmel AVR bootloader and doesnt reside in the protected memory as far as I am aware.
Yes, that is the case. The standard Arduino uses 2k of the flash memory, the optiloader bookloader uses 1k IIRC, and there's others that simulate a USBasp to self-program. Tricky stuff. This is the reason the bootloader option is present in the IDE... it sets the fuses and loads the new bootloader if one is specified in the boards.txt file.
You never did the USB Tiny ISP tutorial you mentioned in this video I guess?
Pls make a extra connection how to connect aref to 3.3v to use that in arduino project
Great video, and look forward to the 'build your own' one... You can also use the Arduino itself to burn the bootloader: arduino.cc/en/Tutorial/ArduinoISP, without a separate ICSP programmer, providing it's a recent board with an ATmega328. Be interested to see if this works on the CH340/clone boards!
spoonymccheese Yes, that's the "Arduino as ISP" option in the programmer list. I notice there's also now a programmer called the ArduinoISP - details here: arduino.cc/en/Main/ArduinoISP
My arduino isn't working: I can load programs into it, but the arduino don't execute them (for exemple, the flashing LED program that is pre-installed) I don't know why it's doing that but I don't believe it has something to see with burning the bootloader. (which I don't know how)
Hello Julian!
as a matter of coincidence my USBasp also arrived today. After some hours of googling + trial and error I was able to get it to work properly.
You gotta solder a jumper between the 2 holes next to the led and miso port. Than follow the link you you posted to update the USBasp to the lastest version.
After that you disconnect the jumper and you will be able to use it just fine to upload sketches to your aruinos and attinys, but if you try to upload a bootloader it will not work.
As I change the bootloaders of my attinys a lot between 1Mhz, 8Mhz and 16Mhz , there I was spending more time at google. Than I found this at the arduino forums:
Go to the arduino\hardware\tools\avr\etc\avrdude.conf and edit the line around line number 319 :
from # default_bitclock = 2.5
to default_bitclock = 10
That sets avrdude to low clock rate.
Now I'm able to upload sketches and also the bootloaders!!
Greeting from Brazil.
Ah, that's useful information. Many thanks. I'll give that default clock setting a try.
Out of the factory the atmega is running at 1mHz. So you must set the ISP clock speed to a lower value. I've always used the commandline to change the fuses, to have it run at 8mHz (internal oscillator). After that I can just use the arduino IDE.
Julian Ilett
Hi Julian I have finally got around to ordering an Arduino like the one you showed in this video, the clone from Alice on fleabay. Not sure what I am going to do with it yet, but I like your videos, so I am sure I will play with it and think of something
Postbag, Alice from the wonderland.
what course is this
Aha! Someone with an even worse eBay electronics habit than me!
I purchase from Alice as well! Co-incidence haha. Very cheap parts but they usually work great.
Glad i've found your channel Julian.
Btw this was very interesting video.
Regards Dali
How come you can not use a real pencil sharpener?
enlightening, yet again
I was searching for uno gameplay not an arduino uno ;-;
Where can I get that pin reference?
Arsenio Dev Now added to the description
Here you go:
nearbus.net/wiki/index.php?title=Atmega_328_Pinout
Julian Ilett Thanks!
arduino nano needs a downgrade on the firmware on the program to the computer! worked for me!
loving the idea :)
i found cheaper atmega328p for $1.62
Does anybody knows an usb host cheap?
Not to be snarky, but I honestly don't understand: Why would I do a DIY Arduino?
Don't get me wrong, this has educational value which I am not disputing and I enjoyed the video.
But it seems that when it's done, it has at least the volume of a Nano clone and seeing that Nano clones start at 2 GBP, you are not saving more than maybe 50p, even if you ignore your time setting up the DIY Arduino where the Nano is plug and play.
YensR Because you can.. getting back to first principles lets people understand better (or at least that's been my experience)
***** So it's the educative side that I mentioned, okay, I understand that.
YensR Yes, sorry, I didn't mean to sound snarky either :-)... I of course don't know why *Julian* did it, but that's why I'd do it.
Or even, why bother with the bootloader. Just use the micro with its native IDE
There is at least one other very good reason to make an Arduino from base parts. Once you have a project developed ( Aduino is primarily a development board) you can then go to the next step and make a final integrated project.
The larger DIP version of the AT Mega also tends to be a little more rugged and is easily replaced should you have a blonde moment which is why the original Arduino entry level boards tend to use the DIP version.
hey' Julian i've been watching your video's for while and you do a great job in your reviews and your builds. I LIKE YOU SHOWING WHERE AND HOW MUCH YOU PAY. Great job Julian. sign:
James Kennedy
Alice Alice, who the F*** is Alice? like seriously i'm curious.
Ebay seller with decent prices and a huge selection.
Somewhere in china there is a exhausted worker that ends his 14 hours days of labor and getting paid 1 Eur for it,
whom says: cheap is a point of view sir !
Slavery is slavery, even if you are in denial !
Nobody makes these by hand or any electrical components by hand. They are mass produced and you can get these components for less than 10cents a component if you buy in bulk. Sometimes there is a surplus and sometimes they make clones thats why its so cheap, even for 5$ for one of these Arduino clones the seller can make up to 100% profit on one of them...
Very chip cheap
you paid to much sir! £2.25 from hk.