6CY7 dual triode valve amplifier


Josh built this 6CY7 dual triode valve amplifier:

I’ve always wanted to know what the “tube magic” was all about. There is much opinion in the science of music production, probably because music and its perception is highly personal and subjective. Ive always imagined that since transistor amplifiers were “perfect” with their large amounts of negative feedback, great linearity, and low THD that tube amplifiers must add something to sound that generates their appeal. From the reading I’ve done it has to do with harmonics.

More details on imsolidstate blog.

Read more »

Friday Product Post: Enjoy the Ambience

Hello and welcome! We only have a couple products to show off today, because we're getting Artemis ready for a full production run (let's be honest, everything looks better in red), and we have a mid-week release next Wednesday! This week, we have a new Qwiic-enabled Ambient Light Sensor along with an updated LilyPad LED board.

Before we get into new products, we wanted to give you an early heads-up that we are having a sale tomorrow (Saturday, July 20th) in celebration of the 50th anniversary of the Apollo 11 moon walk. From 12:00 a.m. MT through 11:59 p.m. MT, use the promo code APOLLO11 to receive $50 off our SparkFun Inventor's Kit for RedBot and the Arduino Engineering Kit. Please be aware that this sale is for in-stock items only, some exclusions do apply, and it's only while supplies last.

Do you see what I see?

SparkFun Ambient Light Sensor - VEML6030 (Qwiic)

added to your cart!

SparkFun Ambient Light Sensor - VEML6030 (Qwiic)

In stock SEN-15436

The VEML6030 is a high accuracy ambient light sensor with 16-bit resolution. Even more impressive is that it can detect ligh…


Looking for an option to sense ambient light? The SparkFun VEML6030 Ambient Light Sensor is a great starter option. The VEML6030 is a high accuracy ambient light sensor with 16-bit resolution. Even more impressive is that it can detect light similarly to the way the human eye does. Utilizing our handy Qwiic system, no soldering is required to connect it to the rest of your system. However, we still have broken out 0.1"-spaced pins in case you prefer to use a breadboard.


added to your cart!


In stock DEV-13735

Blink any color you need!


Blink any color you need! Use the LilyPad RGB LED board as a simple indicator or, by pulsing the red, green and blue channels, you can produce a broad variety of colors. Each of the colors in the RGB LED is connected to one of the sew tabs on the board labeled R, G and B.

That's it for this week! As always, we can't wait to see what you make! Shoot us a tweet @sparkfun, or let us know on Instagram or Facebook. We’d love to see what projects you’ve made!

comments | comment feed

Read more »

Don’t Let Encrypted Messaging Become a Hollow Promise

Why do we care about encryption? Why was it a big deal, at least in theory, when Mark Zuckerberg announced earlier this year that Facebook would move to end-to-end encryption on all three of its messaging platforms? We don’t just support encryption for its own sake. We fight for it because encryption is one of the most powerful tools individuals have for maintaining their digital privacy and security in an increasingly insecure world.

And although encryption may be the backbone, it’s important to recognize that protecting digital security and privacy encompasses much more; it’s also about additional technical features and policy choices that support the privacy and security goals that encryption enables.

But as we careen from one attack on encryption after another by governments from Australia to India to Singapore to Kazakhstan, we risk losing sight of this bigger picture. Even if encryption advocates could “win” this seemingly forever crypto war, it would be a hollow victory if it came at the expense of broader security. Some efforts—a recent proposal from Germany comes to mind—are as hamfisted as ever, attempting to give government the power to demand the plaintext of any encrypted message. But others, like the GCHQ’s “Ghost” proposal, purport to give governments the ability to listen in on end-to-end encrypted communications without “weakening encryption or defeating the end-to-end nature of the service.” And, relevant to Facebook’s announcement, we’ve seen suggestions that providers could still find ways of filtering or blocking certain content, even when it is encrypted with a key the provider doesn’t hold.

So, as governments and others try to find ways to surveil and moderate private messages, it leads us to ask: What policy choices are incompatible with secure messaging? We know that the answer has to be more than “don’t break encryption,” because, well, GCHQ already has a comeback to that one. Even when a policy choice technically maintains the mathematical components of end-to-end encryption, it can still violate the expectations users associate with secure communication.

So our answer, in short, is: a secure messenger should guarantee that no one but you and your intended recipients can read your messages or otherwise analyze their contents to infer what you are talking about. Any time a messaging app has to add “unless...” to that guarantee, whether in response to legislation or internal policy decisions, it’s a sign that messenger is delivering compromised security to its users.

EFF considers the following signs that a messenger is not delivering end-to-end encryption: client-side scanning, law enforcement “ghosts,” and unencrypted backups. In each of these cases, your messages remain between you and your intended recipient, unless...

Client-side scanning

Your messages stay between you and your recipient....unless you send something that matches up to a database of problematic content.

End-to-end encryption is meant to protect your messages from any outside party, including network eavesdroppers, law enforcement, and the messaging company itself. But the company could determine the contents of certain end-to-end encrypted messages if it implemented a technique called client-side scanning.

Sometimes called “endpoint filtering” or “local processing,” this privacy-invasive proposal works like this: every time you send a message, software that comes with your messaging app first checks it against a database of “hashes,” or unique digital fingerprints, usually of images or videos. If it finds a match, it may refuse to send your message, notify the recipient, or even forward it to a third party, possibly without your knowledge.

Hash-matching is already a common practice among email services, hosting providers, social networks, and other large services that allow users to upload and share their own content. One widely used tool is PhotoDNA, created by Microsoft to detect child exploitation images. It allows providers to automatically detect and prevent this content from being uploaded to their networks and to report it to law enforcement. But because services like PhotoDNA run on company servers, they cannot be used with an end-to-end encrypted messaging service, leading to the proposal that providers of these services should do this scanning “client-side,” on the device itself.

The prevention of child exploitation imagery might seem to be a uniquely strong case for client-side scanning on end-to-end encrypted services. But it’s safe to predict that once messaging platforms introduce this capability, it will likely be used to filter a wide range of other content. Indeed, we’ve already seen a proposal that Whatsapp create “an updatable list of rumors and fact-checks” that would be downloaded to each phone and compared to messages to “warn users before they share known misinformation.” We can expect to see similar attempts to screen end-to-end messaging for “extremist” content and copyright infringement. There are good reasons to be wary of this sort of filtering of speech when it is done on public social media sites, but using it in the context of encrypted messaging is a much more extreme step, fully undermining users’ ability to carry out a private conversation.

Because all of the scanning and comparison takes place on your device, rather than in the cloud, advocates of this technique argue that it does not break end-to-end encryption: your message still travels between its two “ends”—you and your recipient—fully encrypted. But it’s simply not end-to-end encryption if a company’s software is sitting on one of the “ends” silently looking over your shoulder and pre-filtering all the messages you send.

Messengers can make the choice to implement client-side scanning. However, if they do, they violate the user expectations associated with end-to-end encryption, and cannot claim to be offering it.

Law enforcement “ghosts”

Your messages stay between you and your recipient...unless law enforcement compels a company to add a silent onlooker to your conversation.

Another proposed tweak to encrypted messaging is the GCHQ’s “Ghost” proposal, which its authors describe like this:

It’s relatively easy for a service provider to silently add a law enforcement participant to a group chat or call. The service provider usually controls the identity system and so really decides who’s who and which devices are involved—they’re usually involved in introducing the parties to a chat or call. You end up with everything still being end-to-end encrypted, but there’s an extra ‘end’ on this particular communication. This sort of solution seems to be no more intrusive than the virtual crocodile clips that our democratically elected representatives and judiciary authorize today in traditional voice intercept solutions and certainly doesn’t give any government power they shouldn’t have.

But as EFF has written before, this requires the provider to lie to its customers, actively suppressing any notification or UX feature that allow users to verify who is participating in a conversation. Encryption without this kind of notification simply does not meet the bar for security.

Unencrypted backups by default

Your messages stay between you and your recipient......unless you back up your messages.

Messaging apps will often give users the option to back up their messages, so that conversations can be recovered if a phone is lost or destroyed. Mobile operating systems iOS and Android offer similar options to back up one’s entire phone. If conversation history from a “secure” messenger is backed up to the cloud unencrypted (or encrypted in a way that allows the company running the backup to access message contents), then the messenger might as well not have been end-to-end encrypted to begin with.

Instead, a messenger can choose to encrypt the backups under a key kept on the user’s device or a password that only the users know, or it can choose to not encrypt the backups. If a messenger chooses not to encrypt backups, then they should be off by default and users should have an opportunity to understand the implications of turning them on.

For example, WhatsApp provides a mechanism to back messages up to the cloud. In order to back messages up in a way that makes them restorable without a passphrase in the future, these backups need to be stored unencrypted at rest. Upon first install, WhatsApp prompts you to choose how often you wish to backup your messages: daily, weekly, monthly, or never.  In EFF’s Surveillance Self-Defense, we advise users to never back up their WhatsApp messages to the cloud, since that would deliver unencrypted copies of your message log to the cloud provider. In order for your communications to be truly secure, any contact you chat with must do the same.

Continuing the fight

In the 1990s, we had to fight hard in the courts, and in software, to defend the right to use encryption strong enough to protect online communications; in the 2000s, we watched mass government and corporate surveillance undermine everything online that was not defended by that encryption, deployed end-to-end. But there will always be attempts to find a weakness in those protections. And right now, that weakness lies in our acceptance of surveillance in our devices. We see that in attempts to implement client-side scanning, mandate deceptive user interfaces, or leak plaintext from our devices and apps. Keeping everyone’s communications safe means making sure we don’t hand over control of our devices to companies, governments, or other third parties.

Read more »

Featured artist: Sash Zats

Sash Zats is a designer and generative artist working with AxiDraw. You can find him on instagram and twitter. One of the things about Sash’s work that I enjoy is his choices of materials. He often uses bold papers and subtle pen colors to bring his designs to life.

The sun and the moon

The Sun and the Moon are a compelling pair of drawings with gold and silver ink on black. The rich texture of the overlapping lines almost looks like textile work rather than ink.

maps on white

In describing these map drawings, Sash says:

For my dad’s 65th birthday I plotted places that are significant for our family.

maps on black

Continuing in the tradition of tool sharing that we have seen in generative artists, Sash included information about how he created the drawings, starting with calculating tile indices from coordinate bounds, parsing vector tiles protocol buffers, and converting to vectors before plotting with the AxiDraw.

Manhattan drawing

In a similar vein, this drawing of Manhattan buildings, blocks and neighborhood used data from NYC OpenData. Sash outlined his process for this one:

• data from NYC OpenData using httpie to filter unrelated data with
• process using #swift Xcode Playgrounds
• generate 3D geometry using #SceneKit
• export to .stl (.dae crashes #blender)
• export to SVG using Freestyle SVG to maintain occlusion
Svg Spatial Sort to optimise SVG for faster plotting
• plot using #axidraw v3 plotter

He published his Manhattan model as well.

Penrose tiling

Sash posted this Interrupted Penrose tiling with a link to Penrose’s lecture on tiling.

Anatomical heart of triangles

Delaunay triangulation is a familiar tool for generative artists, and is used in a series of drawings, including this anatomical heart drawn in white on bold red paper.

Drawing of a protein

The last picture I want to share is of the protein 5B0R, which Sash says, “when plotted looks like a badass graffiti.” I enjoy seeing science as an inspiration for art, and while I’ve seen a couple of artists plot proteins, the combination of the teal paper and light ink on this one give it a completely different perspective.

Thank you, Sash, for sharing your photos and processes! You can find more of his work, including videos of the drawing process on instagram and twitter.

Read more »

Bitcoin mining on an Apollo Guidance Computer: 10.3 seconds per hash


Ken Shirriff implemented the SHA-256 hash algorithm and ran it on the vintage Apollo Guidance Computer (AGC) that they’re restoring:

We’ve been restoring an Apollo Guidance Computer. Now that we have the world’s only working AGC, I decided to write some code for it. Trying to mine Bitcoin on this 1960s computer seemed both pointless and anachronistic, so I had to give it a shot. Implementing the Bitcoin hash algorithm in assembly code on this 15-bit computer was challenging, but I got it to work. Unfortunately, the computer is so slow that it would take about a billion times the age of the universe to successfully mine a Bitcoin block.

See the full post on Ken Shirriff’s blog.

Read more »

New AxiDraw Software v 2.5

We’re pleased to announce the release of the latest version of the AxiDraw software, 2.5. which includes a number of frequently-requested features that we’ve been working on over the last year.

An expanded user guide

Perhaps foremost, we have updated and greatly expanded the PDF AxiDraw user guide, which covers how to use the AxiDraw, including every part of the software. In addition to sections that go over the new features, we have thoroughly revised the rest, including a larger and clearer section on getting started.

A new SVG optimization tool

In normal use, the AxiDraw software plots elements in the same order that they occur in the file. However, depending on how your file was generated, that may not be the most efficient way to do things. If the order of the elements in the file is poor enough, the plot time can actually be dominated not by writing and drawing time, but by pen-up movements (illustrated here in red) between objects.

We’ve written a new SVG ordering utility, that can sorting of objects in an SVG document, re-ordering them as needed to reduce pen-up travel. It’s also a layer-aware and group-aware sorting tool, that can process a full document and reorder elements on each layer of the document and either respect or break apart other groups in your document. This tool is available in two versions: An individual Inkscape extension as well as an integrated version that you can use automatically within the AxiDraw software.

Better support for using multiple machines

The new AxiDraw software supports assigning names to individual AxiDraw units over USB, which you can use as semi-permanent labels when printing to a particular machine. You can also now plot to a specific AxiDraw, or simultaneously plot the same document to a number of connected machines.

A new version of Hershey Text

This release includes an all-new version of Hershey Text, our software for creating stroke-based text within Inkscape. You can about the new features in our blog post announcing it.

And more!

Amongst other improvements in the new software are the following:

  • Updated to use Inkscape 0.92
  • Paths in the document are now clipped gracefully and precisely at the boundaries of both the artboard (drawing canvas) and machine travel.
  • Supports more SVG object and layout types natively
  • Faster plotting on paths with very high vertex density
  • Online version check added
  • Improves behavior of Hatch Fill extension
  • Bug fixes galore

We recommend this new version to all AxiDraw users; you can download it for Mac, Windows, or Linux, following our guide here.

Read more »

Life-Altering Copyright Lawsuits Could Come to Regular Internet Users Under a New Law Moving in the Senate

The Senate Judiciary Committee intends to vote on the CASE Act, legislation that would create a brand new quasi-court for copyright infringement claims. We have expressed numerous concerns with the legislation, and serious problems inherent with the bill have not been remedied by Congress before moving it forward. In short, the bill would supercharge a “copyright troll” industry dedicated to filing as many “small claims” on as many Internet users as possible in order to make money through the bill’s statutory damages provisions. Every single person who uses the Internet and regularly interacts with copyrighted works (that’s everyone) should contact their Senators to oppose this bill.

Take Action

Tell the Senate Not to Enable Copyright Trolls

Easy $5,000 Copyright Infringement Tickets Won’t Fix Copyright Law

Making it so easy to sue Internet users for allegedly infringing a copyrighted work that an infringement claim comes to resemble a traffic ticket is a terrible idea. This bill creates a situation where Internet users could easily be on the hook for multiple $5,000 copyright infringement judgments without many of the traditional legal safeguards or rights of appeal our justice system provides.

The legislation would allow the Copyright Office to create a “determination” process for claims seeking up to $5,000 in damages:

Regulations For Smaller Claims.—The Register of Copyrights shall establish regulations to provide for the consideration and determination, by at least one Copyright Claims Officer, of any claim under this chapter in which total damages sought do not exceed $5,000 (exclusive of attorneys’ fees and costs). A determination issued under this subsection shall have the same effect as a determination issued by the entire Copyright Claims Board.

This could be read as permission for the Copyright Office to dispense with even the meager procedural protections provided elsewhere in the bill when a rightsholder asks for $5000 or less. In essence, what this means is any Internet user who uploads a copyrighted work could find themselves subject to a largely unappealable $5,000 penalty without anything resembling a trial or evidentiary hearing. Ever share a meme, share a photo that isn’t yours, or download a photo you didn’t create? Under this legislation, you could easily find yourself stuck with a $5,000 judgment debt following the most trivial nod towards due process.

Every Internet User Could Face Life-Altering Money Judgments Thanks to Statutory Damages

Proponents of the legislation argue that the bill’s cap on statutory damages in a new “small claims” tribunal will protect accused infringers. But the limits imposed by the CASE Act of  $15,000 per work are far higher than the damages caps in most state small claims courts—and they don’t require any proof of harm or illicit profit. The Register of Copyrights would be free to raise that cap at any time. And the CASE Act would also remove a vital rule that protects Internet users – the registration precondition on statutory damages.

Today, someone who is going to sue a person for copyright infringement has to register their work with the Copyright Office before the infringement began, or within three months of first publication, in order to be entitled to statutory damages. Without a timely registration, violating someone’s copyright would only put an infringer on the hook for what the violation actually cost the copyright holder (called “actual damages”), or the infringer’s profits. This is a key protection for the public because copyright is ubiquitous: it automatically covers nearly every creative work from the moment it’s set down in tangible form. But not every scribble, snapshot, or notepad is eligible for statutory damages—only the ones that U.S. authors make a small effort to protect up front by filing for registration. But if Congress passes this bill, the timely registration requirement will no longer be a requirement for no-proof statutory damages of up to $7,500 per work. In other words, nearly every photo, video, or bit of text on the Internet can suddenly carry a $7,500 price tag if uploaded, downloaded, or shared even if the actual harm from that copying is nil.

For many Americans, where the median income is $57,652 per year, this $7,500 price tag for what has become regular Internet behavior would result in life-altering lawsuits from copyright trolls that will exploit this new law. That is what happens when you eliminate the processes that tend to ensure only a truly motivated copyright holder can obtain statutory damages.

Censorship of Speech Will Become More Pervasive Under this Legislation

Another major problem with the CASE Act is how it transforms a Digital Millennium Copyright Act (DMCA) Notice into a long-term censorship tool. Under current law, if a copyright holder submits a takedown notice to an online platform alleging that your post infringed their copyright, you have a right to file a counter-notice if you disagree. There are many times when false takedown claims occur on the Internet and perfectly lawful speech is suppressed, and counter-notices are an important, though flawed, check on abuse. But the CASE Act would allow a party that filed a takedown notice to also bring a claim with the new “small claims” tribunal. When they do so, the Internet platform doesn’t have to honor the counter-notice by putting the posted material back online within 14 days. Already, some of the worst abuses of the DMCA occur with time-sensitive material, as even a false infringement notice can effectively censor that material for up to two weeks during a newsworthy event, for example. The CASE Act would allow unscrupulous filers to extend that period by months, for a small filing fee.

If all these outcomes sound terrible to you and you want to send a clear message to Congress not to move forward, then you need to contact your Senators right away to tell them you oppose the CASE Act (S. 1273) and want them to oppose it on your behalf.

Take Action

Tell the Senate Not to Enable Copyright Trolls

Read more »

Weekly Editorial Round-Up: Machine learning bubble blowing, Raspberry Pi 4, 6,000 thanks & more

INewImage 21 1 1


We’ve got so much happening here at Adafruit that it’s not always easy to keep up! Don’t fret, we’ve got you covered. Each week we’ll be posting a handy round-up of what we’ve been up to, ranging from learn guides to blog articles, videos, and more.


Machine learning bubble blowing … Tiny Machine Learning on the Edge with TensorFlow Lite Running on SAMD51

You’ve heard of machine learning (ML), but what is it? And do you have to buy specialty hardware to experiment? Nope! If you have some Adafruit hardware, you can build some Tiny ML projects today!

We’ve wrappered the TensorFlow Lite micro speech demo to Arduino so you can do basic speech recognition on our SAMD51 boards. Read more

More BLOG:


Program in Logo on an Apple II

Learn how to program 80s-style with Logo running on an Apple II – it’s Turtles all the way down!

You may have seen the turtle graphics library that ladyada ported to CircuitPython and thought, “Wow, that’s cool! But can I do that on 30+ year old hardware?” Or if you’re above a certain age you may remember doing something similar in school on an Apple II. Learn more.


Browse all that’s new in the Adafruit Learning System here!

Read more »

Hershey Text v 3.0

Some years ago we wrote a neat little Inkscape extension called Hershey Text. Hershey text could take a little bit of text that you would type and render it into stroke fonts, also known as engraving fonts.

We are very pleased this week to release an all-new version of Hershey Text, written from scratch, and far more useful, capable, and extensible. We have a comprehensive user guide for it as well.

Hershey Text v 3.0 will be bundled into future versions of Inkscape, but it’s also included with the new AxiDraw software and available on its own for download today.

A little background

All common computer font formats (TrueType, et al.) are outline font formats. In these, each glyph in the font defines a filled vector shape. That is to say, the visible part of a character in an outline font is the area enclosed by the shape. Fonts like these are appropriate for use in laser printers or other high-resolution devices.

By contrast, an engraving font (sometimes called a “stroke” font) is one where each visible character is defined by the stroke itself, not the area enclosed by it. Fonts like these are usually the best choice for pen plotters, machine tools, and other circumstances where the pen width itself is significant.

Old vs new

The original Hershey Text worked quite well, but was limited in scope. The mechanism for drawing fonts was based on a historic font format that turned out to be quite limiting:

  • As a “custom” (neither proprietary nor standard) font format, there was no readily available font editor that could be used.
  • The font format only supported characters made of straight line segments.
  • The font data was encoded by ASCII character position, and did not support basic international (Latin-1) characters, let alone Unicode.
  • All of the font data was stored in a single large file. This made adding new fonts (even with data available) extremely cumbersome.

Additionally, the function of the original Hershey Text was relatively simplistic: It rendered text that you entered in the text entry box. This left no facility for rendering paragraphs of text, nor for easily working with multiple fonts, sizes, or styles.

Hershey Text v 3.0 aims to resolve all of these issues.

SVG Fonts

First, the new version uses the SVG font format. While this is not a common font format [1], it is a standard, and that fact makes it possible to create and add new fonts with relative ease.  Characters (glyphs) within an SVG font are composed of little SVG drawings, which (in contrast to almost every other modern font format) can natively support stroke fonts.

Migrating to SVG fonts immediately gets us support for font editors, arbitrary shapes within fonts  (not just straight segments), international character and Unicode support, and separate files for the fonts — making it practical to add new fonts. One company is already making new handwriting fonts compatible with the new format.


Replacing text in place

The second major change is that instead of entering text (one line at a time) in the dialog box, the new Hershey Text now converts text in the document, replacing it in place. This brings support for not just paragraphs of text, but also for handling mixed text with different sizes and styles, in whatever way it is laid out on a page.


Automatic font substitution

As an advanced feature, the new Hershey Text supports a subtle means of text substitution. If you have text laid out in a regular (outline) font but also have a stroke font matching the same name as that outline font, then it will automatically use that particular stroke font when Hershey Text is called. This feature makes it possible to preview how text will be laid out in a matching outline font, and also to automatically render into multiple stroke fonts within the same document.


Getting Hershey Text v 3.0

Hershey Text v 3.0 will be included with the forthcoming Inkscape 1.0, which is headed for release later this year. We also have a version for Inkscape 0.92.x, ready for use today.

Hershey Text v 3.0 is now included standard with both the AxiDraw software installers and the EggBot software installers.


You can find current instructions for downloading and installing Hershey Text at our documentation wiki.

Additionally, the PDF Hershey Text user guide is available for download at our documentation wiki. We encourage all users to read through this guide to learn more about how the software works.


Hershey Text v 3.0 is open source software; development and our issue tracker are hosted at gitlab.


[1] The SVG font format — as a stand-alone font format — is essentially obsolete. More or less, no one is using stand-alone SVG fonts. However, SVG fonts are perhaps surprisingly alive, thanks to emoji. The SVG font format has actually been enshrined within OpenType, and OpenType fonts can contain an “SVG font table”, which is simply a font constructed according to the SVG 1.1 font format. Fonts of this spec are called “OTF+SVG” fonts, and typically intend that when client software cannot display a given character in the SVG table, it will fall back and display a TTF alternative. The neat thing about OTF+SVG is that in addition to having stroke-based characters, it can also contain color information — and so this format is sometimes referred to as a “Color Font“. OTF+SVG is supported by Photoshop, Illustrator, Firefox, MS Edge, Pages, Keynote, TextEdit, and others. Because of this, SVG fonts do still exist, even though they aren’t often observed on their own.


Read more »

The AxiDraw CLI and Python API

Following the release of our new AxiDraw software this week, we are pleased to announce the release of two additional software components that greatly extend the capability of the machine.

The AxiDraw software is now available in two alternate versions that may be helpful for developers or for anyone who would like to control the machine programmatically rather than through Inkscape: A stand-alone command-line interface (CLI) tool, as well as a full-featured Python library.

The AxiDraw CLI

The first new tool is the AxiDraw CLI,  a command-line API to drive the AxiDraw outside of Inkscape. Like the Inkscape-based software, its primary function is to plot SVG files. However, it is a stand-alone utility that can be driven from within shell scripts and other environments that make use of shell commands.

Once installed, plotting a file can be as simple as executing the following command:

axicli filename.svg

There are, of course, a breadth of different modes and configuration parameters available. We have written detailed descriptions of each of these options in our comprehensive API documentation. The CLI also supports the use of configuration files to quickly switch between different sets of parameters.

Since most common scripting and programming environments allow one to call shell commands like this, that allows the AxiDraw to be used directly within a wide variety of frameworks.


The Python API

The second new tool is the AxiDraw Python API. The AxiDraw CLI is written within Python, and we have both exposed and expanded upon that nucleus to create a flexible and powerful Python module, complete with its own comprehensive documentation.

Just like the CLI, the Python API can plot SVG documents; it can both read SVG files and accept strings containing SVG data.

It also has features that are not available within Inkscape or the CLI: It supports direct interactive XY control. You can use absolute or relative moveto/lineto type commands to control the AxiDraw from within your own programs. This is particularly useful for a wide variety of potential AxiDraw applications that are not writing or drawing, but otherwise making use of the AxiDraw as a low-cost motion control platform.

Read more »