@Mr. Whitewall @buddingglasshead @Alex3oe @psychonaut
Or, you could use Bash On Windows, or Windows Subsystem for Linux. Both work great, and much of my work is done in Ubuntu on Windows (my gaming desktop is the only thing with Windows on it lol).
I would strongly advise against using dd if you are not familiar with it. When using dd you need to make sure you are using the most appropriate settings for reading from or writing to the device, to ensure not only the ability for it to be restored reliably, but also that you are performing the least amount of read/write operations as possible. SD cards are EXTREMELY volatile (which is why I suggest backing yours up), and blindly copying from and writing to your SD cards with dd is a great way to shorten their lifespan. If you are not familiar with dd and *nix filesystems, I strongly suggest using Clonezilla, either via a *nix environment or via one of the many popular boot CDs which contain it. If you select to backup the entire disk, rather than individual partitions, it will automatically determine the appropriate settings for your device, and that will increase your chances of writing the backup to another card successfully. Clonezilla has the ability to create and restore backups. The only reason many use dd instead of relying on a suite of software such as that provided by Clonezilla is that dd is a built-in feature on most distributions (operating system versions), and if you know how to use the other often-built-in features to determine the optimal settings, you can save yourself the time and bandwidth to attain Clonezilla, as well as the bloat of installing additional software/libs if installing locally rather than using a live environment.
Assuming the same SD card is NOT in all units, I would advise against other's suggested values to use with dd. This is why I decided to use and suggest Clonezilla in the first place, since the only way to automate the calculation of proper values for use with your SD card would be using a bash script, which would essentially be doing the same thing as Clonezilla. No need to reinvent the wheel.
There are fantastic tutorials out there teaching you how to use dd properly, but if you are unfamiliar I suggest just using Clonezilla. It works great, consistently, and requires zero customization other than selecting the device to backup or restore to.
I don't think it's necessary to create a tutorial for Clonezilla, but if someone would like me to just let me know. This is the general overview, and essentially what the tutorial would be:
1. Download the official Clonezilla Live image from here -
https://clonezilla.org/downloads.php
2. Use Etcher to write the Clonezilla Live image to a USB drive that you do not mind overwriting (ALL DATA ON THE DRIVE WILL BE LOST) -
https://etcher.io
2b. I suggest Etcher because it is cross-platform (including OS X) and extremely simple. If you have any issues due to the UEFI/BIOS configuration on your computer, you may want to use the official manual method instead, after writing the appropriate partition table to the drive -
https://clonezilla.org/liveusb.php
3. Reboot your computer and let it boot into the USB drive. You may need to visit your BIOS/UEFI settings at boot to enable USB booting or increase the priority of USB drives. You also could use the Boot Disk Selector feature if your BIOS/UEFI has that. On most modern computers, it should work fine out of the box by plugging in and rebooting.
4. Proceed with using Clonezilla as per their official documentation -
https://clonezilla.org/clonezilla-usage/clonezilla-live-usage.php - The "general introduction" link should have all of the info you need, but there is more documentation if needed. You will have the most success saving and restoring Disks, rather than Partitions (may be referred to as Parts in Clonezilla), but feel free to experiment if you have extra SD cards at your disposal.
When using Clonezilla, make sure you are extremely cautious when selecting the disk to restore to; it is extremely easy to overwrite your computer's main storage media.
Unrelated: I officially have all the parts to build a HN-02 now, but I can't guarantee I'll get around to doing so or documenting it at a specific time. I expect to have it done by next Monday at the latest, but it's also possible that it could be as soon as tomorrow afternoon or as late as October. I have a lot going on over the next few weeks, as well as other distractions, and I may choose to spend my extra free time doing something less involved. I'll let you know when I have it built and working, but the idea is to include a wiring diagram and a tutorial for preparing a second SD card (much of which will be taken from the steps above). There shouldn't be much you need to change on the filesystem other than renaming the device (so you can control both via the webapp), but I haven't yet tested this. Also worth mentioning that they may have a list of unique identifiers which they could use for access control with the webapp, blocking unofficial units, but I wouldn't expect this from them. Considering that they kept the webapp server up, I think and hope that they are on our side in regard to this community effort, and are only keeping quiet for legal purposes.