The Hackaday Antiduino Browser Plugin

ArduinoArduinoArduino

Hackaday – and the projects featured on Hackaday – get a lot of flak in the comments section simply for mentioning an Arduino. The Arduino complainers are, of course, completely wrong; everyone here is trying to make something, not make something in the most obscure possible way.

The Arduino is a legitimate tool, but still there are those among us who despise anything ending in ~duino. This browser plugin is for them. It’s a Chrome extension that selectively replaces or removes Arduino content from Hackaday depending on the user’s preference.

There are three settings to the plugin: See No Evil replaces images of Arduinos with serious business. Hear No Evil removes all occurrences of the word ‘Arduino’ and replaces them with something of your choosing. Speak No Evil removes all posts in the Arduino Hacks category.The last option also removes the ability to comment on any post in the Arduino Hacks category, so obviously the quality of the comments here will drastically increase by tomorrow.

You can grab the plugin on the gits. It’s Chrome only, but if someone wants to port it to Firefox, we’ll gladly put up another post.

There you go, Internet. You’re free now, and the biggest problem in your life has now been solved. Go give [SickSad] a virtual pat on the back, or tell him he could have done the same thing with a 555. Either of those are pretty much the same thing at this point.

134 thoughts on “The Hackaday Antiduino Browser Plugin

    1. All goes down what you value more – your time or extra $$ for arduino board. Of course NEAT level goes down if you use such ‘easy’ board, but again it is cool because everyone can grab one and reproduce your project easily.

        1. I disagree. I have pulled off some seriously complex stuff with arduino, and was glad for it (easy to program, debug, etc). Sure, sometimes it is ‘too simple’ of an interface, but still very much useful. And if quad copters can fly on it and 3D printers and CNC machines can make stuff on it, then its good enough.

          1. Most arduino based quadcopters and 3D printers are products of copy/paste work. In the beginning was someone skilled with IDE and DEBUG and others just copy that, so they doesnt need debug tools or more complex IDE. Which Arduino after 10 years of developing still doesnt have.

          1. You pretty much hit the nail on the head with your last post. I would venture to say that well over half of the projects I came across were copypasta of someone else’s stuff. It appears there were only 8 people that even bothered to try and code for it. The forums were a sad waste of server storage. It’s hype and the lack of actual support (when needed) makes it really easy to not like. Kind of a problem inherent in the “open source/make” pansexual feelgood marketing ring :( Eventually, the four old guys that actually help folks out in the forums move on to something else…and so does everyone else. Kinda fun to watch a person at 13 do this and then you see them on an android board fussing about dalvik cache, and then onto a car media forum working on some CANbus tweaking when they are old enough to drive. I guess that is what the arduino does:Inspires you to move on lol.

        2. Interestingly, if you spend some time on the AVR freaks forum you’ll get the exact opposite response. There are some seriously skilled embedded programmers who will tell you that if you ever think you need more power than an 8-bit micro, you’re probably a total noob. The don’t use the arduino interface of course, but still an interesting comparison from before the “cycles to burn” era.

          I think the source of frustration comes from the fact that we have access to cheap, powerful tools now with very low cost ARM processors — yet hardly anybody is spending the time to learn to use them, even when they would simplify or improve some projects.

          1. Fair enough-I’ll have to check out avrfreaks again. My nephew was my main inspiration after he got a Make Arduino kit for xmas a few years back. I got an angry call from my brother the next day wanting a video conference to help the lil guy out. It was through this and several subsequent purchases from the open source gpl community that I saw the big picture. Hell the Make kit didn’t even have the proper parts for the second project which was really a letdown. Getlofi sent both of us the wrong pcb for his “super easy 555 lfo” kit and didn’t bother to respond to even a recent email :( Lilypad I & II had edge traces that peeled up with the slightest soldering heat. He still tinkers like me and sends me links to HaD articles occasionally. I try to keep him going by sending what extra goodies I get for him to tinker and take apart. Basically, after myself getting burned several times (not even counting the times something showed up 3 weeks late because someone’s aunt’s cat was sick) I called no joy and am now happy with my setup. I really feel for the lil guy as we all have put our savings and allowance and other pittances to buy this stuff that is supposedly some sort of way of life only to find the same customer service as Mcdonalds on the other end.

            Oh man the ARM processors- spent the better part of a year fixing ports for MIPS insanity. When I got done and back to straight ARM (no pun intended) it was a bit of a relief.

            Thanks for the response and will send the nephew to avrfreaks :)

          2. From what I’ve seen, the avrfreaks forum members tend to have had more than a bit of attitude when it comes to someone mentioning “Arduino”. Now – if you have questions on the ATMega328 (and it is something obscure or uncommon), and you show you have done your homework, and you aren’t using the Arduino infrastructure (framework, libraries, etc) – you might just get some help.

    2. Actually most of the hate is from the Poseurs that cant even do anything with electronics. Anyone that has a Clue about electronics appreciates the Duino and what it does.
      The hates dont like that common people can do what they do and feel threatened that they are not special.

      1. Anyone that has a Clue about embedded development has looked inside the Arduino source code and run screaming; just see the source to digitalWrite to know the definition of wasted clock cycles. Similarly look at attachInterrupt.

        Actually, the “common people” can’t do what an experienced developer can do, because the Arduinio sandbox is too small for big kids to play inside. This is why you see more advanced 3d printer firmwares (Marlin, etc) increasingly drop the use of Arduino function calls.

        Does not help that Arduinos are overpriced too. Pro tip: for you HaD prize entrants, using the same processor as an Arduino will add way more to your BOM than necessary.

        1. Simply put, Arduino is to embedded systems what Visual Basic was to programming: it allows common people to act as embedded systems programmers like VB did for non programmers. There are good and bad aspects: the good one is that anyone with a really good idea (believe me, most of them aren’t programmers) can hack it together at least to the point it can be shown to other people until a real programmer will pick it up and implement it the proper way. The bad one is that most of them will stop at that point.
          Arduino should be treated as a temporary prototyping platform for ideas, not a development one for finished products. You implement X overnight using an Arduino, that’s perfectly good, then once it works you turn it into a product Y by rewriting the code (*) to fit into the smallest and cheapest possible processor that can do X the Y way.
          IMO that’s how Arduino should be used. BOM cost aside, I would never ever put it into a finished product.

          * yes, rewriting! Don’t get scared by the concept of not reusing all code; every system has its own set of libraries, different configurations, pinouts, etc. Fighting to obtain 100% code reuse is a lost battle that produces lazy programmers and bloated programs.
          Sometimes, I’d say often, rewriting code will make you develop much faster; been there done that.

          1. Exactly.
            At my office we are working on the next rev of our ASIC. Right now it is in FPGA from. The first rounds of testing of the FPGA version was done using an Arduino over SPI. Then next round of tests moved to a Discovery board and C.

          2. Sometimes, I’d say often, rewriting code will make you develop much faster; been there done that.
            I’m actually finding that out the hard way, and very likely won’t finish v.1.0 of a product I’ve been slaving on most the summer.

          3. Very true. If everybody accepted Arduinos as what you described (and what they are) there would be no debate. Either way, accepting this point of view would significantly reduce grumbling from both sides.

        2. > Does not help that Arduinos are overpriced too.

          Official Arduinos are overpriced. But screw that noise. You can get full arduino uno clones for $4 and Arduino Mega clones for $10 and less occasionally. That’s certainly not in the realm of overpriced. Sure, you’ve gotta wait for the slow-boat but at those prices it’s easy to have a couple of extra just floating around the house (I know I do!)

          1. Until the manufacturers of the $4 clones, develop new products and sell them for $4 can you day the the day you can say the arduino brand name product is too expensive, but not until that happens. No matter the product not supporting the originators can only insure, nothing new gets developed. Not supporting the originators can only mean a slow death for open source hardware. Yea you can set at the bar crying in your beer blaming the name brand. That is until someone walks up behind you slapping you on the side of the head for being unreasonable. someone who grew up understanding we can’t have everything we want.

        3. I’m not going to say that there isn’t room for improvement, but there’s a good reason why those functions look like they do. The point of the Arduino “ecosystem” – if you will – is to provide one common API to core functions among multiple hardware platforms.

          For instance, for the most part you can take your code – and one quick compile later upload it to an Uno (ATMega328) – but then if later you need more SRAM or Flash space, dropping it on a Mega (ATMega2560) can be done with little to no code changes (ideally – there might be some pin re-assignments needed, among other small unavoidable modifications).

          That isn’t to say that such a migration will ever be perfect (going from an Uno to a Yun might not be as smooth of a transition) – but because the libraries and framework is designed to support all of them and compile properly to them, it at least makes the migration somewhat less of a hassle (in many cases much less).

          No – it isn’t as efficient at targeting a single processor – but really the Arduino is about introduction and learning, and less about being a production-level embedded system. It’s an easy way for people interested in embedded design to get started at a fairly low cost and without a the headache of building up the proper tool-chain to compile and upload code.

      2. To make it simple for you:
        * C++ with no damn good reason. C++ on avr is flash-hungry. Lots of stuff not supported (e.g. no exceptions) and it’s a pain in the ass to make a project portable, and they use little to no C++ features. Using linux-kernel-like OOP in pure C is still way more memory efficient.
        * From the first point – little portability. You can’t make a project and build it batch for 3-4 hardware revisions. So their ‘portability’ arguments is pure BS. The numerous ‘ports’ are highly chaotic, incompatible with one another. And you can’t make ONE project to reuse several ports.
        * And no 8051 port. Yes, it’s old as hell but some 8051 chips are quite interesting and cost efficient: cypress, stc, nrf24lu1, etc. sdcc only has C support.
        * Bad abstractions. e.g. In case of linux kernel GPIO API abstraction is a good idea. In case of arduino and 8-bit stuff it’s a very bad idea that makes it ~800 times slower. GPIO isn’t THAT hard to learn. Besides, their pin markings always annoys you, when you need to make use of raw MCU registers.
        * Writing an IDE from scratch was a VERY bad idea. IDE or even a simple text editor is a surprisingly complex piece of software. arduino IDE will never be able to compete with them, because they are spreading the effort.
        * Lies. “Arduino proogramming language”? Really? Since when C++ API became programming language? I understand that it’s marketing, but nevertheless when a student writes in his CV “arduino” in the “programming languages”… It is just not funny.
        * Buildsystem. Yes, there is one in arduino although you know little of it. Recompiling everything everytime you press upload, even if you haven’t changed a line in your tmp/. Way to go. Really annoying when you work on heavier ARM ports of arduino on a netbook. And C++ takes a lot more CPU power to compile, making it even slower.
        * Debugging. No support in editor, but I don’t care. console gdb’s my friend. But debugging C++ on bare metal is usually a very… hm… even debugging a race condition somewhere in the linux kernel can be less tedious.
        * Finally. Embedded MCU software tends to have a LOT of compile-time parameters you don’t usually need for desktop software. For desktop you may only have –enable-mysql and –enable-posgres and live with this alone. For embedded – have a look at Marlin’s Configuration.h header and witness the insanity. Hint: Kconfig

        And yes, I’m full time linux kernel dev for a SoC company, so I’m spoiled by nice upstream code. For my own projects I ended up with my own buildsystem: https://hackaday.io/project/1470-Antares%3A-Linux-kernel-like-buildsystem-for-uCs
        It’s not a panacea, and I won’t likely ever compete with arduino by its user base – but it’s the best I came up with.

        1. Another person that clearly just doesn’t get it. The arduino is NOT for you! It’s not for a “full time linux kernel dev for a SoC company”, or a grizzled firmware developer, or a veteran c guru. It doesn’t matter that it doesn’t support 8051’s, or have a perfect IDE, or can take a while to compile with a really big project.

          The arduino is, first and foremost, a development platform for people who don’t have much development experience. It’s a starting point, as one of the previous commenters said. For beginners. And it’s one of the best on the market, and a big part of that is because it comes with a familiar plug (usb), and an easy to use IDE with tons of examples. It also has a beginner friendly community. When you’re starting up, you dont give two craps about portability, or how fast your code is running, or how efficient it is, or that you cant do certain advanced things. All you want to do is make your light flash. Then, you graduate to more difficult projects. Output some text to you pc, maybe, or to a screen. Then you get more advanced, etc etc. Its all about learning about coding, not about squeezing every last cycle out of your blinking light program. With the arduino, everything you need to start programming is right there in the box. So, when youre making these asinine comments about how crap the arduino is (not that you suggest an alternative), just remember that this isn’t for YOU, on your mighty programming throne of wisdom, its for the newbies, to help them on their way to your level.

          1. I’d say it’s also not just for the noobies, but also for those hobbyists who just want to get something done and proven, and not waste a bunch of time tracking down obscure issues (with the code or the hardware).

            To an extent, this is true even for professionals – in the case of when they want to make a quick proof of concept without having to jump through a ton of hoops in their build tool chain or whatnot.

            Think of it as “rapid application development” for hardware – with all the pros and cons that can bring.

            If a production level or more optimized design is needed, that can be done after the proof-of-concept has the bugs worked out (ie – get the steak first – then work on the sizzle).

            And sometimes – all that is needed for a project by many is “good enough”. It may not pass muster by a seasoned EE or such – but it doesn’t have to.

          2. I have no problem with newbies using it for their first blinky led. I have a problem with people stucking in arduino swamp for the time being. It’s like walking in kids clothing for your entire life.
            We see here regularly serious projects e.g. 3d-printers using arduino, where it is clearly NOT the tool for the job. I’ve just written above why. After all the #1 skill for any engineer is pick the right tool for the job.
            Second, if you really want to _prototype_ something rapidly – eLua is a great deal faster.

        1. This. It’s a shame that one of the better “hacker/maker news” sites has such a juvenile community.

          One of my mantras is “use the tool that gets the job done”. There is no shame in using Windows if it’s the easiest or most efficient way to do a particular job. Likewise Arduino; sometimes it’s a good fit for the entire project, and sometimes it’s just good for prototyping. Sometimes it shouldn’t even be considered. But the irrational hate that exists for it on this site boggles the mind.

          I won’t be surprised to see the Raspberry Pi become the next big object of scorn and hate; I’ve already seen a few haters in each Pi post. Again, the Pi is a great general purpose tool; it can be used for small or large projects, for prototyping or for the heart of the final build. And there are some things it simply shouldn’t be used for even if it technically works.

          For the record, I use/have used the following when building projects: Windows, GNU/Linux, Mac OS, Haiku, Arduino, Raspberry Pi, Beaglebone, TI Launchpad, 555 timers, LM386 amps, and many, many more “hated” chips, platforms, and OSes. Bite me, haters! :)

          1. Sorry, it was more trying (and failing) to get Haiku to recognize a particular piece of hardware, to scratch an itch. I’m no programmer, and after multiple sessions of failing to figure it out, I gave up. I just threw it in the list I was typing without thinking since it was on my mind, sorry. If you’re curious, I was trying to get the OS to recognize and talk to a Dymo label printer for an IoT idea I had.

            So no, unfortunately no hardware dev on Haiku! But that is always a possibility if someone wanted to port over their favorite open source toolchain. The OS itself is more or less stable enough for daily use; I’ve had it bare metal booting for several months on my main workstation (Lenovo ThinkCentre M91p) and it’s only crashed a few times. The terminal is a bit quirky, but it’s supposed to be POSIX compliant, so there’s that. It’s not a complete OS by any stretch though, so it may be like trying to put a flat tire on a car with a broken wheel hub, for all I know (i.e. what do you fix first?).

          2. >One of my mantras is “use the tool that gets the job done”. There is no shame in using Windows if it’s the easiest or most efficient way to do a particular job.
            do you think working on Windows is efficient (in any case)? i dont think so. i feel crippled when using Windows for _any_ work. (be it flashing code or porn). in term of learning experience, Windows is the _worst_ thing to use.

          3. @Kuldeep Singh Dhaka:

            Sometimes, yes, Windows is the only way to do a certain task. In those (admittedly few) cases, it’s the ONLY tool for the job, not just the best one. I run into this at work from time to time, as part of my job is running a test bench for any returned or damaged peripherals we get in. While I spend most of my time both at work and at home in GNU/Linux, occasionally I have to boot into Windows to properly test things like printers, scanners, etc.

            Also, I have a few games that simply don’t run or don’t run well enough in Linux, so I will boot to Windows to play them. Again, right tool for the job, even if the “job” is playing games.

  1. It’s incredibly laughable how sadly pathetic a bunch of people are, that we as a community can hate each other -so much- that we develop browser plugins to hide these things.

    Yes I know it’s entirely a joke/satirical but the fact that there’s even a stereotype there to joke about is just saddening -.-

        1. The goal was satire, but due to clumsiness on my behalf it probably came off more as sarcasm. I hope it didn’t come off as rage, as that definitely wasn’t my intention. I’m generally against strong polarisations of opinions. This comment section has some interesting and well reasoned debates on both sides.

          My intention was to make fun of an opinion held by a number of vocal people, not present any alternative opinions or attack any individual persons opinions, beliefs, or creative output, and in that respect hope that it is different from the anti-arduino hate.

          1. Your intentions were noble, but you walked into the bear cave covered in honey. I took it as the satire you intended and got a good laugh out of it, but then I’m not a platform hater (how juvenile is that concept anyway?).

  2. ROFL!!!

    And a +10 to Brian for his comment – “or tell him he could have done the same thing with a 555”

    Personally I don’t get the hate-duno mood. You have to admit that it has been a successful platform. I used one yesterday to map out the temp/resistance curve for a thermistor back though the serial monitor. Why write code in a lower level language when you can do the quick and dirty and get it done quickly. Ahhh, try and do that with a 555.

    As for the haters, they’re probably programming in C using Atmel Studio. Real coders write in assembly lol.

    In my kit I have ATmega’s (not just the duino kind), PIC’s, STM32’s, XMOS, CPLD, FPGA. They’re all different and suit different situations. I sometimes use the ATmega328P-PU and Arduino IDE platform (sketch) when I have a simple task that I want to do quickly. Anything that saves me time is great even if the end project will be on different hardware.

    1. My biggest issue with the Arduino is not the platform itself, but the evangelism by its user base. My general impression is that they use the Arduino for even the simplest task, forgetting to explore and learn *real* electronics. Remove the Arduino from the equation and most will be unable to build even the simplest circuit.

      Arduino is like Visual Basic. It’s OK to start off with, but don’t get stuck with it.

      1. To some degree, not everyone wants to spent hours researching and implementing a real solution to something they only need to kludge together. I’d consider myself to be on one of those boats.

        While I can appreciate the work, research and talent that goes into doing things the right way, I also value my time and don’t care to learn yet another programming language or try to understand the 20 different ways manufacturers try to approach the same problem. Am I lazy? I won’t deny it… Would I rather kludge a quick solution using a platform I’m familiar with even if it is grossly overpowered? Absolutely!

        Granted, maybe it’s because my background has been mostly focused on mechanical engineering and I lack the memory needed to tackle electrical as well. ;)

        1. You do realize that if you’re proficient in C you’re pretty much covered for most embedded stuff *you’d* care to do?
          So you don’t need to “learn yet another programming language”- just learn the one that works [basically] everywhere.

          There are valid excuses for using an Arduino. Not wanting to “learn yet another programming language” is not one of them.

          1. I’d hesitate to refer to myself as proficient; capable might be a better word to use. In terms of programming, one resource I would hesitate to do myself would be generating libraries to interface with other controllers. In terms of Arduino there seems to be a fairly decent collection amongst only a few resources and I find it appealing that I can quickly and easily find a library that can help reduce my workload.

            In many ways this is a case of I’ve found a platform that is quick and easy for me to work with and has information that is readily available without spending a tedious amount of time.

      2. You kinda sound similar to arguments I read in the early 90’s about the PIC platform (and in particular the Parallax Basic Stamp)…

        Is the Arduino overkill for blinking an LED? Sure – a 555 (or some kind of transistor oscillator circuit) could easily handle that job.

        But what happens when you want to control the rate of speed of that LED blinking based on messages coming from the serial port?

        Yeah – you could do that with discrete logic ICs and such – but it wouldn’t be easy, and if you had a bug or needed to update the command set or expand to two different LEDs…well, you get the idea.

    2. I like atmel studio. Visual Studio is a pretty nice IDE and its much nicer (code completion, popup dox) than the arduino notepad + compile button.
      I find visual studio nicer than eclipse which seems to be the norm for IDEs to be based on these days.

      Its useful that cheap modules for cool chips generally come with an arduino library though, makes them easy to do a POC before porting to avr-gcc or another micro.

          1. And beginners don’t benefit from code completion / hinting, syntax highlighting, error highlighting, popup documentation, code jumping / shortcuts, method lists, error / warning lists?

            All simple things which make coding 100X easier!

          2. When I learnt programming we weren’t allowed to use any of those things. It helps to develop good form. If you know how to write your code in a plain old text editor you’ll be able to do it anywhere. If you must rely on the features of an IDE you’ll struggle when that IDE goes away.

  3. I’m sorry but I’m getting tired of all the Arduino articles. It seems like people are not able to program MCUs anymore.

    This is not intended as a flamebait – I understand that a lot of people enjoy Arduino and I know that it’s an effective platform to get things done.

    But for me it’s extremely boring, there’s no “hack” factor – it’s like reading articles about controlling stuff with PC connected via USB. What’s the point?

    I also skip articles about 3D printed stuff and quadcopters. I’ve known photolitography for more than 20 years and I don’t need to know about every part that can be made at home with it. The same for every quadcopter built.

    1. Seriously. Just because something uses $Buzzword doesn’t make it a hack. Site ain’t called makeaday, and for good reason!

      Here’s how I’d like to see it go down:
      If any link in the article is github, retrieve the code.
      Compare it to all the example sketches in the Arduino IDE, or Raspberry Pi examples, or whatever’s appropriate.
      If there’s a >95% match, vanish the article.
      Otherwise, pass it through.

      Voila. Post volume drops, interesting hacks remain.

      Incidentally, yes, certain platforms seem to attract annoying applications or people, and that phenomenon is hardly new. Nor is filtering those posts:
      http://www.instructables.com/id/Block-Knex-InstructablesForum-TopicsGroups!-Now/

      1. As far as I can see, there is no good reason why this site isn’t called makeaday, because that’s a more accurate description of what it is. HaD staff, if you’re reading this, maybe a name change might help the “hardcore” get the message that this site is about building cool stuff and not about how l33t you were in doing so.

  4. 1) The dichotomy you present between using an arduino and being deliberately obscure is a false one.

    2) You cover arduinos for the page views, not for righteous notions of democratising tech.

    3) ‘The arduino is a legitimate tool’ is a facile thing to say. That’s self-evidently true for some situations. It’s the level of misunderstanding that it generates about what it can do and what it can’t do, and the resulting confusion that generates that can lead bloggers like you to describe anything other than arduino as ‘the most obscure possible way’ that is the problem.

    Please get back in your wearable, now-programmable-in-javascript! box.

  5. TOTALLY LAME!!! I’m so awesome that I could’ve done this with a 47 byte long binary patch. What was the author thinking wasting all of the valuable disk space and bandwidth with a plug-in!?!?!?!!!!! GOSH!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

  6. I usually find the comments on here really interesting to read, as a lot of people here are very knowledgeable, talented and creative. I enjoy the article, and then I enjoy reading the criticisms from a wide variety of people with different skillsets. If someone comes up with an inventive way to replace the Arduino in a post with just a paperclip and a piece of tape that is something that interests me, even if their delivery is a bit abrasive.

    I’m not sure what the benefit is to belittling these people.

  7. I’m a long time reader of HaD, even going to the first meet-up in Philly back in… ’05? I’m part of the anti-Arduino crowd here. I love Arduinos. I keep several on hand. I follow their releases and visit their tent at Maker Faire.

    The problem is HaD’s obsession with them. You had a post at one point going, “I know we rant about arduinos….. and we post a lot of them… but look, AN ARDUINO CLONE (that does nothing new or special)”.

    You often comment on others projects in your blog posts with “Imagine if he strappedn an Arduino to it!”, even when it makes no sense. It’s excessive. We joke at my space that hot-glueing a Arduino to it will get it on HaD. “I made a nice wooden stool” – “Hot glue an Arduino to the bottom and it’ll be all over HaD”

  8. Arduino is a means to an end, if it works for your situation , use it. The problem I have is when Arduino users want to insist everything be done with it or a shield without considering other options that would be just as easy if they considered something else.
    Closed minded people are the scourge of electronics.

  9. There is also the legal side of things. By claiming anything remotely relative to microcontroller as Arduino(TM) or -duino, HaD are diluting their trademark. I am surprised that their lawyers haven’t done anything yet. Trademark holders who do not actively defend their trademarks would lose them (unlike copyright holders).

    http://arduino.cc/en/Trademark/HomePage?from=Main.Trademark
    >Although the electronic design of the Arduino boards is open source (Creative Commons CC-SA-BY License) the Arduino name, logo and the graphics design of its boards are a protected trademark of Arduino and its partners.

    >In general the name and Arduino logo MUST NOT BE used to identify products or content, commercial or non commercial that are not released by Arduino.

    1. “I am surprised that their lawyers haven’t done anything yet.”

      Oh are you being DELIBERATELY OBTUSE???

      Did you leave out this part ON PURPOSE or what?

      “Note that while we don’t attempt to restrict uses of the “duino” suffix, its use causes the Italians on the team to cringe (apparently it sounds terrible); you might want to avoid it. “

  10. I’d be interested on how the anti-duino crowd or those who like “programming in assembly” would suggest how a newcomer can learn those skills.

    I’m a mechanical engineer, with an education in that field. I’ve now started to get interested in electronics (Specifically mechatronics). The Arduino allows me to stuff some things together and get a working project, with plenty of examples on how to implement the basic stuff. I’d love to learn how to program a barebones chip and make custom PCBs but the amount of information I’ve been able to find on how to program a basic ATmega is very slim.

    1. Well sir, a good way to start is from where you are. I suggest you dive into the Arduino source itself. Start with digitalWrite and digitalRead. You’ll find a few complicated layers of mapping pin numbers to port addresses in memory. Take your existing code and replace the digitalWrite calls with direct port writes.

      Next, move onto analogWrite and analogRead. analogWrite will teach you about directly configuring the PWM. analogRead will teach you about the ADC. analogRead will be the harder one, so bone up on RC time constants, impedances and sampling times.

      After that, learn how the UART is configured and how the interrupts work. (UART is easiest because you should have an FTDI adapter already). Then move onto i2c and SPI.

      If after this code investigation you feel that Arduino wastes too many cycles then continue to dive deeper. If you’d rather “save your time” keep using Arduino

      1. … and don’t forget to play with the on die temperature sensor, take a look at software PMW… sniff some 433MHz signals… the list is endless… Arduino is, as others so rightly point out.. a tool. Its a pretty basic Swiss Army knife perhaps, not the “Wenger 16999 Swiss Army Knife” perhaps, but neither is it a roughly hewn flint axe. There are other sharper, bigger, fancier tools, but sometimes you just need something simple.

  11. Seems a crap way to respond to some valid and constructive criticism, great way to split a community and promote ignorance and intolerance.

    Yeah some people hate *duinos for frivolous or tribal reasons, some people hate the duino fanbois / evangelists, etc. just like PC Vs Mac or whatever, but the more common reason for dislike of *dunio projects is that they tend to fit the axiom “To a child with a hammer, every problem is a nail”.

    Running with the crazy notion that HaD is interested in electronics from an educational point of view (as in, maybe we’ll all learn something from a given hack) rather than just a means to harvest clicks for their evil corporate paymasters, what irks is that tasks which could be accomplished with a simple analogue circuit are achieved instead with a $40 *dunio board and a pile of half-understood code trawled from the backwaters of the internet. And the next guy who wants to make something similar will copy *that* project plus a few more sticking plasters over the cracks, because no-one’s dropped so much as a hint that there might be another way.

    After all, we’re here to push things forward, not just copy-paste, and suggesting ways to do stuff better is not “hating”.

    Or, y’know, you could just build a wall.

    1. confusing “hate” and “criticism” is a symptom of a psychological disease

      “fanboy-ism” irrational “love” for obsolete technology is another one

      remember folks, you can’t learn about cars unless you start with a model T

      1. I think you’re confused, or at least not writing in fully comprehensible sentences.

        I’m not saying that you can’t write code unless you know how the electrons are moving (although some appreciation of the system as a whole is a positive thing), I’m saying that when the stated aim of a project is to blink an LED, and the tool used to achieve this is a computer, it is not hating or negativity to suggest simpler solutions to the problem.

        Many people here have made the tool analogy of an Ardunio as a screwdriver. I’m saying that when someone’s using a screwdriver to bang in a nail, offering them a hammer doesn’t make you an arsehole.

  12. I’m sorry – WHAT!?

    “oh god not another arduino based project!” – that’s like saying: “christ I’m sick of using this screwdriver to put screws in!”

    Its a Tool! And as put above, every tool has its preferred application.

    It’d be much better though if the ‘duino range started pointing toward their chip set range (AVR, ARM, whatever) and working with it rather than just constantly encouraging expanding upon the arduino platform.

    1. So you’d like more complex, technically accomplished projects?

      Some people might like easier stuff for beginners.

      I’d suggest market research except it’s stupid bullshit. But at the least maybe a simple-ish survey? You’d probably find HaD is all things to all men, or at least that’s what the readers expect, a site that suits them personally.

      Still doesn’t mean some changes wouldn’t be better, might be that some of the stuff is too simple for most of us. Certainly seems that recently, year or so, content has doubled, and quality hasn’t. The world can only produce really interesting hacks at a certain rate, if you wanna publish more often you’re going to have to loosen standards, which is annoying, and means stupid nonsense gets in the way of stuff that’s interesting.

      HAD could even, maybe, email interview a few readers. Or maybe set something up at one of the events they go to.

      Arduino-hate itself is silly, but maybe it’s symptomatic, or representative, of a more serious problem.

      1. We actually have picked up a few readers as regular writers, and as guest spots over the last year. Always open to more interesting stuff, its just hard finding it. If you have suggestions, hit the tips line.

    1. so you are okay with the high prices and the slow clock speeds and the high power consumption and the buggy libraries and the weird hardware architecture and the mass migration to ARM?

      1. Yep but it’s for prototyping, or making gadgets and toys. If someone wanted to use them to guide missiles, I would gently recommend that they reconsider. All the things you mention don’t matter, if playing is one of your main aims. And it’s good to get people to play with electronics, play is when most of our mental work gets done. The end result is we get lots of new geek-friends to play with, and we can help each other and play together. Where would hackspaces be without Arduino? Seriously!

  13. Some good arguments and some very poor. It’s funny really seeing all the crap that gets spewed about this topic.
    I’m for and against it really… Arduino is good for beginners, I’ll give them that.
    I don’t feel it has any place in projects that are sold to consumers though… Spend the time to do it right and manufacture your own board. This copy/paste mayhem is getting pretty bad. It’s not just code either, it’s all the breakout boards that get chained together.
    It’s turning into a big game of electronics lego.
    Once again, I’m for the whole thing for learning and development, but not for ‘finished’ projects.

  14. LOL!

    My hate for Arduino stems from one thing alone – they’ve altered existing terms. It’s not a program, it’s a “sketch”. It’s not written in C++, it’s “Wiring”.

    I am PROUD to be a hacker. I write PROGRAMS in C++. I could say I write sketches in Wiring, but by doing so I’d be affirming Arduino’s notion that I’m a simpleton, who will run away unless coddled with “friendlier” terms. I take personal offense at that, and am surprised the hacker community tolerates it. Where’s the pride, folks?

    1. That’s just to reassure people who are sure that “programming” is far too complicated for them. I dunno if you’ve noticed but there’s a current of anti-intellectualism about in the world. People proudly say, “Oh, I couldn’t do that, I’m dumb!”. They don’t always want to hear that they probably *could* do it, they’re not dumb, and that dumbness shouldn’t be something to brag about.

      So when their guards down, if you can suggest “Why not SKETCH a WIRING for this Arduino? No, it’s not “programming” or anything HARD, it’s just SKETCHING! You can sketch!”, you might get past the self-deprecating bullshit and give someone a chance to stretch themselves mentally. Which is a good thing in general, and gods help us, the world needs people to think more and understand logic.

      We won’t call it logic though of course. We’ll call it “choosingness”.

  15. At last. something to make them disappear.
    Tired of: arduino gun.
    arduino car. arduino girl. arduino cat.
    arduino is for lazy people.
    Stuck it in usb port, copy paste others work, upload, PUFF…. a cnc machine comes to life.
    This is like people who ride cars and dont know it has an engine.

    1. There’s no virtue in doing things the hard way just for the sake of it. Why not take away the needless toil? That’s a large part of the reason we have technology.

      Of course there’s such a thing as TOO simple, being patronising, and talking paperclips. But there’s obviously a big demand for Arduinos, and it’s fair to assume that a lot of those people never did any MCU work before.

      Imagine creating your own project to use GPS in the early 1980s. You’d need cabinets full of boards, Masters degrees, and crib-sheets from classified documents. But now fathers and sons, and a few daughters, routinely interface GPS to mobile phone modules to track their dogs or their bike rides. It’s democratising. And the hardware’s still powerful enough to achieve real results.

      Of course you can always write your own libraries to interface with Arduino if you want to, in proper manly assembler or C. Or just not use it at all, s’fine, nobody’s forcing you to. Still plenty of other microchips in the world.

  16. Alla that reminds me about the bold times of Linux vs. Windows . Just a lot of time wasted. Those are tools, their usage makes sense only in relation of what you do with them. Just try to make something with some sense in it and be happy. All the rest is childish skirmish.

  17. This reminds me of the old times of Linux vs. Windows. A lot of time wasted. Those are just tools and they make sense only in relation to what you do with them. Just make something with some sense in it and be happy. All the rest is childish skirmish. Don’t look at the finger when your friend is pointing the moon ! :)

  18. This hack would be so much better if it just incorporated an Arduino! Maybe there could be a box that attaches to the PC. It would have buttons to select filter mode. Maybe some blinky lights that do something to indicate to the user when it has blocked an article. How about a little buzzer that reads the skipped articles in morse code just to make sure the user doesn’t miss anything good. Of course this box would all be managed by an Arduino!

  19. It’s not all the Arduino articles that are the problem. When is the last time Hackaday had one of those? It’s all these Propeller articles that are the real noise. Prop this, Prop that, Prop everything. Come on, why not just call this Propaday already?

  20. This post shows perfectly the problem which arduino is only a symptom of: some people are incompetent – they claim to be the uberhaxxors but in reality don’t have a glue about how stuff works. Why the hell would anyone want to install a browser plugin to hide this stuff? Include it in the website (this doesn’t even require a login/registration but can be done merely with cookies).

    Nevertheless – hackaday is surely getting less and less attractive for people looking for real hacks…

  21. What’s old is new again. The cycle of this versus that hate always comes full circle. Vacuum tube vs. Transistor, Analog vs. Digital, Windows vs. Macintosh, Linux vs. Windows, Android vs. iOS, Ardunio vs. Everything else. Whenever some new bit of technology comes out that just might make SOMEONE’S life easier, the haters always come out in force. Hell, if it wasn’t for someone looking to make their life easier, we wouldn’t even BE ABLE to read this article on http://www.Hackaday.com, because there wouldn’t even be a freaking World Wide Web!

    We now return you to your regularly scheduled program…

  22. Can we get a blocker for all the HaD Kickstarter post? Seriously, I think I know a scam when someone tells me they can build an ink pen that writes in any color or tries to sell me a router with every possible radio possible and a 9″ screen.

  23. This is sad really; catering to those who can’t figure out what is life’s small shit not to sweat. Not that is any hair off my ass if some chooses to use the plugin, I guess that’s a whole lot better than Hackaday asking themselves, if they are featuring too many arduino projects in set period of time. Most likely saying in these terms may insure this wont be read, but the dickhead like comments as some of those here are is probably a good reason not to direct others to Hackaday. Not to use the arduino because on takes offense at the more friendly terms used the arduino creators says more negatively about the one taking offense than those who use the arduino. Why should it matter if free and open source software is use to bring free and open source hardware to life? What ad odd bitch about the arduino. No one can can know everything there is is to know about everything, so putting down some one who doesn’t know what you think they should know is counter productive. Was ask where is the pride Certainly there is no pride in many comments to Hackaday articles. A reputation of being exclusive can’t bode well when it come to garnering support hacker spaces, hell it make it hard to get a library to except as free donation of an electronics tool kit to be lent out to patrons.. Tone down the rhetoric wherever you espouse it damn it, our favorite past times may depend on doing so.

  24. So, instead of dealing with a legitimate problem, you choose to be a snarky asshole. Very adult of you.

    Maybe if HaD spent a little more time vetting or editing its articles, and a little less time thinking up overly sensationalized headlines for them, people would have less of an issue with all the projects that needlessly incorporate a Arduino/RasPi/3d printing.

    This is not to say the EVERY project containing those offenders is unnecessary. Only that many are.

    Example:

    If your goal is to LEARN to use an Arduino, and you choose to make toast with it. Fine. Grab your bread, toaster, thermocouple, Arduino, and go to town. The HaD article title could read “[PERSON] learns to use an Arduino by making toast”.

    If your goal is to MAKE TOAST, then incorporating an Arduino is almost certainly excessive. This gets compounded when the HaD article title ends up being something like “Precision, Arduino controlled Maillard reactions for fun and profit”.

Leave a Reply to FCancel reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.