Arduino Vs. Arduino: The Reseller’s Conundrum

Over the last few months, the internal struggles between the various founders of Arduino have come to a head. This began last November when Arduino SRL (the Italian version of an LLC) sued Arduino LLC for trademark infringement in Massachusetts District court. To assuage the hearts and minds of the maker community, Arduino SRL said they were the real Arduino by virtue of being the first ones to manufacture Arduino boards. A fork of the Arduino IDE by Arduino SRL – simply an update to the version number – was a ploy to further cement their position as the true developers of Arduino.

This is a mess, but not just for two organizations fighting over a trademark. If you’re selling Arduinos in your web store, which Arduino do you side with?

[Nate] from Sparkfun is answering that question with a non-answer.

Currently, Arduino SRL is the only source of Arduino Unos. Sparkfun will continue to buy Unos from SRL, but they’re not necessarily siding with Arduino SRL; people demand blue Arduinos with Italy silkscreened on the board, and Sparkfun is more than happy to supply these.

There are, however, questions about the future of Arduino hardware. The Arduino software stack will surely be around in a year, but anyone that will be purchasing thousands of little blue boards over the next year is understandably nervous.

redboardThis isn’t the first time Sparkfun has faced a challenge in Arduino supply. In 2012, when the Arduino Uno R3 was released, all the documentation for their very popular Inventor’s Kit was obsoleted overnight. In response to these supply chain problems, Sparkfun created the RedBoard.

Sparkfun has always offered to pay royalties on the RedBoard to Arduino LLC, just as they do with the Arduino Pro and Pro Mini. Effectively, Sparkfun is on the fence, with offers to manufacture the Arduino Zero, Uno, Mega, and Due coming from the LLC.

The reason for this is consumers. If someone wants an Arduino SRL-manufactured board, they’ll buy it. If, however, a customer wants to support Arduino LLC, that option is on the table as well.

It’s not a pretty position to be in, but it does show how someone can support one Arduino over another. In a year or two, there will only be one Arduino, but until then, if you have a preference, at least Sparkfun is giving you a choice.

Credit to Sparkfun for the great Spy vs. Spy image. Why don’t you sell googly eyes?

An Apple ][ emulator on an Arduino Uno

April Fools’ Day may have passed, but we really had to check the calendar on this hack. [Damian Peckett] has implemented an Apple ][, its 6502 processor, and a cassette port, all on an Arduino Uno. If that wasn’t enough, he also uses a PS/2 keyboard for input and outputs analog VGA. [Damian] is doing all this with very few additional components. A couple of resistors, a capacitor and some very clever hacking were all [Damian] needed to convince an Arduino Uno that it was an Apple.

Making all this work boiled down to a case of resource management. The original Apple ][ had 4KB of RAM and 8KB of ROM. The ATmega328 has only 2KB of RAM, but 32KB of Flash. The only way to make this hack work would be to keep as much of the emulation and other routines in Flash, using as little RAM as possible.

The core of this hack starts with the MOS 6502, the processor used in the Apple. [Damian] wrote a simple assembler which translates the 6502 opcodes and address modes to instructions which can be executed by the Arduino’s ATmega328. To keep everything in ROM and make the emulator portable, [Damian] used two large switch statements. One for address modes, and a 352 line switch statement for the opcodes themselves.

A CPU alone is not an Apple though. [Damian] still needed input, output, and the ROM which made the Apple so special. Input was through a PS/2 keyboard. The PS/2 synchronous serial clock is easy to interface with an Arduino. Output was through a custom VGA implementation, which is a hack all its own. [Damian] used the lowly ATmega16u2 to generate the video timing. The 16u2 is normally used as the Arduino Uno’s USB interface. The only external hardware needed is a single 120 ohm resistor.

The original Apples had cassette and speaker interfaces. So does this emulated Apple. [Woz’s] original cassette and speaker interface accurate loops to generate and measure frequencies. One of the trade-offs [Damian] accepted in his 6502 was cycle accuracy, so he couldn’t use the original routines. Not a problem though, as he was able to write simple functions to replace these routines and drop them in place of the Apple’s own ROM calls.

The Apple ][ ROM itself is handled as one giant character array. This includes the system monitor, Mini-Assembler, Sweet-16, and [Woz’s] own Integer Basic. [Damian] caps off this incredible project by booting his new computer, loading a  Mandelbrot set program from cassette -or in this case an audio file stored on his cell phone, and running it. The well-known fractal is displayed in all its glory on a modern LCD monitor, driven by a microcontroller, emulating a computer from nearly 40 years ago.

Continue reading “An Apple ][ emulator on an Arduino Uno”

Arduino IDE Forked

As if it weren’t confusing enough in the Arduino world these days, now we’re going to have to deal with conflicting version numbers for the IDE. Yup, it’s been forked. Arduino LLC is offering a recently-updated version 1.6.3 at arduino.cc, but Arduino SRL has bumped up the version number to 1.7.0 at arduino.org. The conflict in naming and versioning has not gone unnoticed.

For those of you who’ve been living under a rock lately, the company that developed the Arduino (Arduino LLC) and the company that’s been manufacturing most of the hardware (Smart Projects SRL, now Arduino SRL) have stopped cooperating, filed a bunch of lawsuits, and now maintain separate websites.

According to this article (Google translate here) the versions don’t differ by much, and the 1.7.0 IDE may even be a step backwards versus 1.6.3. It certainly seems to us that the majority of the active developers in the Arduino project have been sticking with [Massimo Banzi] and the Arduino LLC camp. Of course, everything’s open source and there’s nothing stopping Arduino SRL from porting worthwhile IDE changes across to their version of the codebase.

It doesn’t take a clairvoyant to sense that this may be in response to the warning about non-licensed boards that was included in the “official” 1.6.1 release. Nor does it take a psychic to foresee confusing times ahead.

If you’re interested in doing some code-sleuthing, have a look at the two versions and leave a comment below letting us know of any substantive differences you unearth.

Thanks [Kai], and via [Golem.de].

Chinese Whispers For Arduino

The game of Chinese Whispers or Telephone involves telling one person a sentence, having that person tell another person the same sentence, and continuing on until purple monkey dishwasher. For this year’s Arduino Day, [Mastro] was hanging out at Crunchlab with a bunch of Arduinos. What do you do with a bunch of Arduinos? Telephone with software serial.

The setup for this game is extremely simple – have one Arduino act as the master, listening for bits on the (hardware) serial port. This Arduino then sends those bits down a chain of Arduinos over the software serial port until it finally loops around to the master. The result is displayed in a terminal.

With only about a dozen Arduinos in this game of Telephone, [Mastro] did get a few transmission errors. That’s slightly surprising, as the code is only running at 1200 bps, but the point of this game isn’t to be completely accurate.

Continue reading “Chinese Whispers For Arduino”

Arduino IDE Support for the ESP8266

Despite a wealth of tutorials for setting up and writing code for the ESP8266 WiFi module, there has not been much of anything on programming this cheap wireless module with the Arduino IDE. Finally, this has changed. After many months of coding, the Arduino IDE supports the ESP8266 module.

The Arduino IDE support was announced on the ESP8266 community forum. Setup is fairly simple with downloads for Linux, OS X, and Windows. This isn’t an ESP8266 shield, either: you can write code for the ESP module, connect the serial pins, and hit the program button.

The basic functions of the Arduino IDE – pinMode, digitalRead, digitalWrite, and analogRead – are available. Most of the WiFi functions work just like the WiFi shield library.

There are a few things that aren’t written yet; PWM doesn’t work, as the ESP8266 only has one hardware PWM source. SPI and I2C slave mode aren’t done yet, and uploading sketches via WiFi needs a little bit of thought. That said, this is a great introduction to programming the ESP module. If the Arduino IDE isn’t your thing, you could always do it the cool way with [CNLohr]’s programming tutorial we featured last week.

Arduino SRL to Distributors: “We’re the REAL Arduino”

Arduino SRL (formerly known as Smart Projects SRL) sent out a letter to its distribution partners yesterday. If you’ve been following along with the Arduino vs Arduino story (we’ve previously published two installments), the content isn’t entirely surprising; it’s essentially a tactical move to reassure their distribution channels that Arduino SRL is the “One True Arduino”. That said, there’s still some new tidbits buried inside. You can skip down to read the full text below, but here’s our take.

The Business History of Arduino

arduino_vs_arduino_tnA quick summary of the legal situation. Arduino LLC was formed in April 2008 by the original five founders to provide a corporate entity behind the Arduino project. Smart Projects SRL, controlled by one of the founders, was tasked with the actual production of the boards. It turns out that Smart Projects had trademarked the Arduino brand in Italy in December 2008, before Arduino LLC got around to filing in April 2009 in the USA. But everyone was friends, right? As long as the licensing fees keep flowing.

Fast-forward to September 2014, when Arduino LLC filed a lawsuit in Italy against Smart Projects claiming that they had infringed LLC’s trademark and that they had recently stopped paying licensing fees on their use of the Arduino name. In October, Smart Projects filed with the USPTO to revoke Arduino LLC’s trademark. In late 2014, Smart Projects changed its company name to Arduino SRL (a “Società a responsabilità limitata” is one form of Italian limited-liability company) and hired a new CEO, [Federico Musto].  Around the same time, Arduino SRL opened up the website arduino.org (different from long-existing arduino.cc) but with nearly identical style. In January 2015, Arduino LLC filed a lawsuit in the US, claiming their right on the Arduino name.

The Gist of it

In short, Arduino LLC has been working on developing the Arduino platform, software, and community while Smart Projects / Arduino SRL was the major official producer of the hardware for most boards. Both are claiming to “be” Arduino, and going after each other in court. So it’s not strange that Arduino SRL would like to try to keep its hold on the distribution channels. Which brings us to their letter to distributors.

March 27 Letter

Arduino-Distributor-Update-0A good portion of the letter reads to be a very carefully worded defense of why Arduino SRL is the true Arduino:

“Arduino Srl (aka Smart Projects Srl), as you know has been from the  beginning of the Arduino® project, the place where the ideas were turned into reality and into a business.”

This is of course strictly true — Smart Projects was certainly the largest manufacturer of Arduino boards. But it sidesteps the issue at hand in the trademark suits: whether they were simply a licensed producer of the boards or whether they’re “Arduino”.

Similarly, in the questions section of the letter, they ask if there are actually two “Arduino” product manufacturers, and answer “not really”. Of course, that’s true. Arduino LLC doesn’t manufacture boards, but exists to license their trademark out to fund development.

The only real news in the letter is that Arduino SRL is replacing its old distribution and logistics company, Magyc Now, with a new one named CC Logistics. Both Magyc and CC Logistics are named as defendants in the US lawsuit filed by Arduino LLC, so it’s unlikely that this change is due to legal fallout.

What this Means

In conclusion, Arduino SRL’s letter to its distributors seems to essentially follow the line of reasoning in their trademark lawsuit in the US against Arduino LLC: since Arduino SRL is doing the manufacturing and using the Arduino name, they’re the true Arduino. Whether or not this will stand up in court, or whether Arduino LLC can make its case that SRL was simply a licensed manufacturer, remains to be seen.

We’ve embedded the contents of the letter after the break. You can also download the original PDF.

Continue reading “Arduino SRL to Distributors: “We’re the REAL Arduino””

A Motor, an Arduino and a Whole Bunch of Laser Cutting

[Guido] was recently commissioned to build a kinetic sculpture for a client who wanted something unique. What he came up with is really awesome.

It’s called ORBIS: The Wooden Kinetic & Lighting Sculpture. It mounts to the wall and provides a focal point for the room – a bright flashy spinning one at that! Does it just stay there and do random things? Nope, of course not! [Guido] built it with a unique control box, two Arduino 2560’s and an Xbee to communicate between them.

Orbit Kinetic Sculpture

He was told to design it using old and new technologies so he’s got a rotary phone dial on the side of the box which allows the user to change through the different modes.

Switches on top also let you change the color of the sculpture and the speed at which it moves around. Since it’s wireless it can be easily set on the coffee table and become an instant conversation starter.

See it in action after the break.

Continue reading “A Motor, an Arduino and a Whole Bunch of Laser Cutting”