I’m in the process of setting up a number of units (currently about 25, and hopefully that may expand). To expedite setup, I’m wondering if there is a way I can configure the units via the commandline instead of via the internal web server. I’ve read some of the posts that indicate that the API is not exposed/public, which I certainly understand. Just curious if there is a way I can set the the data forwarding to on, the Name, email, and location, DNS server, etc, interacting only on the command line.
The second question regards to setup. I know I can download the raspbian RS image from you guys. But what I’m hoping to do is simplify my multi-unit setup by preparing an RS1D with all the custom settings and extra implementation, then simply image that uSD card to another uSD card, and install the uSD card into a new Shake. Will the new shake be able to update the Shake ID based on the new Mac Address? In asking this question, I’m assuming I would be doing like-for-like changes. Ie, an RS1D with the same hardware (same type of Pi and Geophone) and an RS3D with the same hardware.
I came across this post (SD Card Upgrade - configuration migration) which is sort of aligned with my question.
I realize this is getting a bit into the nitty gritty of the RS setup, but, I’m starting to ramp up a an outreach program in Vancouver Island Schools with Raspberry Shake instruments, and if the program kicks off the way we hope, we would be dealing with 100 instruments or so (we currently have 25 and are in the processes of setting them up and deploying them), so having a commandline means of configuration would save quite a bit of time.
I should add, I can see some of these details in the /opt/settings/config/config.json files, but I am not certain how the system works inside to know if editing these will cause the updates to be read at boot and changes accepted, or if instead these are a downstream file controlled at a more basic level.
If I had to set up a batch (more than a handful) of these, in the absence of a documented CLI I would probably look at something like Apache Jmeter. It is really intended for performance testing, but once you have recorded one setup replaying it against other instances (with suitable adaptations) should be straightforward.
It’s a while since I used this, but I can only imagine that it has got better.
There may be lighter-weight tools around these days for simple tasks like this. Depending on your experience level, if you wanted to script it, using curl might be an option to explore.
The interface is HTTP, so using a tool like WireShark to record the setup of one device would give you all you need to know to script the rest.
Thanks, I hadn’t though of approaching it in this manner. I’ll take a look into that.
This is a very interesting idea, thanks for bringing this to our attention! Thinking about this, having the setup process streamlined in the way that you have in mind could prove to be very useful to current and future Shake users.
We will look to adding this functionality sometime in a future release, but, unfortunately, I cannot provide you with a definite ETA. However, when a specific development such as this is funded and receives full approval, it is possible to get it moved up in the software delivery pipeline that we use as a reference for future implementations.
Thank you again for your interest, and we look forward to your developments.