The Farm Hack River of Activity

Stream of Forum Topics

In 50 characters or less... Posted by Post date Last comment Number of Comments # of Comments new to you
A GreenHorns Event Guide will.greenhorns Wednesday, September 25, 2013 - 11:07pm Wednesday, September 25, 2013 - 11:07pm 0
Need a ride? Let's coordinate here! kate greenberg Wednesday, September 25, 2013 - 3:17pm Wednesday, September 25, 2013 - 3:17pm 0
Farm Hack West Slope Colorado event description kate greenberg Wednesday, September 25, 2013 - 3:14pm Wednesday, September 25, 2013 - 3:14pm 0
Looking for farmers who want help with their seed ordering and organization jmgrauer Monday, September 23, 2013 - 11:25pm Monday, September 23, 2013 - 11:31pm 1
Farm Hack Davis California Nov 2013 dorn Monday, September 23, 2013 - 7:22pm Monday, September 23, 2013 - 7:22pm 0
Farm Hack @ Maker faire 2013 dorn Monday, September 23, 2013 - 4:56pm Friday, December 27, 2013 - 1:28am 5
Cultivar's RainCloud: Smarter irrigation using sensors and the web. crtalermo Monday, September 23, 2013 - 10:47am Wednesday, February 11, 2015 - 3:16am 5
Idea on a short explanation for what a "Farm Hack" is R.J. Steinert Monday, September 23, 2013 - 12:54am Monday, September 23, 2013 - 7:51am 1
Description adamappleseed Sunday, September 22, 2013 - 4:31pm Tuesday, February 3, 2015 - 11:57pm 5
Search and compare dozens of seed catalogs jmgrauer Saturday, September 21, 2013 - 8:47pm Saturday, September 21, 2013 - 8:47pm 0

Stream of Forum Comments

Oxbow Farm's picture

To clarify, I was using PTO in a generic sense of "power transmission unit" vs desiring a device that actually incorporates a tractor style PTO hub like the Amish horse treadmills do. I was thinking more along the lines of a v-belt step pulley for different speed/torque applications belts being more forgiving in adjustments for a variety of different tasks. Not unlike the uses for stationary engines and belt pulleys on pre-50's tractors.

Louis's picture

Nope - I think I came up with it around the same time that you did!

Anyway, I've been thinking about the protocol and how this could work and have the following proposal:

Fido will be programmable and reprogrammable by text message. You can text a bunch of different numbers separated by commas to program it all in one text (in some predetermined sequence so Fido knows what to do with it) or you can write some keyword followed by a number to change only a certain preference as RJ specified above.

I also think that I will implement some basic "usergroups". First off, Fido will answer any text message not started with '#' by telling the person the current time, UNLESS privacy is turned on (owner will be told that someone unauthorized is texting in this case). When privacy is on, only known numbers can ask for current.

Fido can remember up to 16 numbers plus the owner. Anybody can text '#' followed by the 4 number PIN determined by owner, followed by: - nothing or '0': they will be allowed to text for current even if privacy is on and they will get emergency text messages - '1': above, plus they will get daily summaries - '2': above, plus they will get updates throughout the day (ie: they get all the communications that owner gets)

Only owner can reprogram and remove users.

Anyway, I thought that incrementing of permissions made practical sense but let me know what you guys think. Also, let me know if you think anything is unclear or could be simplified!

R.J. Steinert's picture

@Louis I apologize if you proposed this before and I forgot. I figured I'd write it down here while I was thinking about it.

Louis's picture

Took me all day to cook this idea up apparently:

What else has an LCD and a keypad that we already interface with Fido? A cell phone!

I think that the first run should be programmable via cell phone with an optional LCD display so that you can check temp without texting when you're physically near the device. The cell phone that initially texts Fido will become the "owner" and will need to confirm reprograms from different phone with an option of relinquishing ownership. A hard reset will also allow Fido to get a new owner.

A shield with keypad and LCD can be a later elaboration on Fido v1. Sound reasonable?

R.J. Steinert's picture

Hehe :) That's fun.

R.J. Steinert's picture

Aaaaah buttons nice.

The 4 directional buttons plus select button allows basic control...

Keypads take up a lot of pins (which one were you thinking about using?), so with buttons on an RGB LCD Shield Kit and some (a lot?) programming, we might be able to drop the keypad altogether. In the interrupt mode the left and right buttons would move across the LCD and the up and down button would change the value of the number.

Anyways, cool ideas but the most important thing right now I think is getting a minimum viable product built whichever way is easiest. We can iterate later to improve things like cost, usability, and ... "buildability". So with that in mind, the reasons I suggest an RGB LED are as follows. 1) The RGB LED helps out with the pin issue. 2) The RGB LED + Keypad combo might be easier to program than the LCD + Keypad combo.

how do they know if they're reprogramming the bounds or the phone number or something else?

Inspired by decades of crappy electronics with one singular red light blinking out a primitive version of Morse code, we could deploy a similar technique with an RGB LED. The directions might go like something as follows.

To set the Phone number

  1. Hold # until the LED blinks green.
  2. Enter the phone number you would like to be sent text messages.
  3. Hold # again and the LED will stop blinking green. Fido will now send you a confirmation text message.

To set the upper bounds

  1. Hold * until the LED blinks red.
  2. Enter the temperature you would like to be the upper bounds.
  3. Hold * again and the LED will stop blinking.

To set the lower bounds

  1. Hold 0 until the LED blinks blue.
  2. Enter the temperature you would like to be the lower bounds.
  3. Hold 0 again and the LED will stop blinking.

To see the current temperature

  1. Hold 1 until the LED turns on. If you defined your upper bound as 95 degrees and your lower bounds as 75 degrees, you will see corresponding colors across the RGB spectrum for the following temperatures.

Red (95) - Orange (90) - Yellow (85) - Green (80) - Blue (75)

If implementing something like what I've just proposed sounds more difficult than what you had in mind, then don't worry about it. I'm not familiar with programming LCDs and using them in combination with keypads to do input so it's tough for me to estimate which way is more difficult. Maybe we'll come back to this idea at some later date if the cost/benefit of this starts to seem appealing.

Louis's picture

The RGB LCD Shield Kit not only reduces pins to the two I2C pins, which is the exact same as the I2C backpack we're currently using, but it also has buttons! The port expander used on the RGB shield seems like it could handle our keypad just as easily as it could handle those 5 buttons, plus it's not a surface mount device (SMD) so it's big enough for a hobbyist to wire up easily. It would probably end up costing the same if we build on our shield since we could then drop the I2C backpack since our shield will handle that too; downside is that it will be more difficult to make.

LEDs would work to let you know that the device is running and in alarm mode or not, but I think that it basically reduces the "reprogrammable on the fly" feature of our product to none since how can you input a temperature or a phone number using just an LED for feedback? It would require teaching users some kind of color code for numbers and that doesn't sound user friendly at all. Plus, how do they know if they're reprogramming the bounds or the phone number or something else? Stripping down the device to no LCD and no keypad is definitely a cheaper alternative though.

R.J. Steinert's picture

Come to think of it, I think my first priority will be to set up a redirect from youngfarmers.org/forum to farmhack.net/forums.

R.J. Steinert's picture

Good catch. I didn't even know that "IN THE FORUM" was as link. I'll look into fixing that.

R.J. Steinert's picture

The Adafruit RGB LCD Shield Kit is pretty cool in that it reduces your pins needed on the microcontroller to just 2 (6 are required on the LCD unit right?). As a last resort, what do you think of dropping the LCD display and incorporating an RGB LED like the Public Labs folk did with the Thermal Flashlight? In the interrupt routine a blinking green light would indicate it's ready for input of the phone number, a blinking red light would indicate it's ready for input for the upper bound, and a blinking blue light would indicate it's ready for input for the lower bound. When the unit is told to display the temperature, it would take the upper and lower bounds and display it somewhere between red-green-blue depending on where the current reading is in the upper and lower bounds. Am I missing anything else the LCD could be used for? The advantage here is that one RGB LED ($1.95 at the high end) is cheaper than an LCD screen but the drawback is user friendliness. My "advantage" is definitely in the spirit of "How cheap can we get this?" but the cost/benefit analysis may not hold up on this suggestion.

R.J. Steinert's picture

For those who aren't sure what a PTO is (I wasn't at first), it's a Power Take-Off.

R.J. Steinert's picture

For those who aren't sure what a PTO is (I wasn't at first), it's a Power Take-Off.

R.J. Steinert's picture

Hi folks. For now, lets try using Wiki pages tagged with "glossary". I created a page that will show us all wiki pages tagged with "glossary" over at http://farmhack.net/glossary. I created the first entry, microcontroller. There are a few other things I'll add down the line:

  • a link to the glossary on Wiki pages tagged as glossary
  • a button in the toolbar for "Add Glossary Term" that automatically fills out the wiki form with the tag "glossary"
  • automatically link to glossary terms when detected in a wiki/forum post's text.
dorn's picture

I will see if I can get my brother inlaw to post. He has a brand new single horse treadmill which has a pto output which he has used for corn shelling and grinding - and another friend has one hitched to a thresher. He also has a belt driven grain grinder which is human powered based on a modified stationary bicycle. If nothing else I can get photos of the setup.

Louis's picture

Thanks for the summary RJ - this is all right on!

1 is pretty straightforward and requires no more development based on our current objectives.

2 is definitely an option, would require very little extra development but requires a lot of wire even if you want to hook up two neigboring greenhouses to one Fido since you basically have to find a relatively central location and then run three wires to each sensor - luckily these are digital sensors so the resistance in the wire isn't an issue as long the signal still makes it through.

3 is also technically viable but as you pointed out, is quite a big change on the development side. How do we tackle the "wireless" part of the sensors? Xbees? WiFi? something else? The money spent making these things wireless would probably be at least as much as simply building seperate Fidos. This is a type of architecture I am foreseeing for the wireless node system that relays data via internet, however!

R.J. Steinert's picture
R.J. Steinert's picture

Sorry to hear you guys are having troubles. It sounds like this is happening when you: 1. Click "choose file" 2. Select the file from you harddrive 3. Click Save at the bottom of the Form.

Is that correct? It is safer to do the uploading of the file and the saving of the form in separate steps in case the server has a hiccup or your connection is momentarily slow. As a best practice I recommend uploading images using the following steps. 1. Click "choose file" 2. Select the file from you harddrive 3. Click the "Upload" button next to File you just selected on the Form. 4. Wait for the upload to finish. 5. Click Save at the bottom of the Form.

I just performed the first operation I described above on the Root Washer and everything went OK. I did however run into a new bug, if you edit the Root Washer's profile and click "Remove" on the current image, the whole form disappears!

R.J. Steinert's picture

So if I am arriving at Farm Hack because I heard it could be a good place to find a solution to a problem on my farm, the default tool organization that I want to see would be tools by category, so I can find tools that are relevant to my farm or my problem (fruit growing tools aren't much use if I'm a dairy farmer, etc.).

I agree. It's also in the interest of Tool developers that the maximum amount of interested eyeballs find their tools quickly. According to Raymond's version of Linus's Law, "Given a large enough beta-tester and co-developer base, almost every problem will be characterized quickly and the fix will be obvious to someone." So if we focus on building the search tools for Farm Hackers like myself who are interested in seeing where the action is, then a whole bunch of potential contributors might not be seeing what they are looking for. I think metrics like "# of wiki edits" and "# of forum posts" for a Tool are not first priority but second priority. After the user has somehow generated a list of results they are interested in, the participation metrics let the user know which ones are healthy.

At the moment though and probably for the next few months, I think most people visiting the Tools section will not find anything necessarily useful to them. I think it's important to prove to those folks that if they have a Tool idea and make the effort to post it, that there will be an active community ready to jump in. So for now I'm kind of happy just having the current sort mechanism of "Last Tool Wiki Update" and perhaps when we do get more participation metrics on the Tools page we sort by one of those. Again, this is my thinking for a short term strategy while we are bootstrapping this community. I could be convinced otherwise, prioritizing long term is not that crazy of an idea :P.

R.J. Steinert's picture

As the list grows it will become far too time consuming to find anything.

For some examples of types of search, check out Section 9, "How will users find information?", in my We believe in sharing document. I think the answer as far as searching goes is giving users a whole array of options. Hopefully we will grow to the point where we need Full Text Search, as they say "a problem we would like to have," but if we implemented it right now it would lead users to a whole bunch of searches with "No results found".

Perhaps one way to help implement this would be to allow the tool’s creator and editors to add tags to the tool’s profile which can then be used as the basis for the search

I'm into this idea. We've spent time trying to see into the future and predict how Tools will be categorized, and I like what we have so far, but perhaps now it's time to let users start "freetagging" in a Keywords category on Tools. A tag cloud will show what keywords are the most popular and if we start to seem some category trends in the Keywords vocabulary then we may have a candidate for a new category on Tools. Converting a bunch of content with a set of Keywords into a new category takes a little leg work but it's definitely a problem we'd like to have.

Perhaps there can also be some sort of dropdown menu which will allow users to select how they wish the tools to be sorted.

At the moment you can sort on the Stage, Type, and Last Tool Wiki Update columns. I think I can turn that sorting into a dropdown menu fairly easily as well.

...tools which are receiving a large amount of community support will appear at the top of the list.

I'd love to see this as well and it's high on my priorities for implementation. See the usage metrics I mentioned below in response to Dorn's comment.

R.J. Steinert's picture

In response to

...it would be helpful that the first few tools people see are well documented with a lot of activity around them...

Check out my comment in the Maintainer discussion.

[It looks like a good way to start might just be a loose "Volunteer as a maintainer" function on each Tool page that allows users to say who they are and how they plan on contributing. This can be accomplished by just pencilling yourself onto the Tool's Wiki page but it could be massively helpful when sorting Tools to be able to have that extra metadata that shows where people have volunteered to answer questions and where no one has.](http://www.farmhack.net/comment/102#comment-102)

I also just added a "Last Tool Wiki Update" column on the Tools page. Now the Tool with the most recently edited documentation floats to the top. That is at least some kind of indication of activity. Another metric we could publish there might be "# of Tool's Wiki Updates" and "# of Tool's Forum topics". I started with what we have because that was a quick fix. The other two metrics will require an hour or so of coding.

R.J. Steinert's picture

It looks like a good way to start might just be a loose "Volunteer as a maintainer" function on each Tool page that allows users to say who they are and how they plan on contributing. This can be accomplished by just pencilling yourself onto the Tool's Wiki page but it could be massively helpful when sorting Tools to be able to have that extra metadata that shows where people have volunteered to answer questions and where no one has.

R.J. Steinert's picture

Done, done, and done :).

R.J. Steinert's picture

If you go to a user's page, there is now a "contact" tab. See http://www.farmhack.net/user/8

The problem is we're not linking to user pages from anywhere right now. It's going to take a little leg work to modify all the templates that spit out a user's name.

"It would be nice to be able to see who was the last editor without going into the revision history..." Also agreed. Perhaps something near the top of a Wiki that says:

Posted by [username] on [post-date]. Last edited by [username] on [last-edit-date].

R.J. Steinert's picture

Some considerations moving forward with fitting a lot of things into the Tools entity type

I'm not revving to go on my proposal yet because of the reason I mention in the comment linked to above, "...if decide something is not a Tool, we don't lose the Forum and Wiki page when we delete the Tool," but my proposal is one idea on how we might structure things in the future.

R.J. Steinert's picture

Proposal for new forum structure and using the "Forum-Wiki bundle" functionality for everything

I'm not revving to go on my proposal yet because of the reason I mentioned above, " if decide something is not a Tool, we don't lose the Forum and Wiki page when we delete the Tool," but my proposal is one idea on how we might structure things in the future.

R.J. Steinert's picture

I think that's a great idea Dorn. Using the same Wiki-Forum format we are using for physical tools can also work for our process tools. I vote for moving ahead on this and I want to mention two things to consider as we move ahead.

Before getting into the two considerations for this, a quick clarification on the functionality behind Tools. The "Tool" Entity, the thing with metadata like "Stage" and "Type", is the glue that holds together the relationship between a Forum and a Wiki page. In addition to Tool's holding metadata on the Tool and relationships to a Forum and Wiki, there is code I wrote to display all three things on a single page if you go to any one of those three things. Note that we could create a Forum and a Wiki page separately, put a link at the top of each to their counterpart, and the only thing we would be missing out on is the presentation of the Wiki and Forum on the same page.

  • A "Best Practices" Wiki page and Forum may not be findable on the Tools list Perhaps it would be better suited to be in the General category of the Forum. We could reassign the "Best Practices" Forum fromt the Tools category to the General category.

  • Does the data model (metadata like "Stage" and "Type") for our "Tools" concept fit something like this? Right now I don't see this as a big deal and it's not necessarily a big deal if we decide otherwise in the future. If down the line we decide that "Best Practices" is not a good fit for the Tool data model, then we delete the "Best Practices" Tool, the Best Practices Forum and Best Practices Wiki page stick around because they are separate entities, and then we create some other alternative to the Tool Entity type that we use to glue the Best Practices Forum and Best Practices Wiki together.

My analysis could be seen as a green light to shoehorn whatever we want into the Tools section right now, because after all, if decide something is not a Tool, we don't lose the Forum and Wiki page when we delete the Tool.

R.J. Steinert's picture

I'm loving the discussion here. I'm all for using the tools we have and using outside tools at the same time. There are two concepts I want to throw out there for funding open source research and development.

Bounty

In open source lingo, a bounty is sum of money offered for completing a development task that will be open sourced. In my experience this often starts as someone saying in a projects issue queue (a project issue queue is equivalent to a Tool's Forum) saying, "Hey! I need this thing done real bad," and then another person saying, "Ya! Me too but I don't know how to get it done," and then maybe some other people echoing the desire. The folks with the need then get together and dedicate some funds to complete it (or services or whatever) for someone to do it. Because they are talking about it in that project's issue queue, someone who knows how to complete that task and also has an interest in doing so eventually comes along and they strike a deal. w00t! The key here being the proximity of those who need something done and those who can complete the task, a network effect of saying, "Hey we need this, here's some funds," and someone close by saying, "I can do that."

Reverse Bounty

Before there was Kickstarter, there was Reverse Bounty. A developer wants to get something done so they say, "Hey world! If you also want to get this thing done then pay me x number of dollars and I'll be able to do that!" The only thing Kickstarter added was a deadline for funding, and boy does that work! I've seen reverse bounties take YEARS.. unfortunately. The deadline creates a sense of urgency, but it also gives folks a sense that they are allocating a certain amount of funds in a specific time period and that matters in the real world where a tool is worth something to you in the next 60 days but might not be worth anything to you a year from now.

My conclusion

So if someone creates a Reverse Bounty (Kickstarter)/Bounty to do a production run of a Tool and they mention it on that Tool's Wiki page or Forum, they get that network effect of people with the same needs being close by jumping in.

Oxbow Farm's picture

OK, I tried it and created a loose wiki for the hoophouse wheels, but I'm not sure if it works in the context of meta tool/secondary tool because the loose wiki doesn't have a tool forum attached to it for discussion. The wheels are something I'd really like somebody else's skull sweat on. I'd love them to have their own discussion. I do like Louis' vanity wiki though and it seems like the loose wikis would have a value as informational packets like that. But maybe a secondary tool needs its own entry on the tool forum? Tim

R.J. Steinert's picture

Sweet! I pasted that doc into a wiki page. I encapsulated the pasted text with the HTML "pre" tag to get all of the formatting you did with spaces.

R.J. Steinert's picture

Cool! Marking as fixed.