Q: Who was Swift for Arduino made by?

A: Swift for Arduino is not affiliated with Apple or Arduino. My name is Carl Peto, I am an independent software developer, working in iOS for 10 years and in professional software for 25 years. By day I do consultancy work. I invented the Swift for Arduino compiler, library and IDE in my spare time and developed concept and business with my partner Ellie Kay.

Q: Will it work on my hardware?

A: Swift for Arduino is a self contained application, designed to work on modern Macs (macOS Catalina, 10.15 or later... see below if you have an older version of macOS) building and uploading via USB to an Arduino UNO (and some other supported boards, mostly those based on the atmega328p chip). It allows you to program with a limited subset of the Swift language I like to unofficially call "uSwift" (as in 'micro Swift'). It will be fairly familiar to Swift developers, although there are many areas where you do things differently, as is normal for all microcontroller programming.

Q: Can I use Swift for Arduino on Windows, or Linux?

A: Currently the only released version of the IDE is the macOS build. However, we are committed to a Windows and Linux version in the near future if possible. See Linux or Windows for more information.

Q: Can I use an older version of macOS, Mojave, High Sierra, etc.?

A: Version 4.8 onward requires Catalina at startup as part of the licensing process, however if you have an older mac, you can use the IDE if you have macOS Sierra (10.12) or later but not with the free (unlicensed) version. To use the IDE on an older mac, you must purchase a license then contact support on support@petosoft.com or swiftforarduino@gmail.com and we will give you a suitable link to download a version that will work on your mac.

Q: How much does it cost?

A: You can use the IDE for free for non commercial or educational purposes, but you MUST buy a license if you wish to use the IDE for commercial purposes or if you want support.

A license for the IDE costs $40. The license allows you unlimited use of the IDE and includes unlimited support (within reason). Also a license is required for commercial use of the product. Commercial use of the IDE without a license is in breach of the terms and conditions of the IDE. The license also includes upgrades as the product improves.

Q: How do I buy a license?

A: Just click HERE to go to the payments page, then press the "Pay by Card" button and buy securely using a credit or debit card, payments powered by Stripe.

If you would rather use the Mac App Store version and pay as you go subscription (with free one month trial), then go HERE and when you decide to get a subscription, just follow any of the prompts in the app. The Mac App store version free one month trial also includes full support and commercial use.

Q: Why is the macOS Apple App Store product called "S4A IDE", rather than "Swift for Arduino", is it different?

A: The version on the App Store is functionally the same. It has the same Swift compiler, same uSwift standard library, same LLVM back end, binutils and avrdude. But it uses a different build system (not based on gmake) and it does not have access to some common directories. This is due to sandbox restrictions on the app store. The "Swift for Arduino IDE" you can download here is still fully code signed, hardened and notarised by Apple so it is just as secure, but it is not sandboxed, which means it can access standard directories on the mac.

The app store version cannot be used without a paid subscription. This is because app store products require meaningful support as part of being on the app store. So unlicensed use is not possible with the app store build. When you use the app store version with a paid subscription you are permitted to use it for commercial purposes too.

The names "Swift" and "Arduino" have been removed from all prominence in the mac app store app at the request of the app review team.

Q: Isn't this just for kids/education?

A: S4A is a great introduction to microcontrollers. Unlike many other platforms where the tutorials work, or you download a simple project, but the minute you make a small change, everything breaks, S4A is built on Swift; a powerful first class compiled language from the C/C++ family that is used every day by millions of professional programmers. The intention is that when you go to make the next project and the one after that, things will continue to work smoothly. The safety built into the language from the ground up prevents whole classes of undefined behaviours and programmer errors. This makes more difference than you might realise. Combined with the powerful, expressive syntax, and you have a tool that can be used by any developer that will save you time and pain and means you can spend more time programming and less time debugging. This is a great product for beginners and experienced developers alike.

Q: I have another question...

A: If you have any other questions about S4A, you can email us at swiftforarduino@gmail.com.