Categories
Uncategorized

Atom is my New Text Editor

I started using BBEdit back in the 1990s and eventually moved to jEdit in the 2000s. Well, it’s 2020 now and since I tend to change text editors every ten years or so, I’m behind schedule! I’m pretty sure that in recent years I checked out Brackets, Sublime Text, and maybe even Atom, but I stuck with jEdit because I knew it, customized the heck out of it, and didn’t see a reason to switch.

For me, a text editor should be open source, run on macOS, Windows, and Linux, be extendable, customizable, and hackable, and… I should like using it. Life is too short to use a text editor you don’t like!

I’m working on a rather large project on GitHub right now, and I had to walk through the process of installing GitHub Desktop, and while I was jumping into the GitHub Desktop experience I figured I would also try out Atom since it integrates well with GitHub and GitHub Desktop.

When dealing with a new text editor it’s hard not to find faults. Part of it is that it’s new, and may do things differently than you are used to with your old text editor, or it may have missing features, or what appears to be missing features because it does things differently. It’s easy to take the stance of “What!? I can’t do X anymore!?” (Where X is some esoteric thing that you used to do.) It’s important to remember to take some time, investigate, dig in, and see what a new text editor offers.

There was a feature in jEdit that was really neat, but I think I used it maybe once or twice a year, and I could have achieved the same end result using another method. In Atom there’s a feature I’d never seen before, but once I understood it, it blew me away, and I was thankful it was there. I might not use it all the time, and yes, I could totally achieve the end result another way, but it’s nice to have new things.

I do miss macros and macro recording and playback in jEdit. Despite all the packages for Atom I’ve yet to find an equivalent. I have already written a really simple Atom package, so it’s good to know that’s an option if I can’t find some of the features I need. (Update: I did find some macro packages, just needed to be on a machine with dev tools to install them.)

Here are the packages I’ve added to my Atom install so far:

I’ve tried a few others, but haven’t added them to the lineup quite yet, but I’ll keep an eye out for new and useful packages. I’m also a fan of the command line integration and ability to customized the look of the editor by using CSS (though I wish there were more/better example files out there showing how to customized everything.)

So yeah, it’s safe to say at this point I’ll keep using Atom as my text editor, even though it will take some time to get used to the find & replace, and I’ve experienced a few crashes, supposedly can’t deal with large files, etc… I mean, the Command Palette is awesome. jEdit had a similar feature (I think?) but I never used it. I think one of the things I like about Atom (and I liked about jEdit) is that they were built by hackers for hackers. People who want to fiddle the bits and change things and make it their own.

The other important thing about a text editor is what you use it for. I will most likely not be using it as an IDE, though I may play around with integrating it into OpenSCAD or the Arduino IDE, I’m not doing large scale software development. I am mainly… working with text. Writing text, manipulating text, writing scripts, editing text files… stuff like that. It’s rare that I need autocomplete (in fact I disabled it) and some of the “coding” features just get in my way. YMMV depending on what you use a text editor for in your own work.

Categories
Uncategorized

Seeeduino Nano

The folks over at Seeed Studio sent me a Seeeduino Nano to check out. I’ve used a lot of Arduino boards over the years, including plenty of cheap Arduino Nano clones. Most of the clones have worked fine but every now and then I’ve seen a bad one come through. The Seeeduino Nano is a nice quality board with a little extra to make it useful for beginners or people more interested in making things quickly/easily than they are soldering wires.

One interesting thing about the Seeeduino Nano is that it used USB-C to connect to your computer. While most of the Arduino UNO boards I’ve used still use USB type B, and lots of other boards use Mini-USB or Micro-USB, the Seeeduino required a USB-C cable. Luckily, I had one on hand. If you don’t already have a USB-C cable, you’ll need one for the Seeeduino Nano.

My favorite part about the packaging of the Seeeduino Nano is the warning on the back that says “Best to keep away from fire”, mainly because I’ve worked on multiple Arduino projects that specifically involved fire… But I digress… for most people keeping away from fire is probably a good idea.

Here’s the top view of the Seeeduino Nano next to a ELEGOO Nano board. You can see the difference in the USB connector and a few other features. One difference with the ELEGOO boards is that they come with the header pins included but not soldered in place. (Here I’ve soldered them to the board.) There are times when you don’t want header pins solder into place. My guess is that for the target market of the Seeeduino Nano, the pins already installed makes sense.

Another thing about the ELEGOO boards is that I can’t easily find them listed on the web site. Here’s a post about them, but in the past if I’ve purchased them I’ve found them on Amazon for a price close to the Seeeduino Nano, though I’ve only seen them as a 3-pack.

(Note in the photo above the boards are the same dimensions, the Seeeduino is just on an angle due to the extra connectors on the top.)

Since I had a project already done with a Nano in place (via my Anrduino Nano Breakout Board) I just swapped in the Seeeduino Nano, uploaded the code, and it worked great.

Where the Seeeduino Nano really shines is the capabilities it has with the Grove system from Seeed Studios. If you don’t want to solder, and also don’t want to stick a lot of wires and components into breadboards, the Grove system might be what you are looking for. Again, I see this is a match for those who are more interested in the code than the wiring of electronics, or for workshops where soldering might be a concern (with kids or those not able to solder for other reasons).

In the photo above you’ll see the Seeeduino Nano along with the Grove Shield, a Temperature & Humidity Sensor, and a connector wire.

It’s also worth noting that the Seeeduino hardware and Grove system are open source, and others have embraced Grove. Adafruit has a Grove Shield for Particle Mesh and Feather Boards.

Above you’ll see the Seeeduino Nano plugged into the Grove Shield which has a Temperature & Humidity sensor attached. This takes seconds to connect versus soldering things or plugging things into a breadboard. When I taught basic Arduino classes I always told students to unplug their Arduino when they wired up the breadboard, and then to double-check the wiring for errors before plugging in the board again. The Grove plug-in system eliminates much of that guesswork. You can’t really plug things in backwards.

Here’s the Temperature & Humidity Sensor. I’ve worked with logging temperature and humidity before, so I’m not really new to this. The new part is the simplicity of just plugging things in.

I grabbed the example code Seeed Studio provided and had a few issues. Nothing I couldn’t fix, and I did open an issue about it. In the end I grabbed Adafruit’s library for the DHT Sensor as well as the Adafruit Sensor library (which is required by the DHT library) and got things up and running. If you’re not interested in downloading zip files from Github you can also install these libraries right from the Arduino IDE.

Overall the Seeeduino Nano is a good quality Arduino board, and the Grove system makes it very easy to get up and running. In this specific test I did run into some trouble with their example code, but in most cases those issues are solvable, and there’s probably an alternative example or library out there that will do what you want or need.

Finally, here’s a short video of the game scoring system I mentioned above. The Seeeduino Nano is taking input from a number of pins (that will eventually be triggered by switches or buttons) to keep score, where each pin is a different point value, and then using the piezo speaker to play a sound for each point value as well as displaying the points on a small LED display.

Categories
Uncategorized

#TeamArduinoCC

Arduino.cc

In accordance with a request from organizations and people I respect, here’s a photo take on 2015-04-19 showing the packaging from an Arduino UNO I purchased from Adafruit Industries (in the United States of America) on 2010-10-19 showing the text “Manufactured under license from Arduino by SMART PROJECTS S.r.l.”.

Adafruit / Arduino.cc

Here is the order information from that purchase. For more info, see the Hackaday post Your Arduino Packaging Could Sway a Court Case and the Adafruit post Please post old Arduino packaging that says “Manufactured under license from Arduino” #TeamArduinoCC.

Categories
Uncategorized

Beam me up!

Beam me up!

Beam systems make construction of thing easy, or precise, or both. I keep seeing more of these systems, so I figured I’d write-up the ones I’ve seen.

MakerBeam
Back in 2009 MakerBeam, a Mini-T open-source building system, showed up (on Kickstarter) and while makerbeam.com is empty, makerbeam.eu has lots of good stuff. You can also get them from our pals at SparkFun. There’s some bits and pieces on Thingiverse as well. (And, MakerBeam is open source hardware.)

MakerSlide
Bart from buildlog.net launched MakerSlide, which is an “Open Source Linear Bearing System” geared towards DIY CNC machines like laser cutters, CNC routers, and (now) 3D printers. MakerSlide launched as a Kickstarter project, and did quite well. It seemed to be continually out-of-stock, but Inventibles is now kicking in to fill the gap. There’s a whole system of parts that go with MakerSlide, and from what I can tell it’s a pretty solid system.

OpenBeam
There’s a new one, called OpenBeam, which is running on Kickstarter as of my writing this. It’s an open source miniature construction system. (See a trend here?) OpenBeam seems to cite that the fasteners and connecting plates used by other systems are what causes things to get costly. Their solution is to use standard sizes and common hardware to make the whole system easier and cheaper to work with. There doesn’t seem to be a web site yet, but you can check out the developers blog.

Bitbeam
A bit different is how I’d describe Bitbeam. Instead of extruded aluminum like the other systems, it’s typically made of wood, and describe as just “holes in poles.” :) In fact, Bitbeam is based on another system, Grid Beam. And hey, both are open source! Bitbeam is Lego Technic compatible, and you can make your own with a (powerful) laser cutter. Bitbeam is also on Thingiverse. Sweet!

Grid Beam
As previously mentioned, Grid Beam is sort of the older big-brother of Bitbeam. While Bitbeam is for smaller things, Grid Beam is for larger things. You can actually build things like vehicles and furniture with Grid Beams. It also appears to be the oldest of these beam systems, dating back to 2008. Check out more at gridbeamnation.com

Are there any other beam building systems I’ve missed?

Categories
Uncategorized

UI Mockup/Diagram Apps

UI Apps

I wanted to mock up a control panel for a project (a real physical control panel, not a software control panel) and remembered that I had OmniGraffle on one of my machines, so I started with that. Unfortunately it appeared that it was a demo version and was limited to 20 objects.

OmniGraffle

OmniGraffle is a sweet application, and I considered buying it, but at $99 for an individual license, for an application I probably won’t use that much, I opted not to pursue it. (Oh, and I did think about just using Inkscape, but I thought it would be more fun to use a diagramming specific application for this project.)

Dia

I found Dia, an open source, multi-platform application for creating diagrams. Dia actually looks like a pretty nice application, and I do prefer open source when possible, but I also find X11 applications a bit clunky, and while I’ll keep an eye on Dia, it didn’t quite live up to what I wanted…

Pencil

I ended up revisiting the Pencil Project, which I looked at last year, and I really like it. It’s a great application for mocking things up, and it even ties into one of my favorite sites, OpenClipArt.org.

Pencil Menus

The one annoying thing about Pencil is the menus. I’m using Mac OS X, and I’d like the menus to work as they do on Mac OS X, and these are just weird.

Here’s the output I got from each application. It should be mentioned, these are all rough, and by no means final. I really just wanted to quickly kick out a design from each application.

OmniGraffle Mockup
OmniGraffle Mockup

Dia Mockup
Dia Mockup

Pencil Mockup
Pencil Mockup

I’ll probably use Pencil moving forward and see how much I can push its capabilities. (And yes, it’s also open source and multi-platform, which is one more great thing about it.)