As a professional Android developer I’m always looking for cool open source projects to contribute to. I’m really excited about goTenna and have a set on the way to play around with using on bikepacking and mountaineering trips and I’d love to contribute. Are there any plans to make the SDK open source in the future?
@adamleedy we are definitely considering it.
As you know, goTenna Mesh operates in a narrow, regulated frequency band. To ensure fair use of this limited public spectrum, we limit the # of transmissions per user via the SDK. Do share your ideas on how we can work around this.
@Rahul_Subramany thanks for the quick reply!
I’ve been digging around in the sample code and decompiled sdk .class files to try and deduce where the 5 msg/minute is being enforced it looks like it happens inside of
I definitely get that there are some things like this, max data length, and reserved codes need to be kept in an uneditable state in order to protect your frequency band and such.
Just from poking around without any real in-depth knowledge of the SDK, I’d look into essentially having the SDK be sort of layered. Basically a “Proprietary” section for keeping things which need to be restricted and an “open source” module which contains all of the interfaces with which applications interact. The “Proprietary” module would just be the current module referencing the .aar file. This could be done pretty easily just by adding the Open Source module in the current git repo and then slowly migrating code out of the proprietary sdk into the open source module. Ultimately the .aar file would be pretty dang small.
I forked your repo and did an initial creation of the open source module so you can see sort of what I’m talking about. In my vision, ultimately the app code would never use the proprietary code directly and would only interact with the open source module.
check it out here: https://github.com/theGnartist/PublicSDK