Although many people think of Linux-based operating systems as graphical, really that GUI is just another application running over the bare operating system. Power users, remote administrators, and people running underpowered computers like a Raspberry Pi have a tendency to do more with command line tools. [Igor] did a FOSDEM19 presentation you can see below about how he’s providing web-like services to the command line using web servers and curl as a client.
This is subtly different from just accessing an ordinary web server via curl. The output is meant for display in the terminal. Of course, you could also hit them with a web browser, if you wanted — at least, for some of them. [Igor’s] tools include a weather reporter, a QR code encoder, information and graphs for currency and cybercurrency rates, and an online help system for programmers.
Continue reading “Command Line Utilities… in the Cloud?”
When using an Arduino, at least once you’ve made it past blinking LEDs, you might start making use of the serial connection to send and receive information from the microcontroller. Communicating with the board while it’s interacting with its environment is a crucial way to get information in real-time. Usually, that’s as far as it goes, but [Pieter] wanted to take it a step farther than that with his command line interpreter (CLI) for the Arduino.
The CLI allows the user to run Unix-like commands directly on the Arduino. This means control of GPIO and the rest of the features of the microcontroller via command line. The CLI communicates between the microcontroller and the ANSI/VT100 terminal emulator of your choosing on your computer, enabling a wealth of new methods of interacting with an Arduino.
The CLI requires a hex file to be loaded onto the Arduino that you can find at a separate site, also maintained by [Pieter]. Once that’s running, you can get all of that sweet command line goodness out of your Arduino. [Pieter] also has some examples on his project page, as well as the complete how-to to get this all set up and running. There’s a lot going on in the command line world, in Linux as well as windows. So there’s plenty to explore there as well.
Arduino now has an officially supported command-line interface. The project, called arduino-cli, is the first time that the official toolchain has departed from the Java-based editor known as the Arduino IDE. You can see the official announcement video below.
Obviously this isn’t a new idea. Platform IO and other command-line driven tools exist. But official support means even if you don’t want to use the command line yourself, this should open up a path to integrate the Arduino build process to other IDEs more easily.
The code is open source, but they do mention in their official announcement that you can license it for commercial use. We assume that would mean if you wanted to build it into a product, not just provide an interface to it. This seems like something Arduino expects, because a lot of the command line tools can produce json which is a fair way to send information to another application for parsing.
The command line interface doesn’t just build a sketch. You can do things like install and manage libraries. For example, to create a new sketch:
Continue reading “Arduino Gets Command Line Interface Tools That Let You Skip the IDE”
When [antoker] is working on a microcontroller project, he often has to write short bits of test code to make sure everything in his circuit is working properly. This is a time-consuming task, and a while back he started on a small side project. It’s a command line interface for a microcontroller that allows him to send short commands to the uC over a serial connection to play around with the ADC, UART, and GPIO pins.
[antoker]’s tiny Unix-like environment is based on modules that can keep track of the time, print the current commands and stack to a terminal, and query things like the current speed of the uC and the available Flash and RAM.
This tiny shell also has scripting capabilities and a jump function, making this a true programming language, however minimal it is. Right now [antoker]’s work is available for the TI Stellaris and Tiva series microcontrollers, and a video of a scripted Larson scanner is available below.
Continue reading “A Shell For The Stellaris & Tiva”
The Earth orbits the Sun every 365.256 days. Because this number isn’t a whole number, an extra day is tacked onto February every four years, unless the year is evenly divisible by 100, except in cases where the year is divisible by 400, or something like that. To commemorate this calendar hack, here’s some stuff that has rolled in over the last week or so.
[Brian] sent in this marble-based sequencer that sounds like someone is running MIDI into an Atari 2600. There are photoresistors in there somewhere, and it really reminds us of those thingamagoop robots.
[Mike] uses YouTube as his music library. While this is a perfectly acceptable way to listen to music, the user interface is terrible. To solve this problem, [Mike] is downloading videos from the command line, automagically converting them to MP3, and playing them over speakers. It works well with SSH, so we’ll call this a win.
Key card lock
[valenitn] just joined the MIT Media Lab, but something was terribly wrong with his keys – an ID card was required to get into the building, but a key was necessary to get into his office. He doesn’t need the key anymore, at least since he modded his office door. Check out the video.
Pop Tart Cat is everywhere
[skywodd] saw our writeup on the Maximite Basic computer and figured he could send in a project he’s been working on. He programmed his Maximite to sing the nyan cat song and then created a BASIC music player. Nice job, [skywodd].
Not sure if brilliant or insane
[Vikash] ran across a forum post where a user named [I Shooter] describes his setup to dual-boot Windows and Linux: [I Shooter] connected data cables to a pair of SATA hard drives, one loaded up with Windows, the other with Linux. The power cables are switched using relays so only one drive is powered at a time. [I Shooter] gets a ton of points for creativity, but there’s a reason this brute force hardware dual-boot setup isn’t more common. We wish there were pictures of this one.
A lot of people like fancy GUIs and nice graphics, but some of us just feel more at home in a command prompt. [nevdull] is one of those people. Instead of just using the Arduino dev tools that are available for download, he wanted the ability to shell into his Arduino, so he created AVR Shell. AVR Shell is a UNIX-like shell that allows you to “log in” to your Arduino/AVR and see what’s really going on; letting you read registers, scale the CPU speed, create/edit/delete variables, and even set up timers. The shell is even user-customizable! Those of you interested in Arduino shells might also check out bitlash, another open source CLI. Someone ought to hook this up to the Internet enabled Furby and get Flite compiled on there, letting us shell into a Furby from miles away to make it talk.