Workflow. Remote edit. Local code store, compile, upload.

Status
Not open for further replies.

slomobile

Well-known member
There will be a Teensy4, 3.x or some other arduino. We'll call it micro.
Does what micros do. Connected by USB to SBC.

There will be a (headless)Raspberry Pi, Jetson Nano, openWRT router, or some other. We'll call it local single board computer(SBC).
Store(w/local version control), compile, upload code to micro. Bridge micro to Serial monitor(or substitute) and/or RemoteXY interface on RMI. Connected to RMI by WiFi on same local network. Maybe someday expand to internet connection to RMI

There will be a chromebook, linux PC, or Android phone or tablet. We'll call it remote maintenance interface(RMI).
Pull code from SBC, edit, push back code to SBC, trigger compile/upload. Display Serial monitor content from micro. Optional, provide remoteXY style operator interface.

The goal is to create a workflow where any combination of micro, SBC, and RMI work together. I've got it working in a rough sense using ssh sftp nano and arduino CLI because SSH works on everything. It is functional but very clunky.

This is what I need help with. Recommend products, procedures, whatever ideas you have to make this better.
I'd like to minimize typing in the terminal. I hate text based file management. Minimize switching applications. Have a nice RMI GUI editor with buttons or menus to get code, put code, trigger compile/upload. I'm not really interested in makefiles. The Arduino IDE is good enough. Is there a way to use the preferences network tab and proxy settings to do this? I'm not familiar with how proxies work. If not that, something with code completion and real debugging profiling would be nice.

Other problems to be solved:
Remotely selecting the right micro/SBC unit from a list of active devices.
Local version control on SBC.

Purpose:
In general, I am highly disorganized and forgetful. I often forget exactly what sketch is on a particular Teensy, or what versions of libraries were used. Even if I do have that info, I probably have since updated the libraries on my development machine causing breaking changes. So I have decided to change my workflow and need some help working out the details.

I plan to pair nearly every Teensy I use going forward with a headless Raspberry Pi Zero W, Jetson Nano, or similar SBC running linux. Keep every version of code ever run on that Teensy stored on the corresponding Pi. The code will be compiled on that same Pi, assuring the exact libraries used are always available where they are needed. Either device can wake up or shut down the other to save power. Part of the collection makes up a low speed solar powered mesh network to extend beyond the range of my AP.

I want to be able to grab whatever device I have at hand and start editing the moment an idea strikes. The devices listed are what I have. No Microsoft or Apple products. If you have ideas to work on those I'm sure they will help someone, just not my focus.

Thanks for any ideas.
 
Status
Not open for further replies.
Back
Top