How to Stop Cloning Your Arduino Atmega328p Programs, Do This

Тәжірибелік нұсқаулар және стиль

This video is About Arduino ATmega328P/Atmega328 firmware protection. how to bit lock or memory lock Arduino/Atmega328p with maximum protection, and prevent cloning your programs. this video is optimized for more information in less time in an effective way. So buckle up and please don't seek because it's optimized.
Regard's
Aneeshmurali.
#MADEbyAneeshmurali
Music by NEFFEX
smarturl.it/neffex_youtube

Пікірлер: 126

  • @raghavsrivastava2910
    @raghavsrivastava2910 Жыл бұрын

    Brother such a wonderful video, keep making these advanced tutorials/videos.

  • @Ciiads

    @Ciiads

    Жыл бұрын

    Thank you ☺️👊❤️

  • @blessingaghoghovwia4903
    @blessingaghoghovwia4903 Жыл бұрын

    what about using a high voltage programmer to enable and acess code

  • @sushantasarkar123
    @sushantasarkar123 Жыл бұрын

    What is problem in my Atmega328P-U microcontroller. I am using external 16mhz crystal . I am using this setting 0xFF, 0xDE, 0xFD, 0xC0 and write by avrdude. my project stuck or hang after some hour... how to solve my problem...plz tell me

  • @bricktimelapsebuilds
    @bricktimelapsebuilds Жыл бұрын

    thank is it also possible for an arduino nano?

  • @mehedihasan-qn5ox
    @mehedihasan-qn5ox4 ай бұрын

    Brother kindly help me out. Need to use the same technique for Arduino Mega 2560.

  • @7350888483
    @73508884832 жыл бұрын

    You are simply awesome sir👌 Thank you so much for this video 📹

  • @Ciiads

    @Ciiads

    2 жыл бұрын

    😊🤝❤️✌️

  • @asissyjoseph3394
    @asissyjoseph33942 жыл бұрын

    Neet & Clean presentation 👌🏻

  • @Ciiads

    @Ciiads

    2 жыл бұрын

    ❤️

  • @alanfernandotorrez6507
    @alanfernandotorrez6507 Жыл бұрын

    excellent video but it left me with some doubts: when the reading bits are blocked at some point the Arduino loses communication with the cpu for data transfer in real time! oh it just crashes so it can't be cloned ?😊

  • @gurumoorthytamizhan6591
    @gurumoorthytamizhan6591 Жыл бұрын

    Thanks for uploading this video ... Very Important and useful

  • @Ciiads

    @Ciiads

    Жыл бұрын

    ☺👊

  • @madtech.channel
    @madtech.channel8 күн бұрын

    How about esp32 ,is there any lock bit?

  • @dhanush2060
    @dhanush20602 жыл бұрын

    Great one 🔥

  • @bhaveshjat5342
    @bhaveshjat53422 жыл бұрын

    Thank you brother

  • @bisdakhydroponics2732
    @bisdakhydroponics27322 жыл бұрын

    Thank you for this tutorials sir..it helps alot..

  • @Ciiads

    @Ciiads

    2 жыл бұрын

    Have a nice day ✌️❤️

  • @bisdakhydroponics2732

    @bisdakhydroponics2732

    2 жыл бұрын

    @@Ciiads Hello sir, is this working in ATMEGA1280?

  • @Ciiads

    @Ciiads

    2 жыл бұрын

    @Bisdak Hydroponics settings are different. Wiring diagram is different. Tip 1, First just read and find the original fuse bit settings of your mega. 2, Keep the same fuse bit configuration. 3, keep the lock bit configuration to 0xC0 like this video. 4, for wiring diagram and further info. Watch my previous video and check the description. From there you will get the wiring diagram. 5, Just google "How to read and extract hex file from Arduino board" which will take you there. Have a nice day. Regards Aneeshmurali. 😊🤝✌️

  • @neocial
    @neocial Жыл бұрын

    excellent

  • @praveenjohn8242
    @praveenjohn82422 жыл бұрын

    Man ..super ...like it

  • @Ciiads

    @Ciiads

    2 жыл бұрын

    😊✌️❤️

  • @sameerato
    @sameeratoАй бұрын

    wawww. thanks from srilanka

  • @Ciiads

    @Ciiads

    Ай бұрын

    Welcome 😊♥️🤝

  • @elodiecemoi3057
    @elodiecemoi3057 Жыл бұрын

    Excellent video; I still have a question: Question: Is it possible to use a USB-ASP adapter instead of an Arduino Uno to perform the Lock bits writing in the target board ?? Thanks

  • @Ciiads

    @Ciiads

    Жыл бұрын

    Of course, you can do Here one of the Arduino is programmed as an isp programmer but if you have a dedicated USB-ASP programmer its output is always isp like MISO, MOSI, RESET, VCC, and GND that's what we need to program the MCU. So 100% you can go with that. 😊👊❤️🤗

  • @elodiecemoi3057

    @elodiecemoi3057

    Жыл бұрын

    @@Ciiads Thank you, next question: after having protected the code with this method, is it possible to re-use the board for another program ? I mean: is it possible to upload a totally new code into the Arduino ? Is there something special to do ? Thank you !

  • @Ciiads

    @Ciiads

    Жыл бұрын

    @@elodiecemoi3057 Yes, but you have to erase and re-burn a fresh appropriate Arduino bootloader to revert that back to a normal Arduino board

  • @ahmedawat9940
    @ahmedawat99402 жыл бұрын

    Thank you

  • @Ciiads

    @Ciiads

    2 жыл бұрын

    ❤️🤝✌️😊

  • @jamesmac6102
    @jamesmac61022 жыл бұрын

    Thank you for making this video!. Can you make a video for locking ESP32 like the TTGO board.

  • @Ciiads

    @Ciiads

    2 жыл бұрын

    I don't have esp right now, but I will do it when I have one.😉☺

  • @guillermostettler6138

    @guillermostettler6138

    5 ай бұрын

    Hi, Could you do the test with the esp32@@Ciiads

  • @Ciiads

    @Ciiads

    5 ай бұрын

    @@guillermostettler6138 It's for avr MCU and the settings are different for each MCU. 🙂 AMN.

  • @giginmathew1
    @giginmathew1 Жыл бұрын

    Good job

  • @asifvfceditz2654
    @asifvfceditz26542 жыл бұрын

    👍🏻

  • @omsingharjit
    @omsingharjit Жыл бұрын

    But previously you said Arduino doesn't have Copy protection feature in Hex pulling video !!

  • @Ciiads

    @Ciiads

    Жыл бұрын

    Yes, Arduino doesn't have copy protection feature that's why we got the hex file in the hex pulling video I hope you watched it but you know Arduino is made out of avr mcu it has so many features bit lock is just one of them but Arduino is not using that feature that's why we used an avr tool to bit lock the mcu her atmega328p, Arduino is an open-source platform that normally comes with a serial bootloader and there is no chip lock, normally arduino doesn't bit lock the chip. and this is the way to lock it. ones you've done it's never gonna work like Arduino anymore unless you erase and reburn the Arduino bootloader.

  • @shawon97256
    @shawon972569 ай бұрын

    Thanks for nice video. Is there any ways do extract hex (which I already have locked) file from ATmega328P.

  • @Ciiads

    @Ciiads

    8 ай бұрын

    In my knowledge the answer is no but I always believe nothing is impossible. Regards, AMN 😊

  • @Email-wg8je
    @Email-wg8je29 күн бұрын

    hello , is there any way that somebody can still extract the hex file from arduino if the microcontroller has bootloader inside it aswell ? I have read in some forums that is possible to still extract the hex file from the microcontroller through the bootloader that is inside the mcu. how true is that ?

  • @Ciiads

    @Ciiads

    21 күн бұрын

    So chip erase then flash the without bootloader version of the hex file with the new fuse and lock bit settings. that's exactly what we did here 👍

  • @Email-wg8je

    @Email-wg8je

    21 күн бұрын

    i saw that you flashed all the 6 lock bits . BLB01 BLB11 BLB02BLB12 are 4 lock bits that are responsible to lock the bootloader . Since you have the hex file without the bootloader then why you are still programming those lock bits ? I think LB1 and LB2 are enough to program if you have a hex file without a bootloader on it .

  • @Ciiads

    @Ciiads

    21 күн бұрын

    @@Email-wg8je just closing all the doors as we can👍😁

  • @rimbang_
    @rimbang_2 жыл бұрын

    can i do this for wemos d1 mini ? or esp8266 ?

  • @Ciiads

    @Ciiads

    2 жыл бұрын

    It's only for avr

  • @cosminadrian5845
    @cosminadrian5845 Жыл бұрын

    Nice video, one question, the schema from 2:16 applies also for arduino nano?

  • @Ciiads

    @Ciiads

    Жыл бұрын

    Yes

  • @vimaldaslg518
    @vimaldaslg518 Жыл бұрын

    Possible to do the same using uno as programer to atmega8?

  • @Ciiads

    @Ciiads

    Жыл бұрын

    Yes, the programming method will work for most avr MCU's but the fuse bit config and the wiring will vary according to the target MCU and the compiled firmware ☺️👊

  • @manukalias
    @manukalias Жыл бұрын

    Superb Performance Delivery Bro 👍👍 Please make similar Fuse burning video for ESP 32 chip. If possible let me know how to contact you for a technical discussion 🙏🙏

  • @Ciiads

    @Ciiads

    Жыл бұрын

    I don't have esp32 at the moment, I will try if I had one☺👊

  • @ahmedawat9940
    @ahmedawat9940 Жыл бұрын

    How can I calculate fuses atmega328p interial 8mhz and program it

  • @Ciiads

    @Ciiads

    Жыл бұрын

    First, you have to develop or code your firmware for 8mhz internal oscillator Then you can burn that with 8mhz internal oscillator fuse settings To know more about fuse bit just Check the data sheet of the chip or simply google avr fuse calculator it's an online website tool to calculate the fuses for avr MCUs Or if you would like to do that in arduino ide then you just google arduino 8mhz internal clock You will reach there

  • @ahmedawat9940

    @ahmedawat9940

    Жыл бұрын

    @@Ciiads thank you

  • @EMD69
    @EMD69 Жыл бұрын

    💯👍👍👍

  • @pavolslab7831
    @pavolslab7831 Жыл бұрын

    will this also prevent reprogramming/reflashing the Arduino with USB?

  • @Ciiads

    @Ciiads

    Жыл бұрын

    Yes you can reprogram after the chip erase but if you wanna undo everything like the actual functional Arduino board, definitely you have to burn the appropriate bootloader for the chip which is the thing that handles USB serial programming 👊☺️

  • @mgzawlay2149
    @mgzawlay21492 ай бұрын

    Lovely Brother, which hex file can i use with or without bootloader for my burned bootloader Atmega328p. pls!

  • @Ciiads

    @Ciiads

    2 ай бұрын

    Without bootloader 😊👍

  • @josevillalba4497
    @josevillalba44972 жыл бұрын

    Hi ,what's if want to reprogram the chips , it's possible ? or the changes are for ever? thanks,, greetings from Argentina..

  • @Ciiads

    @Ciiads

    2 жыл бұрын

    Yes reprogramming is possible but that will automatically erase the chip memory. The changes are not for ever unless you erase the chip. Always you can change the fuse and lock bit settings any time you want but it will erase the chip so you don't wanna worry about that. If you want to make the Arduino board back to it's original state, I mean without any bit lock, you have to burn the Arduino bootloader. Regards. Aneeshmurali ❤️🤝😊✌️

  • @josevillalba4497

    @josevillalba4497

    2 жыл бұрын

    @@Ciiads Thanks for the info i'm trying to protect my work.. thanks a lot.

  • @Ciiads

    @Ciiads

    2 жыл бұрын

    @@josevillalba4497 Nice to meet you. Wish me luck. See you again. Have a nice day Bro 😊👍

  • @josevillalba4497

    @josevillalba4497

    2 жыл бұрын

    @@Ciiads good luck!!

  • @jdelectron
    @jdelectron2 жыл бұрын

    So it is possible to undo that I. E. I I am a genioun person who uploaded code, as i wants to reuse the ic , but I don't want to code and I want a clear flash chip Is chip is permanantaly locked?

  • @Ciiads

    @Ciiads

    2 жыл бұрын

    Yes, the chip was permanently locked but you can re-use it by just simply erasing the chip. Chip erase will clear the flash.

  • @jdelectron

    @jdelectron

    2 жыл бұрын

    @@Ciiads thanks👍

  • @santoshbabu517
    @santoshbabu517 Жыл бұрын

    hi sir v nice tutorial can you plz let us know how to st lock bits for atmega 8

  • @Ciiads

    @Ciiads

    Жыл бұрын

    It's the same for atmega8

  • @dilversingh8766
    @dilversingh8766 Жыл бұрын

    Great , can we do same with nano, what will be the pins?

  • @Ciiads

    @Ciiads

    Жыл бұрын

    Same

  • @dilversingh8766

    @dilversingh8766

    Жыл бұрын

    @@Ciiads thanks for your prompt response

  • @pradippatel918
    @pradippatel918 Жыл бұрын

    High voltage programmer can unlock chip without loosing data or program?

  • @Ciiads

    @Ciiads

    Жыл бұрын

    Maybe, if there is a glitch but I don't think so, try your luck. You know if that is possible the protection feature is pointless right?

  • @prakashharash8380
    @prakashharash8380 Жыл бұрын

    Good

  • @alfatech8604
    @alfatech86042 жыл бұрын

    nice one but can u unlock it again or write to erase eeprom

  • @Ciiads

    @Ciiads

    2 жыл бұрын

    Yes you can unlock by just erasing the chip. Or by setting lock bit to unlock bit, to do that, just uncheck all the lock bit check boxes on the bit selector and write it. that also erase the chip. Yes you can erase and reprogram the chip.

  • @haczyk84
    @haczyk843 ай бұрын

    If you want have close source, don't use open.

  • @Ciiads

    @Ciiads

    3 ай бұрын

    The chip itself is not open source, the video is about bit lock atmega. There is nothing wrong to use opensource development boards to develop firmware but you have to write every piece of code your self including librarys for a closed source project or you have to buy the lisence and need to credit properly. Arduino is opensource platform but atmega MCU's are not.

  • @ramrode5350
    @ramrode53506 ай бұрын

    Hello brother, how are you brother, I need your help. In this video you told you how to program Atmega328-P Ic, but I realized that I have future by using Arduino Nano to program So how can I use it and how can I program my Arduino Nano please tell me because I have a code but I have to keep it safe so I want help 🙏

  • @Ciiads

    @Ciiads

    6 ай бұрын

    This video focuses on bit locking the Atmega328P. I'm having trouble understanding your question. Could you please clarify it?

  • @ramrode5350

    @ramrode5350

    6 ай бұрын

    @@Ciiads can I type my question in Hindi Because my English is Bad 😞

  • @ramrode5350

    @ramrode5350

    6 ай бұрын

    @@Ciiads sir aapne is video me bataya hai ki Atmega328P Me Fuse Bit Locking kaise lagaye ok par muje aap ki aisi help chahiye jisme muje Fuse Bit Locking Arduino Nano me lagana hai Muje Arduino Nano Me Fuse Bit Locking Use karke Code Upload karna hai jisse Mera code koi Arduino Nano se copy nahi kar payega par maye ye kaise karu muje ye karna nahi aata muje aapki is me HELP chahiye please sir meri help kariye 🙏🙏

  • @awanglong3599
    @awanglong3599 Жыл бұрын

    Bro i see you check the erase for eeprom, i have my coding include the eeprom. ? Is the code still working because the eeprom had just erase in avrduddes.please answer🙏

  • @Ciiads

    @Ciiads

    Жыл бұрын

    It doesn't matter, it will work, we are just erasing the previous EEPROM data on the target chip to write a new one.

  • @awanglong3599

    @awanglong3599

    Жыл бұрын

    Thanks so much bro🙏

  • @awanglong3599

    @awanglong3599

    Жыл бұрын

    Bro how to set it back as default like before? Because after i run the program the arduino could not be upload for new program, i means i tried to upload new program but it can't , please do some help🙏

  • @Ciiads

    @Ciiads

    Жыл бұрын

    Once you locked it's locked, if you wanna undo everything, just erase the chip and burn the appropriate arduino bootloader that's it

  • @awanglong3599

    @awanglong3599

    Жыл бұрын

    ​@@Ciiads thank you so much bro 🙏

  • @m.l.n
    @m.l.n7 ай бұрын

    So, the lock is not a permanent lock. Anyone can unlock it later, right?

  • @Ciiads

    @Ciiads

    7 ай бұрын

    What you mean? No, it's permanent as per the security features of the MCU. You can reuse the MCU after erasing it, but that doesn't mean unlocking it. Erasing it wipes the entire bit lock and program memory, meaning everything is gone.

  • @dany67230
    @dany672307 ай бұрын

    Is arduino not open sourse ?

  • @Ciiads

    @Ciiads

    7 ай бұрын

    Of course, Arduino is an open-source development board based on the AVR Microcontroller it has security features called bit lock to safeguard against firmware copy and clones. Arduino is not a locked one it's loaded with a serial bootloader but that doesn't mean we can't use the security features of the microcontroller itself.

  • @eccosabanovic1589
    @eccosabanovic1589 Жыл бұрын

    ...if your firmware is very unique, then there is always a way to get it out from chip..i think best and most effective way is to make your firmware works as it should, only on particular chip that is uploaded to..in case of been cloned, it will simply introduce errors to any variables or data that it is processing and rendering it useless to clone anyway..

  • @Kyle-ye4nj

    @Kyle-ye4nj

    Жыл бұрын

    How can I get started with that?

  • @eccosabanovic1589

    @eccosabanovic1589

    Жыл бұрын

    @@Kyle-ye4nj ..well, you could use IC dedicated for that, such as ATECC608B, or simply, read serial ID of your microcontroller, randomly, every 2-10 minutes, and in case it doesn't match ID hardcoded inside firmware, simply introduce random error, which you add on to result of some variable used by MCU to do desired job...

  • @smartgadgets5795
    @smartgadgets57952 жыл бұрын

    After set a lock according to this video.. how can we reset the arduino to upload a programme through arduinoIDE ???

  • @Ciiads

    @Ciiads

    2 жыл бұрын

    Just flash Arduino bootloader.

  • @smartgadgets5795

    @smartgadgets5795

    2 жыл бұрын

    @@Ciiads sir how can i burn bootloader.. i am trying to enable it with 2 arduino,, 1 as a programmer and the other one as a target device. But when i am clicking on the burn bootloader option , there are some errors i am facing.. please help sir

  • @Ciiads

    @Ciiads

    2 жыл бұрын

    Okay what is the error.

  • @Ciiads

    @Ciiads

    2 жыл бұрын

    First upload Arduino as isp sketch to an Arduino. Then wire it with target chip. Select Arduino board type and port. And select programmer as Arduino isp. Then burn bootloader.

  • @smartgadgets5795

    @smartgadgets5795

    2 жыл бұрын

    @@Ciiads actually i think i am trying it with wrong method . Can you please tell me how i have to do it ??

  • @TechnoEveryday
    @TechnoEveryday2 жыл бұрын

    🆒 Thank you so much for uploading this video. 👍👍👍👍👍 Sharing with community 🇵🇰

  • @ryangrif6882
    @ryangrif6882 Жыл бұрын

    Do you have an email adresse ?

  • @Ciiads

    @Ciiads

    Жыл бұрын

    Yes☺

  • @Romello_Pietersz
    @Romello_Pietersz Жыл бұрын

    It doesn’t work, can you help please? I used the Arduno itself without ISP

  • @Ciiads

    @Ciiads

    Жыл бұрын

    Yes, because you didn't followed the video. If you do, it will work.

  • @Romello_Pietersz

    @Romello_Pietersz

    Жыл бұрын

    @@Ciiads yes it worked

  • @elodiecemoi3057
    @elodiecemoi3057 Жыл бұрын

    It seems to work, but I have got a warning during writing (ignoring mismatch in unused bits of "lock" (0xc0 != 0x00). To prevent this warning set unused bits to 1 when writing (double check with your datasheet first). avrdude.exe: 1 bytes of lock verified), and I cannot access to the "read file" for verifying that the file is empty (although Avrdudess says it is empty during the second attempt ro read the board). I send you an email with the log: I would be graceful if you can reply, because I am so close to succeed !! Thank you very much for your help !

  • @Ciiads

    @Ciiads

    Жыл бұрын

    If 0xC0 is not working then you continue with 0x00 that is because there are only 6 bits in that register so 0b000000 is 0xC0, Bits 6 and 7 are not used that's why it shows the warning. 0b00000000 is 0x00 which will set the unused bits to 0 so don't worry both will work and both will do the same. continuing with the 0x00 will not gonna show you the warning ☺️👊

  • @elodiecemoi3057

    @elodiecemoi3057

    Жыл бұрын

    @@Ciiads Thank you very very much ! Your video is by far the best one on this subject : it is clear and complete, exactly what is needed to perform this cloning protection 💛 Maybe (it is just a suggestion) you could make a 2nd part related to the EEPROM section, but I suppose it is very similar. Than you again: I subscribe your channel !

  • @lahiruprageeth8555
    @lahiruprageeth85555 ай бұрын

    Can i program that arduino board with new program ? And can we use eeprom and serial communication ?

  • @Ciiads

    @Ciiads

    5 ай бұрын

    No matter which board you're using, it's all about the chip. Of course, you can reprogram after a chip erase, and there are no restrictions for serial communication and EEPROM usage. However, you can't upload an Arduino sketch through the Arduino IDE because that requires a bootloader, and here we've disabled read and write access to the chip as part of the protection mechanism. If you don't need any protection for your software and want to revert everything back to normal, just erase the chip and burn the Arduino bootloader. Then, your Arduino board will be back to its original state. 😊 AMN

Келесі