Comments (2)
- Have an LCD screen with a few buttons hooked up to the RPI with the
couple of IO pins it has. Using the buttons you could access a menu to
enter a new SSID and password on the device. For claiming ownership, the
RPI could launch a request to get the list of farmbot servers. By choosing
one of the servers, the RPi could receive a code and show it on the LCD
screen. The user can then use that code (valid for half an hour for
example) to register on the FarmBot site and claim ownership of the bot.
From then one, everything can be done using the site.
On Fri, Nov 21, 2014 at 7:02 AM, Rory Aronson [email protected]
wrote:
This probably does not even belong in this repo, but we can talk about it
here until we figure out a game plan.When a user gets a bot, it will come with an SD card for the pi with an
image of Raspbian + all the FarmBot software installed on it already.
Ideally the user would simply plug it in and it would start downloading
updates, connect with our web app, and the user could start controlling the
device. But there are a few issues:
- With a wifi connection, how does the pi know the network SSID and
password?- With a wifi or ethernet connection, how does the user claim ownership
of the device once it has connected to Meshblu/the web application? Either
they could find out the device's UUID and token and enter it in the web app
(like now), or they could give the device a name a password in some way
that they must also enter into the web app.Possible solutions:
Hook up a monitor and keyboard to the pi and edit files through the
terminal or do something from the desktop environment. This is just not an
option in my opinion. Most people don't own external monitors and keyboards
these days, and it is a total pain to hook them up temporarily, especially
outside! Also, I think most people would not be able to/are not confident
enough to use the terminal.Connect to the pi via ethernet directly to a laptop and edit files via
SSH. This is surprisingly a pain to get working not only form the pi side,
but from the network configuration on the laptop side as well. I think this
option is ruled out too.Use a laptop or PC to edit a text file in the boot directory of the
pi's SD card before plugging it into the pi and booting up. It would
contain a wifi SSID and password (if needed) and a place to enter in a
device name and password used to claim ownership of the device from the web
app. This may be the very easiest as all we need is a script to read that
text file on bootup, and it is not too difficult for users to do. However,
it requires an SD or microSD card reader to do. A potential problem is if
one changes their wifi name or password, then the pi will lose connectivity
and would need to be hard shutdown by pulling the plug, then the SD card
text file would need to updated. Not very clean... However, if it lost
connectivity, the user could just switch back their network settings to
gain access again, and update the settings remotely via the web app.User writes a text file on a USB stick and plugs it into the pi which
copies it automatically. Prevents the need for a hard shutdown if the pi
loses connectivity. There may be issues with USB stick formatting or
accessing the pi's USB ports (it may be in a tight, waterproof case)A captive portal where the pi serves up a simple webpage where the user
can enter and read info. On ethernet, the captive portal would activate if
the FarmBot has no name or password (first boot) and the web page would
serve up on a certain IP that the user could navigate to from any device's
web browser as long as they are on the same network. If the device uses a
wifi dongle, the portal would activate on first boot or when the wifi
credentials are invalid. In these cases, the device would create its own
wifi network called 'Configure FarmBot' that the user could connect to with
any device, enter in the info, then initiate a reboot. This method would
not work if the device was using a cellular or even satellite connection.I think 3) is an easy solution for now that supports all modes of
connectivity. 5) would be a more user-friendly layer in the future for wifi
and ethernet connections which will likely be far more common than cellular
connections.Sorry for the long post. Thoughts or other options I haven't mentioned?
—
Reply to this email directly or view it on GitHub
#42.
from farmbot_os.
-
Use the serial pins on the RPi. This can be linked to a USB/Serial
convertor. This way, any laptop can easily plugged in the port and be used
for diagnostic. The RPi software could easily send the status printout and
provide a menu for setting up, rebooting, ... -
Add a bluetooth module so smart phones, tablets and laptops can be used
to sync with the bot. The smart phone/tablet can run an app to read
diagnostics, manual control, change settings, add a password for security,
... basically use it as a tricorder.
On Fri, Nov 21, 2014 at 12:37 PM, Tim Evers [email protected] wrote:
- Have an LCD screen with a few buttons hooked up to the RPI with the
couple of IO pins it has. Using the buttons you could access a menu to
enter a new SSID and password on the device. For claiming ownership, the
RPI could launch a request to get the list of farmbot servers. By choosing
one of the servers, the RPi could receive a code and show it on the LCD
screen. The user can then use that code (valid for half an hour for
example) to register on the FarmBot site and claim ownership of the bot.
From then one, everything can be done using the site.On Fri, Nov 21, 2014 at 7:02 AM, Rory Aronson [email protected]
wrote:This probably does not even belong in this repo, but we can talk about it
here until we figure out a game plan.When a user gets a bot, it will come with an SD card for the pi with an
image of Raspbian + all the FarmBot software installed on it already.
Ideally the user would simply plug it in and it would start downloading
updates, connect with our web app, and the user could start controlling the
device. But there are a few issues:
- With a wifi connection, how does the pi know the network SSID and
password?- With a wifi or ethernet connection, how does the user claim ownership
of the device once it has connected to Meshblu/the web application? Either
they could find out the device's UUID and token and enter it in the web app
(like now), or they could give the device a name a password in some way
that they must also enter into the web app.Possible solutions:
Hook up a monitor and keyboard to the pi and edit files through the
terminal or do something from the desktop environment. This is just not an
option in my opinion. Most people don't own external monitors and keyboards
these days, and it is a total pain to hook them up temporarily, especially
outside! Also, I think most people would not be able to/are not confident
enough to use the terminal.Connect to the pi via ethernet directly to a laptop and edit files via
SSH. This is surprisingly a pain to get working not only form the pi side,
but from the network configuration on the laptop side as well. I think this
option is ruled out too.Use a laptop or PC to edit a text file in the boot directory of the
pi's SD card before plugging it into the pi and booting up. It would
contain a wifi SSID and password (if needed) and a place to enter in a
device name and password used to claim ownership of the device from the web
app. This may be the very easiest as all we need is a script to read that
text file on bootup, and it is not too difficult for users to do. However,
it requires an SD or microSD card reader to do. A potential problem is if
one changes their wifi name or password, then the pi will lose connectivity
and would need to be hard shutdown by pulling the plug, then the SD card
text file would need to updated. Not very clean... However, if it lost
connectivity, the user could just switch back their network settings to
gain access again, and update the settings remotely via the web app.User writes a text file on a USB stick and plugs it into the pi which
copies it automatically. Prevents the need for a hard shutdown if the pi
loses connectivity. There may be issues with USB stick formatting or
accessing the pi's USB ports (it may be in a tight, waterproof case)A captive portal where the pi serves up a simple webpage where the
user can enter and read info. On ethernet, the captive portal would
activate if the FarmBot has no name or password (first boot) and the web
page would serve up on a certain IP that the user could navigate to from
any device's web browser as long as they are on the same network. If the
device uses a wifi dongle, the portal would activate on first boot or when
the wifi credentials are invalid. In these cases, the device would create
its own wifi network called 'Configure FarmBot' that the user could connect
to with any device, enter in the info, then initiate a reboot. This method
would not work if the device was using a cellular or even satellite
connection.I think 3) is an easy solution for now that supports all modes of
connectivity. 5) would be a more user-friendly layer in the future for wifi
and ethernet connections which will likely be far more common than cellular
connections.Sorry for the long post. Thoughts or other options I haven't mentioned?
—
Reply to this email directly or view it on GitHub
#42.
from farmbot_os.
Related Issues (20)
- [Farmware] Did you stop supporting the local webserver on port 27347? HOT 10
- Need to Configure VintageNet `:internet_host` setting
- [bug, cosmetic] unhandled message in error state: after Farmware exits normally HOT 8
- A simulator for the farmbot HOT 10
- Feture Reuest: "After Unlock" Sequence Callback
- Unused variable warning is polluting the Serial Console :) 10.1.3 HOT 9
- "since last reflash" metrics and flags
- Lua Persistent Storage (K/V store)
- Mark As command does not update plant age
- Lua Assertion read_pin always returns 1, making programmatic tool verification unusable HOT 5
- Seems to be an issue HOT 2
- Can't flash Arduino with firmware HOT 5
- DIdnt see a Doc project, so putting this here. Hyperlink issue with doc webpage HOT 1
- fail to falsh fambot _os HOT 5
- WiFi Adapters HOT 6
- how can i change the broker ? HOT 2
- Boot Sequence execution may be delayed by earlier (overdue) FarmEvent sequence executions HOT 2
- Water keeps running if FB stalls during the execution of a sequence / Risk of flooding HOT 1
- Sequence Not Found error is not sent back to MQTT RPC Client
- Configurator Improvements
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from farmbot_os.